API documentation
Rate limits, credits and errors
Each successful call costs credits (1 for a company search or record, up to 25 for a company's financial statements) and an error costs nothing. Past a per-minute, daily or monthly limit the API answers 429 with a Retry-After header, and every failure uses one JSON error envelope.
Card required, nothing charged for 14 days. 500 credits over the trial.
What a call costs
| A successful call | Credits |
|---|---|
| Account, coverage, managing monitored companies and the sanctions watchlist | 0 |
| Company search, company record, batch lookup item, VAT check, LEI | 1 |
| Corporate events, people and officers, director network, insolvency, procurement | 2 |
| Sanctions screening, per name (beta) | 3 |
| Financial statements of one company (Scale) | 25 |
A batch item costs what the same single call costs. Every response carries its cost in X-Credits-Cost, and GET /account shows the credits used and left.
Limits by plan
| Plan | Requests per minute | Credits per day | Credits per month |
|---|---|---|---|
| Free trial (14 days) | 10 | 200 | 500 |
| Starter | 60 | 1,000 | 1,000 |
| Professional | 120 | 10,000 | 10,000 |
| Scale | 300 | 50,000 | 50,000 |
Starter is EUR 9.99 a month, Professional EUR 29.99, Scale EUR 99.99; Enterprise is custom. Paid plans include a 10% soft overage buffer on the monthly credits, and the key owner is emailed when usage reaches 90% of the allowance.
Rate-limit headers
Every authenticated response, success or error except a bare 401, carries X-RateLimit-Limit (the plan's monthly credits), X-RateLimit-Remaining (credits left after this call) and X-RateLimit-Reset (Unix epoch seconds: 00:00 UTC on the 1st of next month; on the free trial, the trial's end). Every logged response also carries X-Request-Id: quote it when you write to support about a call.
The error envelope
{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Try again in 45 seconds.",
"status": 429
}
}| Status | Code | Description |
|---|---|---|
| 400 | validation_error | Missing or invalid parameters (for example no search term, an invalid country, a limit outside its range). |
| 401 | unauthorized | Missing, invalid, or expired API key. |
| 403 | forbidden | The key has no access to the requested country. |
| 403 | upgrade_required | The scope is not in your plan, or your free trial allowance for it is used up. |
| 404 | not_found | Record or endpoint not found. |
| 409 | idempotency_key_in_progress | A request with this Idempotency-Key (batch endpoints only) is still running; see Retry-After. |
| 422 | idempotency_key_reuse | This Idempotency-Key was already used with a different request body; use a new key. |
| 429 | rate_limit_exceeded | Per-minute (requests) or daily (credits) limit exceeded; wait the Retry-After seconds. |
| 429 | quota_exceeded | Monthly credits exhausted (including the 10% paid-plan grace); resets at month start. |
| 500 | internal_error | Server error; safe to retry with exponential backoff. |
Retrying a batch safely
The three batch endpoints accept an optional Idempotency-Key header (1-255 printable ASCII characters, scoped to your key). The same key with the same request within 24 hours returns the original response with Idempotent-Replayed: true and uses no new credits; a 4xx or 5xx result releases the key at once.
Limits
- The batch endpoints (
POST /companies/lookup,POST /sanctions/screen,POST /insolvency/check) count every item as one request; a batch that does not fit in your remaining quota is refused up front with 429batch_exceeds_quotaandmax_items_now. - The free trial lasts 14 days, needs a card, charges nothing during it and then becomes Starter at EUR 9.99 a month unless you cancel; it includes 500 credits in total plus 25-call allowances on sanctions screening, people search and company events.
- Company financial statements (
GET /companies/{id}/financials) need the Scale plan or above and cost 25 credits a call; Starter, Professional and trial keys get 10 such calls a month. - Sanctions screening is in beta. PEP data is in beta and covers Spain only.
This page is a short guide; the full reference has every parameter and response, and openapi.json is the machine-readable specification.