{
  "api": "vamosalicante-public-api",
  "version": "1",
  "endpoint": "/api/public/v1/bus/lines",
  "ok": true,
  "generatedAt": {
    "epochMs": 1788333424450,
    "madrid": "2026-09-02T09:17:04+02:00",
    "utc": "2026-09-02T07:17:04.450Z"
  },
  "timeZone": "Europe/Madrid",
  "dataType": "CATALOG",
  "declaredDataType": "CATALOG",
  "observedAt": null,
  "retrievedAt": {
    "epochMs": 1788333424450,
    "madrid": "2026-09-02T09:17:04+02:00",
    "utc": "2026-09-02T07:17:04.450Z"
  },
  "validThrough": null,
  "validUntil": null,
  "timestampContract": {
    "observedAt": "Instante de la medición o cálculo en la fuente. null = la fuente no fecha el dato.",
    "retrievedAt": "Instante en que VamosAlicante ha servido esta respuesta. No es la hora de la medición.",
    "validUntil": "TTL explícito: pasada esta hora el dato se entrega como STALE."
  },
  "ttlSeconds": 86400,
  "freshness": {
    "state": "UNDATED",
    "ageSeconds": null,
    "ttlRemainingSeconds": null
  },
  "source": {
    "name": "Vectalia / Alicante se mueve",
    "canonical": "https://vamosalicante.com/city-bus"
  },
  "attribution": "VamosAlicante (https://vamosalicante.com)",
  "license": "Uso libre para lectura y citación con atribución y enlace a la URL canónica. Reventa de los datos no autorizada.",
  "data": {
    "count": 3,
    "lines": [
      {
        "code": "1",
        "name": "1: San Gabriel-ciudad Elegida",
        "color": null,
        "operator": "Vectalia",
        "canonical": "https://vamosalicante.com/bus/linea/1"
      },
      {
        "code": "12",
        "name": "Plaza Juan Pablo II ↔ Puerta del Mar",
        "color": "#E84E2C",
        "operator": "Vectalia",
        "canonical": "https://vamosalicante.com/bus/linea/12"
      },
      {
        "code": "13",
        "name": "13: Rambla-villafranqueza",
        "color": null,
        "operator": "Vectalia",
        "canonical": "https://vamosalicante.com/bus/linea/13"
      }
    ]
  }
}