Every change to this Actor, with its date.
- 2026-10-14. A profile link by user ID, like x.com/i/user/11348282, now reads
that account.
- 2026-10-14. A profile X redirects, such as a renamed account's old handle
looked up by its user ID, holds
redirectsToUsername, the handle X shows
instead.
- 2026-10-14. The Store text & the top of the README use plainer sentences.
- 2026-10-13. Each profile now holds
profilePictureOriginal, the profile
picture at full size, to download. profilePicture stays the 48 px image.
- 2026-10-13. An account can be named by its user ID of 16 to 19 digits, like a
handle. This works in X handles & profile links.
- 2026-10-13. New example tasks view a profile without an account, look up many
accounts, get profile pictures & check when an account was created.
- 2026-10-13. The Store text calls the Actor a Twitter profile viewer & scraper,
& the README opens with looking up Twitter accounts in bulk.
- 2026-10-13. Field help & the README drop colons & semicolons.
- 2026-10-13. The run status drops its colons. A finished run starts
Finished.
& says how many rows it saved.
- 2026-10-12. The input lists
verifiedType, minFollowing, maxFollowing,
minStatuses, maxStatuses & usernameContains. They filtered before too,
while the run log called them fields without effect.
- 2026-10-12. Filtered follower & following reads count the profiles the filter
dropped in the run report's
totalFiltered & rawRows.
- 2026-10-12.
blueVerifiedOnly keeps the profiles X marks as blue verified.
The Actor reads filterByBlueVerified of another Actor as that filter.
- 2026-10-12. The Actor reads the contact filter names of other Actors, which
are
requireEmail, requireWebsite, bioKeywords, locationKeywords with 1
value & emailDomains as a list. With validateEmails, findEmails or
extractEmails, the run status says where its emails come from.
- 2026-10-12. The Actor reads input names of other profile Actors, which are
profiles, userNames, maxProfiles, shouldScrapeFollowers &
shouldScrapeFollowings. A category that is another Actor's job stops the
run before any read or charge.
- 2026-10-12. Shape your rows with
fields, omitFields, renameFields,
flatten, joinFields & constantFields. Name totalEngagement,
engagementRate or engagementPerView in fields to add it.
- 2026-10-12. Profiles carry
email & contactInfo, the emails, phones & links
a profile publishes. hasEmail, businessEmailOnly & emailDomains keep
profiles with an email.
- 2026-10-10. Profiles name the organization X shows they are affiliated with,
as
affiliateUsername.
- 2026-10-09. Keep only profiles with a website, a location, a bio word or a
location word with
hasWebsite, hasLocation, bioContains &
locationContains.
- 2026-10-09. Successful runs with rows end their status with a short review
request.
- 2026-10-09. Check whether each profile broadcasts live on X now with
checkLiveNow. Each check is 1 result.
- 2026-10-08. Translate each profile's bio into a language code with
translateBioTo. Each translated bio is 1 result.
- 2026-10-07. A read that gets no answer retries at once, & a stalled lookup
gives up after a few seconds, so runs lose less time to slow requests.
- 2026-10-07. A run that reads every target & gets no row back writes no
diagnostics record. Its status says why, & the run costs less.
- 2026-10-05. Runs with many targets save progress less often, finish sooner &
cost less.
- 2026-10-05.
startUrls now takes plain URL strings as well as
{ "url": ... } objects.
- 2026-10-05. Large runs upload their rows faster.
- 2026-10-05. Runs of under 5 IDs or handles end with a tip to batch them.
- 2026-10-04. A run of single lookups fills
maxItems in input order, whichever
answers first.
- 2026-10-04. An account X suspended now reads "X suspended 1 account." with the
cause
target_suspended, instead of a missing target.
- 2026-10-04. The Actor version in diagnostics & run reports is now the Apify
build number.
- 2026-10-04. A run no longer stops early when an upload's answer is lost. Its
rows are charged once.
includeHighlights adds the posts on each profile's Highlights tab.
- Each highlighted post is a
profileHighlight row at the usual row price.
- Every run uses 256 MB again, which is faster & more reliable for small runs.
- When Xquik stays busy, each retry waits longer than the last.
- If Xquik stays busy too long, that target fails & the run says why.
- Busy answers are never charged.
- A run near its time limit stops before a read it can't finish.
- A run that started late says how long it waited, out of its time limit.
- Requests to Xquik never follow a redirect, so the key stays with Xquik.
- A run waits out a brief Xquik outage instead of failing.
- Rows saved before an outage stay saved & are charged once.
- Runs with more than 5 targets, counting each extra resource, keep 256 MB.
- Runs up to
maxItems 50 with up to 5 targets use 128 MB & cost less.
- The README's Framer video opens at 6:07.
- A run that finds nothing skips
run-report, so it costs less in Apify usage.
- An empty run's status says to check the targets & filters.
- The README names the Actor as Xquik's X Profile Scraper & adds a how-to,
pricing question & FAQ.
- The dataset schema documents
accountBasedInUnavailable: true, set when X
withheld the account location.
- Runs under 34 results cost less in Apify usage, with no progress saves.
- An aborted run's status counts its saved results, even during a slow upload.
- During a run, the status shows how many results it has collected so far.
- The status says when the run waits to retry.
- The new
alwaysSaveRunRecords input keeps run-report on every run.
- The run reads URLs only from
x.com & twitter.com, with or without
https://.
- X pages such as
x.com/home or x.com/search no longer count as handles.
- Post & List URLs no longer count as numeric user IDs.
- The run lists each input it cannot read & says how to fix it.
- With nothing to read, the run writes a free diagnostic with the fix.
- Runs open their dataset while they read X, so they finish sooner.
- Handles that differ only in case, such as NASA & nasa, now read once. Runs
finish sooner.
- Profile URLs such as
X.com/NASA, x.com/@nasa & x.com/nasa?s=20 now work.
- Small runs that go well skip
run-report, so they cost less in Apify usage.
- The run status now says why the run stopped, with its charged results &
targets.
- Runs that stop on their input now name the diagnostics output in their status.
- Runs save their progress less often, so they cost less in Apify usage.
- Support now sees a finished run even while the service is busy.
- Runs with a time limit keep a little more time to finish.
- Runs with a time limit now stop in time & keep their results.
- Large runs save their progress faster.
- The run status now says where to find its diagnostics.
- If the Actor cannot start, the run now ends with 1 free diagnostic.
- Runs with hundreds of targets use less CPU.
- Runs now start collecting results sooner, so small runs finish faster.
- A run that fills maxItems no longer reports a time limit.
- Large runs use less memory.
- Targets no longer fail when Xquik is busy. The Actor waits & tries again until
its time limit.
- A page the service answers slowly in busy hours now arrives instead of timing
out.
- Support can now see where each run spends its time.
- Targets no longer fail when the service is busy. The Actor waits a few seconds
& tries again until its time limit.
- Input & Output tab descriptions now say what each field does.
- The README now focuses on what you get & how to run it.
- Runs now use fewer platform resources.
- Support can now look up every finished run.
- The status now says when X has no match for an account.
- Missing accounts no longer count as failures or log errors.
- A run with no rows now says why in its status.
- Runs with many targets finish faster.
- Runs recover faster from temporary service delays.
- Long runs are less likely to stop early.
- A slow page now ends in time & keeps its rows.
- The status now names every reason a run stopped early.
- The diagnostic lists each cause in
stopCauses, with advice.
- With
maxItems of 300 or lower, the profile row now comes first.
- The listing no longer mentions likes. X shows liked posts only to their owner.
- The Include Likes option explains this limit.
- Runs still succeed when likes are hidden.
- Output field descriptions are clearer, including location & verification.
- The input form shows targets, limits & common filters first.
- Output tabs & dataset views show the most useful fields first.
- Run reports are more accurate when fewer results exist than requested.
- Resumed runs keep their progress.
- Long runs use the full configured time limit.
- Long runs save results as they arrive.
- Resumed runs keep collected results.
- Minor fixes improve reliability & speed.
- Runs keep their progress after temporary storage errors.
- Resumed runs retry failed targets without double charges.
- Runs recover from temporary errors more reliably.
- Heavily filtered profile runs finish faster. Diagnostics stay free.