Watch a list of X accounts: each one's newest posts with likes, reposts, replies and quotes, the engagement per 1,000 followers, and the account's own row (followers, posts per day, age). Only-new mode pays for what appeared since the last run. No login, no API key.
Reads X's own embed (syndication) backend: no login, no API key, no browser. Accounts can be named by handle, profile address or numeric id, mixed in one list.
Delivers one row per post — text, exact time, likes, reposts, replies, quotes, media (type, direct URL, size), hashtags, mentions, expanded links, language, flags — plus engagement, engagement per 1,000 followers and engagement per hour, which is what makes accounts of different sizes comparable.
Delivers one row per account (optional, on by default): followers, following, posts, listed count, bio, website, location, verification, account age, posts per day, followers-to-following ratio.
Only-new mode keeps a list of delivered posts in a key-value store of your account, so a watchlist pays for what appeared since the last run. With the list on, the per-account cap counts the posts looked at, so a run never pages backwards into older history.
Filters that save money, applied before a row is charged: leave out replies, only posts of the last N days, minimum engagement, and a cap for the whole run.
Handle → numeric id is remembered between runs (x-account-ids store), because X rate-limits handle lookups from datacenter addresses while answering id reads freely.
Free status rows for every line that cannot be delivered: not an X account, no public account with that name, an account with nothing embeddable, or an account the run could not read. Nothing is charged for them.
States the source's limits in the run message and in SOURCE_REPORT: the newest page only (23–105 posts, no paging), no search, no reply texts, no follower lists, no view counts.
Platform doğrulamasında ölçülen ve yayından önce koda giren üç davranış (2026-10-18):
Handle çözümü her istekte yeni adresten gider. X bir adresten yalnız bir handle okumasına izin veriyor (ikincisi 429). Apify proxy'sinde oturum kimliği vermek adresi sabitlediği için ilk ölçümde 6 handle okumasının 6'sı reddedildi; handle okumaları artık oturumsuz (her istekte taze adres), id okumaları oturumlu.
Geçici hız limiti koşuyu öldürmüyor. Art arda koşu patlamasında uç bir kez 429 verdi (bir dakika sonra 10 okumanın 10'u 200). Açılış kontrolü artık 2 ve 4 saniye bekleyip yeniden soruyor; üçünde de reddedilirse koşu sebebiyle FAILED oluyor.
Açılış kontrolü sebebi söylüyor. Apify proxy'si oturum kimliğinde tire kabul etmiyor (ArgumentError); ilk platform koşusu bunu "X'e ulaşılamadı" diye gösteriyordu. Kontrol artık altındaki gerçek hatayı (şifresi silinmiş olarak) mesaja koyuyor.