---
title: "Get Chipotle's national menu catalog"
method: GET
path: "/chipotle/menu"
tags: ["Chipotle"]
---

# Get Chipotle's national menu catalog

`GET /chipotle/menu`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/chipotle/menu`
- Auth: API key in header `x-api-key`

Returns Chipotle's restaurant-independent menu catalog -- every item it sells nationally, split into entrees, sides and drinks, with each item's category, type, primary filling and full customization tree. Takes no parameters. Prices are deliberately omitted from this response: Chipotle prices per restaurant, so the upstream returns every price as zero here, and surfacing a field of zeros would read as "free" rather than "unpriced". Use GET /chipotle/restaurant/menu for real prices.

## Headers

- `x-api-key` string, required

## Response `200`

OK

- ChipotleNationalMenuResponseDoc
  - `code` integer: Code is the HTTP status code or a custom code used to indicate the result of the request @example 200
  - `data` ChipotleNationalMenuResponse
    - `drinks` ChipotleMenuItem[]
      - `available` boolean
      - `category` string
      - `content_groups` ChipotleContentGroup[]: ContentGroups describe how many picks each component group allows.
        - `max_quantity` integer
        - `min_quantity` integer
        - `name` string
      - `contents` ChipotleMenuItemContent[]: Contents are the included/optional components of a built item.
        - `delivery_eligible` boolean
        - `group_name` string: GroupName ties this content back to a ContentGroup entry.
        - `item_id` string
        - `name` string
        - `pos_id` integer
        - `pricing` ChipotleMoney
          - `delivery_price` number
          - `price` number
        - `type` string
      - `delivery_eligible` boolean
      - `item_id` string
      - `max_quantity` integer
      - `name` string
      - `pos_id` integer: PosID is Chipotle's point-of-sale id for the item.
      - `pricing` ChipotleMoney
        - `delivery_price` number
        - `price` number
      - `primary_filling` string: PrimaryFilling is the protein/filling the item is built around.
      - `type` string
    - `entrees` ChipotleMenuItem[]
      - `available` boolean
      - `category` string
      - `content_groups` ChipotleContentGroup[]: ContentGroups describe how many picks each component group allows.
        - `max_quantity` integer
        - `min_quantity` integer
        - `name` string
      - `contents` ChipotleMenuItemContent[]: Contents are the included/optional components of a built item.
        - `delivery_eligible` boolean
        - `group_name` string: GroupName ties this content back to a ContentGroup entry.
        - `item_id` string
        - `name` string
        - `pos_id` integer
        - `pricing` ChipotleMoney
          - `delivery_price` number
          - `price` number
        - `type` string
      - `delivery_eligible` boolean
      - `item_id` string
      - `max_quantity` integer
      - `name` string
      - `pos_id` integer: PosID is Chipotle's point-of-sale id for the item.
      - `pricing` ChipotleMoney
        - `delivery_price` number
        - `price` number
      - `primary_filling` string: PrimaryFilling is the protein/filling the item is built around.
      - `type` string
    - `fetched_at` string
    - `non_food_items` ChipotleMenuItem[]
      - `available` boolean
      - `category` string
      - `content_groups` ChipotleContentGroup[]: ContentGroups describe how many picks each component group allows.
        - `max_quantity` integer
        - `min_quantity` integer
        - `name` string
      - `contents` ChipotleMenuItemContent[]: Contents are the included/optional components of a built item.
        - `delivery_eligible` boolean
        - `group_name` string: GroupName ties this content back to a ContentGroup entry.
        - `item_id` string
        - `name` string
        - `pos_id` integer
        - `pricing` ChipotleMoney
          - `delivery_price` number
          - `price` number
        - `type` string
      - `delivery_eligible` boolean
      - `item_id` string
      - `max_quantity` integer
      - `name` string
      - `pos_id` integer: PosID is Chipotle's point-of-sale id for the item.
      - `pricing` ChipotleMoney
        - `delivery_price` number
        - `price` number
      - `primary_filling` string: PrimaryFilling is the protein/filling the item is built around.
      - `type` string
    - `sides` ChipotleMenuItem[]
      - `available` boolean
      - `category` string
      - `content_groups` ChipotleContentGroup[]: ContentGroups describe how many picks each component group allows.
        - `max_quantity` integer
        - `min_quantity` integer
        - `name` string
      - `contents` ChipotleMenuItemContent[]: Contents are the included/optional components of a built item.
        - `delivery_eligible` boolean
        - `group_name` string: GroupName ties this content back to a ContentGroup entry.
        - `item_id` string
        - `name` string
        - `pos_id` integer
        - `pricing` ChipotleMoney
          - `delivery_price` number
          - `price` number
        - `type` string
      - `delivery_eligible` boolean
      - `item_id` string
      - `max_quantity` integer
      - `name` string
      - `pos_id` integer: PosID is Chipotle's point-of-sale id for the item.
      - `pricing` ChipotleMoney
        - `delivery_price` number
        - `price` number
      - `primary_filling` string: PrimaryFilling is the protein/filling the item is built around.
      - `type` string
    - `source_url` string
  - `msg` unknown

## Other responses

- `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/028417aa35bb?raw)
