# Eur Lex Europa — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Access and explore the complete collection of European Union laws, regulations, and Official Journal publications through a comprehensive database that lets you search documents, retrieve full texts, summaries, and metadata, and track legislative procedures and national implementations. Find exactly what you need with detailed search capabilities and get detailed information about how EU laws are transposed into national legislation.

**Category:** Government & Public Data | **Website:** [eur-lex.europa.eu/](https://eur-lex.europa.eu/) | **Docs:** [parse.bot/marketplace/12f96982-e19e-457c-9ebf-70890668ee4b/eur-lex-europa-eu-api](https://parse.bot/marketplace/12f96982-e19e-457c-9ebf-70890668ee4b/eur-lex-europa-eu-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get document metadata

Retrieve full metadata for a document by its CELEX number. Returns title, type, authors, dates, and all available literal properties from the Cellar SPARQL endpoint. Returns input_not_found if no document matches the CELEX.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `celex` | string | Yes | CELEX number of the document (e.g. 32016R0679) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/get-document-metadata \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"celex":"<string>"}'
```

### Get document procedure

Retrieve the legislative procedure history for a document, including key dates (signature, entry into force) and related documents (legal basis, amendments, repeals). Uses SPARQL to query the Cellar knowledge graph.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `celex` | string | Yes | CELEX number of the document (e.g. 32016R0679) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/get-document-procedure \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"celex":"<string>"}'
```

### Get document summary

Retrieve the official plain-language summary for a document from EUR-Lex. Not all documents have summaries; summary_html and summary_text will be null if unavailable.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `celex` | string | Yes | CELEX number of the document (e.g. 32016R0679) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/get-document-summary \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"celex":"<string>"}'
```

### Get document text html

Retrieve the full HTML text of a document from EUR-Lex, including structured articles when available. Works best for OJ-published legislative documents (regulations, directives). Non-legislative documents may return full text without structured article extraction.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `celex` | string | Yes | CELEX number of the document (e.g. 32016R0679) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/get-document-text-html \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"celex":"<string>"}'
```

### Get national transposition

Retrieve national transposition measures for a directive. Returns measures grouped by country, each with title and link to the national implementing measure. Only applicable to directives (CELEX numbers starting with a digit followed by year and 'L').

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `celex` | string | Yes | CELEX number of the directive (e.g. 32016L0680) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/get-national-transposition \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"celex":"<string>"}'
```

### Get official journal daily

Retrieve the list of acts published in the Official Journal for a specific date via the Cellar SPARQL endpoint. Returns documents with their CELEX number, title, and type. Future or unpublished dates return an empty acts array.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `date` | string | No | Date in DDMMYYYY or YYYY-MM-DD format. Omitting defaults to today's date. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/get-official-journal-daily \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"date":"<string>"}'
```

### Search documents

Search for EU legal documents using keywords, year, document number, or type. Queries the Cellar SPARQL endpoint. Text search (query parameter) performs a case-insensitive title match and works best combined with year or doc_type filters; broad text-only queries may time out upstream. Returns paginated results of 20 per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `doc_type` | string | No | Filter by document type code |
| `number` | string | No | Filter by document number |
| `order` | string | No | Sort order |
| `page` | integer | No | Page number (20 results per page) |
| `query` | string | No | Search keywords to match in document titles (case-insensitive substring match). Works best combined with year or doc_type filters. |
| `sort` | string | No | Sort field |
| `year` | string | No | Filter by document year (e.g. 2024) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/eur-lex-europa/search-documents \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"doc_type":"<string>","number":"<string>","order":"<string>","page":"<integer>","query":"<string>","sort":"<string>","year":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.