Saltar al contenido principal

API Externa

La API Externa maneja la comunicación entre Gateways para sincronizar paquetes y movimientos.

Base URL: https://otro-gateway.local/gateway-externa/v1

Endpoints Principales

Notificación de Paquetes

  • POST /paquetes/notificar: Notificar paquetes disponibles.

    • Body: {"institucion": "uuid", "identificadores": ["uuid1", "uuid2"]}
    • Respuesta: 200 OK
  • PUT /paquetes/{id}/anular: Anular paquete en origen.

    • Body: {"institucion": "uuid", "motivo": "razón"}
    • Respuesta: 204 No Content

Sincronización de Movimientos

  • POST /movimientos-paquetes: Obtener movimientos de paquetes.
    • Body: {"institucion": "uuid", "identificadores": ["uuid1"]}
    • Respuesta: Movimientos detallados por paquete.

Descargas

  • PUT /descargas/{id}/iniciar: Iniciar descarga desde Gateway origen.

    • Respuesta: Metadata del paquete.
  • GET /descargas/{id}/contenido?parte={id_parte}: Descargar parte del contenido.

    • Respuesta: Contenido binario o texto.
  • PUT /descargas/{id}/finalizar: Confirmar descarga exitosa.

    • Respuesta: 204 No Content
  • PUT /descargas/{id}/fallida: Reportar fallo en descarga.

    • Respuesta: 204 No Content
  • PUT /descargas/{id}/entregado: Confirmar entrega al módulo destino.

    • Respuesta: 204 No Content

Comportamientos Importantes

  • Idempotencia: Endpoints como /descargas/{id}/finalizar son idempotentes.
  • Reintentos: El Gateway destino reintenta descargas fallidas hasta un límite configurable.
  • Estados: Los paquetes cambian de estado automáticamente (OG_ENVIADO, DG_DESCARGADO, etc.).