Open Prices API

Open Prices is Open Food Facts' open crowdsourced database of product prices. Its REST API covers prices, proofs, locations, products, users and stats, and serves its own OpenAPI 3.0.3 document from the live host.

Operations 61

GET /api/schema #
POST /api/v1/auth #
GET /api/v1/badges #
GET /api/v1/badges/{id} #
GET /api/v1/badges/{id}/users #
GET /api/v1/challenges #
GET /api/v1/challenges/{id} #
GET /api/v1/flags #
PATCH /api/v1/flags/{id} #
GET /api/v1/locations #
POST /api/v1/locations #
GET /api/v1/locations/{id} #
GET /api/v1/locations/compare #
GET /api/v1/locations/nearby #
GET /api/v1/locations/osm/{osm_type}/{osm_id} #
GET /api/v1/locations/osm/countries #
GET /api/v1/locations/osm/countries/{country_code}/cities #
GET /api/v1/price-tags #
POST /api/v1/price-tags #
GET /api/v1/price-tags/{id} #
PATCH /api/v1/price-tags/{id} #
DELETE /api/v1/price-tags/{id} #
GET /api/v1/prices #
POST /api/v1/prices #
GET /api/v1/prices/{id} #
PATCH /api/v1/prices/{id} #
DELETE /api/v1/prices/{id} #
POST /api/v1/prices/{id}/flag #
GET /api/v1/prices/{id}/history #
GET /api/v1/prices/stats #
GET /api/v1/products #
GET /api/v1/products/{id} #
GET /api/v1/products/code/{code} #
PATCH /api/v1/products/code/{code}/off-update #
PATCH /api/v1/products/code/{code}/off-upload-image #
GET /api/v1/proofs #
GET /api/v1/proofs/{id} #
PATCH /api/v1/proofs/{id} #
DELETE /api/v1/proofs/{id} #
POST /api/v1/proofs/{id}/flag #
GET /api/v1/proofs/{id}/history #
GET /api/v1/proofs/drafts #
GET /api/v1/proofs/drafts/{id} #
PATCH /api/v1/proofs/drafts/{id} #
DELETE /api/v1/proofs/drafts/{id} #
POST /api/v1/proofs/drafts/{id}/anonymize #
POST /api/v1/proofs/drafts/upload #
POST /api/v1/proofs/process-with-gemini #
POST /api/v1/proofs/upload #
GET /api/v1/receipt-items #
POST /api/v1/receipt-items #
GET /api/v1/receipt-items/{id} #
PATCH /api/v1/receipt-items/{id} #
DELETE /api/v1/receipt-items/{id} #
GET /api/v1/session #
DELETE /api/v1/session #
GET /api/v1/stats #
GET /api/v1/status #
GET /api/v1/users #
GET /api/v1/users/{user_id} #
GET /api/v1/users/{user_id}/badges #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/open-food-facts-open-prices"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

open-food-facts-open-prices-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Open Food Facts open-prices REST API
  version: 0.0.0 (api)
  description: Open Prices API allows you to add product prices
  contact:
    name: The Open Food Facts team
    url: https://world.openfoodfacts.org
    email: contact@openfoodfacts.org
  license:
    name: ' AGPL-3.0'
    url: https://www.gnu.org/licenses/agpl-3.0.en.html
