{"id":"42a6b4cc-e457-41f0-a146-b077f23890ad","type":"API","name":"Open Prices","slug":"open-prices","description":"L'API RESTful d'Open Prices vous permet d'enrichir la base de données en ajoutant des informations sur les prix des produits. **Fonctionnalités principales :** * **Authentification :** Gérez votre accès à l'API. * **Produits :** Obtenez, ajoutez ou modifiez des informations sur les produits. * **…","free_access_class":"FREE_NO_AUTH","auth_type":"NONE","homepage_url":"https://www.data.gouv.fr/dataservices/open-prices","docs_url":"https://www.data.gouv.fr/dataservices/open-prices","repo_url":null,"status":"ACTIVE","verification_state":"VERIFIED","tags":["education","prices"],"logo_url":"https://udata-avatars.s3.rbx.io.cloud.ovh.net/3b/e2ead53edc445984a10040b976abd7-100.jpg","primary_source_url":"https://www.data.gouv.fr/dataservices/open-prices","extraction_confidence":"0.40","created_at":"2026-06-07T22:08:46.844Z","updated_at":"2026-08-15T16:51:29.990Z","last_verified_at":"2026-08-15T13:24:44.825Z","deprecated_at":null,"ranking_score":60,"last_ranked_at":"2026-08-08T11:00:55.722Z","last_seen_at":null,"last_validated_at":null,"last_uptime_at":"2026-08-06T15:38:04.026Z","search_vector":"'a':170B,186B,199B,233B 'acces':169B 'access':73B,211B 'accè':31B 'ad':79B 'adding':217B 'aim':117B 'aimed':255B 'ajout':18B 'ajoutant':156B 'ajoutez':37B,175B 'allow':57B 'allows':195B 'analys':127B 'analyses':265B 'and':212B,218B,251B,258B 'api':4B,34B,50B,72B,142B,172B,188B,210B 'around':94B,232B 'as':222B,224B 'associ':87B 'associated':225B 'at':256B 'authent':69B 'authentication':207B 'authentif':28B 'authentification':166B 'base':14B,128B,152B 'based':266B 'build':124B,262B 'built':93B,231B 'collabor':62B 'collaborative':200B 'collect':133B 'collected':271B 'contributor':58B,121B 'contributors':196B,259B 'crowdsourc':96B 'crowdsourced':234B 'd':6B,11B,144B,149B 'data':132B,270B 'data.gouv.fr':54B,192B 'databas':63B 'database':201B 'de':15B,153B 'des':19B,24B,40B,157B,162B,178B 'develop':119B 'developers':257B 'donnees':154B 'donné':16B 'educ':137C 'en':17B,155B 'enabl':103B 'enabling':241B 'endpoint':76B 'endpoints':214B 'enrich':60B,198B 'enrichir':12B,150B 'entri':89B 'entries':227B 'fact':102B 'facts':240B 'fonctionnalites':164B 'fonctionnalité':26B 'food':101B,239B 'for':208B,215B 'from':272B 'gerez':167B 'gérez':29B 'inform':20B,41B,83B 'information':221B 'informations':158B,179B 'is':185B,230B,254B 'it':205B,253B 'l':3B,33B,141B,171B 'la':13B,151B 'les':22B,43B,160B,181B 'link':51B 'linked':189B 'locat':114B 'locations':252B 'manag':71B 'managing':209B 'model':97B,235B 'modifi':81B 'modifiez':39B,177B 'modifying':219B 'observ':108B 'observations':246B 'obtenez':36B,174B 'of':202B 'on':267B 'open':1A,7B,45B,100B,139A,145B,183B,238B 'or':264B 'ou':38B,176B 'permet':10B,148B 'platform':55B,193B 'price':2A,8B,46B,66B,88B,107B,131B,138C,226B,245B,269B 'prices':140A,146B,184B,204B 'principal':27B 'principales':165B 'prix':23B,161B 'product':65B,82B,112B,203B,220B 'products':250B 'produit':25B,35B,44B 'produits':163B,173B,182B 'provid':75B 'provides':213B 'public':136B,274B 'rest':5B,49B 'restful':143B,187B 'retail':130B,268B 'retriev':78B 'retrieving':216B 'servic':91B 'service':229B 'similar':98B,236B 'specif':111B 'specific':249B 'submit':106B,244B 'support':68B 'supports':206B 'sur':21B,42B,159B,180B 'that':194B 'the':191B,228B,273B 'tie':109B 'tied':247B 'to':190B,197B,237B,243B,248B,261B 'tool':125B 'tools':263B 'user':104B 'users':242B 'votr':30B 'votre':168B 'vous':9B,147B 'well':85B,223B 'wish':122B 'wishing':260B 'à':32B","popularity_score":"0.0000","maintenance_score":"0.7000","institution_id":null,"institution_type":null,"country_code":"FR","official_confidence":40,"proof_summary":"official domain (data.gouv.fr) (catalog: api_gouv_fr)","source_seed_url":null,"is_public_sector":true,"published_at":"2026-06-07T22:08:46.844Z","geographic_scope":"NATIONAL","name_en":null,"description_en":"Open Prices is a RESTful API, linked to the data.gouv.fr platform, that allows contributors to enrich a collaborative database of product prices. It supports authentication for managing API access, and provides endpoints for retrieving, adding, and modifying product information as well as associated price entries. The service is built around a crowdsourced model similar to Open Food Facts, enabling users to submit price observations tied to specific products and locations. It is aimed at developers and contributors wishing to build tools or analyses based on retail price data collected from the public.","native_lang":"fr","access_level":"documented","formats":[],"capability_tier":"sample","trust_score":71.25,"access":{"level":"documented","primary":{"kind":"query","label":"Run verified request","method":"GET","url":"https://prices.openfoodfacts.org/api/docs","source":"probe","runnable":true},"actions":[{"kind":"query","label":"Run verified request","method":"GET","url":"https://prices.openfoodfacts.org/api/docs","source":"probe","runnable":true},{"kind":"spec","label":"OpenAPI spec","method":"GET","url":"https://prices.openfoodfacts.org/api/schema","source":"openapi","runnable":false},{"kind":"landing","label":"Read the docs","method":"GET","url":"https://www.data.gouv.fr/dataservices/open-prices","source":"docs","runnable":false}],"formats":[]},"maturity":{"entry_id":"42a6b4cc-e457-41f0-a146-b077f23890ad","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":"profiled","level_index":3,"level_label":"Profiled","meaning":"Schema, dimensions and licence understood","counts_as_coverage":false,"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":false,"reached":false,"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":40,"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":"www.data.gouv.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-08-16T13:49:49.914Z"},"api_details":{"id":"8366d72b-9cda-4ee6-9026-5ed4df8f35c6","entry_id":"42a6b4cc-e457-41f0-a146-b077f23890ad","base_url":"https://prices.openfoodfacts.org/api/docs","openapi_url":"https://prices.openfoodfacts.org/api/schema","graphql_url":null,"api_version":null,"spec_format":"openapi","endpoints_count":null,"endpoints":[],"rate_limit_info":null,"free_tier_limits":null,"ping_url":"https://prices.openfoodfacts.org/api/docs","created_at":"2026-06-07T22:08:46.861Z","updated_at":"2026-06-07T22:08:46.861Z"},"dataset_details":null,"license":null,"reuse":{"license_id":null,"license_name":null,"license_url":null,"commercial_use":{"status":"unknown","value":null},"redistribution":{"status":"unknown","value":null},"attribution_required":{"status":"unknown","value":null},"share_alike":{"status":"unknown","value":null},"personal_data_warning":{"status":"unknown","value":null},"cache_and_mirror":{"status":"unknown","value":null},"undetermined":["commercial_use","redistribution","attribution_required","share_alike","personal_data_warning","cache_and_mirror"],"basis":"unverified","confidence":0.1,"confidence_tier":"low","source_text":null,"source_url":null,"reviewed_at":null},"license_raw":"https://www.gnu.org/licenses/agpl-3.0.en.html","latest_check":{"id":"e183f09f-c01f-42aa-bc47-96d32f9034b0","entry_id":"42a6b4cc-e457-41f0-a146-b077f23890ad","status":"VERIFIED","last_checked_at":"2026-08-15T13:24:44.562Z","p50_latency_ms":2160,"p95_latency_ms":null,"last_error":null,"consecutive_failures":0,"created_at":"2026-06-08T12:43:09.698Z","updated_at":"2026-08-15T13:24:44.562Z","consecutive_successes":50,"probe_url":"https://prices.openfoodfacts.org/api/docs","probe_method":"GET","probe_http_status":200,"probe_content_type":"text/html; charset=utf-8","probe_succeeded_at":"2026-08-15T13:24:44.562Z"},"data_profile":{"id":"2ac54b7b-260b-462e-bd68-fcc14a464e3d","entry_id":"42a6b4cc-e457-41f0-a146-b077f23890ad","profile_source":"openapi","profile_kind":"dataset","dataset_id":null,"fields":[{"name":"format","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/schema","filterable":true,"description":null,"enum_values":["json","yaml"],"description_en":"Response format requested for the API output."},{"name":"lang","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/schema","filterable":true,"description":null,"enum_values":["af","ar","ar-dz","ast","az","be","bg","bn","br","bs","ca","ckb","cs","cy","da","de","dsb","el","en","en-au"],"description_en":"Language code used for localized content."},{"name":"order_by","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/badges","filterable":true,"description":"Which field to use when ordering the results.","description_en":"Which field to use when ordering the results."},{"name":"page","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/badges","filterable":true,"description":"A page number within the paginated result set.","description_en":"A page number within the paginated result set."},{"name":"size","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/badges","filterable":true,"description":"Number of results to return per page.","description_en":"Number of results to return per page."},{"name":"id","role":"parameter","type":"integer","label":null,"param_in":"path","required":true,"container":"/api/v1/challenges","filterable":true,"description":"A unique integer value identifying this Badge.","description_en":"Unique identifier for the record."},{"name":"end_date__gt","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with an end date after this date."},{"name":"end_date__gte","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with an end date on or after this date."},{"name":"end_date__lt","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with an end date before this date."},{"name":"end_date__lte","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with an end date on or before this date."},{"name":"end_date__month","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records by the month of their end date."},{"name":"end_date__year","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records by the year of their end date."},{"name":"is_published","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records by whether they are published."},{"name":"start_date__gt","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with a start date after this date."},{"name":"start_date__gte","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with a start date on or after this date."},{"name":"start_date__lt","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with a start date before this date."},{"name":"start_date__lte","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records with a start date on or before this date."},{"name":"start_date__month","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records by the month of their start date."},{"name":"start_date__year","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/challenges","filterable":true,"description":null,"description_en":"Filter records by the year of their start date."},{"name":"status","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/challenges","filterable":true,"description":"* `DRAFT` - DRAFT\n* `UPCOMING` - UPCOMING\n* `ONGOING` - ONGOING\n* `COMPLETED` - COMPLETED","enum_values":["COMPLETED","DRAFT","ONGOING","UPCOMING"],"description_en":"Current status of the item, e.g. draft, upcoming, ongoing or completed."},{"name":"content_type","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/flags","filterable":true,"description":"* `PRICE` - Price\n* `PROOF` - Proof","description_en":"Type of content the record relates to, price or proof."},{"name":"object_id","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/flags","filterable":true,"description":null,"description_en":"Identifier of the related object referenced by content_type."},{"name":"reason","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/flags","filterable":true,"description":"* `WRONG_TYPE` - Wrong type\n* `WRONG_PRICE_VALUE` - Wrong price value\n* `WRONG_CURRENCY` - Wrong currency\n* `WRONG_PRODUCT` - Wrong product\n* `WRONG_LOCATION` - Wrong location\n* `WRONG_DATE` - Wrong date\n* `OTHER` - Other","description_en":"Reason given for flagging the record."},{"name":"osm_address_city__like","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/locations","filterable":true,"description":null,"description_en":"Filter locations by a partial match on city name."},{"name":"osm_address_country__like","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/locations","filterable":true,"description":null,"description_en":"Filter locations by a partial match on country name."},{"name":"osm_name__like","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/locations","filterable":true,"description":null,"description_en":"Filter locations by a partial match on OSM name."},{"name":"price_count","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/locations","filterable":true,"description":null,"description_en":"Number of prices associated with this record."},{"name":"price_count__gte","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/locations","filterable":true,"description":null,"description_en":"Filter records with at least this many prices."},{"name":"price_count__lte","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/locations","filterable":true,"description":null,"description_en":"Filter records with at most this many prices."},{"name":"type","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/locations","filterable":true,"description":"* `OSM` - OSM\n* `ONLINE` - ONLINE","enum_values":["ONLINE","OSM"],"description_en":"Type of location, either OSM-sourced or online."},{"name":"date__gte","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/locations/compare","filterable":true,"description":"Filter prices with date greater than or equal to this date (YYYY-MM-DD)","description_en":"Filter prices with date greater than or equal to this date (YYYY-MM-DD)."},{"name":"date__lte","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/locations/compare","filterable":true,"description":"Filter prices with date less than or equal to this date (YYYY-MM-DD)","description_en":"Filter prices with date less than or equal to this date (YYYY-MM-DD)."},{"name":"location_id_a","role":"parameter","type":"integer","label":null,"param_in":"query","required":true,"container":"/api/v1/locations/compare","filterable":true,"description":null,"description_en":"Identifier of the first location being compared."},{"name":"location_id_b","role":"parameter","type":"integer","label":null,"param_in":"query","required":true,"container":"/api/v1/locations/compare","filterable":true,"description":null,"description_en":"Identifier of the second location being compared."},{"name":"price_is_discounted","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/locations/compare","filterable":true,"description":"Filter to keep only discounted or non-discounted prices","description_en":"Filter to keep only discounted or non-discounted prices."},{"name":"lat","role":"parameter","type":"number (float)","label":null,"format":"float","param_in":"query","required":true,"container":"/api/v1/locations/nearby","filterable":true,"description":"Latitude of the center point (decimal degrees, -90 to 90)","description_en":"Latitude of the center point (decimal degrees, -90 to 90)."},{"name":"lon","role":"parameter","type":"number (float)","label":null,"format":"float","param_in":"query","required":true,"container":"/api/v1/locations/nearby","filterable":true,"description":"Longitude of the center point (decimal degrees, -180 to 180)","description_en":"Longitude of the center point (decimal degrees, -180 to 180)."},{"name":"radius_km","role":"parameter","type":"number (float)","label":null,"format":"float","param_in":"query","required":true,"container":"/api/v1/locations/nearby","filterable":true,"description":"Search radius in kilometers (must be positive)","description_en":"Search radius in kilometers (must be positive)."},{"name":"osm_id","role":"parameter","type":"integer","label":null,"param_in":"path","required":true,"container":"/api/v1/locations/osm/{osm_type}/{osm_id}","filterable":true,"description":null,"description_en":"OpenStreetMap identifier of the location."},{"name":"osm_type","role":"parameter","type":"string","label":null,"param_in":"path","required":true,"container":"/api/v1/locations/osm/{osm_type}/{osm_id}","filterable":true,"description":null,"enum_values":["NODE","RELATION","WAY"],"description_en":"OpenStreetMap element type, such as node, way or relation."},{"name":"country_code","role":"parameter","type":"string","label":null,"param_in":"path","required":true,"container":"/api/v1/locations/osm/countries/{country_code}/cities","filterable":true,"description":null,"description_en":"ISO country code used to filter results."},{"name":"created__gte","role":"parameter","type":"string (date-time)","label":null,"format":"date-time","param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter records created on or after this date and time."},{"name":"created__lte","role":"parameter","type":"string (date-time)","label":null,"format":"date-time","param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter records created on or before this date and time."},{"name":"prediction_count","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Number of predictions associated with this record."},{"name":"prediction_count__gte","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter records with at least this many predictions."},{"name":"prediction_count__lte","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter records with at most this many predictions."},{"name":"price_id","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Identifier of the related price record."},{"name":"proof__location__osm_address_country_code","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter proofs by the country code of their location."},{"name":"proof__owner","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter proofs by the username of their owner."},{"name":"proof__ready_for_price_tag_validation","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter proofs marked as ready for price tag validation."},{"name":"proof_id","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Identifier of the related proof record."},{"name":"status__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter records where the status field is empty."},{"name":"tags__contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter records whose tags contain the given value."},{"name":"tags__not_contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/price-tags","filterable":true,"description":null,"description_en":"Filter records whose tags do not contain the given value."},{"name":"category_tag","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records by a specific category tag."},{"name":"currency","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"* `ADP` - ADP\n* `AED` - AED\n* `AFA` - AFA\n* `AFN` - AFN\n* `ALK` - ALK\n* `ALL` - ALL\n* `AMD` - AMD\n* `ANG` - ANG\n* `AOA` - AOA\n* `AOK` - AOK\n* `AON` - AON\n* `AOR` - AOR\n* `ARA` - ARA\n* `ARL` - ARL\n* `ARM` - ARM\n* `ARP` - ARP\n* `ARS` - ARS\n* `ATS` - ATS\n* `AUD` - AUD\n* `AWG` - AWG\n* `AZM` - AZM\n* `AZN","enum_values":["ADP","AED","AFA","AFN","ALK","ALL","AMD","ANG","AOA","AOK","AON","AOR","ARA","ARL","ARM","ARP","ARS","ATS","AUD","AWG"],"description_en":"Currency code of the price, using ISO 4217 codes."},{"name":"date","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Date associated with the price record."},{"name":"date__gt","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records with a date after this date."},{"name":"date__lt","role":"parameter","type":"string (date)","label":null,"format":"date","param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records with a date before this date."},{"name":"date__month","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records by the month of their date."},{"name":"date__year","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records by the year of their date."},{"name":"discount_type","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"* `QUANTITY` - QUANTITY\n* `SALE` - SALE\n* `SEASONAL` - SEASONAL\n* `LOYALTY_PROGRAM` - LOYALTY_PROGRAM\n* `EXPIRES_SOON` - EXPIRES_SOON\n* `PICK_IT_YOURSELF` - PICK_IT_YOURSELF\n* `SECOND_HAND` - SECOND_HAND\n* `OTHER` - OTHER","enum_values":["EXPIRES_SOON","LOYALTY_PROGRAM","OTHER","PICK_IT_YOURSELF","QUANTITY","SALE","SEASONAL","SECOND_HAND"],"description_en":"Type of discount applied to the price, e.g. sale or loyalty program."},{"name":"duplicate_of__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records that do not reference another record as a duplicate."},{"name":"kind","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"* `COMMUNITY` - COMMUNITY\n* `CONSUMPTION` - CONSUMPTION","enum_values":["COMMUNITY","CONSUMPTION"],"description_en":"Kind of price entry, either community-contributed or consumption-based."},{"name":"labels_tags__contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records whose product label tags contain the given value."},{"name":"location__osm_name__contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records whose location OSM name contains the given value."},{"name":"location__type","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"* `OSM` - OSM\n* `ONLINE` - ONLINE","enum_values":["ONLINE","OSM"],"description_en":"Type of the associated location, either OSM-sourced or online."},{"name":"location_id","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Identifier of the associated location."},{"name":"location_id__in","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"Multiple values may be separated by commas.","description_en":"Filter records matching any of the given location IDs, comma-separated."},{"name":"location_id__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records where the location is not set."},{"name":"location_osm_id","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"OpenStreetMap identifier of the associated location."},{"name":"location_osm_type","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"* `NODE` - NODE\n* `WAY` - WAY\n* `RELATION` - RELATION","enum_values":["NODE","RELATION","WAY"],"description_en":"OpenStreetMap element type of the location, node, way or relation."},{"name":"origins_tags__contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records whose product origin tags contain the given value."},{"name":"owner","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Username of the person who created the record."},{"name":"price","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Monetary value of the recorded price."},{"name":"price__gt","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records with a price greater than this value."},{"name":"price__gte","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records with a price greater than or equal to this value."},{"name":"price__lt","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records with a price less than this value."},{"name":"price__lte","role":"parameter","type":"number","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records with a price less than or equal to this value."},{"name":"product__categories_tags__contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records whose product category tags contain the given value."},{"name":"product__categories_tags__overlap","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"Multiple values may be separated by commas.","description_en":"Filter records whose product category tags overlap with the given values, comma-separated."},{"name":"product__source","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"* `off` - off\n* `obf` - obf\n* `opff` - opff\n* `opf` - opf","enum_values":["obf","off","opf","opff"],"description_en":"Source database of the associated product."},{"name":"product__source__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records where the product source is not set."},{"name":"product_code","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Barcode of the associated product."},{"name":"product_code__in","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"Multiple values may be separated by commas.","description_en":"Filter records matching any of the given product codes, comma-separated."},{"name":"product_code__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records where the product code is not set."},{"name":"product_id","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Identifier of the associated product."},{"name":"product_id__in","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"Multiple values may be separated by commas.","description_en":"Filter records matching any of the given product IDs, comma-separated."},{"name":"product_id__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records where the product ID is not set."},{"name":"product_name","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Name of the associated product."},{"name":"proof__type","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"* `PRICE_TAG` - PRICE_TAG\n* `RECEIPT` - RECEIPT\n* `GDPR_REQUEST` - GDPR_REQUEST\n* `SHOP_IMPORT` - SHOP_IMPORT","description_en":"Type of proof document, such as a price tag or receipt."},{"name":"proof_id__in","role":"parameter","type":"array","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":"Multiple values may be separated by commas.","description_en":"Filter records matching any of the given proof IDs, comma-separated."},{"name":"proof_id__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/prices","filterable":true,"description":null,"description_en":"Filter records where the proof is not set."},{"name":"brands__like","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Filter products by a partial match on brand name."},{"name":"brands_tags__contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Filter records whose brand tags contain the given value."},{"name":"categories_tags__contains","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Filter records whose category tags contain the given value."},{"name":"code","role":"parameter","type":"string","label":null,"param_in":"query","required":true,"container":"/api/v1/products","filterable":true,"description":null,"description_en":"Barcode or unique code of the product."},{"name":"creator","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Username of the person who created the record."},{"name":"ecoscore_grade","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Eco-Score environmental grade of the product."},{"name":"nova_group","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"NOVA food processing classification group of the product."},{"name":"nutriscore_grade","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Nutri-Score nutritional grade of the product."},{"name":"product_name__like","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Filter products by a partial match on product name."},{"name":"source","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":"* `off` - off\n* `obf` - obf\n* `opff` - opff\n* `opf` - opf","enum_values":["obf","off","opf","opff"],"description_en":"Source database the record originates from."},{"name":"source__isnull","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Filter records where the source is not set."},{"name":"unique_scans_n__gte","role":"parameter","type":"integer","label":null,"param_in":"query","container":"/api/v1/products","filterable":true,"description":null,"description_en":"Filter products with at least this many unique scans."},{"name":"image_md5_hash","role":"parameter","type":"string","label":null,"param_in":"query","container":"/api/v1/proofs","filterable":true,"description":null,"description_en":"MD5 hash of the associated image file."},{"name":"ready_for_price_tag_validation","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/api/v1/proofs","filterable":true,"description":null,"description_en":"Filter records marked as ready for price tag validation."},{"name":"user_id","role":"parameter","type":"string","label":null,"param_in":"path","required":true,"container":"/api/v1/users/{user_id}","filterable":true,"description":"A unique value identifying this User.","description_en":"A unique value identifying this user."},{"name":"name","type":"string","label":"Badge","required":true,"description":null,"description_en":"Name of the badge."},{"name":"description","type":"string","label":"Badge","description":null,"description_en":"Text describing the badge's purpose or criteria."},{"name":"image_url","type":"string (uri)","label":"Badge","format":"uri","description":null,"description_en":"URL of the badge's image."},{"name":"metric","type":"object","label":"Badge","required":true,"description":null,"description_en":"Metric used to determine eligibility for the badge."},{"name":"threshold","type":"integer","label":"Badge","required":true,"description":null,"description_en":"Value the metric must reach to earn the badge."},{"name":"user_count","type":"integer","label":"Badge","description":null,"description_en":"Number of users who have earned the badge."},{"name":"created","type":"string (date-time)","label":"Badge","format":"date-time","description":null,"description_en":"Date and time the badge record was created."},{"name":"updated","type":"string (date-time)","label":"Badge","format":"date-time","required":true,"description":null,"description_en":"Date and time the badge record was last updated."},{"name":"user","type":"unknown","label":"BadgeUser","required":true,"description":null,"description_en":"User associated with this badge achievement."},{"name":"achieved_at","type":"string (date-time)","label":"BadgeUser","format":"date-time","description":null,"description_en":"Date and time the badge was achieved by the user."},{"name":"badge","type":"integer","label":"BadgeUser","required":true,"description":null,"description_en":"Identifier of the badge earned."},{"name":"locations","type":"array<object>","label":"Challenge","required":true,"description":null,"description_en":"Locations associated with the challenge."},{"name":"tag","type":"string","label":"Challenge","required":true,"description":null,"description_en":"Tag identifying the challenge."},{"name":"title","type":"string","label":"Challenge","description":null,"description_en":"Title of the challenge."},{"name":"icon","type":"string","label":"Challenge","description":null,"description_en":"Icon associated with the challenge."},{"name":"subtitle","type":"string","label":"Challenge","description":null,"description_en":"Subtitle text of the challenge."},{"name":"start_date","type":"string (date)","label":"Challenge","format":"date","description":null,"description_en":"Date the challenge starts."},{"name":"end_date","type":"string (date)","label":"Challenge","format":"date","description":null,"description_en":"Date the challenge ends."},{"name":"categories","type":"array<string>","label":"Challenge","description":"Restrict to one or multiple categories (optional)","description_en":"Restrict to one or multiple categories (optional)."},{"name":"categories_full","type":"array<string>","label":"Challenge","description":"Full category tags with parents, used for matching & stats (readonly)","description_en":"Full category tags with parents, used for matching and stats (read-only)."},{"name":"example_proof_url","type":"string","label":"Challenge","description":null,"description_en":"URL of an example proof image for the challenge."},{"name":"stats","type":"unknown","label":"Challenge","description":null,"description_en":"Statistics computed for the challenge."},{"name":"country_code_2","type":"string","label":"Country","required":true,"description":null,"description_en":"ISO 3166-1 alpha-2 code of the country."},{"name":"osm_name","type":"string","label":"Country","required":true,"description":null,"description_en":"Name of the country as recorded in OpenStreetMap."},{"name":"location_count","type":"integer","label":"Country","required":true,"description":null,"description_en":"Number of locations recorded in the country."},{"name":"bounding_boxes","type":"array<array<number (double)>>","label":"DraftProofAnonymizeRequest","required":true,"description":null,"description_en":"Coordinate boxes marking areas to anonymize in a proof image."},{"name":"comment","type":"string","label":"Flag","description":null,"description_en":"Text comment explaining the reason for the flag."},{"name":"content_object","type":"string","label":"FlagCreate","required":true,"description":null,"description_en":"Reference to the object being flagged."},{"name":"osm_brand_logo_url","type":"string","label":"Location","required":true,"description":null,"description_en":"URL of the brand's logo from OpenStreetMap."},{"name":"osm_display_name","type":"string","label":"Location","description":null,"description_en":"Full display name of the location from OpenStreetMap."},{"name":"osm_tag_key","type":"string","label":"Location","description":null,"description_en":"OpenStreetMap tag key describing the location."},{"name":"osm_tag_value","type":"string","label":"Location","description":null,"description_en":"OpenStreetMap tag value describing the location."},{"name":"osm_brand","type":"string","label":"Location","description":null,"description_en":"Brand name associated with the location in OpenStreetMap."},{"name":"osm_address_postcode","type":"string","label":"Location","description":null,"description_en":"Postal code of the location from OpenStreetMap."},{"name":"osm_address_city","type":"string","label":"Location","description":null,"description_en":"City name of the location from OpenStreetMap."},{"name":"osm_address_country","type":"string","label":"Location","description":null,"description_en":"Country name of the location from OpenStreetMap."},{"name":"osm_address_country_code","type":"string","label":"Location","description":null,"description_en":"Country code of the location from OpenStreetMap."},{"name":"osm_lat","type":"number (double)","label":"Location","format":"double","description":null,"description_en":"Latitude of the location from OpenStreetMap."},{"name":"osm_lon","type":"number (double)","label":"Location","format":"double","description":null,"description_en":"Longitude of the location from OpenStreetMap."},{"name":"osm_version","type":"integer","label":"Location","description":null,"description_en":"Version number of the location's OpenStreetMap element."},{"name":"website_url","type":"string (uri)","label":"Location","format":"uri","description":null,"description_en":"Website URL of the location."},{"name":"product_count","type":"integer","label":"Location","description":null,"description_en":"Number of products recorded at this location."},{"name":"proof_count","type":"integer","label":"Location","description":null,"description_en":"Number of proofs recorded at this location."},{"name":"location_a","type":"object","label":"LocationCompare","required":true,"description":null,"description_en":"First location included in the comparison."},{"name":"location_b","type":"object","label":"LocationCompare","required":true,"description":null,"description_en":"Second location included in the comparison."},{"name":"shared_products","type":"unknown","label":"LocationCompare","required":true,"description":null,"description_en":"Products common to both compared locations."},{"name":"total_sum_location_a","type":"number (double)","label":"LocationCompare","format":"double","required":true,"description":null,"description_en":"Total price sum recorded for the first location."},{"name":"total_sum_location_b","type":"number (double)","label":"LocationCompare","format":"double","required":true,"description":null,"description_en":"Total price sum recorded for the second location."},{"name":"distance_km","type":"number (double)","label":"LocationNearby","format":"double","required":true,"description":null,"description_en":"Distance in kilometers to the nearby location."},{"name":"username","type":"string","label":"Login","description":null,"description_en":"Username used to log in."},{"name":"password","type":"string","label":"Login","description":null,"description_en":"Password used to log in."},{"name":"access_token","type":"string","label":"Login","description":null,"description_en":"Authentication token issued after login."},{"name":"items","type":"array<object>","label":"PaginatedBadgeList","required":true,"description":null,"description_en":"List of badge records returned in the page."},{"name":"pages","type":"integer","label":"PaginatedBadgeList","required":true,"description":"Total number of pages","description_en":"Total number of pages."},{"name":"total","type":"integer","label":"PaginatedBadgeList","required":true,"description":"Total number of items","description_en":"Total number of items."}],"field_count":163,"sample_records":null,"record_count":null,"data_size_bytes":null,"dataset_count":null,"query_examples":[{"url":"https://prices.openfoodfacts.org/api/schema","curl":"curl -s 'https://prices.openfoodfacts.org/api/schema' -H 'Accept: application/json'","label":"OpenAPI spec","method":"GET","description":"Machine-readable API description (use it to generate clients)."}],"status":"partial","error_message":null,"profiled_at":"2026-07-24T19:17:51.360Z","run_id":"76361d48-c2bb-4c57-8f1c-29387a533d2e","created_at":"2026-06-12T19:05:38.445Z","updated_at":"2026-08-05T06:15:18.945Z","license_raw":"https://www.gnu.org/licenses/agpl-3.0.en.html","license_id":null,"consecutive_failure_count":0,"last_error_at":null,"last_error_message":null,"previewable":false},"datasets":[],"limits":[]}