Upwork Job Scraper | Live Jobs, No Login, Filters & Scoring avatar

Upwork Job Scraper | Live Jobs, No Login, Filters & Scoring

Under maintenance

Pricing

from $1.50 / 1,000 job scrapeds

Go to Apify Store
Upwork Job Scraper | Live Jobs, No Login, Filters & Scoring

Upwork Job Scraper | Live Jobs, No Login, Filters & Scoring

Under maintenance

Search public Upwork jobs without a login or user-provided cookies. Filter budgets, skills and experience; review opportunity scores and incremental new-job feeds. Source availability varies. Pay for delivered jobs.

Pricing

from $1.50 / 1,000 job scrapeds

Rating

0.0

(0)

Developer

Apivault Labs

Apivault Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Upwork Job Scraper — Live Jobs, No Login, Filters & Opportunity Scoring

Service availability — 11 October 2026: Job collection is under maintenance. The upstream source currently denies access, so live runs may fail without returning jobs. A failed run does not mean there are no matching vacancies. No job-result fee applies when no jobs are delivered; the run-start fee and consumed platform/proxy resources can still apply. Use RUN_SUMMARY to distinguish an access failure from an empty search. Reliable live job collection has not yet been restored.

Upwork Job Scraper

Scrape public Upwork jobs in real time — no login, no account, no cookies. Search by keyword, filter by job type, budget, experience and skills, and get an AI-free opportunity score, urgency / complexity signals, and an incremental "only new jobs since last run" mode for clean scheduled feeds.

Also known as: Upwork scraper, Upwork jobs API, freelance jobs scraper, Upwork job feed, gig listings scraper.

✨ Why this one

  • Truly keyless — pulls public Upwork job listings with no login, no account pool and no cookies to manage. Access depends on Upwork availability and IP reputation.
  • Real-time — fresh jobs on every run, straight from Upwork's live job feed (the source count changes over time).
  • Filters that matter — keyword, job type (hourly/fixed), experience level, minimum budget, required skills, urgency.
  • Opportunity scoring (AI-free) — every job gets a 0-100 opportunityScore, a budgetTier, a complexity grade and isUrgent / isLongTerm flags so you triage the best jobs instantly.
  • Incremental mode — onlyNewJobs remembers what you've seen and returns only jobs new since your last run. Perfect for a scheduled "fresh jobs" feed.
  • Pay per result — only delivered jobs are billed; maxResults caps delivered rows; maxCostUsd conservatively estimates job event charges. Proxy and platform usage are additional.

📦 Output (per job)

FieldDescription
title / descriptionJob title and full description
jobUrl / jobIdDirect Upwork job link + stable id
jobTypehourly or fixed
hourlyBudgetMin / hourlyBudgetMax / fixedBudgetBudget
budgetValue / budgetTierNormalised budget + tier (micro→enterprise)
experienceLevelEntry / Intermediate / Expert
skillsRequired skills
durationWeeksEngagement length when given
postedAt / createdAtTimestamps
opportunityScore (0-100)Well-paid + well-specified + higher-tier = higher
complexitylow / medium / high
isUrgent / isLongTermIntent signals from the text

⚙️ Key inputs

searchQuery · sort (recency/relevance) · jobType · experienceLevel · minBudget · requiredSkills · urgentOnly · minOpportunityScore · onlyNewJobs · flatOutput · maxResults · maxCostUsd.

💡 Use cases

  • Freelancers / agencies — a live, filtered feed of relevant jobs, scored so you bid on the best ones first.
  • Lead generation — monitor a niche (e.g. "shopify", "react") for new jobs.
  • Market research — budget distribution, demand by skill, hourly vs fixed mix.
  • Automation — schedule with onlyNewJobs and pipe fresh jobs into n8n / Zapier / Slack.

⚖️ Notes

Returns only publicly available Upwork job-listing data (the same data shown to logged-out visitors). When enabled, public job pages add client spend, hires, hours, payment verification, rating, membership date, location and proposal/activity counts. Private, blocked or unavailable pages keep their search record with clientDetailsStatus and unknown client fields. We do not expose client names, hidden contracts or private account data. Not affiliated with Upwork. Use in line with Upwork's terms and applicable laws.

First run and client qualification

Start with 5 jobs and enable includeClientDetails. Review the Clients and competition dataset view. clientDetailsStatus: public means the public page was read; it is not a guarantee of client reliability. clientCheckedAt records the observation date. Zero values and unknown values are distinct.

{"searchQuery":"python", "maxResults":5, "includeClientDetails":true, "maxClientLookups":20}

clientPaymentVerifiedOnly, minClientSpend and maxProposals enable client lookups automatically and reject unknown values. maxClientLookups bounds page requests, including filtered and unavailable jobs, and can shorten the output. Proxy and platform resources are paid separately; no additional client-detail event is charged. Current job rates are FREE $2/1K and all paid tiers $1.50/1K, plus a $0.00005 start event. The Apify Pricing tab is authoritative. maxCostUsd uses the highest job event rate and a start allowance; it excludes proxy/platform resources.

Only job rows enter the dataset. RUN_SUMMARY in the run key-value store reports source errors, limits, scanned pages and delivered jobs. For incremental feeds, reuse incrementalStoreName; different feeds can use different store names.

n8n and developer integrations

Use this Actor in your automation or application with the existing community integrations below. An Apify account and API token are required; Actor and platform charges follow the current pricing.

  • n8n community node: n8n-nodes-apivault-upwork. Install package name n8n-nodes-apivault-upwork in a self-hosted n8n instance that permits community packages.

These are community packages. Publication on npm does not establish n8n verification or availability in n8n Cloud. Review the linked package README for supported inputs and setup.