Everything you need to know about Recipe API.
Recipe API is a production-ready REST API that provides structured recipe data for developers building food and cooking applications. Each recipe includes detailed ingredients, step-by-step instructions with temperatures and timings, comprehensive nutrition data (32 nutrients per serving), dietary flags, and more.
Getting started is simple:
No credit card required for the free tier.
All API responses are in JSON format. Recipes follow a consistent schema with structured data for ingredients (with quantities, units, and substitutions), instructions (with actions, temperatures, and doneness cues), and nutrition (32 nutrients per serving).
Try it now without signup: curl https://recipe-api.com/api/v1/dinner
Yes, rate limits depend on your plan:
See our plan comparison for full details.
The unique recipes limit tracks how many different recipes you access per billing period. Re-requesting the same recipe doesn't count against this limit—only new recipes do.
This encourages caching (which is good for both performance and API efficiency) and ensures fair access to our recipe database across all users.
Yes! Caching rights depend on your plan:
With Starter and above, you own the data you fetch. Cache it permanently, build your own database, reduce latency, and never worry about API availability for data you've already retrieved.
White-label means you can present the recipe data as your own without any attribution to Recipe API. You can:
This is ideal for agencies, SaaS platforms, and enterprises building recipe features for their clients.
Our nutrition data is sourced primarily from USDA FoodData Central and other verified databases. Each recipe includes 32 nutrients per serving:
Each ingredient shows its nutrition source (e.g., "USDA FoodData Central").
All recipes are professionally developed and curated. Each recipe includes:
We add new recipes regularly. Our database currently includes 25,000+ recipes across multiple cuisines, categories, and dietary preferences. New recipes are added weekly.
No, attribution is not required. You can use the recipe data freely in your applications under your own brand. This applies to all plans including Free.
You'll receive a 429 Too Many Requests response with a Retry-After header indicating when you can retry.
Free tier: Wait for the limit to reset (per-minute resets every 60s, daily resets rolling 24h).
Paid tiers: Contact us if you need temporary increases for special circumstances.
Yes, absolutely. Recipe data is stable and caching is encouraged. You can cache responses for as long as you need to optimize your application's performance and reduce API calls.
Not yet, but the API is straightforward REST/JSON that works with any HTTP client. We provide code examples for JavaScript, Python, and cURL in our documentation.
An OpenAPI spec is available at /openapi.json for generating clients in any language.
API responses are typically under 100ms (p95) globally. Our infrastructure is hosted on Fly.io with edge locations for low latency.
API requests are authenticated using an API key passed in the X-API-Key header. Keys have the format rapi_...
Your API key is shown once when you activate your account. You can regenerate it anytime from the developer portal.
Yes! We provide a dedicated ingredients database with 10,000+ ingredients across 23 categories:
/api/v1/ingredients - Browse and search ingredients by name or category/api/v1/ingredient-categories - List all 23 ingredient categories/api/v1/recipes?ingredients=id1,id2 - Find recipes containing specific ingredientsCategories include: Vegetables, Beef, Poultry, Seafood, Dairy & Eggs, Legumes, Grains & Pasta, Fruits, Spices & Herbs, and more.
Sign in to your developer portal and click "Upgrade" to select a paid plan. You'll be redirected to Stripe checkout to complete payment. Your new limits apply immediately.
We accept all major credit cards (Visa, Mastercard, American Express) through Stripe. Some regions may also support local payment methods.
Monthly subscriptions are non-refundable for partial months, but you can cancel anytime and continue using the service until your billing period ends.
If you have concerns, contact us and we'll work with you.
Not currently, but contact us if you're interested. We may offer annual plans with a discount in the future.
Sign in to your developer portal, click "Manage Billing", and cancel from the Stripe billing portal. Your access continues until the end of your current billing period.
Yes! Contact us for custom enterprise plans with higher rate limits, dedicated support, and custom SLAs.
The Pro plan includes a 99.9% uptime SLA. For enterprise customers requiring higher guarantees or custom terms, contact us to discuss.
Pro plan customers receive priority email support. For enterprise customers, we offer dedicated support channels and faster response times. Contact us for details.