📱 Now on iOS - Track nutrition for 1000s of restaurants
Simple, powerful API for accessing restaurant menu nutrition data
GET https://api.macros.menu/search
All requests require an API key to be passed in the header:
X-API-KEY: YOUR_API_KEY
Parameter | Type | Required | Description |
---|---|---|---|
q | string | Yes | Search query for menu items (e.g., "chicken salad") |
page_size | integer | No | Number of results per page (default: 10, max: 50) |
page | integer | No | Page number for pagination (default: 1) |
curl -X GET "https://api.macros.menu/search?q=chicken&page_size=5&page=1" \
-H "X-API-KEY: YOUR_API_KEY"
{
"items": [
{
"id": "84c42595-8b4e-40f5-8df0-d32bbc1c686a",
"name": "Chicken or Turkey Club Quesadilla",
"description": "$11.5 — Fresh roasted chicken or turkey, bacon, avocado and cheese",
"calories": 700,
"protein": 40,
"carbs": 50,
"fat": 35
}
],
"page": 5,
"page_size": 5,
"total_pages": 545,
"total_count": 2725
}
Field | Type | Description |
---|---|---|
items | array | Array of menu items matching the search query |
id | string | Unique identifier for the menu item |
name | string | Name of the menu item |
description | string | Description of the menu item, may include price and ingredients |
calories | integer | Estimated calories |
protein | integer | Protein content in grams |
carbs | integer | Carbohydrate content in grams |
fat | integer | Fat content in grams |
page | integer | Current page number |
page_size | integer | Number of items per page |
total_pages | integer | Total number of pages available |
total_count | integer | Total number of items matching the search query |
{
"error": "Invalid or missing API key"
}
{
"error": "Missing required parameter: q"
}
{
"error": "Rate limit exceeded"
}