API DeCA

Emisión, rectificación e acceso aos documentos propios recentes.


Crear documento

POST
https://deca.sertecpesage.com
/api/v1/documents
Bearer

Envía todos os datos do transporte. A resposta entrégase despois de xerar e almacenar o PDF cifrado.

Unha referencia non nula é única por organización e contorno. Repetir a referencia cos mesmos datos normalizados e metadata devolve o resultado orixinal dentro de 24 horas (200), sen emitir outro PDF. Unha creación nova devolve 201. Datos diferentes ou unha referencia doutra credencial producen 409 sen divulgar documentos. Sen referencia non se garante a deduplicación.

Unha referencia co resultado caducado devolve 409 DOCUMENT_WINDOW_EXPIRED. Se o documento está eliminado, non se devolve o contido nin se reutiliza a referencia; o reintento devolve 404. Para rectificar, usa os endpoints PUT.

Podes solicitar un token sk_demo_ sen conta nin alta dunha organización. Dura 24 horas desde a súa emisión e só funciona desde a IP pública que o solicitou. Cambiar de rede ou de IP require solicitar outro token. A demo engade demo: true, expires_at, qr_url (alias de url) e pdf_url (alias de pdf_download_url). document_locale é o idioma escollido ao solicitar o token (es por defecto). Os datos e PDF temporais están separados do arquivo real e non se cifran como os documentos reais.

Crear documento › Corpo da petición

transport_date
​string · date · obrigatorio

Data real do transporte en formato YYYY-MM-DD; non é o instante de creación do PDF.

​Shipper · obrigatorio

Cargador contractual; pode ser diferente do almacén de orixe e do cliente de DeCA.

​Carrier · obrigatorio

Transportista que realiza efectivamente o transporte, incluído o subcontratado.

​TransportLocation · obrigatorio
​TransportLocation · obrigatorio
​Goods · obrigatorio

Natureza e peso da mercadoría, ou magnitude alternativa cando corresponda. Envía exactamente unha medida.

​Vehicle · obrigatorio

Vehículo efectivo; se hai remolque ou semirremolque, informa os dous campos xuntos.

