Upwork Job Search Scraper
Pricing
from $5.00 / 1,000 results
Upwork Job Search Scraper
Scrape Upwork job postings without limits. No cookies or login required — session is acquired automatically. Filter by keyword, category, experience level, job type, budget, location, and more.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
CRW
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Stop manually refreshing Upwork search pages. The Upwork Job Search Actor pulls fresh, structured job postings for you — no setup required.
Whether you're a freelancer tracking niche opportunities or an agency monitoring demand in your market, this Actor turns Upwork into a clean, structured data feed you can actually work with.
Key Features
- No setup required — just enter your search criteria and run
- Rich filter support — keyword, experience level, job type, budget, location, category, and more
- Up to 1,000 jobs per run with automatic pagination
- Structured output — clean JSON with job details, budget, skills, and timestamps
Input
| Field | Type | Default | Description |
|---|---|---|---|
keyword | string | — | Search keyword (e.g. "React developer"). Leave empty to browse all. |
maxResults | integer | 100 | Maximum number of jobs to collect (max: 1,000) |
sort | string | relevance+desc | Sort order: relevance+desc or recency |
contractorTier | array | — | Experience level: EntryLevel, IntermediateLevel, ExpertLevel |
jobType | array | — | Job type: hourly, fixed |
hourlyRateMin | integer | — | Minimum hourly rate (USD) — applies when jobType includes hourly |
hourlyRateMax | integer | — | Maximum hourly rate (USD) — applies when jobType includes hourly |
fixedBudgetRanges | array | — | Fixed budget preset ranges: 0-99, 100-499, 500-999, 1000-4999, 5000- |
fixedBudgetMin | integer | — | Custom fixed budget minimum (USD) |
fixedBudgetMax | integer | — | Custom fixed budget maximum (USD) |
clientHires | array | — | Client hire history: 0 (no hires), 1-9, 10- |
clientLocation | object | — | { "regions": [...], "countries": [...] } |
clientTimezones | array | — | Filter by client timezone (e.g. "(UTC+09:00) Tokyo, Osaka, Sapporo, Seoul") |
durationV3 | array | — | Project length: week, month, semester, ongoing |
workload | array | — | Hours per week: as_needed, part_time, full_time |
contractToHire | boolean | false | Include only Contract-to-Hire roles |
category | string | — | Job category (see supported categories below) |
subcategory | string | — | Job subcategory — only valid when category is also set |
Example Input
{"keyword": "backend developer","maxResults": 50,"sort": "recency","contractorTier": ["IntermediateLevel", "ExpertLevel"],"jobType": ["hourly"],"hourlyRateMin": 30,"hourlyRateMax": 100,"category": "Web, Mobile & Software Dev","subcategory": "Web Development","durationV3": ["month", "semester", "ongoing"],"workload": ["full_time"]}
Output
Each item in the dataset represents one job posting.
| Field | Type | Description |
|---|---|---|
id | string | Upwork internal job ID |
ciphertext | string | Job URL identifier (e.g. ~022xxx) |
title | string | Job title |
description | string | Full job description |
skills | string[] | Required skills |
jobType | string | HOURLY or FIXED |
contractorTier | string | null | EntryLevel, IntermediateLevel, or ExpertLevel |
hourlyBudgetMin | number | null | Min hourly rate (HOURLY jobs only) |
hourlyBudgetMax | number | null | Max hourly rate (HOURLY jobs only) |
hourlyEngagementType | string | null | FULL_TIME, PART_TIME, AS_NEEDED (HOURLY only) |
engagementDurationLabel | string | null | Contract duration label (HOURLY only) |
engagementDurationWeeks | number | null | Contract duration in weeks (HOURLY only) |
fixedPriceAmount | number | null | Fixed price in USD (FIXED jobs only) |
fixedPriceDurationLabel | string | null | Project duration label (FIXED only) |
fixedPriceDurationWeeks | number | null | Project duration in weeks (FIXED only) |
createTime | string | Job creation timestamp (ISO 8601) |
publishTime | string | Job publish timestamp (ISO 8601) |
Example Output
{"id": "2054308449345801268","ciphertext": "~022054308449345801268","title": "Backend Developer (Node.js + n8n)","description": "We're looking for a backend developer with deep expertise in n8n...","skills": ["Node.js", "API", "JavaScript", "MySQL"],"jobType": "HOURLY","contractorTier": "IntermediateLevel","hourlyBudgetMin": 30,"hourlyBudgetMax": 60,"hourlyEngagementType": "FULL_TIME","engagementDurationLabel": "More than 6 months","engagementDurationWeeks": 52,"fixedPriceAmount": null,"fixedPriceDurationLabel": null,"fixedPriceDurationWeeks": null,"createTime": "2026-05-12T21:11:16.591Z","publishTime": "2026-05-12T21:12:10.479Z"}
Use Cases
- Job hunting — Monitor opportunities matching your exact skill set without manual searching
- Market research — Analyze demand for specific skills and typical budget ranges
- Rate benchmarking — Collect hourly rate data across experience levels and categories
- Job alert pipelines — Feed results into Slack, email, or a database for real-time alerts
Supported Categories
| Category | Subcategories (sample) |
|---|---|
| Accounting & Consulting | Accounting & Bookkeeping, Financial Planning, Recruiting & Human Resources, … |
| Admin Support | Data Entry & Transcription Services, Virtual Assistance, Project Management, … |
| Customer Service | Customer Service & Tech Support, Community Management & Tagging |
| Data Science & Analytics | AI & Machine Learning, Data Analysis & Testing, Data Mining & Management, … |
| Design & Creative | Art & Illustration, Branding & Logo Design, Video & Animation, … |
| Engineering & Architecture | Civil & Structural Engineering, Electrical & Electronic Engineering, 3D Modeling & CAD, … |
| IT & Networking | DevOps & Solution Architecture, Information Security & Compliance, Network & System Administration, … |
| Legal | Corporate & Contract Law, Finance & Tax Law, International & Immigration Law, … |
| Sales & Marketing | Digital Marketing, Lead Generation & Telemarketing, Marketing, PR & Brand Strategy |
| Translation | Translation & Localization Services, Language Tutoring & Interpretation |
| Web, Mobile & Software Dev | Web Development, Mobile Development, AI Apps & Integration, Ecommerce Development, … |
| Writing | Content Writing, Editing & Proofreading Services, Professional & Business Writing, … |
Supported Client Locations
Regions
Africa · Americas · Antarctica · Asia · Europe · Oceania
Countries
Albania · Algeria · Argentina · Armenia · Australia · Austria · Azerbaijan · Bahrain · Bangladesh · Belgium · Bolivia · Bosnia and Herzegovina · Brazil · Bulgaria · Cambodia · Cameroon · Canada · Chile · China · Colombia · Costa Rica · Croatia · Cyprus · Czech Republic · Denmark · Dominican Republic · Ecuador · Egypt · El Salvador · Estonia · Ethiopia · Finland · France · Georgia · Germany · Ghana · Greece · Guatemala · Honduras · Hong Kong · Hungary · Iceland · India · Indonesia · Ireland · Israel · Italy · Jamaica · Japan · Jordan · Kazakhstan · Kenya · Kuwait · Kyrgyzstan · Latvia · Lebanon · Lithuania · Luxembourg · Malaysia · Malta · Mexico · Moldova · Mongolia · Montenegro · Morocco · Myanmar · Nepal · Netherlands · New Zealand · Nicaragua · Nigeria · Norway · Oman · Pakistan · Panama · Paraguay · Peru · Philippines · Poland · Portugal · Qatar · Romania · Rwanda · Saudi Arabia · Senegal · Serbia · Singapore · Slovakia · Slovenia · South Africa · South Korea · Spain · Sri Lanka · Sweden · Switzerland · Taiwan · Tanzania · Thailand · Tunisia · Turkey · Ukraine · United Arab Emirates · United Kingdom · United States · Uruguay · Uzbekistan · Venezuela · Vietnam · Zimbabwe · and more.
Limitations
- Search results are limited to publicly visible job postings (visitor-level access)
- Maximum 1,000 jobs per run
subcategoryis only effective whencategoryis also specifiedfixedBudgetRangesandfixedBudgetMin/fixedBudgetMaxcan be combined and are merged together- Multiple timezones with the same UTC offset are automatically deduplicated