REST API
Recrut'Auto's REST API exposes the same data as the web interface and the MCP server, but as classic HTTP endpoints. It is suited to programmatic integrations: ATS sync, webhooks, scripts, BI dashboards.
Base endpoint
The API URL depends on the Recrut'Auto environment you use:
- Current environment (the one for this documentation):
https://api.recrutauto.fr
Authentication
All requests must include a Bearer token in the HTTP header. Generate your token from Access tokens.
Authorization: Bearer ra_your_token_here
Examples
List your campaigns
curl https://api.recrutauto.fr/api/campaigns/ \
-H "Authorization: Bearer ra_your_token_here"
Get a campaign
curl https://api.recrutauto.fr/api/campaigns/42 \
-H "Authorization: Bearer ra_your_token_here"
Get an enriched candidate
curl https://api.recrutauto.fr/api/candidates/123/enriched \
-H "Authorization: Bearer ra_your_token_here"
Search for candidates
curl -X POST https://api.recrutauto.fr/api/search/candidates \
-H "Authorization: Bearer ra_your_token_here" \
-H "Content-Type: application/json" \
-d '{"query": "python developer", "page": 1, "size": 20}'
Error codes
| Code | Meaning |
|---|---|
200 | Success |
401 | Invalid or revoked token |
402 | No active subscription — subscribe to a plan |
403 | Insufficient permissions (required role missing) |
404 | Resource not found or outside your subscription's scope |
429 | Rate limit exceeded (60 requests/minute by default) |
5xx | Server error — retry with exponential backoff |
Rate limiting
The API is limited to 60 requests per minute per user. Beyond that, you receive a 429 Too Many Requests. Adjust your pace accordingly (exponential backoff recommended).
OpenAPI documentation
The FastAPI backend automatically exposes interactive documentation:
- Swagger UI:
https://api.recrutauto.fr/docs - ReDoc:
https://api.recrutauto.fr/redoc
There you'll find the exhaustive list of endpoints, request/response schemas, and you can test directly from the browser (after pasting your Bearer token).
If your need is "talk to Claude to create a campaign", use the MCP server instead — it abstracts the HTTP calls and provides pre-configured prompts.