Errori e limiti
Ogni codice di errore dell'API pubblica, la tabella dei limiti per piano, e cosa succede quando li superi.
Un'unica forma di errore, un unico posto dove cercare ogni codice.
Ogni errore di /api/v1 risponde con la stessa forma del corpo:
{
"error": "TEMPLATE_NOT_FOUND",
"message": "No Template with this id exists for this account."
}Decidi in base al campo error, mai in base al testo del messaggio — il messaggio è per una persona che legge i log, non per il tuo codice da interpretare.
Ogni codice di errore
| Codice | Stato | Messaggio |
|---|---|---|
API_KEY_INVALID | 401 | The API Key is malformed, unknown, revoked, or its account is inactive. |
API_KEY_MISSING | 401 | Send the API Key as an `Authorization: Bearer` header. |
CONCURRENCY_LIMIT_REACHED | 429 | This account already has the maximum number of Runs in flight for its plan. |
EXPORT_LIMIT_REACHED | 402 | This account has used its Quota for the current billing period. |
FILE_TOO_LARGE | 413 | The uploaded file exceeds this plan's upload size ceiling. |
IDEMPOTENCY_KEY_REUSED | 409 | This `Idempotency-Key` was already used for a different request. |
INSUFFICIENT_SCOPE | 403 | The API Key does not carry the scope this operation requires. |
INVALID_IDEMPOTENCY_KEY | 422 | `Idempotency-Key` must be 1-255 printable characters. |
INVALID_PARSE_PARAMS | 422 | `delimiter` must be one printable character; `header_row` must be a non-negative integer within the row ceiling. |
MALFORMED_FILE | 400 | The file could not be read: it is empty, corrupt, or not encoded as expected. |
NO_SUBSCRIPTION | 403 | This account has no active subscription. |
RATE_LIMITED | 429 | This account has exceeded its request rate limit for this operation. |
ROW_LIMIT_EXCEEDED | 413 | The uploaded file exceeds this plan's row ceiling. |
RUN_NOT_FOUND | 404 | No Run with this id exists for this account. Runs are kept 30 minutes and are lost if the service restarts. |
SERVER_BUSY | 503 | This worker is at its memory budget; retry shortly. |
TEMPLATE_COLUMNS_MISSING | 422 | The uploaded file is missing one or more columns this Template's operations require. |
TEMPLATE_NOT_FOUND | 404 | No Template with this id exists for this account. |
UNSUPPORTED_FILE_TYPE | 415 | This file type is not supported. |
Quota e concorrenza
Superare le esecuzioni mensili del tuo piano risponde 402 EXPORT_LIMIT_REACHED, con un oggetto quota (usato, limite, quando si azzera). Avviare più esecuzioni contemporaneamente di quante ne permetta la concorrenza del tuo piano risponde 429 CONCURRENCY_LIMIT_REACHED. Inviare richieste più veloci di quanto permetta il ritmo del tuo account risponde con un secondo codice, distinto, 429 RATE_LIMITED. Un worker al suo limite di memoria risponde 503 SERVER_BUSY — riprova a breve.
Ogni risposta di /api/v1 porta le intestazioni X-RateLimit-Limit, X-RateLimit-Remaining e X-RateLimit-Reset per la finestra con cui quella richiesta è stata controllata, così uno script può rallentare prima di essere rifiutato.
Cosa non costa nulla
Elencare i modelli e interrogare lo stato o il risultato di un'esecuzione non consumano mai la tua quota mensile. Conta solo un'esecuzione che finisce e restituisce un file — una rifiutata, fallita, scaduta, interrotta o riprodotta in modo idempotente non viene mai addebitata.
Limiti per piano
| Piano | Righe per file | Esecuzioni al mese | Modelli | File uniti al mese | Esecuzioni simultanee | Dimensione di caricamento |
|---|---|---|---|---|---|---|
| Free | 5,000 | 5 | 2 | 0 | 1 | |
| Pro | 100,000 | 50 | 10 | 5 | 2 | |
| Business | 500,000 | Illimitato | Illimitato | Illimitato | 3 | |
| Enterprise | 1,000,000 | Illimitato | Illimitato | Illimitato | 5 |
Il dettaglio completo di ogni piano è nella pagina dei prezzi.