{"id":"8a6eaa2b-9707-403e-8ad0-6efa1641b5b5","type":"API","name":"Réseau Ma demande de logement social","slug":"reseau-ma-demande-de-logement-social","description":"Pour toute information ou conseil sur la demande de logement social (pièces administratives à fournir, choix de quartier...) ou aide à l’enregistrement, vous pouvez être reçu dans l’un des nombreux lieux d’accueil du réseau « Ma demande de logement social de l’Eurométropole de Strasbourg ».","free_access_class":"FREE_NO_AUTH","auth_type":"NONE","homepage_url":"https://data.strasbourg.eu/explore/dataset/ma_demande_logement/","docs_url":"https://data.strasbourg.eu/explore/dataset/ma_demande_logement/","repo_url":null,"status":"ACTIVE","verification_state":"VERIFIED","tags":[],"logo_url":"https://data.strasbourg.eu/assets/favicon?tstamp=154210176917","primary_source_url":"https://data.strasbourg.eu/explore/dataset/ma_demande_logement/","extraction_confidence":"0.00","created_at":"2026-07-25T22:22:06.846Z","updated_at":"2026-10-22T09:15:37.487Z","last_verified_at":"2026-10-22T07:30:51.824Z","deprecated_at":null,"ranking_score":60,"last_ranked_at":"2026-10-18T01:08:42.116Z","last_seen_at":null,"last_validated_at":null,"last_uptime_at":"2026-10-14T18:56:57.659Z","popularity_score":"0.0000","maintenance_score":"0.7000","institution_id":null,"institution_type":null,"country_code":"FR","official_confidence":0,"proof_summary":"Confidence: 0%","source_seed_url":null,"is_public_sector":true,"published_at":"2026-07-26T17:47:28.808Z","geographic_scope":"NATIONAL","name_en":"\"My Social Housing Application\" Network","description_en":"This dataset lists the reception points of the \"Ma demande de logement social\" (My social housing application) network in the Eurométropole de Strasbourg, France. It provides information on locations where residents can get advice or assistance regarding social housing applications, including required administrative documents, choice of neighbourhood, and help with registration. The dataset is published via the Strasbourg open data portal and is intended to help residents locate nearby support points for completing or managing their social housing requests.","native_lang":"fr","access_level":"direct","formats":["CSV"],"capability_tier":"live","trust_score":38.75,"merged_into_entry_id":null,"identity_key":"API|https://data.strasbourg.eu/explore/dataset/ma_demande_logement|réseau ma demande de logement social","upstream_ref":"data.strasbourg.eu:dataset:ma_demande_logement","content_changed_at":null,"institution":null,"title_qualifier":null,"access":{"level":"direct","primary":{"kind":"download","label":"Export CSV","method":"GET","url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/exports/csv","format":"CSV","source":"query_example","runnable":true,"direct":true},"actions":[{"kind":"download","label":"Export CSV","method":"GET","url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/exports/csv","format":"CSV","source":"query_example","runnable":true,"direct":true},{"kind":"query","label":"List records","method":"GET","url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/records?limit=20","source":"query_example","runnable":true,"direct":true},{"kind":"query","label":"Select & filter","method":"GET","url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/records?select=geo_point_2d%2Cgeo_shape%2Cid_reponse&where=id_reponse+is+not+null&limit=20","source":"query_example","runnable":true,"direct":true},{"kind":"query","label":"Run verified request","method":"GET","url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement","source":"probe","runnable":true},{"kind":"landing","label":"Read the docs","method":"GET","url":"https://data.strasbourg.eu/explore/dataset/ma_demande_logement/","source":"docs","runnable":false}],"formats":["CSV"]},"maturity":{"entry_id":"8a6eaa2b-9707-403e-8ad0-6efa1641b5b5","granularity":"entry","granularity_label":"One unit = one catalog entry. A PROXY for the SCOPE.md §4 ladder, which governs source families, not entries: a family with 400 entries moves this reading 400 times as much as a family with one. Never compare or combine with the source_family reading.","level":"joinable","level_index":5,"level_label":"Joinable","meaning":"Canonical identifiers and concepts mapped","counts_as_coverage":true,"blocked_by":null,"rungs":[{"level":"discovered","level_index":1,"label":"Discovered","meaning":"Source and metadata recorded","evidence":"membership of the named population the ladder is taken over","counts_as_coverage":false,"met":true,"reached":true,"criterion":"TRUE"},{"level":"verified","level_index":2,"label":"Verified","meaning":"Access tested successfully","evidence":"entries.verification_state = 'VERIFIED'","counts_as_coverage":false,"met":true,"reached":true,"criterion":"entries.verification_state = 'VERIFIED'"},{"level":"profiled","level_index":3,"label":"Profiled","meaning":"Schema, dimensions and licence understood","evidence":"a data profile with at least one field (entry_data_profiles.field_count > 0)","counts_as_coverage":false,"met":true,"reached":true,"criterion":"EXISTS (SELECT 1 FROM entry_data_profiles p WHERE p.entry_id = entries.id AND COALESCE(p.field_count, 0) > 0)"},{"level":"executable","level_index":4,"label":"Executable","meaning":"Queries run through Commodity","evidence":"entries.capability_tier = 'live' — today's proxy for \"queryable through us\"","counts_as_coverage":true,"met":true,"reached":true,"criterion":"entries.capability_tier = 'live'"},{"level":"joinable","level_index":5,"label":"Joinable","meaning":"Canonical identifiers and concepts mapped","evidence":"a field link to a canonical identifier whose sampled VALUES match its format","counts_as_coverage":true,"met":true,"reached":true,"criterion":"EXISTS (SELECT 1 FROM entry_field_links efl WHERE efl.entry_id = entries.id AND efl.identifier_id IS NOT NULL AND efl.value_status = 'match')"},{"level":"reproducible","level_index":6,"label":"Reproducible","meaning":"Snapshots and transformation evidence retained","evidence":"at least one retained evidence manifest (migration 078)","counts_as_coverage":true,"met":false,"reached":false,"criterion":"EXISTS (SELECT 1 FROM evidence_manifests em WHERE em.entry_id = entries.id)"},{"level":"guaranteed","level_index":7,"label":"Guaranteed","meaning":"Monitored against an operational reliability target","evidence":"an active reliability target with a named monitor (migration 096)","counts_as_coverage":true,"met":false,"reached":false,"criterion":"EXISTS (SELECT 1 FROM entry_reliability_targets rt WHERE rt.entry_id = entries.id AND rt.is_active = true)"}],"officialness":{"basis":"catalog_inherited","label":"Inherited from the upstream catalog: this item came from a trusted official government catalog, and that provenance — not per-item proof — is the warrant. Its own proof score is below 80 or it matched no registered institution (apps/worker/src/connectors/catalog/qualify-store.ts).","proof_confidence":0,"proven_threshold":80,"institution_id":null,"definition":"CASE WHEN COALESCE(entries.is_public_sector, false) IS NOT TRUE THEN 'not_official' WHEN COALESCE(entries.official_confidence, 0) >= 80 AND entries.institution_id IS NOT NULL THEN 'per_item_proven' ELSE 'catalog_inherited' END"},"source_family":{"key":"data.strasbourg.eu","label":"One unit = one source family, approximated by the serving host of the entry's primary source URL (e.g. bdl.stat.gov.pl). A COMPUTED stand-in for the curated families of SCOPE.md §5, which no table holds yet. A family sits at the highest level any of its entries has reached, because a family is integrated to the depth of its deepest working integration. Never compare or combine with the entry reading."},"generated_at":"2026-10-24T07:07:21.692Z"},"api_details":{"id":"cb1a2a6b-abac-496f-915d-573656e5faa1","entry_id":"8a6eaa2b-9707-403e-8ad0-6efa1641b5b5","base_url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement","openapi_url":null,"graphql_url":null,"api_version":null,"spec_format":null,"endpoints_count":null,"endpoints":[],"rate_limit_info":null,"free_tier_limits":null,"ping_url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement","created_at":"2026-07-25T22:22:07.000Z","updated_at":"2026-07-25T22:22:07.000Z"},"dataset_details":{"id":"f90ab5c0-c937-4c6c-9654-25ce2f8e11fc","entry_id":"8a6eaa2b-9707-403e-8ad0-6efa1641b5b5","upstream_issued":null,"upstream_modified":"2025-07-07T09:14:45.000Z","themes":[],"update_frequency":null,"temporal_start":null,"temporal_end":null,"spatial_coverage":null,"landing_page":null,"license_id":null,"license_raw":null,"has_documentation":false,"has_data_dictionary":false,"has_versioning":false,"source_portal":"opendatasoft","source_portal_url":"https://data.strasbourg.eu","created_at":"2026-07-25T22:23:29.564Z","updated_at":"2026-10-22T00:34:57.113Z","publisher":null,"publisher_url":null,"distributions":[],"license":null},"license":{"id":"lo-2.0","spdx_id":"etalab-2.0","name":"Licence Ouverte 2.0 (France / Etalab)","url":"https://www.etalab.gouv.fr/wp-content/uploads/2017/04/ETALAB-Licence-Ouverte-v2.0.pdf","is_open":true,"is_redistributable":true,"requires_attribution":true,"category":"national","notes":null,"created_at":"2026-06-12T16:29:19.729Z"},"reuse":{"license_id":"lo-2.0","license_name":"Licence Ouverte 2.0 (France / Etalab)","license_url":"https://www.etalab.gouv.fr/wp-content/uploads/2017/04/ETALAB-Licence-Ouverte-v2.0.pdf","commercial_use":{"status":"yes","value":true},"redistribution":{"status":"yes","value":true},"attribution_required":{"status":"yes","value":true},"share_alike":{"status":"no","value":false},"personal_data_warning":{"status":"yes","value":true},"cache_and_mirror":{"status":"yes","value":true},"undetermined":[],"basis":"licence_text","confidence":0.95,"confidence_tier":"high","source_text":"Texte de la licence - le reutilisateur est libre \"de la communiquer, la reproduire, la copier ; de l'adapter, la modifier, l'extraire et la transformer, notamment pour creer des Informations derivees ; de la diffuser, la redistribuer, la publier et la transmettre, de l'exploiter a titre commercial\". Seule obligation : \"mentionner la paternite de l'Information : sa source (a minima le nom du Concedant) et la date de la derniere mise a jour\". Le texte rappelle que le reutilisateur doit respecter \"le cadre legal relatif a la protection des donnees a caractere personnel\". Aucune clause de partage a l'identique n'est imposee.","source_url":"https://github.com/etalab/licence-ouverte/blob/master/LO.md","reviewed_at":null},"license_raw":"https://www.etalab.gouv.fr/wp-content/uploads/2017/04/ETALAB-Licence-Ouverte-v2.0.pdf","latest_check":{"id":"7282710f-b0a5-423d-a744-3406d5467237","entry_id":"8a6eaa2b-9707-403e-8ad0-6efa1641b5b5","status":"VERIFIED","last_checked_at":"2026-10-22T07:30:51.503Z","p50_latency_ms":3381,"p95_latency_ms":null,"last_error":null,"consecutive_failures":0,"created_at":"2026-07-29T02:21:05.860Z","updated_at":"2026-10-22T07:30:51.503Z","consecutive_successes":24,"probe_url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement","probe_method":"GET","probe_http_status":200,"probe_content_type":"application/json; charset=utf-8","probe_succeeded_at":"2026-10-22T07:30:51.503Z"},"data_profile":{"id":"065ce4e2-4c8b-4c12-a1b5-2180809e1475","entry_id":"8a6eaa2b-9707-403e-8ad0-6efa1641b5b5","profile_source":"opendatasoft","profile_kind":"dataset","dataset_id":"ma_demande_logement","fields":[{"name":"geo_point_2d","type":"geo_point_2d","label":"Geo Point","filterable":false,"description":null,"description_en":"Geographic coordinates (latitude/longitude) of the reception point."},{"name":"geo_shape","type":"geo_shape","label":null,"filterable":false,"description":null,"description_en":"Geographic shape/geometry of the reception point location."},{"name":"id_reponse","type":"text","label":null,"filterable":true,"description":null,"description_en":"Unique identifier for the reception point record."},{"name":"nom","type":"text","label":null,"filterable":true,"description":null,"description_en":"Name of the reception point or organization."},{"name":"presentation_resume","type":"text","label":"activite","filterable":true,"description":null,"description_en":"Short description of the organization's activity or type."},{"name":"publics_accueillis","type":"text","label":null,"filterable":true,"description":null,"description_en":"Type of public served by the reception point."},{"name":"adresse_precision","type":"text","label":null,"filterable":true,"description":null,"description_en":"Additional detail on the exact location of the address."},{"name":"numero","type":"text","label":null,"filterable":true,"description":null,"description_en":"Street number of the reception point's address."},{"name":"rue","type":"text","label":null,"filterable":true,"description":null,"description_en":"Street name of the reception point's address."},{"name":"complement_adresse","type":"text","label":null,"filterable":true,"description":null,"description_en":"Additional address information such as building or floor."},{"name":"code_postal","type":"text","label":null,"fill_pct":100,"filterable":true,"description":null,"description_en":"Postal code of the reception point's address."},{"name":"commune","type":"text","label":null,"fill_pct":100,"filterable":true,"description":null,"description_en":"Municipality where the reception point is located."},{"name":"telephone_fixe","type":"text","label":null,"fill_pct":98.7,"filterable":true,"description":null,"description_en":"Landline phone number of the reception point."},{"name":"site_web","type":"text","label":null,"fill_pct":94.8,"filterable":true,"description":null,"description_en":"Website URL of the reception point or organization."},{"name":"courriel","type":"text","label":null,"fill_pct":64.9,"filterable":true,"description":null,"description_en":"Email address of the reception point or organization."},{"name":"prise_rdv","type":"text","label":null,"fill_pct":100,"filterable":true,"description":null,"description_en":"Opening hours or instructions for making an appointment."},{"name":"transports_en_commun","type":"text","label":null,"fill_pct":98.7,"filterable":true,"description":null,"description_en":"Public transport lines and stops near the reception point."},{"name":"niveau_prestation","type":"text","label":null,"fill_pct":163.6,"filterable":true,"description":null,"description_en":"Level of service provided at the reception point."},{"name":"accueil_du_public_sans_rendez_vous","type":"text","label":null,"fill_pct":98.7,"filterable":true,"description":null,"description_en":"Services available to the public without an appointment."},{"name":"accueil_du_public_sur_rendez_vous","type":"text","label":null,"fill_pct":45.5,"filterable":true,"description":null,"description_en":"Services available to the public by appointment."},{"name":"services_supplementaires","type":"text","label":null,"fill_pct":20.8,"filterable":true,"description":null,"description_en":"Additional services offered at the reception point."}],"field_count":21,"sample_records":[{"nom":"Centre médico-social Neuhof","rue":"rue de l'Indre","numero":"16","commune":"STRASBOURG","courriel":null,"site_web":"www.strasbourg.eu","geo_shape":{"type":"Feature","geometry":{"type":"Point","coordinates":[7.7693449371,48.5490730411]},"properties":{}},"prise_rdv":"lundi, mardi, mercredi et  vendredi de 8h30 à 12h et de 13h30 à 17h\nJeudi de 13h30 à 17h","id_reponse":"27","code_postal":"67000","geo_point_2d":{"lat":48.5490730411,"lon":7.7693449371},"telephone_fixe":"03 90 40 44 00","adresse_precision":null,"niveau_prestation":["Point info"],"complement_adresse":null,"publics_accueillis":"Tout public","presentation_resume":"Accueil social de proximité","transports_en_commun":"Tram C - arrêt St Christophe - Bus ligne 14 - arrêt Hautefort - Bus ligne 24 - arrêt St Christophe","services_supplementaires":null,"accueil_du_public_sur_rendez_vous":null,"accueil_du_public_sans_rendez_vous":"Information générale sur la demande de logement et orientation selon la situation et les besoins des usagers."},{"nom":"Alsace Habitat - Agence Eurométropole Sud","rue":"avenue de Colmar","numero":"173","commune":"STRASBOURG","courriel":"contact@alsacehabitat.fr","site_web":"https://ahsite.alsacehabitat.net/","geo_shape":{"type":"Feature","geometry":{"type":"Point","coordinates":[7.7513630465,48.5606339848]},"properties":{}},"prise_rdv":"lundi, mercredi, jeudi et vendredi : De 8h30 à 12h00 et de 14h30 à 17h00 / mardi 8h30-12h","id_reponse":"64","code_postal":"67100","geo_point_2d":{"lat":48.5606339848,"lon":7.7513630465},"telephone_fixe":"03 68 71 93 00","adresse_precision":null,"niveau_prestation":["Point info","Point conseil","Point enregistrement"],"complement_adresse":null,"publics_accueillis":"Tout public","presentation_resume":"Bailleur","transports_en_commun":"Arrêt Lycée Couffinal : tram A et , Bus 40","services_supplementaires":null,"accueil_du_public_sur_rendez_vous":"Accueil les personnes ayant déja une demande de logement social active (donc un Numéro Unique Départemental), pour le suivi de leur demande de logement social.","accueil_du_public_sans_rendez_vous":"Information sur la demande de logement social. Reception et enregistrement des demandes de logement social."},{"nom":"Centre médico-social Cité de l'Ill","rue":"rue de l'Ill","numero":"8","commune":"STRASBOURG","courriel":null,"site_web":"www.strasbourg.eu","geo_shape":{"type":"Feature","geometry":{"type":"Point","coordinates":[7.7786380214,48.6120750099]},"properties":{}},"prise_rdv":"lundi et mardi de 8h30 à 12h et de 13h30 à 17h\nmercredi de 8h30 à 12h\njeudi et vendredi de 13h30 à 17h","id_reponse":"36","code_postal":"67000","geo_point_2d":{"lat":48.6120750099,"lon":7.7786380214},"telephone_fixe":"03 88 45 47 80","adresse_precision":null,"niveau_prestation":["Point info"],"complement_adresse":null,"publics_accueillis":"Tout public","presentation_resume":"Accueil social de proximité","transports_en_commun":"Tram B - arrêt Pont Phario\nBus lignes 6, 72 A ou 30 - arrêt Hechner","services_supplementaires":null,"accueil_du_public_sur_rendez_vous":null,"accueil_du_public_sans_rendez_vous":"Information générale sur la demande de logement et orientation selon la situation et les besoins des usagers."},{"nom":"Mairie de Mittelhausbergen","rue":"rue Principale","numero":"46","commune":"MITTELHAUSBERGEN","courriel":"mairie@mittelhausbergen.fr","site_web":"www.mittelhausbergen.fr","geo_shape":{"type":"Feature","geometry":{"type":"Point","coordinates":[7.692855,48.613988]},"properties":{}},"prise_rdv":"Lundi / Mardi / Mercredi / Jeudi : 13h30-16h30\nJeudi 13h30 à 19h","id_reponse":"10","code_postal":"67206","geo_point_2d":{"lat":48.613988,"lon":7.692855},"telephone_fixe":"03 88 56 20 44","adresse_precision":null,"niveau_prestation":["Point info"],"complement_adresse":null,"publics_accueillis":"Tout public","presentation_resume":"Mairie","transports_en_commun":"Bus 17 - arrêt Eglise","services_supplementaires":null,"accueil_du_public_sur_rendez_vous":null,"accueil_du_public_sans_rendez_vous":"Information générale sur la demande de logement et orientation selon la situation et les besoins des usagers."},{"nom":"CCAS de Strasbourg","rue":"Parc de l'Etoile","numero":"1","commune":"STRASBOURG","courriel":null,"site_web":"www.strasbourg.eu","geo_shape":{"type":"Feature","geometry":{"type":"Point","coordinates":[7.7533990292,48.5734649576]},"properties":{}},"prise_rdv":"du lundi au vendredi de 8h30 à 12h et de 13h30 à 17h","id_reponse":"22","code_postal":"67000","geo_point_2d":{"lat":48.5734649576,"lon":7.7533990292},"telephone_fixe":"03 68 98 50 00","adresse_precision":"Centre Administratif de la Ville et de l’Eurométropole de Strasbourg","niveau_prestation":["Point info"],"complement_adresse":null,"publics_accueillis":"Personnes et familles sans domicile en lien avec la ville de Strasbourg","presentation_resume":"Accueil social de proximité","transports_en_commun":"Tram A et D, Bus C1, C8 et G : arrêt Etoile-Bourse","services_supplementaires":null,"accueil_du_public_sur_rendez_vous":null,"accueil_du_public_sans_rendez_vous":"Information générale sur la demande de logement et orientation selon la situation et les besoins des usagers."}],"record_count":"77","data_size_bytes":null,"dataset_count":null,"query_examples":[{"url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/records?limit=20","curl":"curl -s 'https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/records?limit=20' -H 'Accept: application/json'","label":"List records","method":"GET","description":"First 20 records of the dataset as JSON."},{"url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/records?select=geo_point_2d%2Cgeo_shape%2Cid_reponse&where=id_reponse+is+not+null&limit=20","curl":"curl -s 'https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/records?select=geo_point_2d%2Cgeo_shape%2Cid_reponse&where=id_reponse+is+not+null&limit=20' -H 'Accept: application/json'","label":"Select & filter","method":"GET","description":"Project specific fields (geo_point_2d, geo_shape, id_reponse) and filter with ODSQL where clauses."},{"url":"https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/exports/csv","curl":"curl -sL 'https://data.strasbourg.eu/api/explore/v2.1/catalog/datasets/ma_demande_logement/exports/csv' -o dataset.csv","label":"Export CSV","method":"GET","description":"Full dataset export as CSV (also available: json, parquet, xlsx)."}],"status":"ok","error_message":null,"profiled_at":"2026-10-22T00:34:56.141Z","run_id":"b8b73095-5976-4e7b-a657-4ecffde50ebc","created_at":"2026-07-25T22:23:29.094Z","updated_at":"2026-10-22T00:34:56.141Z","license_raw":"https://www.etalab.gouv.fr/wp-content/uploads/2017/04/ETALAB-Licence-Ouverte-v2.0.pdf","license_id":"lo-2.0","consecutive_failure_count":0,"last_error_at":null,"last_error_message":null,"previewable":true,"personal_data":{"status":"identified_person","basis":"direct_identifier_cited","grain":"one_row_per_person","allowed":false,"columns":{"direct_identifiers":["telephone_fixe","courriel"],"family_names":["nom"],"given_names":[],"attributes":[],"unresolved_names":[],"measures":[],"entity_identifiers":[]},"publication":null,"publication_evidence":null,"notice":"personal data: a record about ONE IDENTIFIABLE PERSON; rows WITHHELD; columns — identifiers: telephone_fixe, courriel; names: nom; names of an unstated subject: none; attributes: none; measures: none; entity keys: none"}},"datasets":[],"limits":[{"id":"0e512261-32a8-4b32-89d2-6f1025eda141","entry_id":"8a6eaa2b-9707-403e-8ad0-6efa1641b5b5","limit_type":"requests_per_day","value":"2000000","unit":"requests","period":"day","scope":"per-ip","source_id":null,"claim_type":"measured","confidence":"0.90","observed_at":"2026-10-22T00:34:57.256Z"}],"source_access":{"status":"accessed_despite_disallow","host":"data.strasbourg.eu","requested_path_prefix":"/api/explore/v2.1/","robots_url":"https://data.strasbourg.eu/robots.txt","user_agent_group":"*","robots_rule":"Disallow: /api/","robots_read_at":"2026-08-25T11:29:16.804Z","decision_ref":"owner decision 2026-08-22, recorded in docs/PROGRESS.md NEEDS-HUMAN: public-sector open-data portals whose purpose is machine access; the directive is an Opendatasoft vendor default reflecting no publisher intent. Concern raised and overruled; see the row.","note":"This answer is derived from a host whose robots.txt DISALLOWS the path Commodity requests, and Commodity requests it anyway under the decision named in `decision_ref`. The rule is quoted verbatim so you can read it yourself. Commodity does not send a user-agent it is not, so any `Allow` granted to a named crawler in that file is not claimed here."},"field_provenance_source_access":{"status":{"basis":"platform_computed","derived":true,"upstream_field":null,"transform":"THIS PLATFORM’S READING OF ITS OWN CONDUCT: that it requests a path this host forbids. No publisher asserts it and none was asked to","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"host":{"basis":"platform_computed","derived":true,"upstream_field":null,"transform":"the host Commodity addressed, lowercased and stripped of scheme and port by this platform so that one host has one row and one reading","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"requested_path_prefix":{"basis":"platform_computed","derived":true,"upstream_field":null,"transform":"THE PATH THE VERDICT IS ABOUT, derived from the base URLs this platform stores for the host — not `/`, and not an assumed `/api/`. A verdict about a path we do not call would describe someone else’s traffic","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"robots_url":{"basis":"platform_computed","derived":true,"upstream_field":null,"transform":"where the file was fetched from — composed by this platform from the host, at the one location the protocol fixes, so it can be re-fetched and the reading disputed","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"user_agent_group":{"basis":"stored_sample","derived":false,"upstream_field":"the `User-agent` line the deciding rule sits under","transform":"the group heading that made the rule OURS, verbatim from the stored file. Where it is `*` the directive addresses everyone; a group naming another crawler was not applied, because Commodity does not send a user-agent it is not","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"robots_rule":{"basis":"stored_sample","derived":false,"upstream_field":"the directive line of the matching group","transform":"THE PUBLISHER’S OWN LINE, QUOTED AND UNCUT, as read from robots.txt at the moment below and stored — not fetched for this request, and not part of this response’s payload. It is here so the verdict beside it can be checked rather than taken from us","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"robots_read_at":{"basis":"platform_computed","derived":true,"upstream_field":null,"transform":"OUR CLOCK when the file was read, never a `Date` header the origin sent. It bounds how stale this reading may be: a publisher can have changed the file since","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"decision_ref":{"basis":"platform_computed","derived":true,"upstream_field":null,"transform":"WHO DECIDED TO CALL IT ANYWAY, AND WHEN. Recorded by this platform and required by the database before the exception may exist at all, so it can never be anonymous","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}},"note":{"basis":"platform_computed","derived":true,"upstream_field":null,"transform":"this platform’s sentence explaining what the reader is holding. Written here, by us, and not a quotation of anybody","cells":{"rows":1,"delivered":1,"empty":0,"stringified":0,"truncated":0}}},"manifest":{"answer_sha256":"89f115909a6924f227bee0f21916d225fff1946a8c849c40c617a6d9a109bddc","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":42,"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: data_profile.fields[] (21 rows).","live":false,"live_basis":"This body was replayed from the worker edge cache (x-edge-cache: hit); the bytes, and therefore answer_sha256, are those of the execution that filled the cache.","created_at":"2026-10-24T07:07:47.041Z","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."}}