reference
​string | null · minLength: 1 · maxLength: 120 · pattern: ^[A-Za-z0-9-]+(?![\s…

Referencia propia opcional, única por organización e contorno e impresa no PDF. Identifica os reintentos e permite consultar por referencia. Non se libera ao eliminar o documento.

​SpecialAuthorization

Autorización especial de circulación cando sexa necesaria. Omítea ou envía null se non procede.

Valor para a proba
observations
​string | null · maxLength: 4000

Observacións que os intervenientes soliciten facer constar no documento.

​object | null

Obxecto JSON opcional, conservado e devolto sen modificación semántica. Non se imprime no PDF. Máximo 16 KiB ao serializalo e 8 niveis de profundidade.

Crear documento › Respostas

Reintento idempotente; devolve o resultado orixinal sen xerar outro PDF.

oneOf
Debe cumprirse exactamente unha alternativa.

Táboa de alternativas

AlternativaCriterios de selección
type = object · Campos obrigatorios: uuid, reference, created_at +7 máis
type = object · Campos obrigatorios: uuid, reference, created_at +11 máis
Propiedades de Alternativa 1:
uuid
​string · uuid · obrigatorio

UUID do documento emitido.

reference
​string | null · pattern: ^[A-Za-z0-9-]+(?![\s… · obrigatorio

Referencia do cliente ou null.

created_at
​string · date-time · obrigatorio

Instante orixinal de creación, en UTC.

url
​string · uri · obrigatorio

URL HTTPS completa de descarga por QR, incluído o seu segredo. Non a rexistres nin publiques.

​object · obrigatorio
pdf_download_url
​string · uri · obrigatorio

URL de descarga autenticada; require o Bearer da credencial propietaria dentro de 24 horas.

rectifies_uuid
​string | null · uuid · obrigatorio

UUID rectificado ou null nunha emisión inicial.

​CreateDocumentRequest · obrigatorio
​object | null · obrigatorio

A mesma metadata da petición; null se non se proporcionou.

document_locale
​string · enum · obrigatorio

Idioma do PDF escollido ao emitilo segundo a organización. Consérvase no resultado; cambiar o idioma da organización non modifica documentos existentes. Non cambia campos JSON nin mensaxes de erro da API.

Valores admitidos:
es
ca
gl
ca-valencia
eu
en
pt-pt
fr

Rectificar documento

PUT
https://deca.sertecpesage.com
/api/v1/documents/{uuid}
Bearer

Identifica o documento anterior co UUID e envía todos os datos corrixidos, sen modificacións parciais. Só se pode rectificar a última versión da mesma credencial. Permítese rectificar un documento de máis de 24 horas sen devolver o contido anterior. Un documento eliminado devolve 404 e non se pode rectificar.

Xérase un documento rectificativo con UUID, PDF e QR novos; consérvanse o orixinal e o seu QR. Entrega o novo PDF ao condutor. O campo reference do corpo corresponde á nova versión, non ao documento da URL.

Repetir o mesmo PUT cos mesmos datos normalizados e metadata devolve a rectificación xa emitida durante as 24 horas seguintes á súa creación, sen xerar outra versión. Esta comprobación realízase antes de rexeitar un documento xa rectificado e funciona tamén se o reintento identifica o mesmo documento por referencia. Cambiar datos dun documento xa rectificado devolve 409. Un resultado de reintento caducado devolve 409 DOCUMENT_WINDOW_EXPIRED. Se a rectificación devolta está eliminada, o reintento devolve 404. Para outra rectificación, usa o UUID ou a referencia da última versión.

Rectificar documento › Parámetros de ruta

uuid
​string · uuid · obrigatorio

UUID público do documento. Alternativamente, usa /api/v1/documents/ref/{reference} co mesmo método. Exemplo: /api/v1/documents/ref/EXP-2026-004587.

Rectificar documento › Corpo da petición

Todos os datos corrixidos do transporte. O documento anterior identifícase na URL. Se se inclúe reference, debe ser unha referencia nova para o documento rectificativo.
transport_date
​string · date · obrigatorio

Data real do transporte en formato YYYY-MM-DD; non é o instante de creación do PDF.

​Shipper · obrigatorio

Cargador contractual; pode ser diferente do almacén de orixe e do cliente de DeCA.

​Carrier · obrigatorio

Transportista que realiza efectivamente o transporte, incluído o subcontratado.

​TransportLocation · obrigatorio
​TransportLocation · obrigatorio
​Goods · obrigatorio

Natureza e peso da mercadoría, ou magnitude alternativa cando corresponda. Envía exactamente unha medida.

​Vehicle · obrigatorio

Vehículo efectivo; se hai remolque ou semirremolque, informa os dous campos xuntos.

reference
​string | null · minLength: 1 · maxLength: 120 · pattern: ^[A-Za-z0-9-]+(?![\s…

Referencia nova do documento rectificativo, opcional e única por organización e contorno. Non reutilices a referencia do documento identificado na URL.

​SpecialAuthorization

Autorización especial de circulación cando sexa necesaria. Omítea ou envía null se non procede.

Valor para a proba
observations
​string | null · maxLength: 4000

Observacións que os intervenientes soliciten facer constar no documento.

​object | null

Obxecto JSON opcional, conservado e devolto sen modificación semántica. Non se imprime no PDF. Máximo 16 KiB ao serializalo e 8 niveis de profundidade.

Rectificar documento › Respostas

Documento rectificativo emitido, ou resultado dun reintento idéntico sen crear outra versión.

oneOf
Debe cumprirse exactamente unha alternativa.

Táboa de alternativas

AlternativaCriterios de selección
type = object · Campos obrigatorios: uuid, reference, created_at +7 máis
type = object · Campos obrigatorios: uuid, reference, created_at +11 máis
Propiedades de Alternativa 1:
uuid
​string · uuid · obrigatorio

UUID do documento emitido.

reference
​string | null · pattern: ^[A-Za-z0-9-]+(?![\s… · obrigatorio

Referencia do cliente ou null.

created_at
​string · date-time · obrigatorio

Instante orixinal de creación, en UTC.

url
​string · uri · obrigatorio

URL HTTPS completa de descarga por QR, incluído o seu segredo. Non a rexistres nin publiques.

​object · obrigatorio
pdf_download_url
​string · uri · obrigatorio

URL de descarga autenticada; require o Bearer da credencial propietaria dentro de 24 horas.

rectifies_uuid
​string | null · uuid · obrigatorio

UUID rectificado ou null nunha emisión inicial.

​CreateDocumentRequest · obrigatorio
​object | null · obrigatorio

A mesma metadata da petición; null se non se proporcionou.

document_locale
​string · enum · obrigatorio

Idioma do PDF escollido ao emitilo segundo a organización. Consérvase no resultado; cambiar o idioma da organización non modifica documentos existentes. Non cambia campos JSON nin mensaxes de erro da API.

Valores admitidos:
es
ca
gl
ca-valencia
eu
en
pt-pt
fr

Eliminar documento

DELETE
https://deca.sertecpesage.com
/api/v1/documents/{uuid}
Bearer

Borrado lóxico para corrixir erros detectados ao xerar un documento, exclusivamente antes de entregalo ao transportista ou ao condutor e antes de utilizalo nun transporte. A integración debe confirmar ambas as condicións; non abonda con estar dentro do prazo. Se o documento xa se entregou ou utilizou, debe rectificarse mediante PUT.

Só se permite mentres a hora do servidor sexa anterior a created_at + 2 horas; ás 2 horas exactas xa non se permite. Nin unha consulta nin un reintento reinician o prazo. Cada versión usa a súa propia data de creación. Só se pode eliminar a última versión da credencial autenticada.

Consérvanse o PDF, os datos e a rastrexabilidade, pero o documento deixa de aparecer na lista. As consultas por UUID ou referencia, a descarga autenticada, o QR e os reintentos que devolverían o contido responden 404. A consulta de estado responde só con status: deleted durante a xanela de consulta de 24 horas. A referencia segue reservada. Non hai endpoint de reactivación; o borrado conserva o ficheiro para permitir unha recuperación futura.

Repetir DELETE dentro das mesmas 2 horas devolve 204 sen cambiar a data de eliminación. Pasado o prazo devolve 409.

O primeiro acceso correcto á ligazón QR tamén bloquea o borrado con 409 DOCUMENT_ALREADY_ACCESSED. Ese acceso non proba por si só que se realizase o transporte.

Eliminar documento › Parámetros de ruta

uuid
​string · uuid · obrigatorio

UUID público do documento. Alternativamente, usa /api/v1/documents/ref/{reference} co mesmo método. Exemplo: /api/v1/documents/ref/EXP-2026-004587.

Eliminar documento › Corpo da petición

reason
​string · minLength: 1 · maxLength: 2000 · obrigatorio

Motivo do erro detectado ao xerar o documento.

confirm_not_delivered
​boolean · obrigatorio

Debe ser true para eliminar: confirma que non se entregou ao transportista nin ao condutor. false devolve 409 DOCUMENT_ALREADY_DELIVERED.

confirm_not_used
​boolean · obrigatorio

Debe ser true para eliminar: confirma que non se utilizou nun transporte. false devolve 409 DOCUMENT_ALREADY_USED.

Eliminar documento › Respostas

Documento marcado como eliminado. Sen corpo de resposta.

Non se devolven datos

Listar documentos recentes

GET
https://deca.sertecpesage.com
/api/v1/documents
Bearer

Devolve resumos, sen PDF, segredo QR nin metadata. O servidor aplica sempre a xanela de 24 horas e o illamento da credencial. Orde descendente por data de creación e UUID como desempate, paxinación por páxina e filtros inclusivos da data de transporte. A xanela avalíase en cada petición; non constitúe unha instantánea estable entre páxinas. Non permite consultar o histórico.

Os documentos eliminados non aparecen na lista.

Listar documentos recentes › Parámetros de consulta

page
​integer · min: 1

Páxina solicitada, a partir de 1.

Valor predeterminado: 1
limit
​integer · min: 1 · max: 100

Documentos por páxina, entre 1 e 100.

Valor predeterminado: 25
from
​string · date

Data mínima de transporte, incluída. Non amplía a xanela de lectura.

to
​string · date

Data máxima de transporte, incluída; igual ou posterior a from.

Listar documentos recentes › Respostas

Páxina de documentos recentes. Unha páxina sen resultados ten data baleiro.

​DocumentSummary[] · obrigatorio
​object · obrigatorio

Consultar documento

GET
https://deca.sertecpesage.com
/api/v1/documents/{uuid}
Bearer

Recupera o resultado orixinal dentro de 24 horas, só para a credencial que emitiu o documento. Inclúe todos os campos aceptados e normalizados e a metadata sen modificación semántica.

Un UUID ou unha referencia inexistente, doutra credencial ou fóra da xanela devolve o mesmo 404, sen confirmar a existencia nin o propietario. Cada referencia identifica a súa propia versión e non redirixe a unha rectificación posterior.

Un documento eliminado devolve 404. Para saber se está eliminado, usa a consulta de estado.

Consultar documento › Parámetros de ruta

uuid
​string · uuid · obrigatorio

UUID público do documento. Alternativamente, usa /api/v1/documents/ref/{reference} co mesmo método. Exemplo: /api/v1/documents/ref/EXP-2026-004587.

Consultar documento › Respostas

Resultado orixinal do documento.

oneOf
Debe cumprirse exactamente unha alternativa.

Táboa de alternativas

AlternativaCriterios de selección
type = object · Campos obrigatorios: uuid, reference, created_at +7 máis
type = object · Campos obrigatorios: uuid, reference, created_at +11 máis
Propiedades de Alternativa 1:
uuid
​string · uuid · obrigatorio

UUID do documento emitido.

reference
​string | null · pattern: ^[A-Za-z0-9-]+(?![\s… · obrigatorio

Referencia do cliente ou null.

created_at
​string · date-time · obrigatorio

Instante orixinal de creación, en UTC.

url
​string · uri · obrigatorio

URL HTTPS completa de descarga por QR, incluído o seu segredo. Non a rexistres nin publiques.

​object · obrigatorio
pdf_download_url
​string · uri · obrigatorio

URL de descarga autenticada; require o Bearer da credencial propietaria dentro de 24 horas.

rectifies_uuid
​string | null · uuid · obrigatorio

UUID rectificado ou null nunha emisión inicial.

​CreateDocumentRequest · obrigatorio
​object | null · obrigatorio

A mesma metadata da petición; null se non se proporcionou.

document_locale
​string · enum · obrigatorio

Idioma do PDF escollido ao emitilo segundo a organización. Consérvase no resultado; cambiar o idioma da organización non modifica documentos existentes. Non cambia campos JSON nin mensaxes de erro da API.

Valores admitidos:
es
ca
gl
ca-valencia
eu
en
pt-pt
fr

Consultar estado

GET
https://deca.sertecpesage.com
/api/v1/documents/{uuid}/status
Bearer

Devolve unicamente o estado dun documento da credencial autenticada, durante as 24 horas seguintes á creación. Un documento eliminado responde 200 con {"status":"deleted"}; non devolve datos do transporte, PDF, ligazón QR nin metadata. Un documento activo responde con {"status":"active"}.

Un UUID inexistente, doutra credencial ou fóra das 24 horas devolve o mesmo 404. A eliminación non amplía esta xanela.

Consultar estado › Parámetros de ruta

uuid
​string · uuid · obrigatorio

UUID público do documento. Alternativamente, usa GET /api/v1/documents/ref/{reference}/status. Exemplo: /api/v1/documents/ref/EXP-2026-004587/status.

Consultar estado › Respostas

Estado do documento sen datos do contido.

status
​string · enum · obrigatorio

Estado do documento. Non inclúe información do transporte, PDF, QR, metadata nin datas.

Valores admitidos:
active
deleted

Descargar PDF

GET
https://deca.sertecpesage.com
/api/v1/documents/{uuid}/pdf
Bearer

Devolve exactamente os bytes do PDF almacenado, sen rexeneralo. Esixe a credencial propietaria e unha antigüidade inferior a 24 horas. Esta limitación non altera a conservación legal nin a vixencia do QR.

Un documento eliminado devolve 404 sen entregar o PDF.

Descargar PDF › Parámetros de ruta

uuid
​string · uuid · obrigatorio

UUID público do documento. Alternativamente, usa GET /api/v1/documents/ref/{reference}/pdf. Exemplo: /api/v1/documents/ref/EXP-2026-004587/pdf.

Descargar PDF › Respostas

PDF orixinal nativo, de ata 5 MB. Descarga directa sen rexeneración.

string