Errores
DVS usa un envelope de error estándar:
{
"error_code": "071-403-document-type-not-allowed",
"message": "Provider does not have access to the requested document type",
"additional_information": {
"document_type": "OPME",
"country_code": "BR",
"agreement_code": "BRADESCO_xxx"
}
}
Catálogo
4xx — Errores del cliente
| Status | error_code | Significado |
|---|---|---|
| 400 | 071-400 | Bad request genérico |
| 401 | 071-401 | Bearer token ausente o inválido |
| 403 | 071-403 | Carece de la authority requerida |
| 403 | 071-403-document-type-not-allowed | Sin acceso al (document_type, country, agreement) solicitado |
| 403 | 071-403-tenant-mismatch | Intento de acceso cross-tenant |
| 403 | 071-403-classifier-not-allowed | El classifier_slug solicitado no está disponible para el tenant |
| 404 | 071-404 | Recurso no encontrado |
| 404 | 071-404-no-rules-configured | No existe rule set para el tipo de documento |
| 409 | 071-409 | Conflicto (genérico) |
| 409 | 071-409-idempotency-mismatch | Misma Idempotency-Key con body diferente |
| 413 | 071-413-file-too-large | El archivo inline excede el límite de tamaño |
| 422 | 071-422 | Error de validación (Pydantic) |
| 422 | 071-422-unknown-document-type | document_type fuera del catálogo |
| 422 | 071-422-agreement-required | Múltiples agreements disponibles; especificar uno |
| 422 | 071-422-ssrf-blocked | URL externa bloqueada por la política de seguridad |
| 422 | 071-422-mime-not-allowed | MIME type fuera de la allowlist |
| 422 | 071-422-s3-url-not-allowed | S3 URL no pertenece a un bucket de la allowlist |
| 429 | 071-429 | Límite de rate o cuota excedido |
5xx — Errores del servidor
| Status | error_code | Significado |
|---|---|---|
| 500 | 071-500 | Error interno inesperado |
| 500 | 071-500-no-default-classifier | Configuración inválida para el tenant — contactar a OSIGU |
| 502 | 071-502-classifier-upstream | El motor de classification upstream falló tras los retries |
| 502 | 071-502-extraction-failed | La extracción del documento falló tras los retries upstream |
| 503 | 071-503-globally-paused | El circuit breaker global está activo |
| 503 | 071-503-extraction-paused | Se alcanzó el cap horario de extracción |
| 504 | 071-504-sync-timeout | La request sync excedió el presupuesto de procesamiento; hacer polling para obtener el resultado |
Estrategia de retry
Ver Manejo de Errores para la política completa de retry.