Layouts
Listar layouts, del más nuevo al más antiguo
GET/v1/layouts
Cada layout viene con la plantilla de su versión vigente.
Parámetros de consulta
limitenteroopcionalElementos por página: de 1 a 100; 25 si se omite.
de 1 a 100 · por defecto 25
cursortextoopcionalEl
next_cursorde la página anterior: el id del último elemento visto.
Respuestas
Crear un layout
POST/v1/layouts
La plantilla queda como versión 1. Con is_default, reemplaza al predeterminado de su formato. Una plantilla solo se guarda si se puede dibujar y conserva todos los elementos obligatorios de la representación impresa: el RUC y la razón social del emisor, el título y el número del comprobante, el QR o el hash, y la leyenda «Representación impresa de…». Si no, la respuesta es 422 con una entrada en errors por cada problema.
Cabeceras
idempotency-keytextoopcionalRepetir una petición con la misma llave devuelve el recurso original. Usa una llave por recurso: la misma llave en una petición de otro tipo de comprobante responde 409.
de 1 a 255 caracteres
Cuerpo application/json
nametextoobligatoriode 1 a 80 caracteres
format"a4"·"ticket80"·"ticket58"obligatoriotemplateobjetoobligatoriois_defaultbooleanoopcionalSe usa en todo PDF de este formato que no pida otro layout.
por defecto false
Respuestas
200El layout que creó una petición anterior con esta llave — Layout201El layout — Layout401Falta la llave de API o no es válida — Problem403Quien llama no tiene permiso para hacer esto — Problem409La petición choca con el estado actual del recurso — Problem422La petición no es válida — Problem429Demasiadas peticiones — Problem
Consultar un layout
GET/v1/layouts/{id}
Parámetros de la ruta
idtextoobligatorio
Respuestas
200El layout, con la plantilla de su versión vigente — Layout401Falta la llave de API o no es válida — Problem403Quien llama no tiene permiso para hacer esto — Problem404No existe el recurso — Problem409La petición choca con el estado actual del recurso — Problem422La petición no es válida — Problem429Demasiadas peticiones — Problem
Actualizar un layout
PATCH/v1/layouts/{id}
Solo cambia lo que se envía. Un template nunca reemplaza al guardado: queda como la versión siguiente, que pasa a ser la vigente. is_default: true lo hace el predeterminado de su formato en lugar del anterior; false deja el formato con la plantilla incorporada. Una plantilla solo se guarda si se puede dibujar y conserva todos los elementos obligatorios de la representación impresa: el RUC y la razón social del emisor, el título y el número del comprobante, el QR o el hash, y la leyenda «Representación impresa de…». Si no, la respuesta es 422 con una entrada en errors por cada problema.
Parámetros de la ruta
idtextoobligatorio
Cuerpo application/json
nametextoopcionalde 1 a 80 caracteres
templateobjetoopcionalis_defaultbooleanoopcional
Respuestas
200El layout como está ahora — Layout401Falta la llave de API o no es válida — Problem403Quien llama no tiene permiso para hacer esto — Problem404No existe el recurso — Problem409La petición choca con el estado actual del recurso — Problem422La petición no es válida — Problem429Demasiadas peticiones — Problem
Eliminar un layout y sus versiones
DELETE/v1/layouts/{id}
Si era el predeterminado de su formato, el formato vuelve a la plantilla de Emitay. Los comprobantes ya emitidos no se tocan: su PDF se dibuja con el layout que sea el predeterminado en ese momento.
Parámetros de la ruta
idtextoobligatorio
Respuestas
Previsualizar un layout como PDF
POST/v1/layouts/{id}/preview
Dibuja la versión vigente del layout, o la plantilla enviada en template (un diseño aún sin guardar, sujeto a las mismas reglas que al guardarlo), con uno de los comprobantes de muestra (sample) o con un comprobante de quien llama (document_id); sin ninguno, con la factura de muestra. No guarda nada.
Parámetros de la ruta
idtextoobligatorio
Cuerpo application/json
sample"invoice"·"receipt"·"credit_note"·"despatch_advice"·"retention"opcionaldocument_idtextoopcionaltemplateobjetoopcionalUna plantilla para dibujar en lugar de la guardada: cómo se ve un diseño antes de guardarlo. No guarda nada.
Respuestas
200El PDF — application/pdf401Falta la llave de API o no es válida — Problem403Quien llama no tiene permiso para hacer esto — Problem404No existe el recurso — Problem409La petición choca con el estado actual del recurso — Problem422La petición no es válida — Problem429Demasiadas peticiones — Problem