Errores
Cada error responde con Content-Type: application/problem+json y los mismos campos:
{
"type": "https://developers.wfskills.com/docs/errors/insufficient-credits",
"title": "Insufficient credits",
"status": 402,
"detail": "This request needs 10 credits; the balance is 0.",
"instance": "/v1/estimates",
"code": "insufficient_credits",
"param": null,
"request_id": "req_<id>"
}
codees estable. Léelo en tu código en vez detitleodetail.typeenlaza con la página del código.paramnombra el parámetro o la cabecera con el problema, cuando lo hay.request_ididentifica la petición. Inclúyelo cuando escribas al soporte.
Un error validation_failed también trae errors, con una entrada por cada parámetro que falló.
Códigos de error
| HTTP | Código | Título |
|---|---|---|
| 400 | invalid_request | Petición no válida |
| 401 | api_key_missing | Falta la llave de API |
| 401 | api_key_invalid | Llave de API no válida |
| 401 | api_key_revoked | Llave de API revocada |
| 401 | api_key_expired | Llave de API vencida |
| 402 | insufficient_credits | Créditos insuficientes |
| 402 | monthly_cap_reached | Tope mensual alcanzado |
| 403 | scope_missing | Falta el permiso |
| 403 | tenant_suspended | Cuenta suspendida |
| 403 | terms_not_accepted | Términos no aceptados |
| 403 | ip_not_allowed | Dirección IP no permitida |
| 403 | api_key_paused | Llave de API en pausa |
| 403 | test_key_on_live_route | Hace falta una llave live |
| 404 | not_found | No encontrado |
| 405 | method_not_allowed | Método no permitido |
| 409 | idempotency_conflict | Conflicto de idempotencia |
| 413 | payload_too_large | Cuerpo demasiado grande |
| 415 | unsupported_media_type | Tipo de contenido no admitido |
| 422 | validation_failed | Validación fallida |
| 422 | idempotency_key_reused | Llave de idempotencia reutilizada |
| 422 | content_rejected | Contenido rechazado |
| 422 | sandbox_input_on_live | Entrada de sandbox con llave live |
| 422 | unsupported_in_region | No disponible en la región |
| 422 | webhook_url_rejected | URL de webhook rechazada |
| 422 | webhook_endpoint_limit | Límite de endpoints de webhook |
| 422 | event_not_redeliverable | Evento que no se puede reenviar |
| 422 | records_cap_reached | Tope de registros alcanzado |
| 422 | billing_profile_incomplete | Perfil de facturación incompleto |
| 422 | pack_unknown | Paquete desconocido |
| 429 | rate_limited | Límite por minuto |
| 429 | daily_quota_reached | Límite diario alcanzado |
| 429 | sandbox_daily_cap_reached | Tope diario de pruebas |
| 500 | internal_error | Error interno |
| 503 | model_unavailable | Estimador no disponible |
| 503 | service_unavailable | Servicio no disponible |