# Legifrance — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://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.

> Search and retrieve official French legal documents, laws, and unclaimed estate notices from the Journal Officiel (JORF), including the ability to browse the latest published issues. Find specific legal texts and succession notices to stay informed about French legislation and inheritance announcements.

**Category:** Government & Public Data | **Website:** [legifrance.gouv.fr/](https://legifrance.gouv.fr/) | **Docs:** [parse.bot/marketplace/f66e9005-464c-4346-b39f-97782bfb2cf0/legifrance-gouv-fr-api](https://parse.bot/marketplace/f66e9005-464c-4346-b39f-97782bfb2cf0/legifrance-gouv-fr-api)

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

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/legifrance/`
**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 jorf issue

Retrieve the table of contents of a specific JORF issue by date and number. Returns sections with their text items. The date and number are obtainable from list_latest_jorf_issues.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `day` | string | Yes | Day of publication in DD format (e.g. 11). Leading zeros preserved. |
| `month` | string | Yes | Month of publication in MM format (e.g. 06). Leading zeros preserved. |
| `number` | string | Yes | Issue number (e.g. 0135). Leading zeros preserved. |
| `year` | string | Yes | Year of publication in AAAA format (e.g. 2026). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/legifrance/get-jorf-issue \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"day":"<string>","month":"<string>","number":"<string>","year":"<string>"}'
```

### Get jorf text

Retrieve a specific JORF text (law, decree, announcement, notice) by its unique identifier. Returns the full text content, metadata (NOR, ELI, publication date, JORF number), and content sections. The text_id is obtainable from search_jorf or search_succession_notices results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `text_id` | string | Yes | The unique JORF text identifier (e.g. JORFTEXT000054100654). Obtainable from search_jorf results[*].id or search_succession_notices results[*].id. |

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

### List latest jorf issues

Retrieve the most recently published JORF issues. Returns the latest issues with their date, number, and title. No parameters required. Useful for discovering current issue dates and numbers to pass to get_jorf_issue.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/legifrance/list-latest-jorf-issues \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Search jorf

Full-text search over the Journal Officiel de la République Française (JORF). Matches titles and text bodies. Filters by nature of text (decree, announcement, etc.) and supports relevance or date sorting. Paginates via integer page counter. Each result carries a text_id usable with get_jorf_text for full content.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `nature` | string | No | Filter by nature of text. Known values include 'annonce', 'decret', 'arrete', 'loi', 'ordonnance'. |
| `page` | integer | No | Page number. |
| `page_size` | integer | No | Number of results per page. |
| `query` | string | No | Search keyword or expression. |
| `sort_value` | string | No | Sort order for results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/legifrance/search-jorf \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"nature":"<string>","page":"<integer>","page_size":"<integer>","query":"<string>","sort_value":"<string>"}'
```

### Search succession notices

Specialized search for unclaimed estate (succession vacante) and inheritance-related legal texts in the JORF. Returns paginated results matching succession-related terms. Each result carries a text_id usable with get_jorf_text.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/legifrance/search-succession-notices \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```

## Next steps

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