Skip to content

Recipe and nutrition data, ready for your app

Tap here & paste the prompt into your LLM

Dinner · American

Texas Chili con Carne

2 h total · 20 min active · 4 servings

Calories
569kcal
Protein
44g
Carbs
5.6g
Fat
42g
  • Gluten-Free
  • Dairy-Free
  • Egg-Free
  • +3 more

Chili Base

  • 6 red chiliesdried
  • 910 g stewing beefcut into 1.3cm (1/2 inch) cubes
  • 15 ml olive oil
  • 2 bay leaves

Step 3 · SEAR

Heat olive oil in a heavy skillet over medium-high heat. Brown the beef cubes on all sides until a crust forms.

Done when: Beef is deeply browned on all sides

GET /api/v1/dinner
{
  "id": "a066f472-ed0c-46ea-8e2c-a0053c3183a8",
  "name": "Texas Chili con Carne",
  "description": "A thick, beef-based stew featuring tender cubes of meat in a rich sauce made from reconstituted whole chilies and aromatic spices without beans or tomatoes.",
  "category": "Dinner",
  "cuisine": "American",
  "difficulty": "Intermediate",
  "tags": [
    "Beef",
    "Slow-Cooked",
    "High-Protein",
    "Southwestern"
  ],
  "meta": {
    "active_time": "PT20M",
    "passive_time": "PT1H40M",
    "total_time": "PT2H",
    "overnight_required": false,
    "yields": "4 servings",
    "yield_count": 4,
    "serving_size_g": 300
  },
  "dietary": {
    "flags": [
      "Gluten-Free",
      "Dairy-Free",
      "Egg-Free",
      "Nut-Free",
      "Peanut-Free",
      "Soy-Free"
    ],
    "not_suitable_for": []
  },
  "storage": {
    "refrigerator": {
      "notes": "Flavor improves after 24 hours.",
      "duration": "P4D"
    },
    "freezer": {
      "notes": "Thaw overnight in refrigerator before reheating.",
      "duration": "P3M"
    },
    "reheating": "Heat in a saucepan over medium-low heat, adding a splash of water if too thick.",
    "does_not_keep": false
  },
  "equipment": [
    {
      "name": "Blender",
      "required": true,
      "alternative": "Food processor or mortar and pestle"
    },
    {
      "name": "Heavy skillet",
      "required": true,
      "alternative": "Dutch oven or heavy-bottomed pot"
    },
    {
      "name": "Mixing bowl",
      "required": true,
      "alternative": null
    }
  ],
  "ingredients": [
    {
      "group_name": "Chili Base",
      "items": [
        {
          "name": "red chilies",
          "quantity": 6,
          "unit": null,
          "preparation": "dried",
          "notes": "about 30g",
          "substitutions": [],
          "ingredient_id": "3c3f97d4-c951-43fd-865c-88fa8b445739",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "stewing beef",
          "quantity": 910,
          "unit": "g",
          "preparation": "cut into 1.3cm (1/2 inch) cubes",
          "notes": null,
          "substitutions": [],
          "ingredient_id": "09f2eef4-739a-4fca-8b63-97d697257990",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "olive oil",
          "quantity": 15,
          "unit": "ml",
          "preparation": null,
          "notes": null,
          "substitutions": [],
          "ingredient_id": "e9f370c4-07c8-4d8d-8a9f-0edea38db44c",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "bay leaves",
          "quantity": 2,
          "unit": null,
          "preparation": null,
          "notes": null,
          "substitutions": [],
          "ingredient_id": "eab2ef3a-7a0e-4188-b746-645b795ada1e",
          "nutrition_source": "USDA FoodData Central"
        }
      ]
    },
    {
      "group_name": "Flavor Paste",
      "items": [
        {
          "name": "garlic",
          "quantity": 2,
          "unit": null,
          "preparation": "peeled",
          "notes": "about 6g",
          "substitutions": [],
          "ingredient_id": "30109e1e-d8e8-4f76-a6f4-82ac5b071fde",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "cumin",
          "quantity": 7,
          "unit": "g",
          "preparation": null,
          "notes": null,
          "substitutions": [],
          "ingredient_id": "b9c9e3cb-61b7-4bbc-87c0-7858d42d7935",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "oregano",
          "quantity": 3,
          "unit": "g",
          "preparation": null,
          "notes": null,
          "substitutions": [],
          "ingredient_id": "687f54eb-e811-4e5e-ac2e-e2735458480c",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "paprika",
          "quantity": 14,
          "unit": "g",
          "preparation": null,
          "notes": null,
          "substitutions": [],
          "ingredient_id": "f4c3bdd7-6528-40d2-84b3-a6325df15e8e",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "sugar",
          "quantity": 4,
          "unit": "g",
          "preparation": null,
          "notes": null,
          "substitutions": [],
          "ingredient_id": "8ae7f905-b311-4f45-9527-5e3840369506",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "salt",
          "quantity": null,
          "unit": null,
          "preparation": null,
          "notes": "to taste",
          "substitutions": [],
          "ingredient_id": "2631739c-2de4-4389-a6e3-ed3d06d0406f",
          "nutrition_source": "USDA FoodData Central"
        },
        {
          "name": "black pepper",
          "quantity": null,
          "unit": null,
          "preparation": null,
          "notes": "to taste",
          "substitutions": [],
          "ingredient_id": "c25dc1c9-4ea7-403c-976e-ab1d06578b7a",
          "nutrition_source": "USDA FoodData Central"
        }
      ]
    }
  ],
  "instructions": [
    {
      "step_number": 1,
      "phase": "prep",
      "text": "Tear the dried chilies into strips and place them in a bowl. Cover with 240ml (1 cup) of boiling water and soak for 30 minutes.",
      "structured": {
        "action": "SOAK",
        "temperature": null,
        "duration": "PT30M",
        "doneness_cues": null
      },
      "tips": []
    },
    {
      "step_number": 2,
      "phase": "prep",
      "text": "Drain the chilies and set them aside. Reserve the soaking liquid for the cooking process.",
      "structured": {
        "action": "DRAIN",
        "temperature": null,
        "duration": null,
        "doneness_cues": null
      },
      "tips": []
    },
    {
      "step_number": 3,
      "phase": "cook",
      "text": "Heat olive oil in a heavy skillet over medium-high heat. Brown the beef cubes on all sides until a crust forms.",
      "structured": {
        "action": "SEAR",
        "temperature": null,
        "duration": null,
        "doneness_cues": {
          "visual": "Beef is deeply browned on all sides",
          "tactile": null
        }
      },
      "tips": []
    },
    {
      "step_number": 4,
      "phase": "cook",
      "text": "Pour the reserved chili soaking liquid into the skillet. Add bay leaves and bring the liquid to a boil.",
      "structured": {
        "action": "BOIL",
        "temperature": null,
        "duration": null,
        "doneness_cues": null
      },
      "tips": []
    },
    {
      "step_number": 5,
      "phase": "cook",
      "text": "Reduce the heat to low, cover the skillet, and simmer for 1 hour.",
      "structured": {
        "action": "SIMMER",
        "temperature": {
          "celsius": 90,
          "fahrenheit": 194
        },
        "duration": "PT1H",
        "doneness_cues": null
      },
      "tips": []
    },
    {
      "step_number": 6,
      "phase": "prep",
      "text": "Combine the soaked chilies, garlic, cumin, oregano, paprika, sugar, salt, and pepper in a blender. Puree until smooth, adding a small amount of fresh water if the mixture is too thick.",
      "structured": {
        "action": "PUREE",
        "temperature": null,
        "duration": null,
        "doneness_cues": null
      },
      "tips": []
    },
    {
      "step_number": 7,
      "phase": "cook",
      "text": "Stir the chili puree into the skillet with the beef. Cover and continue to simmer for 30 minutes.",
      "structured": {
        "action": "SIMMER",
        "temperature": null,
        "duration": "PT30M",
        "doneness_cues": {
          "visual": null,
          "tactile": "Beef cubes are fork-tender"
        }
      },
      "tips": []
    },
    {
      "step_number": 8,
      "phase": "finish",
      "text": "Remove and discard the bay leaves. Taste and add more salt or pepper if needed before serving.",
      "structured": {
        "action": "SERVE",
        "temperature": null,
        "duration": null,
        "doneness_cues": null
      },
      "tips": []
    }
  ],
  "troubleshooting": [
    {
      "symptom": "Beef is tough or chewy",
      "likely_cause": "The meat has not simmered long enough to break down connective tissue.",
      "prevention": "Ensure the liquid is at a very low simmer and the lid is tightly sealed.",
      "fix": "Continue simmering in 15-minute increments until tender."
    },
    {
      "symptom": "Chili is too watery",
      "likely_cause": "Too much water added during blending or insufficient reduction.",
      "prevention": "Add water to the blender only 15ml at a time.",
      "fix": "Simmer uncovered for the final 15 minutes to evaporate excess moisture."
    }
  ],
  "chef_notes": [
    "For the deepest chili flavor, use a variety of dried chilies like ancho, guajillo, and pasilla. Toasting them briefly before soaking can enhance their aroma.",
    "Don't overcrowd the skillet when browning the beef; sear in batches if necessary to ensure a good crust, which adds significant flavor to the final dish.",
    "The simmering time is crucial for tenderizing the beef. Low and slow is key; the meat should be easily pierced with a fork.",
    "The consistency of the chili can be adjusted by the amount of soaking liquid you use and the final simmering time. If it's too thick, add a splash of water or beef broth; if too thin, simmer uncovered for a bit longer."
  ],
  "cultural_context": "Texas Chili, or Chili con Carne, is a hearty stew deeply rooted in Texan culinary tradition. Its origins trace back to the mid-19th century, with early versions featuring simple ingredients like dried beef, chilies, and spices, cooked by cowboys and ranchers. The absence of beans and tomatoes is a defining characteristic, distinguishing it from other regional chili variations and emphasizing its pure, meat-and-chili flavor profile.",
  "nutrition": {
    "per_serving": {
      "calories": 569.02,
      "protein_g": 44.14,
      "carbohydrates_g": 5.59,
      "fat_g": 41.99,
      "saturated_fat_g": 16.48,
      "trans_fat_g": 2.39,
      "monounsaturated_fat_g": 20.66,
      "polyunsaturated_fat_g": 2.29,
      "fiber_g": 1.97,
      "sugar_g": 1.84,
      "sodium_mg": 350.75,
      "cholesterol_mg": 154.7,
      "potassium_mg": 903.3,
      "calcium_mg": 74.24,
      "iron_mg": 7.16,
      "magnesium_mg": 60.57,
      "phosphorus_mg": 434.12,
      "zinc_mg": 16.82,
      "vitamin_a_mcg": 101.01,
      "vitamin_c_mg": 11.51,
      "vitamin_d_mcg": 0.23,
      "vitamin_e_mg": 2.15,
      "vitamin_k_mcg": 14.73,
      "vitamin_b6_mg": 0.97,
      "vitamin_b12_mcg": 6.14,
      "thiamin_mg": 0.19,
      "riboflavin_mg": 0.38,
      "niacin_mg": 10.47,
      "folate_mcg": 12.53,
      "water_g": 154.87,
      "alcohol_g": null,
      "caffeine_mg": null
    },
    "sources": [
      "USDA FoodData Central"
    ]
  }
}
32
nutrients per serving
80+
fields per recipe
10,000+
searchable ingredients
Free
to try, no card

