Introduccion

Contrato publico para que una institucion consuma PUI Gestion cuando lo necesite. El canal es JSON sobre HTTPS. No hay sincronizacion programada desde Horus.

Para quien es

Equipos tecnicos de instituciones que deben enviar registros y consultar casos, coincidencias y reportes sin usar el panel.

Acceso

Horus entrega, por un canal seguro:

  • URL base del ambiente
  • una API key (header X-API-Key)

La key se muestra una sola vez. No se reutiliza entre instituciones.

URL base

AmbienteURL
Produccionhttps://api.pui360.mx
Localhttp://localhost:8002

Si hay un proxy, el prefijo publico (ROOT_PATH) ya va incluido en esa URL base. Las rutas del contrato empiezan en /cliente.

Primera peticion

curl -s -X POST "$BASE_URL/cliente/sandbox/ping" \
  -H "X-API-Key: $API_KEY" \
  -H "Accept: application/json"

JavaScript:

const response = await fetch(`${baseUrl}/cliente/sandbox/ping`, {
  method: "POST",
  headers: { "X-API-Key": apiKey, Accept: "application/json" },
});

Python:

import requests
requests.post(f"{base_url}/cliente/sandbox/ping", headers={"X-API-Key": api_key})

Referencia

  • Esquema publicado: openapi.json
  • Swagger local: GET /docs
  • ReDoc local: GET /redoc
  • Esquema en vivo: GET /openapi.json (incluye rutas internas; el archivo versionado es solo el contrato publico)

Postman

Importa postman/PUI_Gestion.postman_collection.json. Define base_url y api_key. La coleccion historica docs/api-cliente/PUI_API_Cliente.postman_collection.json se conserva.

Mantener el esquema

make export-openapi
make lint-openapi