Saltar a contenido

Data Model: PharmacyRecord

PharmacyRecord representa una farmacia en el dataset canónico normalizado.

Se usa en:

  • GET /v1/farmacias/snapshot/{territory_code}
  • GET /v1/farmacias/export/{territory_code}/json
  • payloads de changes (operation=upsert)

Ejemplo

{
  "external_id": "28000001",
  "name": "Farmacia ...",
  "address_line": "CALLE ALCALA, 98",
  "postal_code": "28009",
  "city": "Madrid",
  "province": "Madrid",
  "territory_code": "ES-MD",
  "latitude": 40.421234,
  "longitude": -3.675432,
  "coordinate_source": "official",
  "owner_name": "Titular ...",
  "cnn_code": "123456",
  "source_slug": "comunidad_madrid_oficinas_farmacia",
  "official_source_name": "Comunidad de Madrid - Oficinas de farmacia",
  "official_source_url": "https://datos.comunidad.madrid/...",
  "official_last_modified_at": "2026-02-14T00:00:00Z",
  "observed_at": "2026-02-15T03:10:00Z",
  "is_active": true
}

Campos

Identidad

  • external_id (string): identificador oficial dentro del territorio.
  • territory_code (string ES-XX): territorio (ver Territories).

La clave lógica del record es:

  • (territory_code, external_id)

Datos de la farmacia

  • name (string): nombre/denominación.
  • owner_name (string, optional): titular (cuando la fuente lo provee).
  • cnn_code (string, optional): código nacional (cuando existe).

Dirección

  • address_line (string): dirección normalizada en una sola línea.
  • postal_code (string): código postal (si falta, puede venir como 00000).
  • city (string): municipio/población.
  • province (string): provincia.

Coordenadas

  • latitude / longitude (float, optional): WGS84.
  • coordinate_source (enum, optional):
  • official: viene con coordenadas de la fuente oficial (o conversión oficial, p.ej. UTM->WGS84).
  • geocoded: recuperadas por geocoding (CartoCiudad/Google/Nominatim).
  • manual: override manual desde el panel admin.

Proveniencia y trazabilidad

  • official_source_name (string): nombre corto de la fuente oficial.
  • official_source_url (string URL): URL oficial.
  • official_last_modified_at (datetime, optional): fecha de “última modificación” de la fuente si se conoce.
  • observed_at (datetime): instante UTC en el que se observó/ingirió esta versión.
  • source_slug (string, optional): id interno del conector/fuente.

Estado operativo

  • is_active (bool): si la fuente lo marca como desactivada/inactiva.

Note

Algunas CCAA no aportan “baja” explícita. En esos casos, el cierre “duro” se detecta cuando la farmacia desaparece del dataset (ver business events).