Skip the parsing

Most recipe data arrives as text. Before you build a single feature, you write parsers, unit tables and nutrition lookups. Recipe API sends every ingredient already split into quantity, unit and preparation, linked to an ingredient record and its nutrition source.

Typical recipe text

6 dried red chilies (about 30g)

What Recipe API returns

{
  "name": "red chilies",
  "quantity": 6,
  "unit": null,
  "preparation": "dried",
  "notes": "about 30g",
  "substitutions": [],
  "ingredient_id": "3c3f97d4-c951-43fd-865c-88fa8b445739",
  "nutrition_source": "USDA FoodData Central"
}

Start from what you are building

The same data supports each of these. Pick yours to see the features and the request you would start with.

Plan meals around real constraints

Filter recipes by diet, cuisine and calories on the server, then build shopping lists from grouped ingredients with quantities and units.

  • Dietary flags and allergen warnings on every recipe
  • Active, passive and total time for scheduling
  • Quantities and units you can scale and add up

Start with

GET /api/v1/recipes?dietary=Vegan&max_calories=600

Your first request in about a minute

  1. Step 1

    Enter your email

    We send you a sign-in link. No card and no password.

  2. Step 2

    Run your first request

    Your first sign-in creates an API key and opens the playground with a recipe request ready to run.

  3. Step 3

    Build or connect

    Call the API from any language, start from a TypeScript, Python or Go starter kit, or connect Claude through MCP.

