X(Twitter) Jobs Search Scraper avatar

X(Twitter) Jobs Search Scraper

Pricing

from $4.99 / 1,000 results

Go to Apify Store
X(Twitter) Jobs Search Scraper

X(Twitter) Jobs Search Scraper

Search X’s job listings by keyword and optional filters—export titles, pay bands, locations, and apply links in structured rows.

Pricing

from $4.99 / 1,000 results

Rating

0.0

(0)

Developer

PowerAI

PowerAI

Maintained by Community

Actor stats

1

Bookmarked

10

Total users

4

Monthly active users

3 days ago

Last modified

Share

X Jobs Search Scraper

Find job listings surfaced on X by keywords and optional location, work arrangement, seniority, and employment type filters. Each dataset row is one listing with role details, company context, an apply link when available, and salary hints only when the listing includes them.

Who it’s for

  • Recruiters & talent teams monitoring public postings that flow through X’s job experience.
  • Job seekers & researchers who want structured exports instead of endless scrolling.
  • Data & analytics workflows that join listings with your own company or geography lists.

What you can do with it

  • Search by keywords (role names, skills, stacks).
  • Narrow results with optional location id, remote/on-site/hybrid style filters, seniority bands, and employment type—using comma-separated values where multiple choices apply.
  • Collect up to your chosen cap; the run loads successive batches until the limit is reached or there are no more results.

How it works (in plain terms)

You enter search keywords and any filters you need. The tool retrieves listings in batches until your maximum row count is reached or the list ends—you do not need to manage paging yourself.

Input

FieldRequiredWhat it means
Search keywords (keyword)YesText to match (e.g. role or skill).
Location id (jobLocationId)NoUse only if you already have a location identifier from the product’s location suggestions.
Work arrangement (jobLocationType)NoComma-separated: e.g. onsite, remote, hybrid.
Seniority (seniorityLevel)NoComma-separated: e.g. intern, entry_level, junior, mid_level, senior, lead, manager, executive.
Employment type (employmentType)NoComma-separated: e.g. full_time, full_time_contract, part_time, contract_to_hire.
Maximum results (maxResults)NoUpper limit on how many job rows to save (default 50).

Output

  • One row per job listing (until your cap).
  • Job object: __typename / __isJobResult (typically ApiJob), plus GraphQL-style id and rest_id for the job when present.
  • Role & apply link: core usually includes title, location, and redirect_url. Some listings also include formatted_salary, salary_min / salary_max, salary_currency_code, and salary_interval—others omit pay entirely.
  • Company: company_profile_results may include id / rest_id, a result block with core.name, and sometimes a logo (e.g. normal_url) when the company profile carries artwork.
  • Posting account: user_results may appear with an X account legacy block (screen_name, name, avatars, verification hints)—many rows have no user_results at all.
  • Export metadata: job_listing_id (wrapper id for the search hit), your keyword, optional copies of filters you set (jobLocationId, jobLocationType, seniorityLevel, employmentType), and scrapedAt.

Rows vary in richness: expect core.title, core.location, and core.redirect_url most often; treat salary and poster account fields as optional. Shapes may change as the product evolves.

Sample output (one dataset row, from a real run)

{
"__isJobResult": "ApiJob",
"__typename": "ApiJob",
"company_profile_results": {
"id": "QXBpQ29tcGFueVByb2ZpbGVSZXN1bHRzOjE3NTgyMzEwNzk4NDMxNjQxNjA=",
"rest_id": "1758231079843164160",
"result": {
"__typename": "ApiCompanyProfile",
"core": {
"name": "Ahead"
},
"id": "QXBpQ29tcGFueVByb2ZpbGU6MTc1ODIzMTA3OTg0MzE2NDE2MA==",
"logo": {
"normal_url": "https://pbs.twimg.com/profile_images/1221157525657010177/pgx7vsXQ_normal.jpg"
},
"rest_id": "1758231079843164160"
}
},
"core": {
"location": "United States",
"redirect_url": "https://jobs.lever.co/thinkahead/bdac3e84-3f30-48b3-ac33-e801a310f827/apply?lever-origin=applied&lever-source=xhiring",
"title": "AI Consultant, AI Services"
},
"id": "QXBpSm9iOjE5OTY5ODExMDU3MjAwMjA5OTM=",
"rest_id": "1996981105720020993",
"job_listing_id": "QXBpSm9iUmVzdWx0czoxOTk2OTgxMTA1NzIwMDIwOTkz",
"keyword": "ai",
"scrapedAt": "2026-03-25T09:25:23.759Z"
}

Good to know

  • Keywords should be specific enough for useful results; very broad terms can return noisy listings.
  • Filter strings use comma separation when you need more than one value; spelling and allowed tokens follow what X’s job search accepts.
  • Respect X’s terms and applicable laws when storing or redistributing listing data.