EPO API

Patent / OAuth Advanced HTTPS
Varies by plan (check documentation)

Overview

The European Patent Office (EPO) Open Patent Services (OPS) API provides access to millions of European patent documents, bibliographic data, and legal status information. It uses OAuth 2.0 for authentication — you register for a free consumer key and secret, then exchange them for a bearer token. Beginners should start with the bibliographic data endpoint to retrieve patent titles and abstracts.

💡

Beginner Tip

Register for a free OPS account at developers.epo.org to get your consumer key and secret. The token endpoint is https://ops.epo.org/3.2/auth/accesstoken — use HTTP Basic Auth with your key:secret to obtain a bearer token valid for 20 minutes.

Available Data

EPO data via REST API
JSON-formatted response data
Requires OAuth authentication

Example Response

JSON Response
{
  "status": "success",
  "data": {
    "result": "Data from EPO",
    "description": "European patent search system api",
    "timestamp": "2025-01-15T10:00:00Z"
  }
}

Field Reference

access_token Bearer token to include as Authorization: Bearer <token> in subsequent API requests
token_type Always "Bearer" — the token type used for API authorization headers
expires_in Token lifetime in seconds (typically 1200 = 20 minutes); re-authenticate before expiry
bibliographic-data Contains patent title, abstract, inventors, applicants, and publication date when querying patent data endpoints
publication-reference Structured patent number with country, document number, and kind code identifying the specific document version

Implementation Example

const url = "https://developers.epo.org/";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "Authorization": "Bearer YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

403 CLIENT_ID_INVALID The consumer key or secret is wrong, or the credentials have not been activated yet
Log into developers.epo.org, confirm your app is approved, and copy the consumer key/secret exactly — avoid extra spaces
401 Unauthorized on data requests The access token has expired (tokens are valid for only 20 minutes)
Re-request a new token before each session or implement a refresh mechanism that re-authenticates when a 401 is received
404 on patent number lookup The patent number format is incorrect — EPO uses a specific format like EP1000000A1
Use the correct format: {country-code}{number}{kind-code} (e.g., EP1000000A1); refer to EPO OPS documentation for number formatting rules

Matrix Score Breakdown

🌐 Reachability 30/30
⚡ Speed 5/20
🔒 Security 15/15
🛠 Developer XP 3/20
✓ Reliability 10/15

Partially tested on Apr 5, 2026

Technical Specifications

Auth OAuth
HTTPS REQUIRED
CORS UNKNOWN
Category Patent
Difficulty Advanced
Verified: 2026-04-04

Similar APIs

View All →