Get a free API key

Or try it now, without a key:

curl https://recipe-api.com/api/v1/dinner

Nutrition you can explain

Every ingredient is matched to a USDA FoodData Central record or a cited source, and the 32 nutrients per serving are added up from those records. No AI model estimates a number.

  • Matched at the ingredient level, not guessed per recipe
  • Calculated the same way every time
  • Every ingredient in the response says where its data came from

Texas Chili con Carne

per serving

Calories
569 kcal
Protein
44.1 g
Fiber
2.0 g
Sodium
351 mg
Iron
7.2 mg
Vitamin B12
6.1 mcg

Showing 6 of 32 nutrients from the sample response. nutrition_source: USDA FoodData Central

Yours to ship

No attribution, on every plan

Show recipes under your own brand. No logo, link or credit line is required.

Commercial use from $29

Personal is for non-commercial projects. Developer and above cover apps you sell or earn money from.

Caching that grows with you

24 hours on Developer, 7 days on Production, and a persistent application cache on Scale.

Weighing other recipe APIs? Compare with Spoonacular or Edamam.

Pick the plan for where you are

Searching and browsing are free on every plan. Opening a full recipe uses one request, and opening it again does not use another unique recipe.

Exploring

Evaluation

$0

Try the full schema and build your first integration.

  • 50 full recipe requests
  • 1 generated recipe
  • Free search and browsing
  • No card

