Endpoint Playground
Returns one cafe's catering category list and its full catering item catalog, priced for that specific cafe -- Panera's catering ordering flow is a separate application from its retail site, with its own category structure, pricing and item availability (confirmed live: the same item priced differently between a placeholder default cafe and a real cafe). Categories are a flat list (catering does not publish a category hierarchy the way the retail menu does). Each item carries its price, product type, portion label, whether it is customizable, a full published nutrient panel (calories, calories from fat, fat, saturated fat, trans fat, cholesterol, sodium, carbohydrates, dietary fiber, total sugars, protein, caffeine -- richer than the retail menu's calories/caffeine-only surface), its allergen statement (contains / may-contain, each with an id and display name), and a live in_stock flag from this cafe's current catering stockout feed for today. Cafe ids come from GET /panera/locations.
14 Oct 2026: 240 items; 5 fields had a value in every checked item and 6 varied between items.
Sample value profiles: price: 0.89 to 311.99, median 11.39; name: “Chips” and 209 other values; customizable: true in 173 of 240.
curl 'https://api.crawlora.net/api/v1/panera/catering-menu?cafe_id=601447' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| cafe_id | integer | Yes | 601447 | Panera cafe id, from /panera/locations |
{
"code": 200,
"msg": "OK",
"data": {
"cafe_id": 606477,
"categories": [
{
"cat_id": 181,
"name": "Sandwiches",
"sort_weight": 1,
"item_ids": [
647093
]
}
],
"items": [
{
"item_id": 647093,
"name": "Ciabatta Sausage, Egg & Cheese Sandwich Boxed Breakfast",
"description": "Savory sausage and scrambled egg with melty aged white cheddar with salt and pepper on our Ciabatta. Served with a fruit cup.",
"price": 10.99,
"product_type": "PRODUCT",
"portion": "Individual",
"customizable": true,
"image_key": "sausage-scrambled-egg-and-cheese-breakfast-sandwich",
"nutrients": [
{
"name": "Calories",
"value": 610,
"unit": "Cal"
},
{
"name": "Fat",
"value": 33,
"unit": "g"
},
{
"name": "Sodium",
"value": 1080,
"unit": "mg"
},
{
"name": "Protein",
"value": 28,
"unit": "g"
}
],
"allergens": {
"contains": [
{
"id": "EGG",
"name": "Egg"
},
{
"id": "MILK",
"name": "Milk"
},
{
"id": "WHEAT",
"name": "Wheat"
}
],
"may_contain": [
{
"id": "MAYSESAME",
"name": "Sesame"
}
]
},
"in_stock": true
}
],
"count": 257,
"source_url": "https://catering.panerabread.com/foundation-api/public/cafe/606477/menu/version/109864/placards?busUnit=cater",
"fetched_at": "2026-09-02T12:00:00Z"
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.