{"id":"99f675e8-69de-4861-8832-78661c468fa3","type":"API","name":"Emploi au quart des communes d'Île-de-France (données Insee)","slug":"emploi-au-quart-des-communes-dile-de-france-donnees-insee","description":"[Situation 2020] Emploi communal au quart depuis 1962. Au recensement, les personnes actives ayant un emploi peuvent être comptées à leur lieu de résidence ou à leur lieu de travail. Au lieu de travail, on parle d'emploi au lieu de travail ou plus brièvement d'emploi. Par opposition a lieu de rés...","free_access_class":"FREE_NO_AUTH","auth_type":"NONE","homepage_url":"https://data.iledefrance.fr/explore/dataset/emploi-au-quart-de-1968-a-2016-dile-de-france/","docs_url":"https://data.iledefrance.fr/explore/dataset/emploi-au-quart-de-1968-a-2016-dile-de-france/","repo_url":null,"status":"ACTIVE","verification_state":"VERIFIED","tags":[],"logo_url":"https://data.iledefrance.fr/assets/favicon","primary_source_url":"https://data.iledefrance.fr/explore/dataset/emploi-au-quart-de-1968-a-2016-dile-de-france/","extraction_confidence":"0.00","created_at":"2026-07-25T03:48:31.200Z","updated_at":"2026-09-06T18:48:53.080Z","last_verified_at":"2026-09-06T09:29:33.156Z","deprecated_at":null,"ranking_score":51,"last_ranked_at":"2026-08-29T06:57:48.764Z","last_seen_at":null,"last_validated_at":null,"last_uptime_at":"2026-09-06T18:48:53.080Z","search_vector":"'1962':20B,85B '2020':14B,79B 'a':97B,103B,127B 'activ':25B 'actives':90B 'au':2A,17B,21B,43B,51B,67A,82B,86B,108B,116B 'ayant':26B,91B 'brievement':122B 'brièvement':57B 'communal':16B,81B 'commune':5A 'communes':70A 'comptees':96B 'compté':31B 'd':6A,49B,58B,71A,114B,123B 'de':9A,35B,41B,45B,53B,64B,74A,100B,106B,110B,118B,129B 'depui':19B 'depuis':84B 'des':4A,69A 'donnees':76A 'donné':11A 'emploi':1A,15B,28B,50B,59B,66A,80B,93B,115B,124B 'etre':95B 'franc':10A 'france':75A 'ile':73A 'ile-de-france':72A 'inse':12A 'insee':77A 'les':23B,88B 'leur':33B,39B,98B,104B 'lieu':34B,40B,44B,52B,63B,99B,105B,109B,117B,128B 'on':112B 'opposit':61B 'opposition':126B 'ou':37B,55B,102B,120B 'par':60B,125B 'parl':48B 'parle':113B 'personn':24B 'personnes':89B 'peuvent':29B,94B 'plus':56B,121B 'quart':3A,18B,68A,83B 'recens':22B 'recensement':87B 'res':130B 'residence':101B 'rés':65B 'résidenc':36B 'situat':13B 'situation':78B 'travail':42B,46B,54B,107B,111B,119B 'un':27B,92B 'à':32B,38B 'être':30B 'île':8A 'île-de-fr':7A","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-26T07:49:00.000Z","geographic_scope":"NATIONAL","name_en":null,"description_en":null,"native_lang":null,"access_level":"direct","formats":["CSV"],"capability_tier":"live","trust_score":38.75,"merged_into_entry_id":null,"identity_key":"API|https://data.iledefrance.fr/explore/dataset/emploi-au-quart-de-1968-a-2016-dile-de-france|emploi au quart des communes d'île-de-france (données insee)","upstream_ref":"data.iledefrance.fr:dataset:emploi-au-quart-de-1968-a-2016-dile-de-france","access":{"level":"direct","primary":{"kind":"download","label":"Export CSV","method":"GET","url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/exports/csv","format":"CSV","source":"query_example","runnable":true,"direct":true},"actions":[{"kind":"download","label":"Export CSV","method":"GET","url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/exports/csv","format":"CSV","source":"query_example","runnable":true,"direct":true},{"kind":"query","label":"List records","method":"GET","url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/records?limit=20","source":"query_example","runnable":true,"direct":true},{"kind":"query","label":"Select & filter","method":"GET","url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/records?select=geo_point_2d%2Cgeo_shape%2Cobjectid&where=insee+is+not+null&limit=20","source":"query_example","runnable":true,"direct":true},{"kind":"query","label":"Run verified request","method":"GET","url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france","source":"probe","runnable":true},{"kind":"landing","label":"Read the docs","method":"GET","url":"https://data.iledefrance.fr/explore/dataset/emploi-au-quart-de-1968-a-2016-dile-de-france/","source":"docs","runnable":false}],"formats":["CSV"]},"maturity":{"entry_id":"99f675e8-69de-4861-8832-78661c468fa3","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":"executable","level_index":4,"level_label":"Executable","meaning":"Queries run through Commodity","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":false,"reached":false,"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.iledefrance.fr","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-09-08T14:51:34.428Z"},"api_details":{"id":"88573959-6d24-4e8a-83f5-833923bee0ac","entry_id":"99f675e8-69de-4861-8832-78661c468fa3","base_url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france","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.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france","created_at":"2026-07-25T03:48:31.356Z","updated_at":"2026-07-25T03:48:31.356Z"},"dataset_details":{"id":"bb8c1166-ab95-4399-a189-ca4ef7663592","entry_id":"99f675e8-69de-4861-8832-78661c468fa3","upstream_issued":null,"upstream_modified":"2024-10-08T08:12:45.451Z","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.iledefrance.fr","created_at":"2026-07-25T03:59:43.516Z","updated_at":"2026-09-08T10:40:25.717Z","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":"942ffebc-0c8a-40b0-a2cd-a1dd6f5fe432","entry_id":"99f675e8-69de-4861-8832-78661c468fa3","status":"VERIFIED","last_checked_at":"2026-09-06T09:29:32.845Z","p50_latency_ms":1853,"p95_latency_ms":null,"last_error":null,"consecutive_failures":0,"created_at":"2026-07-27T00:55:13.157Z","updated_at":"2026-09-06T09:29:32.845Z","consecutive_successes":9,"probe_url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france","probe_method":"GET","probe_http_status":200,"probe_content_type":"application/json; charset=utf-8","probe_succeeded_at":"2026-09-06T09:29:32.845Z"},"data_profile":{"id":"a32d610b-e192-4e0b-88fb-2949aa6a7b5f","entry_id":"99f675e8-69de-4861-8832-78661c468fa3","profile_source":"opendatasoft","profile_kind":"dataset","dataset_id":"emploi-au-quart-de-1968-a-2016-dile-de-france","fields":[{"name":"geo_point_2d","type":"geo_point_2d","label":"Geo Point","filterable":false,"description":null},{"name":"geo_shape","type":"geo_shape","label":null,"filterable":false,"description":null},{"name":"objectid","type":"int","label":null,"filterable":true,"description":null},{"name":"insee","type":"text","label":null,"filterable":true,"description":"Code Insee de la commune"},{"name":"tx_emp1990","type":"double","label":null,"filterable":true,"description":"Taux d'emploi 1990"},{"name":"tx_emp1999","type":"double","label":null,"filterable":true,"description":"Taux d'emploi 1999"},{"name":"tcam9099","type":"double","label":null,"filterable":true,"description":"Taux d'évolution annuelle 1990 - 1999"},{"name":"emp2006","type":"double","label":null,"filterable":true,"description":"Emploi 2006"},{"name":"emp_h2006","type":"double","label":null,"filterable":true,"description":"Emploi des hommes 2006"},{"name":"emp_f2006","type":"double","label":null,"filterable":true,"description":"Emploi des femmes 2006"},{"name":"emp_h2007","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2007"},{"name":"emp_f2007","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2007"},{"name":"emp2007","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2007"},{"name":"emp_h2008","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2008"},{"name":"emp_f2008","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2008"},{"name":"emp2008","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2008"},{"name":"emp2009","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2009"},{"name":"emp_h2009","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2009"},{"name":"emp_f2009","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2009"},{"name":"emp_h2010","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2010"},{"name":"emp_f2010","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2010"},{"name":"emp2010","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2010"},{"name":"emp_h2011","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2011"},{"name":"emp_f2011","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2011"},{"name":"emp2011","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2011"},{"name":"emp_h2012","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2012"},{"name":"emp_f2012","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2012"},{"name":"emp2012","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2012"},{"name":"emp_h2013","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2013"},{"name":"emp_f2013","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2013"},{"name":"emp2013","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2013"},{"name":"emp_h2014","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2014"},{"name":"emp_f2014","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2014"},{"name":"emp2014","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2014"},{"name":"emp_h2015","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2015"},{"name":"emp_f2015","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2015"},{"name":"emp2015","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2015"},{"name":"emp1999","type":"int","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 1999"},{"name":"emp1990","type":"int","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 1990"},{"name":"emp1982","type":"int","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 1982"},{"name":"emp1975","type":"int","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 1975"},{"name":"emp1968","type":"int","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 1968"},{"name":"emp_h2016","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2016"},{"name":"emp_f2016","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2016"},{"name":"emp2016","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2016"},{"name":"emp_h2017","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2017"},{"name":"emp_f2017","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2017"},{"name":"emp2017","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2017"},{"name":"emp_h2018","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2018"},{"name":"emp_f2018","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2018"},{"name":"emp2018","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2018"},{"name":"emp_h2019","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2019"},{"name":"emp_f2019","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2019"},{"name":"emp2019","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2019"},{"name":"emp_h2020","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des hommes 2020"},{"name":"emp_f2020","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi des femmes 2020"},{"name":"emp2020","type":"double","label":null,"fill_pct":100,"filterable":true,"description":"Emploi 2019"}],"field_count":57,"sample_records":[{"insee":"77027","emp1968":300,"emp1975":330,"emp1982":348,"emp1990":264,"emp1999":215,"emp2006":222.071578,"emp2007":234.16,"emp2008":219.17,"emp2009":212.75,"emp2010":254.98,"emp2011":225.55,"emp2012":222.77,"emp2013":248.11,"emp2014":236.47,"emp2015":221.54,"emp2016":220.64,"emp2017":229.92,"emp2018":224.93,"emp2019":224.96,"emp2020":212.55,"objectid":46,"tcam9099":-2.25,"emp_f2006":100.903732,"emp_f2007":104.09,"emp_f2008":90.09,"emp_f2009":102.2,"emp_f2010":120.16,"emp_f2011":107.7,"emp_f2012":104.32,"emp_f2013":124.69,"emp_f2014":121.16,"emp_f2015":133.58,"emp_f2016":134.17,"emp_f2017":141.34,"emp_f2018":136.32,"emp_f2019":136.49,"emp_f2020":101.66,"emp_h2006":121.167846,"emp_h2007":130.07,"emp_h2008":129.08,"emp_h2009":110.55,"emp_h2010":134.82,"emp_h2011":117.85,"emp_h2012":118.45,"emp_h2013":123.42,"emp_h2014":115.31,"emp_h2015":87.96,"emp_h2016":86.47,"emp_h2017":88.58,"emp_h2018":88.61,"emp_h2019":88.47,"emp_h2020":110.89,"geo_shape":{"type":"Feature","geometry":{"type":"MultiPoint","coordinates":[[2.49226943693465,48.14059781763174]]},"properties":{}},"tx_emp1990":0.73,"tx_emp1999":0.54,"geo_point_2d":{"lat":48.14059781763174,"lon":2.4922694369346496}},{"insee":"77067","emp1968":324,"emp1975":580,"emp1982":1352,"emp1990":1876,"emp1999":2116,"emp2006":2369.55355,"emp2007":2286.59,"emp2008":2420.17,"emp2009":2396.13,"emp2010":2598.89,"emp2011":2755.03,"emp2012":2972.6,"emp2013":2989.67,"emp2014":3099.57,"emp2015":3180.02,"emp2016":3048.16,"emp2017":3010.26,"emp2018":3141.88,"emp2019":3166.67,"emp2020":3183.93,"objectid":84,"tcam9099":1.35,"emp_f2006":1234.215974,"emp_f2007":1249.5,"emp_f2008":1362.12,"emp_f2009":1354.39,"emp_f2010":1499.28,"emp_f2011":1555.06,"emp_f2012":1603.9,"emp_f2013":1540.42,"emp_f2014":1607.26,"emp_f2015":1660.02,"emp_f2016":1623,"emp_f2017":1630.48,"emp_f2018":1731.4,"emp_f2019":1745.22,"emp_f2020":1751.65,"emp_h2006":1135.3375760000001,"emp_h2007":1037.09,"emp_h2008":1058.05,"emp_h2009":1041.74,"emp_h2010":1099.61,"emp_h2011":1199.97,"emp_h2012":1368.7,"emp_h2013":1449.25,"emp_h2014":1492.31,"emp_h2015":1520,"emp_h2016":1425.16,"emp_h2017":1379.78,"emp_h2018":1410.48,"emp_h2019":1421.45,"emp_h2020":1432.28,"geo_shape":{"type":"Feature","geometry":{"type":"MultiPoint","coordinates":[[2.595125204896206,48.56476827794974]]},"properties":{}},"tx_emp1990":0.49,"tx_emp1999":0.57,"geo_point_2d":{"lat":48.56476827794974,"lon":2.5951252048962057}},{"insee":"77154","emp1968":92,"emp1975":145,"emp1982":120,"emp1990":88,"emp1999":136,"emp2006":133.83256,"emp2007":134.12,"emp2008":120.93,"emp2009":105.97,"emp2010":98.11,"emp2011":99.19,"emp2012":97.56,"emp2013":107.29,"emp2014":113.38,"emp2015":136.95,"emp2016":142.6,"emp2017":150.85,"emp2018":160.73,"emp2019":163.02,"emp2020":175.19,"objectid":167,"tcam9099":4.95,"emp_f2006":61.350492,"emp_f2007":61.56,"emp_f2008":47.94,"emp_f2009":36.54,"emp_f2010":28.37,"emp_f2011":35.36,"emp_f2012":33.68,"emp_f2013":40.01,"emp_f2014":46.6,"emp_f2015":50.06,"emp_f2016":47.62,"emp_f2017":48.89,"emp_f2018":66.15,"emp_f2019":67.64,"emp_f2020":71.86,"emp_h2006":72.482068,"emp_h2007":72.56,"emp_h2008":72.99,"emp_h2009":69.43,"emp_h2010":69.74,"emp_h2011":63.83,"emp_h2012":63.88,"emp_h2013":67.28,"emp_h2014":66.78,"emp_h2015":86.89,"emp_h2016":94.98,"emp_h2017":101.96,"emp_h2018":94.58,"emp_h2019":95.38,"emp_h2020":103.33,"geo_shape":{"type":"Feature","geometry":{"type":"MultiPoint","coordinates":[[2.903784168269384,48.808521488153225]]},"properties":{}},"tx_emp1990":0.33,"tx_emp1999":0.41,"geo_point_2d":{"lat":48.808521488153225,"lon":2.9037841682693837}},{"insee":"77188","emp1968":184,"emp1975":160,"emp1982":168,"emp1990":96,"emp1999":96,"emp2006":85.343268,"emp2007":89.11,"emp2008":100.75,"emp2009":94.48,"emp2010":113.29,"emp2011":119.15,"emp2012":115.92,"emp2013":114.56,"emp2014":120.18,"emp2015":108.48,"emp2016":115.05,"emp2017":129.04,"emp2018":129.82,"emp2019":129.99,"emp2020":122.65,"objectid":198,"tcam9099":0,"emp_f2006":35.993078000000004,"emp_f2007":35.69,"emp_f2008":35.36,"emp_f2009":31.28,"emp_f2010":36.31,"emp_f2011":39.3,"emp_f2012":41.62,"emp_f2013":44.12,"emp_f2014":49.11,"emp_f2015":60,"emp_f2016":72.79,"emp_f2017":70.13,"emp_f2018":71.58,"emp_f2019":71.15,"emp_f2020":62.78,"emp_h2006":49.35019,"emp_h2007":53.42,"emp_h2008":65.39,"emp_h2009":63.2,"emp_h2010":76.98,"emp_h2011":79.85,"emp_h2012":74.3,"emp_h2013":70.44,"emp_h2014":71.07,"emp_h2015":48.48,"emp_h2016":42.26,"emp_h2017":58.91,"emp_h2018":58.24,"emp_h2019":58.84,"emp_h2020":59.87,"geo_shape":{"type":"Feature","geometry":{"type":"MultiPoint","coordinates":[[2.766947333242141,48.48427944952713]]},"properties":{}},"tx_emp1990":0.24,"tx_emp1999":0.22,"geo_point_2d":{"lat":48.48427944952713,"lon":2.7669473332421406}},{"insee":"77347","emp1968":204,"emp1975":240,"emp1982":232,"emp1990":124,"emp1999":225,"emp2006":250.674378,"emp2007":202.58,"emp2008":202.51,"emp2009":238.26,"emp2010":255.21,"emp2011":226.97,"emp2012":228.49,"emp2013":257.55,"emp2014":224.02,"emp2015":229.44,"emp2016":220.98,"emp2017":206.44,"emp2018":182.85,"emp2019":182.78,"emp2020":195.99,"objectid":351,"tcam9099":6.84,"emp_f2006":103.54860199999999,"emp_f2007":89.21,"emp_f2008":97.12,"emp_f2009":124.02,"emp_f2010":129.97,"emp_f2011":132.83,"emp_f2012":141.04,"emp_f2013":163.56,"emp_f2014":141.6,"emp_f2015":146.29,"emp_f2016":138.28,"emp_f2017":114.65,"emp_f2018":100.73,"emp_f2019":100.76,"emp_f2020":95.71,"emp_h2006":147.125776,"emp_h2007":113.37,"emp_h2008":105.39,"emp_h2009":114.24,"emp_h2010":125.24,"emp_h2011":94.14,"emp_h2012":87.45,"emp_h2013":93.99,"emp_h2014":82.42,"emp_h2015":83.15,"emp_h2016":82.7,"emp_h2017":91.79,"emp_h2018":82.12,"emp_h2019":82.02,"emp_h2020":100.28,"geo_shape":{"type":"Feature","geometry":{"type":"MultiPoint","coordinates":[[3.224430994190718,48.45953895600978]]},"properties":{}},"tx_emp1990":0.43,"tx_emp1999":0.74,"geo_point_2d":{"lat":48.45953895600978,"lon":3.224430994190718}}],"record_count":"1287","data_size_bytes":null,"dataset_count":null,"query_examples":[{"url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/records?limit=20","curl":"curl -s 'https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/records?limit=20' -H 'Accept: application/json'","label":"List records","method":"GET","description":"First 20 records of the dataset as JSON."},{"url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/records?select=geo_point_2d%2Cgeo_shape%2Cobjectid&where=insee+is+not+null&limit=20","curl":"curl -s 'https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/records?select=geo_point_2d%2Cgeo_shape%2Cobjectid&where=insee+is+not+null&limit=20' -H 'Accept: application/json'","label":"Select & filter","method":"GET","description":"Project specific fields (geo_point_2d, geo_shape, objectid) and filter with ODSQL where clauses."},{"url":"https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/exports/csv","curl":"curl -sL 'https://data.iledefrance.fr/api/explore/v2.1/catalog/datasets/emploi-au-quart-de-1968-a-2016-dile-de-france/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-09-08T10:40:24.574Z","run_id":"5f615b25-ee5f-4d49-87b1-ef6bc2b218a7","created_at":"2026-07-25T03:59:42.852Z","updated_at":"2026-09-08T10:40:24.574Z","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":"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)"}},"datasets":[],"limits":[{"id":"2ad3513a-24ac-4777-bf50-4d73c09efdc5","entry_id":"99f675e8-69de-4861-8832-78661c468fa3","limit_type":"requests_per_day","value":"10000","unit":"requests","period":"day","scope":"per-ip","source_id":null,"claim_type":"measured","confidence":"0.90","observed_at":"2026-09-08T10:40:25.877Z"}],"source_access":{"status":"accessed_despite_disallow","host":"data.iledefrance.fr","requested_path_prefix":"/api/explore/v2.1/","robots_url":"https://data.iledefrance.fr/robots.txt","user_agent_group":"*","robots_rule":"Disallow: /api/","robots_read_at":"2026-08-25T11:29:14.157Z","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":"1e1e360e7df407058b94044cd15ae43916d3df212c1e3438223c2b7474719631","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":78,"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[] (57 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-09-08T14:51:39.976Z","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."}}