{"source":"Angers Loire Métropole - Réseau Irigo - GTFS & GTFS-RT & SIRI","entry_url":"https://c0mm0.com/entry/angers-loire-metropole-reseau-irigo-gtfs-gtfs-rt-siri/","license":"odbl-1.0","retrieved_at":"2026-09-09T06:58:55.272Z","upstream_url":"https://data.angers.fr/api/explore/v2.1/catalog/datasets/angers-loire-metropole-horaires-reseau-irigo-gtfs-rt/records?limit=100&select=description%2Curl","live":true,"personal_data":{"status":"none","basis":"no_person_column_cited","grain":"none","allowed":true,"columns":{"direct_identifiers":[],"family_names":[],"given_names":[],"attributes":[],"unresolved_names":[],"measures":[],"entity_identifiers":[]},"publication":null,"publication_evidence":null,"notice":"personal data: no cited column names a natural person (the cited columns are all this reads)"},"row_count":5,"columns":["description","url"],"field_provenance":{"description":{"basis":"upstream_verbatim","derived":false,"upstream_field":"results[].description","transform":"the field the opendatasoft Explore v2 records endpoint returned under this name, unchanged","cells":{"rows":5,"delivered":5,"empty":0,"stringified":0,"truncated":0},"declared":{"type":"text"}},"url":{"basis":"upstream_verbatim","derived":false,"upstream_field":"results[].url","transform":"the field the opendatasoft Explore v2 records endpoint returned under this name, unchanged","cells":{"rows":5,"delivered":5,"empty":0,"stringified":0,"truncated":0},"declared":{"type":"text"}}},"rows":[{"description":"Irigo Angers GTFS RT Trip updates","url":"https://ara-api.enroute.mobi/irigo/gtfs/trip-updates"},{"description":"Irigo Angers GTFS","url":"https://chouette.enroute.mobi/api/v1/datas/Irigo/gtfs.zip"},{"description":"Irigo Angers GTFS RT  Service Alerts","url":"https://notify.ratpdev.com/api/networks/RD%20ANGERS/alerts/gtfsrt"},{"description":"Irigo Angers GTFS RT Vehicle Positions","url":"https://ara-api.enroute.mobi/irigo/gtfs/vehicle-positions"},{"description":"Irigo Angers SIRI","url":"https://ara-api.enroute.mobi/irigo/siri"}],"manifest":{"answer_sha256":"c2d11ea61cfad18b52ef18d0868d8112c05118a1ee131072b6b15a3b7451c79e","answer_sha256_rule":"sha256 (hex, UTF-8) of JSON.stringify(this body) after deleting the keys listed in manifest.stamped_keys from manifest, and deleting manifest itself if it is then empty. The hash was computed before the stamp existed, so no field of the stamp is inside it.","stamped_keys":["answer_sha256","answer_sha256_rule","stamped_keys","row_count","row_count_basis","live","live_basis","created_at","created_at_basis","durable_citation"],"row_count":5,"row_count_basis":"Objects that are elements of a JSON array anywhere in this body, excluding manifest. Not a claim about which collection is the answer. Largest single collection: rows[] (5 rows).","live":true,"live_basis":"This body was produced by executing the request.","created_at":"2026-09-09T06:58:55.272Z","created_at_basis":"When this response body was assembled, deliberately OUTSIDE the hashed bytes so the same answer hashes identically on every request. Not the upstream read time — that is provenance[].retrieved_at. A zone-cached replay carries the assembly time, not your receipt time.","durable_citation":"This manifest is produced at response time and is NOT stored. A durable, replayable citation is persisted only on an explicit cite: GET /api/v1/entries/{id-or-slug}/evidence, or the MCP cite_query tool. Both are entry-scoped, because evidence_manifests is entry-shaped; a domain answer spanning several sources has no single entry and cannot be persisted through that path."}}