# Open prices price observations

Crowdsourced shelf and receipt prices from Open Prices (Open Food Facts), about 340,000 observations in over 120 countries: price, currency, date, discount. Takes product code, category tag, currency and more, all optional.

Crowdsourced shelf and receipt prices from Open Prices (Open Food Facts), about 340,000 observations in over 120 countries: price, currency, date, discount, the product (barcode, name, brands, quantity) or category, the shop (OpenStreetMap name, brand, city, country, coordinates), the contributor's username and the proof. Filter by barcode or category tag, currency, date range or Open Prices location id. Each item is large (product, shop and proof objects): keep size small and page.

- Tool ID: `open-prices/prices`
- Name in the catalog: Open Prices price observations
- Provider: [Open Prices](/providers/open-prices.md)
- Capability: [Product catalogs & food data](/tools/ecommerce/product-catalogs.md)
- Price: no charge per call
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

No charge per call. A workspace is still needed so your agent can call it.


```json
{
  "model": "per_call",
  "amountUsd": 0
}
```

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "product_code": {
      "type": "string",
      "pattern": "^[0-9]{8,14}$",
      "description": "Product barcode, e.g. '3017620422003' (Nutella 400 g)"
    },
    "category_tag": {
      "type": "string",
      "pattern": "^([a-z]{2}:)?[a-z0-9][a-z0-9-]{0,99}$",
      "description": "Category of products priced without a barcode (fruit, vegetables), e.g. 'en:bananas'"
    },
    "currency": {
      "type": "string",
      "pattern": "^[A-Z]{3}$",
      "description": "ISO 4217 currency, e.g. 'EUR'"
    },
    "date_from": {
      "type": "string",
      "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
      "description": "Earliest price date, e.g. '2026-01-01'"
    },
    "date_to": {
      "type": "string",
      "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
      "description": "Latest price date, e.g. '2026-06-30'"
    },
    "location_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100000000,
      "description": "Open Prices location id (from open-prices/locations), e.g. 7521"
    },
    "discounted": {
      "type": "boolean",
      "description": "Only discounted (true) or only regular (false) prices, e.g. true"
    },
    "order_by": {
      "type": "string",
      "enum": [
        "-date",
        "date",
        "price",
        "-price"
      ],
      "default": "-date",
      "description": "Order: newest first '-date', oldest 'date', cheapest 'price', dearest '-price', e.g. '-date'"
    },
    "size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 5,
      "description": "Prices per page (max 50), e.g. 5"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 500,
      "default": 1,
      "description": "Page number, starting at 1, e.g. 2"
    }
  },
  "additionalProperties": false
}
```

## Published example

This is the provider tool’s published example. Replace example values with the user’s requested inputs, respecting the schema; do not execute an example merely to test a connection.


```json
{
  "tool_id": "open-prices/prices",
  "input": {
    "product_code": "3017620422003",
    "size": 3
  }
}
```

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

Licence: ODbL 1.0.

Attribution: Prices from Open Prices by Open Food Facts contributors (prices.openfoodfacts.org), ODbL.

[Provider documentation](https://prices.openfoodfacts.org/api/docs)

[REST inspection](https://api.agentik.cc/v1/tools/open-prices/prices) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/open-prices/prices) · [Agent index](/llms.txt)
