Integración con la API
Realizando peticiones
La API de LibreDTE usa 2 verbos HTTP:
GET
para, principalmente, consultar datos.POST
para enviar datos (crear o ejecutar acciones).
No uses PUT
, PATCH
ni DELETE
. No están soportados oficialmente.
¿Dónde se envían los parámetros?
Hay 3 ubicaciones posibles para los parámetros:
1. En el PATH
Se usan para identificar directamente el recurso.
Ejemplo:
GET /dte/dte_emitidos/info/33/1234/12345678
Significa: buscar DTEs emitidos por el RUT 12345678, tipo 33, con folio 1234, en ambiente configurado.
2. En la URL (query string)
Permiten modificar el comportamiento, formato de salida, filtros, etc.
Ejemplo:
GET /dte/dte_emitidos/info/33/1234/12345678?_contribuyente_certificacion=1
Significa: buscar DTEs emitidos por el RUT 12345678, tipo 33, con folio 1234, en ambiente de certificación.
POST
)
3. En el cuerpo (Datos que se envían con una solicitud POST deben ir como JSON.
Ejemplo:
POST /dte/dte_emitidos/buscar/12345678
{
"cedido": null,
"dte": 33,
"fecha": null,
"fecha_desde": null,
"fecha_hasta": null,
"folio": 1234,
"periodo": null,
"razon_social": null,
"receptor": null,
"receptor_evento": null,
"sucursal_sii": null,
"total": null,
"total_desde": null,
"total_hasta": null,
"usuario": null,
"xml": {
"Detalle/NmbItem": "abono"
}
}
Significa: buscar DTEs emitidos por el RUT 12345678, tipo 33, con folio 1234 y que el detalle del DTE contenga “abono”.
Cabeceras HTTP necesarias
Todas las solicitudes deben incluir:
Content-Type: application/json
Accept: application/json
Las únicas excepciones son cuando se solicita un formato de salida diferente a JSON, por ejemplo un PDF.
Parámetros especiales
_contribuyente_rut
Permite actuar en nombre del usuario administrador si estás usando el hash de un usuario con permisos delegados.
Ejemplo:
?_contribuyente_rut=12345678-9
Si usas el hash del usuario administrador, no necesitas este parámetro.
_contribuyente_certificacion
Permite elegir entre ambiente de producción y certificación (pruebas).
- Omitido → Usa el valor por defecto configurado en la plataforma.
0
→ Producción.1
→ Certificación.
Ejemplo:
?_contribuyente_certificacion=1
Ejemplo completo de solicitud
GET /dte/dte_emitidos/info/33/1234/12345678?_contribuyente_rut=12345678-9&_contribuyente_certificacion=1