🔌 API Pública

API REST para que SENEPA, municipios, ONGs y medios de comunicación accedan a los datos abiertos de Dengue.com.py.

¿Cómo obtener un token?
Escribinos a admin@dengue.com.py indicando tu organización, propósito y los scopes que necesitás. Te asignaremos un token con rate limit acorde a tu uso esperado.

Autenticación

Todas las requests deben incluir el header de autorización:

Authorization: Bearer dgnp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

El prefijo dgnp_ identifica al token como propio de Dengue.com.py.

Scopes disponibles

ScopePermite
read:reportsListar y ver reportes aprobados/resueltos
read:statsAcceder a estadísticas agregadas

Endpoints

GET /api/v1/reportes.php

Lista paginada de reportes públicos. Scope: read:reports

Query params
ParamTipoDescripción
pageintPágina (default 1)
per_pageintResultados por página (default 50, max 500)
tipostringSlug del tipo (ej. foco_potencial)
severidadstringbaja, media o alta
departamentostringNombre del departamento
ciudadstringMatch parcial
statusstringapproved o resolved
desdedateFormato YYYY-MM-DD
hastadateFormato YYYY-MM-DD
Ejemplo
curl -H "Authorization: Bearer dgnp_xxx" \
  "https://dengue.com.py/api/v1/reportes.php?departamento=Central&per_page=20"
Respuesta
{
  "data": [
    {
      "id": 123,
      "tipo": "foco_potencial",
      "tipo_nombre": "Foco potencial",
      "severidad": "alta",
      "status": "approved",
      "descripcion": "Macetas con agua estancada...",
      "address_public": "Barrio Centro, Asunción, Central",
      "departamento": "Central",
      "ciudad": "Asunción",
      "barrio": "Centro",
      "lat": -25.2847,
      "lng": -57.6435,
      "created_at": "2026-04-15 14:32:18",
      "resolved_at": null,
      "photos_count": 2
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 20,
    "total": 156,
    "total_pages": 8,
    "has_more": true
  }
}
GET /api/v1/reporte.php?id=X

Detalle de un reporte. Scope: read:reports

Query params
  • id — ID del reporte (obligatorio)
  • include_photos — Si está presente, incluye URLs de fotos
GET /api/v1/estadisticas.php

Estadísticas agregadas. Scope: read:stats

Query params
  • days — Rango en días para evolución temporal (7-365, default 30)

Política de datos

  • Sin datos personales: nunca se expone nombre, email, IP ni dirección exacta del reportante.
  • Coordenadas con jitter: las posiciones tienen un radio de difuminado de ~50m.
  • Política de retención: reportes resueltos se anonimizan después de 5 años; rechazados, después de 1 año.
  • Cumplimiento: Ley 6534/20 de Protección de Datos Personales de Paraguay.

Rate limit

Default: 1000 requests/hora por token. Configurable por organización. Si excedés el límite, recibís HTTP 429 con header Retry-After.

Códigos de respuesta

CódigoSignificado
200OK
400Parámetros inválidos
401Token faltante o inválido
403Token sin scope necesario
404Recurso no encontrado
429Rate limit excedido
503API deshabilitada temporalmente
Este sitio está protegido por reCAPTCHA. Se aplican las Políticas de privacidad y los Términos del servicio de Google.