Skip to main content
GET
/
batch-import
/
entity-jobs
/
{jobId}
/
failures
Fallos batch de entidades
curl --request GET \
  --url http://api.gu1.ai/batch-import/entity-jobs/{jobId}/failures \
  --header 'Authorization: Bearer <token>'

Endpoints

GET https://api.gu1.ai/batch-import/entity-jobs/{jobId}/failures.csv
GET https://api.gu1.ai/batch-import/entity-jobs/{jobId}/failures
Alias legacy CSV (mismo archivo):
GET https://api.gu1.ai/entities/automatic/bulk/imports/{jobId}/failures.csv
  • …/failures.csv → descarga CSV (solo filas failed)
  • …/failures → JSON (failures[] + skips[] si aplica)

Autenticación y permisos

Authorization: Bearer TU_API_KEY
Requiere al menos uno de: transactions:create, entities:bulk_import, events:create.

Respuestas HTTP

CódigoCuándo
200Job encontrado
401Sin autenticación
403Sin permiso
404Job no encontrado

Columnas CSV (failures.csv)

Solo filas con outcome=failed.
ColumnaDescripción
tax_idTax id de la fila
typeperson o company
outcomeSiempre failed en este export
codeCódigo estable — catálogo
error_messageDetalle legible
Duplicado por taxId (bulk manual default): mismo taxId + mismo tipo → skipped_existing, código SKIPPED_DUPLICATE_TAX_ID. No aparece en failures.csv. Consultá JSON skips[] o el reporte completo del job.

Respuesta JSON

Incluye failures[] (solo failed) y, si aplica, skips[] / skipsTotal (filas omitidas, no errores).
{
  "success": true,
  "jobId": "…",
  "kind": "entity_automatic",
  "status": "completed",
  "totalItems": 100,
  "succeeded": 97,
  "failed": 2,
  "skipped": 1,
  "failures": [
    {
      "taxId": "20123456789",
      "type": "company",
      "outcome": "failed",
      "code": "DUPLICATE_EXTERNAL_ID",
      "message": "An entity with external ID \"X\" already exists…"
    }
  ],
  "truncated": false,
  "failuresTotal": 2,
  "skips": [
    {
      "taxId": "30111222333",
      "type": "person",
      "outcome": "skipped_existing",
      "code": "SKIPPED_DUPLICATE_TAX_ID"
    }
  ],
  "skipsTotal": 1
}
Campo skipSignificado
SKIPPED_DUPLICATE_TAX_IDBulk manual: taxId+tipo ya existía
SKIPPED_ENTITY_ALREADY_EXISTSBulk automático: entidad ya existía
Ver también: Importar entidades, Códigos de fallo.