GET /api/documentos/documento/
GET /api/documentos/documento/
Un documento no se edita: se crea, se emite y, si estaba mal, se borra.
Sin PUT ni PATCH sobre el documento. No es una restricción de
permisos sino de forma: un documento fiscal es un hecho con fecha, número y
firma, y editarlo en sitio abre la puerta a que lo que se emitió y lo que se
guarda dejen de coincidir. Mientras es borrador, corregirlo es borrarlo y
volver a crearlo —que además libera el consecutivo—; una vez emitido, lo que
corrige una factura es una nota, no un PATCH.
Lo que sí cambia el documento son las acciones de más abajo, cada una con su
regla: emitir (firma, envía o consulta), notificar. El estado no es
un campo que se escriba, es la consecuencia de una operación.
operationId: documentos_documento_list
Autenticación
Sección titulada «Autenticación»Cualquiera de estas credenciales:
- LlaveApi — Llave de API de una integración. El valor completo es
Api-Key <prefijo>.<secreto>, tal como lo imprimemanage.py crear_llave_api. La llave alcanza exactamente los mismos emisores que la persona a cuyo nombre se creó.
Parámetros
Sección titulada «Parámetros»| Nombre | En | Tipo | Obligatorio | Descripción |
|---|---|---|---|---|
ordering | query | string | no | Qué campo usar para ordenar los resultados. |
page | query | integer | no | Un número de página dentro del conjunto de resultados paginado. |
search | query | string | no | Un término de búsqueda. |
Ejemplo
Sección titulada «Ejemplo»curl "https://api.rededoc.uk/api/documentos/documento/" \ -H "Authorization: <llaveapi>"Respuestas
Sección titulada «Respuestas»| Código | Descripción |
|---|---|
200 | |
401 | Error |
429 | Error |
200 — cuerpo
Sección titulada «200 — cuerpo»| Campo | Tipo | Descripción |
|---|---|---|
count | integer | |
next | string (uri) | Admite null. |
previous | string (uri) | Admite null. |
results | array<DocumentoLista> |
{ "count": 123, "next": "http://api.example.org/accounts/?page=4", "previous": "http://api.example.org/accounts/?page=2", "results": [ { "id": "00000000-0000-0000-0000-000000000000", "documento_tipo": 1, "documento_tipo_nombre": "texto", "estado": 1, "estado_nombre": "texto", "emisor": 1, "resolucion": 1, "resolucion_numero": "texto", "adquiriente": null, "prefijo": "texto", "consecutivo": 0, "numero": "texto", "cufe_cude": "texto", "track_id": "texto", "envio": null, "ambiente": null, "fecha_validacion": "2026-01-31T10:00:00-05:00", "notificado": true, "concepto_correccion": "texto", "fecha_vencimiento": "2026-01-31", "orden_compra": "texto", "orden_compra_fecha": "2026-01-31", "orden_compra_tipo": "texto", "orden_compra_documento": "texto", "fecha_emision": "2026-01-31", "hora_emision": "texto", "moneda": 1, "forma_pago": 1, "medio_pago": 1, "valor_bruto": "0.00", "total_impuestos": "0.00", "total_descuentos": "0.00", "descuentos_motivo": "texto", "total_cargos": "0.00", "cargos_motivo": "texto", "total_a_pagar": "0.00", "documento_referencia": "00000000-0000-0000-0000-000000000000", "observaciones": "texto", "pos": null, "creado_en": "2026-01-31T10:00:00-05:00", "actualizado_en": "2026-01-31T10:00:00-05:00", "total_errores": 1 } ]}401 — cuerpo
Sección titulada «401 — cuerpo»| Campo | Tipo | Descripción |
|---|---|---|
detail | string | Mensaje para mostrar a la persona. |
errores | array<object> | Nunca vacía. Cada error trae codigo, que es lo que el cliente mapea —los de DRF tal cual (required, invalid, does_not_exist, not_found…) y los propios en español (campo_desconocido, solicitud_invalida…)—, y mensaje, para la persona. Si el error es de un campo, su ruta va delante del mensaje: detalles[0].impuestos[0].tributo: Este campo es obligatorio. |
{ "detail": "texto", "errores": [ { "codigo": "texto", "mensaje": "texto" } ]}429 — cuerpo
Sección titulada «429 — cuerpo»| Campo | Tipo | Descripción |
|---|---|---|
detail | string | Mensaje para mostrar a la persona. |
errores | array<object> | Nunca vacía. Cada error trae codigo, que es lo que el cliente mapea —los de DRF tal cual (required, invalid, does_not_exist, not_found…) y los propios en español (campo_desconocido, solicitud_invalida…)—, y mensaje, para la persona. Si el error es de un campo, su ruta va delante del mensaje: detalles[0].impuestos[0].tributo: Este campo es obligatorio. |
{ "detail": "texto", "errores": [ { "codigo": "texto", "mensaje": "texto" } ]}RedEDoc es un servicio de Semántica Digital S.A.S.