Upwork
Upwork is a global freelancing platform that connects businesses with independent professionals through a talent marketplace. The Upwork API enables developers to integrate Upwork features into their applications, including job search, contract management, messaging, profile access, and webhook event subscriptions. The API is primarily GraphQL-based at api.upwork.com/graphql, with OAuth 2.0 authentication. Key resources include job postings, contracts, user profiles, messages, and freelancer search. The platform serves over 800,000 clients and 18 million freelancers across 180+ countries.
Limited machine-readable signal and partial portal coverage — documentation a human can read, but little a machine or agent can consume without scraping.
API Evangelist profiles Upwork the way a machine reads it — 110 machine-readable artifacts across 7 APIs, pulled from the provider's own public surface and indexed so a developer, an analyst, or an AI agent can evaluate it against every other provider on the network.
Every provider in the network is reduced to the same set of machine-readable artifacts — OpenAPI contracts, event specifications, GraphQL schemas, runnable collections, pricing and rate-limit signals, security posture, OAuth scopes, and the agent surfaces (MCP servers and skills) that let software drive the API on its own. We profile them because the interface is the part of a company you can actually inspect: it is a truer signal of what a provider does than any marketing page. From those artifacts we compute the Kin Score — Upwork scores 31.6/100 (thin), with a separate agent-readiness read of 36/100 (agent ready). The full breakdown is below, followed by every artifact we hold — each card links through to its machine-readable definition on apis.io.
Kin Score
This is the API Evangelist rating — a single, repeatable read computed from the artifacts on this page. Green fill is points earned; the red track is points possible, so every bar shows earned-versus-possible at a glance. Every facet and dimension name is a link: it opens that measurement's page on APIs.io, where the rating runs across the whole catalog — the exact checks that feed it, how every profiled provider distributes on it, and who is at the top of it.
Put this on your own site. The badge is drawn live from Upwork's current Kin Score — paste it once and it updates itself every time the score is recomputed. It follows your visitor's light or dark setting, and it links back here so anyone who sees it can read the full breakdown.
<!-- Kin Score · API Evangelist -->
<a href="https://providers.apievangelist.com/providers/upwork/"
title="Upwork on API Evangelist — API profile and Kin Score">
<img src="https://apis.io/badge/upwork.svg"
alt="Upwork Kin Score — API readiness rating by API Evangelist" width="150" height="150" loading="lazy">
</a>
[](https://providers.apievangelist.com/providers/upwork/)
<!-- Kin Score · API Evangelist -->
<a href="https://providers.apievangelist.com/providers/upwork/"
title="Upwork on API Evangelist — API profile and Kin Score">
<img src="https://apis.io/badge/upwork/card.svg"
alt="Upwork Kin Score — API readiness rating by API Evangelist" width="340" height="120" loading="lazy">
</a>
More shapes, themes and sizes → · Score as JSON · How badges work
How we profile Upwork
Each block below is one kind of artifact we hold for Upwork. For each we say what it is and why it earns a place in the profile, then list every one we've indexed — capped at two rows, scroll within the panel for the rest.
APIs 7
Each API is captured as its own OpenAPI definition — every operation, parameter, and response. This is the single most useful machine-readable description of what an API does, and it's what lets us score, lint, mock, and generate against it without asking the provider for anything.
Individual APIs this provider publishes, each with its own machine-readable definition.
Upwork Authentication API
OAuth 2.0 token management for API access.
Upwork Contracts API
Access and manage freelance contracts including terms, milestones, and time entries.
Upwork Jobs API
Search and retrieve job postings on the Upwork marketplace.
Upwork Messages API
Read and send messages within active contracts.
Upwork Organizations API
Team and organization management.
Upwork Profiles API
Query freelancer and client user profiles, skills, and ratings.
Upwork Reports API
Financial and engagement reports for teams and organizations.
Scroll within the panel for all 7 ·
Open Collections 10
Open, tool-agnostic collections carry the same runnable value as Postman without locking you to one client — the portable, forkable form of the same exercise.
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
API Collection
OPEN COLLECTIONUpwork GraphQL Authentication API
OPEN COLLECTIONUpwork GraphQL Authentication Contracts API
OPEN COLLECTIONUpwork GraphQL API
OPEN COLLECTIONUpwork GraphQL Authentication Jobs API
OPEN COLLECTIONUpwork GraphQL Authentication Messages API
OPEN COLLECTIONUpwork GraphQL Authentication Organizations API
OPEN COLLECTIONUpwork GraphQL Authentication Profiles API
OPEN COLLECTIONUpwork GraphQL Authentication Reports API
OPEN COLLECTIONUpwork REST API
OPEN COLLECTIONScroll within the panel for all 10 ·
GraphQL 1
Where a provider ships GraphQL, the schema is the contract. We profile it alongside the REST surface so the whole interface is legible in one place.
GraphQL schemas published by this provider.
Upwork GraphQL API
The primary Upwork API surface, providing GraphQL queries and mutations for job search, profile access, contract management, and messaging. Authentication uses OAuth 2.0 authori...
GRAPHQLPricing Plans 1
Pricing is part of the interface. Machine-readable plans tell you what a tier costs and includes before you commit — one of the things the Kin Score reads for access clarity — renamed from commercial clarity in rubric 0.12, because a free statutory interface has access terms and no commercial ones.
Published pricing tiers and plan structures.
Upwork Plans Pricing
PLANSRate Limits 1
Rate limits are the difference between a demo that works and a production integration that doesn't fall over. Publishing them is an operational-transparency signal — and a hard requirement for any agent that plans its own throughput.
Documented rate limits and quota policies.
Upwork Rate Limits
RATE LIMITSFinOps 1
Cost, billing, and metering signals let a buyer model the financial operations of an API before it's live. We profile them for the same reason we profile pricing: the money is part of the contract.
Cost, billing, and metering signals for API financial operations.
Upwork Finops
FINOPSFeatures 8
The notable capabilities this provider advertises, captured as structured features so they can be searched and compared instead of read one landing page at a time.
Notable capabilities this provider offers.
Job Search
Search and filter job postings using marketplaceJobPostingsSearch GraphQL query with full-text and faceted search.
Contract Management
Access active and completed contracts, contract terms, milestones, and time entries.
Messaging
Read and send messages within active contracts using GraphQL mutations.
Profile Access
Query freelancer and client profiles, skills, portfolios, and ratings.
Webhook Subscriptions
Subscribe to events for real-time notifications when contracts, jobs, or messages change.
OAuth 2.0 Authentication
Secure API access using OAuth 2.0 authorization code grant flow with refresh token support.
Multi-Language SDKs
Official SDKs for Python, Node.js, Java, Go, Ruby, PHP, and Perl with OAuth2 support.
GraphQL Explorer
Interactive GraphQL API explorer at upwork.com/developer/explorer for testing queries.
Scroll within the panel for all 8 ·
Semantic Vocabularies 1
JSON-LD contexts give the data shared meaning across APIs. We profile them because semantics are what let a machine reconcile 'customer' here with 'customer' somewhere else.
JSON-LD contexts and semantic vocabularies used across these APIs.
Upwork Context
JSON-LDSpectral Rules 2
Governance rulesets we run against this provider's specs — the automated checks behind parts of the score. Profiling them makes the quality bar explicit and re-runnable, not a matter of opinion.
Upwork API Rules
SPECTRALUpwork API Rules
SPECTRALJSON Schema 22
Standalone JSON Schema definitions describe the data models behind the API. We profile them so the shapes are validatable on their own — useful long after a single request is forgotten.
Standalone JSON Schema definitions for this provider's data models.
Budget
JSON SCHEMAClient
JSON SCHEMAContractListResponse
JSON SCHEMAContract
JSON SCHEMAFreelancerProfile
JSON SCHEMAFreelancerSearchResponse
JSON SCHEMAGraphQLError
JSON SCHEMAGraphQLRequest
JSON SCHEMAGraphQLResponse
JSON SCHEMAJob
JSON SCHEMAJobSearchResponse
JSON SCHEMAMessageCreate
JSON SCHEMAMessageListResponse
JSON SCHEMAMessage
JSON SCHEMAOAuthToken
JSON SCHEMAPaging
JSON SCHEMASkill
JSON SCHEMAEngagementListResponse
JSON SCHEMAEngagement
JSON SCHEMAReportResponse
JSON SCHEMATeamListResponse
JSON SCHEMATeam
JSON SCHEMAScroll within the panel for all 22 ·
JSON Structure 22
JSON Structure captures the data shapes in a form built for tooling — a complement to JSON Schema that keeps the model machine-legible.
JSON Structure definitions describing this provider's data shapes.
Graphql Budget Structure
JSON STRUCTUREGraphql Client Structure
JSON STRUCTUREGraphql Contract List Response Structure
JSON STRUCTUREGraphql Contract Structure
JSON STRUCTUREGraphql Freelancer Profile Structure
JSON STRUCTUREGraphql Freelancer Search Response Structure
JSON STRUCTUREGraphql Graph Ql Error Structure
JSON STRUCTUREGraphql Graph Ql Request Structure
JSON STRUCTUREGraphql Graph Ql Response Structure
JSON STRUCTUREGraphql Job Search Response Structure
JSON STRUCTUREGraphql Job Structure
JSON STRUCTUREGraphql Message Create Structure
JSON STRUCTUREGraphql Message List Response Structure
JSON STRUCTUREGraphql Message Structure
JSON STRUCTUREGraphql O Auth Token Structure
JSON STRUCTUREGraphql Paging Structure
JSON STRUCTUREGraphql Skill Structure
JSON STRUCTURERest Engagement List Response Structure
JSON STRUCTURERest Engagement Structure
JSON STRUCTURERest Report Response Structure
JSON STRUCTURERest Team List Response Structure
JSON STRUCTURERest Team Structure
JSON STRUCTUREScroll within the panel for all 22 ·
Examples 22
Real request and response payloads are what turn a spec from abstract into obvious — and they're one of the twelve things an agent needs to call an API correctly on the first try.
Example request and response payloads for these APIs.
Graphql Budget Example
EXAMPLEGraphql Client Example
EXAMPLEGraphql Contract Example
EXAMPLEGraphql Job Example
EXAMPLEGraphql Message Example
EXAMPLEGraphql O Auth Token Example
EXAMPLEGraphql Paging Example
EXAMPLEGraphql Skill Example
EXAMPLERest Engagement Example
EXAMPLERest Report Response Example
EXAMPLERest Team Example
EXAMPLEScroll within the panel for all 22 ·
Security Posture 2
Authentication, domain security, vulnerability disclosure, and trust-center signals — the evidence that a provider takes security seriously enough to document it. We profile it because you can't govern what you can't see.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
Scopes 1
OAuth scopes are the vocabulary of least-privilege access. Profiling them shows exactly what an integration — or an agent acting on a user's behalf — is allowed to do.
OAuth scopes governing access to this provider's APIs.
Agentic Access 1
An x-agentic-access contract marks which operations are safe for an agent to run on its own and which need a human in the loop. It is the difference between an API an agent can use and one it can use safely.
Recommended x-agentic-access execution contracts for AI agents.
Use Cases 5
What developers actually build with this provider — captured so the catalogue answers 'what is this for', not just 'what does this expose'.
What developers build with this provider.
Freelancer Management
Agencies and businesses managing a distributed freelancer workforce through programmatic contract and message access.
Job Monitoring
Applications tracking new job postings matching specific criteria using scheduled search queries.
Talent Analytics
Platforms building talent scoring, profile analysis, and market intelligence on freelancers.
CRM Integration
Connecting Upwork client and contract data to CRM systems for unified client management.
Automated Reporting
Building custom dashboards and reports from Upwork contract, billing, and engagement data.
Integrations 3
Pre-built integrations with other platforms tell you where this provider already fits in a stack.
Pre-built integrations with other platforms and tools.
PowerBI Connector
Official Power BI connector for importing Upwork data into business intelligence dashboards.
OAuth 2.0 Providers
Standard OAuth 2.0 integration with any identity provider supporting authorization code flow.
Webhook Integration
Real-time event streaming to external systems via Upwork subscription webhooks.
Resources
Every other property we hold for Upwork — documentation, portals, status pages, policies, and corporate surface — grouped by the job it does, following the integrator's arc from getting started to running in production.
Get Started 1
Portal, sign-up, and the first successful call
Documentation 2
Reference material describing how the API behaves
Agent Surfaces 1
MCP servers, agent skills, and machine-readable catalogs
Design & Contract 3
Pagination, idempotency, versioning, errors, and events
Build 8
SDKs, sample code, and the tooling you integrate with
Scroll within the panel for all 8 ·
Access & Security 4
Authentication, authorization, and security posture
Operate 3
Status, limits, changes, and where to get help
Commercial 1
Pricing, plans, and the legal terms of use
Company 2
The organization behind the API
← All providers · Data indexed from github.com/api-evangelist/upwork · machine-readable index on apis.io
This is an independent, third-party profile of Upwork, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.