📱 Now on iOS - Track nutrition for 1000s of restaurants

API Documentation

Simple, powerful API for accessing restaurant menu nutrition data

Search Endpoint

Endpoint

GET https://api.macros.menu/search

Authentication

All requests require an API key to be passed in the header:

X-API-KEY: YOUR_API_KEY

Query Parameters

ParameterTypeRequiredDescription
qstringYesSearch query for menu items (e.g., "chicken salad")
page_sizeintegerNoNumber of results per page (default: 10, max: 50)
pageintegerNoPage number for pagination (default: 1)

Example Request

curl -X GET "https://api.macros.menu/search?q=chicken&page_size=5&page=1" \
  -H "X-API-KEY: YOUR_API_KEY"

Response Format

{
  "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
}

Response Fields

FieldTypeDescription
itemsarrayArray of menu items matching the search query
idstringUnique identifier for the menu item
namestringName of the menu item
descriptionstringDescription of the menu item, may include price and ingredients
caloriesintegerEstimated calories
proteinintegerProtein content in grams
carbsintegerCarbohydrate content in grams
fatintegerFat content in grams
pageintegerCurrent page number
page_sizeintegerNumber of items per page
total_pagesintegerTotal number of pages available
total_countintegerTotal number of items matching the search query

Error Responses

401 Unauthorized

{
  "error": "Invalid or missing API key"
}

400 Bad Request

{
  "error": "Missing required parameter: q"
}

429 Too Many Requests

{
  "error": "Rate limit exceeded"
}

Need an API Key?

Get Started - $20/month

Unlimited API calls • 99.9% Uptime