Side project

Personal

$9 a month

For personal projects and your own Claude setup.

  • 200 requests a day
  • 100 unique recipes a month
  • Non-commercial use
  • Email support

Launching

Recommended

Developer

$29 a month

For your first commercial app.

  • 500 requests a day
  • 250 unique recipes a month
  • Commercial use
  • 24-hour caching

Growing

Production

$99 a month

More volume, longer caching and email support.

  • 2,000 requests a day
  • 1,000 unique recipes a month
  • 7-day caching
  • Email support

Need more volume or a persistent cache? See Scale, Enterprise and every plan feature.

Questions developers ask

How is the nutrition calculated?

Each ingredient is matched to a USDA FoodData Central record or, where USDA has no match, a cited source. The 32 nutrients per serving are added up from those records, not estimated by an AI model, and every ingredient in the response includes its nutrition_source.

Can I show recipes in my app under my own brand?

Yes. No attribution is required on any plan. Commercial use starts on the Developer plan; Personal is for non-commercial projects.

Can I cache or store recipes?

It depends on your plan: no caching on Evaluation or Personal, 24-hour caching on Developer, 7-day caching on Production, and a persistent application cache on Scale and Enterprise.

What counts as a request?

Searching, filtering and browsing are free. Opening a full recipe uses one request. Each plan also includes a number of unique recipes per month, and opening a recipe you have already fetched does not use another one.

What happens when I reach a limit?

We email you at 80% and again at 100% of your allowance. At the limit, the API returns a 429 response that names the limit and links to upgrade. Paid allowances reset each day and month, and if you reach your unique-recipe allowance, recipes you have already opened stay available.

Can I cancel anytime?

Yes. Cancel from Manage Billing in your dashboard, and you keep access until the end of the period you have paid for.

Do generated recipes use the same format?

Yes. POST /api/v1/generate returns the same recipe shape as the catalog, so your app handles one format.

Which languages and tools can I use?

Any language that can make an HTTPS request. There are starter kits and SDK source for TypeScript, Python and Go, and an MCP server for Claude and other MCP clients.

More answers in the full FAQ and the guides.

Try it with your own app idea

50 full recipes free, no card. If you get stuck, email paul@recipe-api.com and the person who built Recipe API will reply.