Skip to main content

URL base

Tots els endpoints de l’API són relatius a:

Versions

La versió estable actual és v1. Tots els endpoints v1 tenen el prefix /api/v1/. No existeixen capçaleres de negociació de versió — la versió forma part del camí de la URL.

Format de sol·licitud

  • Content type: application/json
  • Codificació: UTF-8
  • Tots els timestamps han d’estar en format ISO 8601 (YYYY-MM-DDTHH:MM:SSZ)
  • Les dates (sense hora) han de ser YYYY-MM-DD

Format de resposta

Totes les respostes retornen JSON. Excepció: GET /api/v1/batch_invoices/{id}/pdf retorna un payload binari application/pdf (el PDF de la factura emesa associada). La majoria d’endpoints que retornen un únic recurs embolcallen el contingut a la clau data:
Excepció: POST /api/v1/auth/sessions retorna un objecte JSON pla a nivell arrel — sense envelope data:
Les respostes de llista inclouen un objecte meta amb informació de paginació:
L’endpoint POST /api/v1/invoice_batches pot incloure addicionalment una clau errors juntament amb data quan algunes factures del lot fallen la validació (èxit parcial):
L’objecte errors està indexat per external_invoice_id.

Paginació

Els endpoints de llista accepten dos paràmetres de consulta:

Idempotència

POST /api/v1/invoice_batches requereix la capçalera Idempotency-Key amb un UUID vàlid. Reenviar la mateixa clau dins de la finestra d’idempotència retorna la resposta en memòria cau sense reprocessar el lot.

Rate limiting

La majoria d’endpoints protegits apliquen límits de taxa per organització. Quan se supera el límit, l’API retorna 429 Too Many Requests amb la capçalera Retry-After indicant els segons d’espera.
POST /api/v1/invoice_batches està exclòs del rate limiting — la idempotència ja prevé el processament duplicat.

Respostes d’error

Tots els errors segueixen un envelope consistent:

Codis d’error