paths:
  /api/schema:
    get:
      operationId: api_schema_retrieve
      description: |-
        OpenApi3 schema for this API. Format can be selected via content negotiation.

        - YAML: application/vnd.oai.openapi
        - JSON: application/vnd.oai.openapi+json
      parameters:
      - in: query
        name: format
        schema:
          type: string
          enum:
          - json
          - yaml
      - in: query
        name: lang
        schema:
          type: string
          enum:
          - af
          - ar
          - ar-dz
          - ast
          - az
          - be
          - bg
          - bn
          - br
          - bs
          - ca
          - ckb
          - cs
          - cy
          - da
          - de
          - dsb
          - el
          - en
          - en-au
          - en-gb
          - eo
          - es
          - es-ar
          - es-co
          - es-mx
          - es-ni
          - es-ve
          - et
          - eu
          - fa
          - fi
          - fr
          - fy
          - ga
          - gd
          - gl
          - he
          - hi
          - hr
          - hsb
          - hu
          - hy
          - ia
          - id
          - ig
          - io
          - is
          - it
          - ja
          - ka
          - kab
          - kk
          - km
          - kn
          - ko
          - ky
          - lb
          - lt
          - lv
          - mk
          - ml
          - mn
          - mr
          - ms
          - my
          - nb
          - ne
          - nl
          - nn
          - os
          - pa
          - pl
          - pt
          - pt-br
          - ro
          - ru
          - sk
          - sl
          - sq
          - sr
          - sr-latn
          - sv
          - sw
          - ta
          - te
          - tg
          - th
          - tk
          - tr
          - tt
          - udm
          - ug
          - uk
          - ur
          - uz
          - vi
          - zh-hans
          - zh-hant
      tags:
      - api
      security:
      - {}
      responses:
        '200':
          content:
            application/vnd.oai.openapi:
              schema:
                type: object
                additionalProperties: {}
            application/yaml:
              schema:
                type: object
                additionalProperties: {}
            application/vnd.oai.openapi+json:
              schema:
                type: object
                additionalProperties: {}
            application/json:
              schema:
                type: object
                additionalProperties: {}
          description: ''
  /api/v1/auth:
    post:
      operationId: auth_create
      description: |-
        Authentication: provide username/password or a keycloak access_token
        and get a bearer token in return.

        - **username**: Open Food Facts user_id (not email)
        - **password**: user password (clear text, but HTTPS encrypted)

        - **access_token**: keycloak access_token (clear text)

        A **token** is returned. If the **set_cookie** parameter is set to 1,
        the token is also set as a cookie named "session" in the response.

        To authenticate, you can either:
        - use the **Authorization** header with the **Bearer** scheme,
        e.g.: "Authorization: bearer token"
        - use the **session** cookie, e.g.: "Cookie: session=token"
      tags:
      - auth
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Login'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Login'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionResponse'
          description: ''
  /api/v1/badges:
    get:
      operationId: badges_list
      parameters:
      - name: order_by
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - badges
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedBadgeList'
          description: ''
  /api/v1/badges/{id}:
    get:
      operationId: badges_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Badge.
        required: true
      tags:
      - badges
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Badge'
          description: ''
  /api/v1/badges/{id}/users:
    get:
      operationId: badges_users_list
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Badge.
        required: true
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - badges
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedBadgeUserList'
          description: ''
  /api/v1/challenges:
    get:
      operationId: challenges_list
      parameters:
      - in: query
        name: end_date__gt
        schema:
          type: string
          format: date
      - in: query
        name: end_date__gte
        schema:
          type: string
          format: date
      - in: query
        name: end_date__lt
        schema:
          type: string
          format: date
      - in: query
        name: end_date__lte
        schema:
          type: string
          format: date
      - in: query
        name: end_date__month
        schema:
          type: number
      - in: query
        name: end_date__year
        schema:
          type: number
      - in: query
        name: id
        schema:
          type: integer
      - in: query
        name: is_published
        schema:
          type: boolean
      - name: order_by
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: start_date__gt
        schema:
          type: string
          format: date
      - in: query
        name: start_date__gte
        schema:
          type: string
          format: date
      - in: query
        name: start_date__lt
        schema:
          type: string
          format: date
      - in: query
        name: start_date__lte
        schema:
          type: string
          format: date
      - in: query
        name: start_date__month
        schema:
          type: number
      - in: query
        name: start_date__year
        schema:
          type: number
      - in: query
        name: status
        schema:
          type: string
          enum:
          - COMPLETED
          - DRAFT
          - ONGOING
          - UPCOMING
        description: |-
          * `DRAFT` - DRAFT
          * `UPCOMING` - UPCOMING
          * `ONGOING` - ONGOING
          * `COMPLETED` - COMPLETED
      tags:
      - challenges
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedChallengeList'
          description: ''
  /api/v1/challenges/{id}:
    get:
      operationId: challenges_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Challenge.
        required: true
      tags:
      - challenges
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Challenge'
          description: ''
  /api/v1/flags:
    get:
      operationId: flags_list
      parameters:
      - in: query
        name: content_type
        schema:
          type: array
          items:
            type: string
            title: Python model class name
            enum:
            - PRICE
            - PROOF
        description: |-
          * `PRICE` - Price
          * `PROOF` - Proof
        explode: true
        style: form
      - in: query
        name: object_id
        schema:
          type: integer
      - name: order_by
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - in: query
        name: reason
        schema:
          type: array
          items:
            type: string
            enum:
            - OTHER
            - WRONG_CURRENCY
            - WRONG_DATE
            - WRONG_LOCATION
            - WRONG_PRICE_VALUE
            - WRONG_PRODUCT
            - WRONG_TYPE
        description: |-
          * `WRONG_TYPE` - Wrong type
          * `WRONG_PRICE_VALUE` - Wrong price value
          * `WRONG_CURRENCY` - Wrong currency
          * `WRONG_PRODUCT` - Wrong product
          * `WRONG_LOCATION` - Wrong location
          * `WRONG_DATE` - Wrong date
          * `OTHER` - Other
        explode: true
        style: form
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: status
        schema:
          type: string
          enum:
          - CLOSED
          - OPEN
        description: |-
          * `OPEN` - Open
          * `CLOSED` - Closed
      tags:
      - moderation
      security:
      - CustomAuthentication: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedFlagList'
          description: ''
  /api/v1/flags/{id}:
    patch:
      operationId: flags_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Flag.
        required: true
      tags:
      - moderation
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedFlagUpdate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedFlagUpdate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedFlagUpdate'
      security:
      - CustomAuthentication: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlagUpdate'
          description: ''
  /api/v1/locations:
    get:
      operationId: locations_list
      parameters:
      - name: order_by
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      - in: query
        name: osm_address_city__like
        schema:
          type: string
      - in: query
        name: osm_address_country__like
        schema:
          type: string
      - in: query
        name: osm_name__like
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - in: query
        name: price_count
        schema:
          type: integer
      - in: query
        name: price_count__gte
        schema:
          type: integer
      - in: query
        name: price_count__lte
        schema:
          type: integer
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: type
        schema:
          type: string
          enum:
          - ONLINE
          - OSM
        description: |-
          * `OSM` - OSM
          * `ONLINE` - ONLINE
      tags:
      - locations
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedLocationList'
          description: ''
    post:
      operationId: locations_create
      tags:
      - locations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LocationCreate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/LocationCreate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/LocationCreate'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocationCreate'
          description: ''
  /api/v1/locations/{id}:
    get:
      operationId: locations_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Location.
        required: true
      tags:
      - locations
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Location'
          description: ''
  /api/v1/locations/compare:
    get:
      operationId: locations_compare_retrieve
      description: |-
        Compare two locations by their IDs.
        Returns shared product prices with the latest price per location,
        the date of that price, and the total sum.
      parameters:
      - in: query
        name: date__gte
        schema:
          type: string
          format: date
        description: Filter prices with date greater than or equal to this date (YYYY-MM-DD)
      - in: query
        name: date__lte
        schema:
          type: string
          format: date
        description: Filter prices with date less than or equal to this date (YYYY-MM-DD)
      - in: query
        name: location_id_a
        schema:
          type: integer
        required: true
      - in: query
        name: location_id_b
        schema:
          type: integer
        required: true
      - in: query
        name: price_is_discounted
        schema:
          type: boolean
        description: Filter to keep only discounted or non-discounted prices
      tags:
      - locations
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocationCompare'
          description: ''
  /api/v1/locations/nearby:
    get:
      operationId: locations_nearby_list
      description: |-
        Return locations within a given radius of a center point.
        Results are ordered by distance (closest first), then by id.
        Each result includes a computed `distance_km` field.
      parameters:
      - in: query
        name: lat
        schema:
          type: number
          format: float
        description: Latitude of the center point (decimal degrees, -90 to 90)
        required: true
      - in: query
        name: lon
        schema:
          type: number
          format: float
        description: Longitude of the center point (decimal degrees, -180 to 180)
        required: true
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - in: query
        name: radius_km
        schema:
          type: number
          format: float
        description: Search radius in kilometers (must be positive)
        required: true
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - locations
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedLocationNearbyList'
          description: ''
  /api/v1/locations/osm/{osm_type}/{osm_id}:
    get:
      operationId: locations_osm_retrieve
      parameters:
      - in: path
        name: osm_id
        schema:
          type: integer
        required: true
      - in: path
        name: osm_type
        schema:
          type: string
          enum:
          - NODE
          - RELATION
          - WAY
        required: true
      tags:
      - locations
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Location'
          description: ''
  /api/v1/locations/osm/countries:
    get:
      operationId: locations_osm_countries_list
      parameters:
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - locations
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedCountryList'
          description: ''
  /api/v1/locations/osm/countries/{country_code}/cities:
    get:
      operationId: locations_osm_countries_cities_list
      parameters:
      - in: path
        name: country_code
        schema:
          type: string
          pattern: ^\w{2}$
        required: true
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - locations
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedCountryCityList'
          description: ''
  /api/v1/price-tags:
    get:
      operationId: price_tags_list
      parameters:
      - in: query
        name: created__gte
        schema:
          type: string
          format: date-time
      - in: query
        name: created__lte
        schema:
          type: string
          format: date-time
      - name: order_by
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - in: query
        name: prediction_count
        schema:
          type: integer
      - in: query
        name: prediction_count__gte
        schema:
          type: integer
      - in: query
        name: prediction_count__lte
        schema:
          type: integer
      - in: query
        name: price_id
        schema:
          type: integer
      - in: query
        name: proof__location__osm_address_country_code
        schema:
          type: string
      - in: query
        name: proof__owner
        schema:
          type: string
      - in: query
        name: proof__ready_for_price_tag_validation
        schema:
          type: boolean
      - in: query
        name: proof_id
        schema:
          type: integer
      - name: size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: status
        schema:
          type: integer
          nullable: true
          enum:
          - 0
          - 1
          - 10
          - 2
          - 3
          - 4
          - 5
        description: |-
          The annotation status

          * `0` - deleted
          * `1` - linked_to_price
          * `2` - not_readable
          * `3` - truncated
          * `4` - not_price_tag
          * `5` - no_barcode
          * `10` - other
      - in: query
        name: status__isnull
        schema:
          type: boolean
      - in: query
        name: tags__contains
        schema:
          type: string
      - in: query
        name: tags__not_contains
        schema:
          type: string
      tags:
      - price-tags
      security:
      - {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedPriceTagFullList'
          description: ''
    post:
      operationId: price_tags_create
      tags:
      - price-tags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PriceTagCreate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PriceTagCreate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PriceTagCreate'
        required: true
      security:
      - CustomAuthentication: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PriceTagCreate'
          description: ''
  /api/v1/price-tags/{id}:
    get:
      operationId: price_tags_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Price Tag.
        required: true
      tags:
      - price-tags
      security:
      - {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PriceTagFull'
          description: ''
    patch:
      operationId: price_tags_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Price Tag.
        required: true
      tags:
      - price-tags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPriceTagUpdate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPriceTagUpdate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPriceTagUpdate'
      security:
      - CustomAuthentication: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PriceTagUpdate'
          description: ''
    delete:
      operationId: price_tags_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Price Tag.
        required: true
      tags:
      - price-tags
      security:
      - CustomAuthentication: []
      responses:
        '204':
          description: No response body
  /api/v1/prices:
    get:
      operationId: prices_list
      parameters:
      - in: query
        name: category_tag
        schema:
          type: string
      - in: query
        name: created__gte
        schema:
          type: string
          format: date-time
      - in: query
        name: created__lte
        schema:
          type: string
          format: date-time
      - in: query
        name: currency
        schema:
          type: string
          nullable: true
          enum:
          - ADP
          - AED
          - AFA
          - AFN
          - ALK
          - ALL
          - AMD
          - ANG
          - AOA
          - AOK
          - AON
          - AOR
          - ARA
          - ARL
          - ARM
          - ARP
          - ARS
          - ATS
          - AUD
          - AWG
          - AZM
          - AZN
          - BAD
          - BAM
          - BAN
          - BBD
          - BDT
          - BEC
          - BEF
          - BEL
          - BGL
          - BGM
          - BGN
          - BGO
          - BHD
          - BIF
          - BMD
          - BND
          - BOB
          - BOL
          - BOP
          - BOV
          - BRB
          - BRC
          - BRE
          - BRL
          - BRN
          - BRR
          - BRZ
          - BSD
          - BTN
          - BUK
          - BWP
          - BYB
          - BYN
          - BYR
          - BZD
          - CAD
          - CDF
          - CHE
          - CHF
          - CHW
          - CLE
          - CLF
          - CLP
          - CNH
          - CNX
          - CNY
          - COP
          - COU
          - CRC
          - CSD
          - CSK
          - CUC
          - CUP
          - CVE
          - CYP
          - CZK
          - DDM
          - DEM
          - DJF
          - DKK
          - DOP
          - DZD
          - ECS
          - ECV
          - EEK
          - EGP
          - ERN
          - ESA
          - ESB
          - ESP
          - ETB
          - EUR
          - FIM
          - FJD
          - FKP
          - FRF
          - GBP
          - GEK
          - GEL
          - GHC
          - GHS
          - GIP
          - GMD
          - GNF
          - GNS
          - GQE
          - GRD
          - GTQ
          - GWE
          - GWP
          - GYD
          - HKD
          - HNL
          - HRD
          - HRK
          - HTG
          - HUF
          - IDR
          - IEP
          - ILP
          - ILR
          - ILS
          - INR
          - IQD
          - IRR
          - ISJ
          - ISK
          - ITL
          - JMD
          - JOD
          - JPY
          - KES
          - KGS
          - KHR
          - KMF
          - KPW
          - KRH
          - KRO
          - KRW
          - KWD
          - KYD
          - KZT
          - LAK
          - LBP
          - LKR
          - LRD
          - LSL
          - LTL
          - LTT
          - LUC
          - LUF
          - LUL
          - LVL
          - LVR
          - LYD
          - MAD
          - MAF
          - MCF
          - MDC
          - MDL
          - MGA
          - MGF
          - MKD
          - MKN
          - MLF
          - MMK
          - MNT
          - MOP
          - MRO
          - MRU
          - MTL
          - MTP
          - MUR
          - MVP
          - MVR
          - MWK
          - MXN
          - MXP
          - MXV
          - MYR
          - MZE
          - MZM
          - MZN
          - NAD
          - NGN
          - NIC
          - NIO
          - NLG
          - NOK
          - NPR
          - NZD
          - OMR
          - PAB
          - PEI
          - PEN
          - PES
          - PGK
          - PHP
          - PKR
          - PLN
          - PLZ
          - PTE
          - PYG
          - QAR
          - RHD
          - ROL
          - RON
          - RSD
          - RUB
          - RUR
          - RWF
          - SAR
          - SBD
          - SCR
          - SDD
          - SDG
          - SDP
          - SEK
          - SGD
          - SHP
          - SIT
          - SKK
          - SLE
          - SLL
          - SOS
          - SRD
          - SRG
          - SSP
          - STD
          - STN
          - SUR
          - SVC
          - SYP
          - SZL
          - THB
          - TJR
          - TJS
          - TMM
          - TMT
          - TND
          - TOP
          - TPE
          - TRL
          - TRY
          - TTD
          - TWD
          - TZS
          - UAH
          - UAK
          - UGS
          - UGX
          - USD
          - USN
          - USS
          - UYI
          - UYP
          - UYU
          - UYW
          - UZS
          - VEB
          - VED
          - VEF
          - VES
          - VND
          - VNN
          - VUV
          - WST
          - XAF
          - XAG
          - XAU
          - XBA
          - XBB
          - XBC
          - XBD
          - XCD
          - XCG
          - XDR
          - XEU
          - XFO
          - XFU
          - XOF
          - XPD
          - XPF
          - XPT
          - XRE
          - XSU
          - XTS
          - XUA
          - XXX
          - YDD
          - YER
          - YUD
          - YUM
          - YUN
          - YUR
          - ZAL
          - ZAR
          - ZMK
          - ZMW
          - ZRN
          - ZRZ
          - ZWD
          - ZWG
          - ZWL
          - ZWR
        description: |-
          * `ADP` - ADP
          * `AED` - AED
          * `AFA` - AFA
          * `AFN` - AFN
          * `ALK` - ALK
          * `ALL` - ALL
          * `AMD` - AMD
          * `ANG` - ANG
          * `AOA` - AOA
          * `AOK` - AOK
          * `AON` - AON
          * `AOR` - AOR
          * `ARA` - ARA
          * `ARL` - ARL
          * `ARM` - ARM
          * `ARP` - ARP
          * `ARS` - ARS
          * `ATS` - ATS
          * `AUD` - AUD
          * `AWG` - AWG
          * `AZM` - AZM
          * `AZN` - AZN
          * `BAD` - BAD
          * `BAM` - BAM
          * `BAN` - BAN
          * `BBD` - BBD
          * `BDT` - BDT
          * `BEC` - BEC
          * `BEF` - BEF
          * `BEL` - BEL
          * `BGL` - BGL
          * `BGM` - BGM
          * `BGN` - BGN
          * `BGO` - BGO
          * `BHD` - BHD
          * `BIF` - BIF
          * `BMD` - BMD
          * `BND` - BND
          * `BOB` - BOB
          * `BOL` - BOL
          * `BOP` - BOP
          * `BOV` - BOV
          * `BRB` - BRB
          * `BRC` - BRC
          * `BRE` - BRE
          * `BRL` - BRL
          * `BRN` - BRN
          * `BRR` - BRR
          * `BRZ` - BRZ
          * `BSD` - BSD
          * `BTN` - BTN
          * `BUK` - BUK
          * `BWP` - BWP
          * `BYB` - BYB
          * `BYN` - BYN
          * `BYR` - BYR
          * `BZD` - BZD
          * `CAD` - CAD
          * `CDF` - CDF
          * `CHE` - CHE
          * `CHF` - CHF
          * `CHW` - CHW
          * `CLE` - CLE
          * `CLF` - CLF
          * `CLP` - CLP
          * `CNH` - CNH
          * `CNX` - CNX
          * `CNY` - CNY
          * `COP` - COP
          * `COU` - COU
          * `CRC` - CRC
          * `CSD` - CSD
          * `CSK` - CSK
          * `CUC` - CUC
          * `CUP` - CUP
          * `CVE` - CVE
          * `CYP` - CYP
          * `CZK` - CZK
          * `DDM` - DDM
          * `DEM` - DEM
          * `DJF` - DJF
          * `DKK` - DKK
          * `DOP` - DOP
          * `DZD` - DZD
          * `ECS` - ECS
          * `ECV` - ECV
          * `EEK` - EEK
          * `EGP` - EGP
          * `ERN` - ERN
          * `ESA` - ESA
          * `ESB` - ESB
          * `ESP` - ESP
          * `ETB` - ETB
          * `EUR` - EUR
          * `FIM` - FIM
     

# --- truncated at 32 KB (247 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/open-food-facts/refs/heads/main/openapi/open-food-facts-open-prices-openapi.yml