---
title: "Get one Panera Bread menu item's selectable option groups"
method: GET
path: "/panera/item-options"
tags: ["Panera"]
---

# Get one Panera Bread menu item's selectable option groups

`GET /panera/item-options`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/panera/item-options`
- Auth: API key in header `x-api-key`

Returns one item's selectable option groups: for a combo, each group is a slot to fill (for example "pick 4 sandwiches", "pick 1 soup"), listing every eligible choice; for a single customizable item, each group is one topping/add-in/amount choice (for example No, Light, Regular, Extra). Each group has min_allowed and max_allowed (how many selections it requires). Each option is one selectable choice, with its own selectable variants (amount tiers) each carrying an item_id and price -- price 0 for a variant included at no extra charge. Panera does not publish a resolved display name for options or groups on this surface, so each option carries its raw upstream image_key as the caller-facing identifier instead of a name. An item that is not customizable, or an unknown item id, returns an empty groups list rather than an error -- Panera's own API does not distinguish the two cases. Item ids come from GET /panera/menu.

## Query parameters

- `cafe_id` integer, required
- `item_id` integer, required

## Headers

- `x-api-key` string, required

## Response `200`

OK

- PaneraItemOptionsResponseDoc
  - `code` integer: Code is the HTTP status code or a custom code used to indicate the result of the request @example 200
  - `data` PaneraItemOptionsResponse
    - `cafe_id` integer
    - `fetched_at` string
    - `groups` PaneraItemOptionGroup[]
      - `group_id` integer
      - `max_allowed` integer
      - `min_allowed` integer
      - `options` PaneraItemOption[]
        - `allergens` PaneraMenuAllergens
          - `contains` PaneraMenuAllergenEntry[]
            - `id` string
            - `name` string
          - `may_contain` PaneraMenuAllergenEntry[]
            - `id` string
            - `name` string
        - `default_qty` integer
        - `image_key` string
        - `is_default` boolean
        - `item_id` integer
        - `variants` PaneraItemOptionVariant[]
          - `item_id` integer
          - `price` number
          - `variant_type` string
    - `item_id` integer
    - `source_url` string
  - `msg` unknown

## Other responses

- `400`: Bad Request
- `429`: Too Many Requests
- `503`: Service Unavailable

---

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