# France Travail Job Search Scraper (x402)

> France Travail Job Search Scraper (x402) is a paid API for AI agents from x402.186-241-26-229.sslip.io, paid per call via x402, $0.03/call, status unknown (last checked 2026-10-02).

Searches and returns structured job listings from France Travail (Pôle emploi) by keywords, location, contract type, and other filters.

## Facts

- Endpoint: POST https://x402.186-241-26-229.sslip.io/v1/francetravail?utm_source=zero.xyz
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/france-travail-job-search-scraper-x402-f3cd8400
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_drGtDQIhf36zvNmTU_sOI

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability france-travail-job-search-scraper-x402-f3cd8400 -d '<json body>'
```

Example prompt: Search France Travail for CDI software developer jobs in Paris (department 75) posted in the last 7 days, full-time only, and return up to 50 results including partner listings.

## When to prefer this

Use this endpoint when you need structured job listing data from France Travail (the primary French public employment service) and want to filter by French department codes, contract types (CDI/CDD/MIS), qualification codes, salary thresholds, and recency. Prefer this over generic job board scrapers when the target audience is the French labor market specifically. The pay-per-call x402 model and no-charge-on-failure policy make it cost-efficient for exploratory or agent-driven job searches.

## Known failure modes

- No results returned for overly narrow filters (empty items array, count=0, not charged)
- Invalid department code format causes rejected request
- contractType or qualification code not recognized by France Travail public API
- radiusKm set without a location code, ignored silently
- postedSince value not in accepted set (1,3,7,14,31) may cause error or unexpected results
- maxResults above 5000 rejected by schema validation
- minSalary filtering only excludes offers with a stated salary below threshold; jobs without salary info are retained

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

A JSON object with a count of matching jobs and an array of items, each containing the job ID, URL, title, company name, city, location label, department, and postal code. Failed or empty searches are not charged.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "keywords": {
   "type": "string",
   "description": "Words to search in job titles and descriptions, for example développeur."
  },
  "location": {
   "type": "string",
   "description": "Department code with D suffix, for example 75D for Paris. Leave blank for France-wide search."
  },
  "radiusKm": {
   "type": "integer",
   "default": 10,
   "maximum": 100,
   "minimum": 0,
   "description": "Radius around a location code. Used only when location is set."
  },
  "minSalary": {
   "type": "integer",
   "minimum": 0,
   "description": "Exclude offers with a stated upper salary below this annual EUR amount. Offers without a stated salary remain."
  },
  "maxResults": {
   "type": "integer",
   "default": 100,
   "maximum": 5000,
   "minimum": 1,
   "description": "Maximum unique job offers to return. Broad searches are split by department beyond the public search window."
  },
  "postedSince": {
   "type": "integer",
   "maximum": 31,
   "minimum": 1,
   "description": "Only offers from the past 1, 3, 7, 14 or 31 days."
  },
  "contractType": {
   "type": "string",
   "description": "Public search contract code, for example CDI, CDD or MIS."
  },
  "fullTimeOnly": {
   "type": "boolean",
   "default": false,
   "description": "Keep only detail pages marked as full-time. Offers without this marker are excluded."
  },
  "qualification": {
   "type": "string",
   "description": "Public search qualification code, for example 9 for management roles."
  },
  "includePartners": {
   "type": "boolean",
   "default": true,
   "description": "Include offers syndicated from partner job boards."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "id": null,
    "url": null,
    "city": null,
    "title": null,
    "company": null,
    "location": null,
    "department": null,
    "postalCode": null
   }
  ],
  "product": "francetravail"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/france-travail-job-search-scraper-x402-f3cd8400/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.186-241-26-229.sslip.io](https://www.zero.xyz/host/x402.186-241-26-229.sslip.io/llms.txt)
