Skip to main content
Piloterr
Back to library

Upwork Jobs API

Upwork Jobs API: search freelance job listings by skill slug or URL. Returns budgets, skills, experience level and pagination via browser rendering.

Active2 credits = 1 requestGET/v2/upwork/jobs

Endpoint Overview

Detailed documentation, pricing, and usage examples.

OverviewLink to Overview

The Upwork Jobs API returns freelance job listings from Upwork skill pages (/freelance-jobs/{skill}/). Pass a skill slug or full URL and receive structured JSON with job titles, budgets, skills, experience level, and pagination.

Upwork pages require browser rendering (wait_for=#__nuxt, ~8s) to load the Nuxt payload and job tiles.

QuickstartLink to Quickstart

GET https://api.piloterr.com/v2/upwork/jobs?query=api-development

Via POST:

POST https://api.piloterr.com/v2/upwork/jobs
Content-Type: application/json

{"query": "api-development", "return_page_source": false}

ParametersLink to Parameters

Parameter Type Required Description
query string yes Skill slug or /freelance-jobs/{skill}/ URL
return_page_source boolean no Raw HTML as {"result": "..."} (default: false)

Response: each job (results[])Link to Response: each job (results[])

Field Type Description
job_id string Upwork job ID
title string Job title
description string Job description
listing_url string Apply URL
job_type string fixed or hourly
budget_min number | null Minimum budget
budget_max number | null Maximum budget
currency string ISO 4217 code (USD)
duration string | null Estimated duration
hours_per_week string | null Weekly hours
experience_level string Entry / Intermediate / Expert
skills string[] Required skills
posted_at string ISO-like timestamp
posted_ago string Relative time label

Response: paginationLink to Response: pagination

Field Type Description
page integer Current page
per_page integer Jobs on this page
total_results integer | null Total matching jobs
total_pages integer | null Total pages
next string | null Next page URL

Upwork API workflowLink to Upwork API workflow

  1. Upwork Jobs: discover open roles by skill (this endpoint)
  2. Upwork Freelancer: enrich talent profiles from a freelancer URL
  3. Upwork Services: browse Project Catalog listings by category
  4. Upwork Services Info: fetch full catalog product details from a product URL

Error codesLink to Error codes

Code Meaning
400 Missing or invalid query
404 Page not parseable
500 Rendering or parsing error

NotesLink to Notes

  • Costs 2 credits per call (browser rendering).

Main use casesLink to Main use cases

  • Job market monitoring: track new Upwork postings by skill
  • Lead generation: discover projects matching your stack
  • Competitive intelligence: analyze budgets and experience levels by category

Related APIs

Expand your data capabilities with these complementary tools.

Ready to get started?

Your web scraping API is one click away. Start with +500 credits, no infrastructure to set up, no proxies to manage, and no credit card required.

  • +500 credits
  • No credit card required
  • All endpoints included