---
title: "Search Grocery Products by UPC"
method: GET
path: "/food/products/upc/{upc}"
tags: ["products"]
---

# Search Grocery Products by UPC

`GET /food/products/upc/{upc}`

## Request

- Base URL: `https://api.spoonacular.com`
- URL: `https://api.spoonacular.com/food/products/upc/{upc}`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/spoonacular/apis/spoonacular-api/docs/food/products/upc/:upc/get.ts> (a function with typed inputs; its response is checked against the schema)

Get information about a packaged food using its UPC.

## Path parameters

- `upc` number, required

## Response `200`

Success

- object
  - `id` integer, required
  - `title` string, required
  - `badges` string[], required
  - `importantBadges` string[], required
  - `breadcrumbs` string[], required
  - `generatedText` string, required
  - `imageType` string, required
  - `ingredientCount` integer
  - `ingredientList` string, required
  - `ingredients` object[], required
    - `description` unknown
    - `name` string, required
    - `safety_level` unknown
  - `likes` number, required
  - `nutrition` object, required
    - `nutrients` object[], required
      - `name` string, required
      - `amount` number, required
      - `unit` string, required
      - `percentOfDailyNeeds` number, required
    - `caloricBreakdown` object, required
      - `percentProtein` number, required
      - `percentFat` number, required
      - `percentCarbs` number, required
  - `price` number, required
  - `servings` object, required
    - `number` number, required
    - `size` number, required
    - `unit` string, required
  - `spoonacularScore` number, required

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found

## Changes

- **2026-07-13** `bc2fbe4e8981`: 16 info
  - api tag `products` added
  - added the optional property `ingredientCount` to the response with the `200` status
  - added the required property `badges` to the response with the `200` status
  - added the required property `breadcrumbs` to the response with the `200` status
  - …12 more

[Operation history](https://skmtc.dev/spoonacular/apis/spoonacular-api/changes/food/products/upc/:upc/get.md)

---

[API](https://skmtc.dev/spoonacular/apis/spoonacular-api.md) - [All operations](https://skmtc.dev/spoonacular/apis/spoonacular-api/llms.txt) - [OpenAPI document](https://skmtc.dev/spoonacular/apis/spoonacular-api/revisions/bc2fbe4e8981?raw)
