Dinner suggestions
Bring dinner ideas, dish photos, and serving-adjusted ingredients into your planner.
/api/v1/dinner-suggestionsMake your first request
Contact the TipTopChef team for a partner key. Access is available to approved integrations, starting with Bloombla.
From your backend, send JSON with your key in the Authorization header. Store the key as a server-side secret.
OpenAPI schema (JSON) for API tools and client generation.
curl --request POST 'https://www.tiptopchef.com/api/v1/dinner-suggestions' \
--header "Authorization: Bearer $TIPTOPCHEF_API_KEY" \
--header 'Content-Type: application/json' \
--data '{"servings":4,"maxMinutes":30,"limit":1}'Request fields
servingsinteger · required- Choose 1–12 servings. Ingredients are scaled to this number.
maxMinutesinteger · optional- Set a cap from 1 to 1,440 minutes. Recipes with unquantified extra time are excluded when a cap is set.
limitinteger · optional- Return up to 1–7 recipes. Defaults to 3.
excludeRecipeIdsstring[] · optional- Pass up to 50 recipe IDs to prevent repeats or swap a dinner. Unknown IDs are ignored.
Read the results
brand provides the logo and display credit. Each item in suggestions includes the recipe ID, photo, cooking link, servings, and ingredients with numeric amounts and units.
Suggestions rotate daily at midnight Pacific time. Burgers are eligible and deli sandwiches are excluded. Requests for three or more can include a returningSpecial that meets the same filters.
A valid request returns up to your limit, including an empty list when nothing fits. Fixed batches appear only at their original yield.
{
"brand": {
"name": "TipTopChef",
"logoUrl": "https://www.tiptopchef.com/brand/tiptopchef-logo-polished.png",
"homepageUrl": "https://www.tiptopchef.com/",
"credit": "Recipe by TipTopChef"
},
"suggestions": [
{
"id": "sumac-terrace-garlic-shrimp",
"title": "Garlic Shrimp with Tomato and Coriander",
"returningSpecial": false,
"description": "Peeled shrimp simmered briefly in a pan of garlic, tomato and ground coriander, finished with fresh cilantro and lemon. A quick main, with warm pita for the sauce.",
"estimatedMinutes": 30,
"extraTime": null,
"servings": 4,
"recipeUrl": "https://www.tiptopchef.com/restaurants/sumac-terrace/sumac-terrace-garlic-shrimp",
"photo": {
"url": "https://www.tiptopchef.com/food/sumac-terrace-garlic-shrimp.webp",
"alt": "Garlic Shrimp with Tomato and Coriander",
"credit": null
},
"ingredients": [
{
"name": "Raw peeled shrimp",
"amount": 500,
"unit": "g"
},
{
"name": "Canned crushed tomatoes",
"amount": 400,
"unit": "g"
},
{
"name": "Garlic",
"amount": 4,
"unit": "clove"
},
{
"name": "Ground coriander",
"amount": 1,
"unit": "tsp"
},
{
"name": "Ground cumin",
"amount": 0.5,
"unit": "tsp"
},
{
"name": "Olive oil",
"amount": 2,
"unit": "tbsp"
},
{
"name": "Lemon",
"amount": 1,
"unit": "whole"
},
{
"name": "Cilantro",
"amount": 15,
"unit": "g"
},
{
"name": "Red chili flakes",
"amount": 0.25,
"unit": "tsp"
},
{
"name": "Salt",
"amount": 0.5,
"unit": "tsp"
},
{
"name": "Black pepper",
"amount": 0.25,
"unit": "tsp"
},
{
"name": "Pita breads",
"amount": 4,
"unit": "whole"
}
]
}
]
}Display recipes
Use the returned photo and alt text, include any supplied photo credit, and link each recipe to its cooking instructions.
Standalone recipe card
Show the TipTopChef logo once on the card.

View cooking instructions →Recipe grid
Credit TipTopChef once above the grid, as Bloombla does.



Save the ingredient amounts and units with each planned meal. Photos are illustrative, cooking times are estimates, and the catalogue has no allergy filtering.
Errors and limits
Errors include error.code and error.message. The partner limit is 60 requests per minute per Cloudflare location.
400- Invalid JSON or request fields.
401- Provide a valid partner key.
413- Keep the request body within 16 KiB.
415- Send application/json.
429- Wait for the number of seconds in Retry-After.
503- Retry with backoff.
BETA