{"info":{"_postman_id":"e4a9d2f6-fc7e-47c5-871d-7c4b084bbae2","name":"Recipes App API","description":"<html><head></head><body><p>Complete CRUD API for managing recipes built with Node.js, Express.js, and Mongoose.</p>\n<p><strong>Base URL:</strong> <code>http://localhost:5000</code></p>\n<h2 id=\"endpoints\">Endpoints</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Method</th>\n<th>URL</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>POST</td>\n<td>/api/recipes</td>\n<td>Create a new recipe</td>\n</tr>\n<tr>\n<td>GET</td>\n<td>/api/recipes</td>\n<td>Get all recipes</td>\n</tr>\n<tr>\n<td>GET</td>\n<td>/api/recipes/:id</td>\n<td>Get recipe by ID</td>\n</tr>\n<tr>\n<td>PUT</td>\n<td>/api/recipes/:id</td>\n<td>Update recipe by ID</td>\n</tr>\n<tr>\n<td>DELETE</td>\n<td>/api/recipes/:id</td>\n<td>Delete recipe by ID</td>\n</tr>\n</tbody>\n</table>\n</div></body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"54651339","collectionId":"e4a9d2f6-fc7e-47c5-871d-7c4b084bbae2","publishedId":"2sBXqRiGjj","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-05-16T11:28:42.000Z"},"item":[{"name":"Health Check","id":"63bea375-5960-487b-bbd0-7c20e604358c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/","description":"<p>Verify the API server is running.</p>\n","urlObject":{"path":[""],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"a87c7e9f-4b13-4941-a5b8-bd896d08539e","name":"Server Running","originalRequest":{"method":"GET","header":[],"url":"http://localhost:5000/","description":"Verify the API server is running."},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": true,\n  \"message\": \"🍽️  Recipes API is running\",\n  \"version\": \"1.0.0\",\n  \"endpoints\": {\n    \"recipes\": \"/api/recipes\"\n  }\n}"}],"_postman_id":"63bea375-5960-487b-bbd0-7c20e604358c"},{"name":"1. Create Recipe","id":"2ad7970a-b7e9-4b06-a410-10f62ccfa663","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Classic Spaghetti Carbonara\",\n  \"description\": \"A rich and creamy Italian pasta dish made with eggs, cheese, pancetta, and black pepper.\",\n  \"ingredients\": [\n    \"400g spaghetti\",\n    \"200g pancetta or guanciale\",\n    \"4 large eggs\",\n    \"100g Pecorino Romano cheese\",\n    \"50g Parmesan cheese\",\n    \"2 cloves garlic\",\n    \"Salt and black pepper to taste\"\n  ],\n  \"instructions\": \"1. Cook spaghetti in salted boiling water until al dente.\\n2. Fry pancetta with garlic until crispy.\\n3. Whisk eggs with grated cheeses.\\n4. Reserve pasta water, drain pasta.\\n5. Off heat, mix pasta with pancetta, then egg mixture.\\n6. Add pasta water to achieve creamy texture.\\n7. Season generously with black pepper and serve.\",\n  \"category\": \"Dinner\",\n  \"prepTime\": 10,\n  \"cookTime\": 20,\n  \"servings\": 4,\n  \"difficulty\": \"Medium\",\n  \"imageUrl\": \"https://example.com/carbonara.jpg\"\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/recipes","description":"<p><strong>createRecipe</strong> — Creates a new recipe document in MongoDB.</p>\n<h3 id=\"required-fields\">Required Fields</h3>\n<ul>\n<li><code>title</code> (string, max 100 chars)</li>\n<li><code>description</code> (string, max 500 chars)</li>\n<li><code>ingredients</code> (array of strings, min 1 item)</li>\n<li><code>instructions</code> (string)</li>\n<li><code>category</code> (enum: Breakfast | Lunch | Dinner | Snack | Dessert | Beverage | Other)</li>\n<li><code>prepTime</code> (number, minutes)</li>\n<li><code>cookTime</code> (number, minutes)</li>\n<li><code>servings</code> (number, min 1)</li>\n</ul>\n<h3 id=\"optional-fields\">Optional Fields</h3>\n<ul>\n<li><code>difficulty</code> (enum: Easy | Medium | Hard, default: Easy)</li>\n<li><code>imageUrl</code> (string)</li>\n</ul>\n","urlObject":{"path":["api","recipes"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"d8efe441-6073-4e91-b9ea-0b632213a7bb","name":"201 - Recipe Created","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Classic Spaghetti Carbonara\",\n  \"description\": \"A rich and creamy Italian pasta dish made with eggs, cheese, pancetta, and black pepper.\",\n  \"ingredients\": [\n    \"400g spaghetti\",\n    \"200g pancetta or guanciale\",\n    \"4 large eggs\",\n    \"100g Pecorino Romano cheese\",\n    \"50g Parmesan cheese\",\n    \"2 cloves garlic\",\n    \"Salt and black pepper to taste\"\n  ],\n  \"instructions\": \"1. Cook spaghetti in salted boiling water until al dente.\\n2. Fry pancetta with garlic until crispy.\\n3. Whisk eggs with grated cheeses.\\n4. Reserve pasta water, drain pasta.\\n5. Off heat, mix pasta with pancetta, then egg mixture.\\n6. Add pasta water to achieve creamy texture.\\n7. Season generously with black pepper and serve.\",\n  \"category\": \"Dinner\",\n  \"prepTime\": 10,\n  \"cookTime\": 20,\n  \"servings\": 4,\n  \"difficulty\": \"Medium\",\n  \"imageUrl\": \"https://example.com/carbonara.jpg\"\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/recipes","description":"**createRecipe** — Creates a new recipe document in MongoDB.\n\n### Required Fields\n- `title` (string, max 100 chars)\n- `description` (string, max 500 chars)\n- `ingredients` (array of strings, min 1 item)\n- `instructions` (string)\n- `category` (enum: Breakfast | Lunch | Dinner | Snack | Dessert | Beverage | Other)\n- `prepTime` (number, minutes)\n- `cookTime` (number, minutes)\n- `servings` (number, min 1)\n\n### Optional Fields\n- `difficulty` (enum: Easy | Medium | Hard, default: Easy)\n- `imageUrl` (string)"},"status":"Created","code":201,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": true,\n  \"message\": \"Recipe created successfully\",\n  \"data\": {\n    \"_id\": \"665a1b2c3d4e5f6789012345\",\n    \"title\": \"Classic Spaghetti Carbonara\",\n    \"description\": \"A rich and creamy Italian pasta dish made with eggs, cheese, pancetta, and black pepper.\",\n    \"ingredients\": [\n      \"400g spaghetti\",\n      \"200g pancetta or guanciale\",\n      \"4 large eggs\",\n      \"100g Pecorino Romano cheese\",\n      \"50g Parmesan cheese\",\n      \"2 cloves garlic\",\n      \"Salt and black pepper to taste\"\n    ],\n    \"instructions\": \"1. Cook spaghetti...\",\n    \"category\": \"Dinner\",\n    \"prepTime\": 10,\n    \"cookTime\": 20,\n    \"servings\": 4,\n    \"difficulty\": \"Medium\",\n    \"imageUrl\": \"https://example.com/carbonara.jpg\",\n    \"createdAt\": \"2024-06-01T10:00:00.000Z\",\n    \"updatedAt\": \"2024-06-01T10:00:00.000Z\",\n    \"__v\": 0\n  }\n}"},{"id":"607bb52f-0153-4c32-b1e4-b36ede111daf","name":"400 - Validation Error","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Classic Spaghetti Carbonara\",\n  \"description\": \"A rich and creamy Italian pasta dish made with eggs, cheese, pancetta, and black pepper.\",\n  \"ingredients\": [\n    \"400g spaghetti\",\n    \"200g pancetta or guanciale\",\n    \"4 large eggs\",\n    \"100g Pecorino Romano cheese\",\n    \"50g Parmesan cheese\",\n    \"2 cloves garlic\",\n    \"Salt and black pepper to taste\"\n  ],\n  \"instructions\": \"1. Cook spaghetti in salted boiling water until al dente.\\n2. Fry pancetta with garlic until crispy.\\n3. Whisk eggs with grated cheeses.\\n4. Reserve pasta water, drain pasta.\\n5. Off heat, mix pasta with pancetta, then egg mixture.\\n6. Add pasta water to achieve creamy texture.\\n7. Season generously with black pepper and serve.\",\n  \"category\": \"Dinner\",\n  \"prepTime\": 10,\n  \"cookTime\": 20,\n  \"servings\": 4,\n  \"difficulty\": \"Medium\",\n  \"imageUrl\": \"https://example.com/carbonara.jpg\"\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/recipes","description":"**createRecipe** — Creates a new recipe document in MongoDB.\n\n### Required Fields\n- `title` (string, max 100 chars)\n- `description` (string, max 500 chars)\n- `ingredients` (array of strings, min 1 item)\n- `instructions` (string)\n- `category` (enum: Breakfast | Lunch | Dinner | Snack | Dessert | Beverage | Other)\n- `prepTime` (number, minutes)\n- `cookTime` (number, minutes)\n- `servings` (number, min 1)\n\n### Optional Fields\n- `difficulty` (enum: Easy | Medium | Hard, default: Easy)\n- `imageUrl` (string)"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": false,\n  \"message\": \"Validation failed\",\n  \"errors\": [\n    \"Recipe title is required\",\n    \"At least one ingredient is required\"\n  ]\n}"}],"_postman_id":"2ad7970a-b7e9-4b06-a410-10f62ccfa663"},{"name":"2. Get All Recipes","id":"d1fe9f8b-8db1-4b16-b0c8-ab3f258306cd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/recipes","description":"<p><strong>getAllRecipes</strong> — Retrieves all recipes from the database, sorted by newest first.</p>\n<h3 id=\"query-parameters-all-optional\">Query Parameters (all optional)</h3>\n<ul>\n<li><code>category</code> — Filter by category (e.g. <code>Dinner</code>, <code>Breakfast</code>)</li>\n<li><code>difficulty</code> — Filter by difficulty (<code>Easy</code>, <code>Medium</code>, <code>Hard</code>)</li>\n<li><code>search</code> — Search by title keyword (case-insensitive)</li>\n</ul>\n","urlObject":{"path":["api","recipes"],"host":["http://localhost:5000"],"query":[{"disabled":true,"description":{"content":"<p>Filter by category (optional)</p>\n","type":"text/plain"},"key":"category","value":"Dinner"},{"disabled":true,"description":{"content":"<p>Filter by difficulty (optional)</p>\n","type":"text/plain"},"key":"difficulty","value":"Easy"},{"disabled":true,"description":{"content":"<p>Search by title keyword (optional)</p>\n","type":"text/plain"},"key":"search","value":"pasta"}],"variable":[]}},"response":[{"id":"b45b87eb-e4de-4be7-8b03-2fc93f8c612e","name":"200 - All Recipes","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/recipes","host":["http://localhost:5000"],"path":["api","recipes"],"query":[{"key":"category","value":"Dinner","description":"Filter by category (optional)","disabled":true},{"key":"difficulty","value":"Easy","description":"Filter by difficulty (optional)","disabled":true},{"key":"search","value":"pasta","description":"Search by title keyword (optional)","disabled":true}]},"description":"**getAllRecipes** — Retrieves all recipes from the database, sorted by newest first.\n\n### Query Parameters (all optional)\n- `category` — Filter by category (e.g. `Dinner`, `Breakfast`)\n- `difficulty` — Filter by difficulty (`Easy`, `Medium`, `Hard`)\n- `search` — Search by title keyword (case-insensitive)"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": true,\n  \"count\": 2,\n  \"data\": [\n    {\n      \"_id\": \"665a1b2c3d4e5f6789012345\",\n      \"title\": \"Classic Spaghetti Carbonara\",\n      \"description\": \"A rich and creamy Italian pasta dish.\",\n      \"ingredients\": [\"400g spaghetti\", \"200g pancetta\"],\n      \"category\": \"Dinner\",\n      \"prepTime\": 10,\n      \"cookTime\": 20,\n      \"servings\": 4,\n      \"difficulty\": \"Medium\",\n      \"createdAt\": \"2024-06-01T10:00:00.000Z\",\n      \"updatedAt\": \"2024-06-01T10:00:00.000Z\"\n    },\n    {\n      \"_id\": \"665a1b2c3d4e5f6789099999\",\n      \"title\": \"Avocado Toast\",\n      \"description\": \"Quick healthy breakfast.\",\n      \"ingredients\": [\"2 slices sourdough\", \"1 avocado\"],\n      \"category\": \"Breakfast\",\n      \"prepTime\": 5,\n      \"cookTime\": 3,\n      \"servings\": 1,\n      \"difficulty\": \"Easy\",\n      \"createdAt\": \"2024-05-30T08:00:00.000Z\",\n      \"updatedAt\": \"2024-05-30T08:00:00.000Z\"\n    }\n  ]\n}"}],"_postman_id":"d1fe9f8b-8db1-4b16-b0c8-ab3f258306cd"},{"name":"3. Get Recipe by ID","id":"eb8cd63d-27c5-4727-9d0e-0298ef9b3062","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/recipes/","description":"<p><strong>getRecipeById</strong> — Retrieves a single recipe by its MongoDB ObjectId.</p>\n<h3 id=\"url-parameter\">URL Parameter</h3>\n<ul>\n<li><code>:id</code> — The MongoDB ObjectId of the recipe (24-character hex string)</li>\n</ul>\n","urlObject":{"path":["api","recipes",""],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"743eed9e-d230-4224-9753-f03dd7bfecfa","name":"200 - Recipe Found","originalRequest":{"method":"GET","header":[],"url":"http://localhost:5000/api/recipes/","description":"**getRecipeById** — Retrieves a single recipe by its MongoDB ObjectId.\n\n### URL Parameter\n- `:id` — The MongoDB ObjectId of the recipe (24-character hex string)"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": true,\n  \"data\": {\n    \"_id\": \"665a1b2c3d4e5f6789012345\",\n    \"title\": \"Classic Spaghetti Carbonara\",\n    \"description\": \"A rich and creamy Italian pasta dish made with eggs, cheese, pancetta, and black pepper.\",\n    \"ingredients\": [\n      \"400g spaghetti\",\n      \"200g pancetta or guanciale\",\n      \"4 large eggs\"\n    ],\n    \"instructions\": \"1. Cook spaghetti in salted boiling water until al dente...\",\n    \"category\": \"Dinner\",\n    \"prepTime\": 10,\n    \"cookTime\": 20,\n    \"servings\": 4,\n    \"difficulty\": \"Medium\",\n    \"imageUrl\": \"https://example.com/carbonara.jpg\",\n    \"createdAt\": \"2024-06-01T10:00:00.000Z\",\n    \"updatedAt\": \"2024-06-01T10:00:00.000Z\"\n  }\n}"},{"id":"8d338bf8-26ab-49ac-83e9-9cf143fdeba3","name":"404 - Recipe Not Found","originalRequest":{"method":"GET","header":[],"url":"http://localhost:5000/api/recipes/","description":"**getRecipeById** — Retrieves a single recipe by its MongoDB ObjectId.\n\n### URL Parameter\n- `:id` — The MongoDB ObjectId of the recipe (24-character hex string)"},"status":"Not Found","code":404,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": false,\n  \"message\": \"Recipe not found with ID: 665a1b2c3d4e5f6789012345\"\n}"},{"id":"f921e5a9-1545-4e52-84f5-46a619ac093d","name":"400 - Invalid ID Format","originalRequest":{"method":"GET","header":[],"url":"http://localhost:5000/api/recipes/","description":"**getRecipeById** — Retrieves a single recipe by its MongoDB ObjectId.\n\n### URL Parameter\n- `:id` — The MongoDB ObjectId of the recipe (24-character hex string)"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": false,\n  \"message\": \"Invalid recipe ID format\"\n}"}],"_postman_id":"eb8cd63d-27c5-4727-9d0e-0298ef9b3062"},{"name":"4. Update Recipe","id":"da178019-10d2-49e1-a5bd-cd7d8c544c0c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Classic Spaghetti Carbonara (Updated)\",\n  \"servings\": 6,\n  \"difficulty\": \"Hard\",\n  \"description\": \"An authentic Roman pasta dish — richer and even more delicious.\"\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/recipes/","description":"<p><strong>updateRecipe</strong> — Updates an existing recipe by its ID. Only include fields you want to change.</p>\n<h3 id=\"url-parameter\">URL Parameter</h3>\n<ul>\n<li><code>:id</code> — The MongoDB ObjectId of the recipe</li>\n</ul>\n<h3 id=\"body\">Body</h3>\n<p>Send only the fields you wish to update. All schema validations still apply.</p>\n","urlObject":{"path":["api","recipes",""],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"ccc2dd0e-e747-47fe-92e8-38021dbc70a7","name":"200 - Recipe Updated","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Classic Spaghetti Carbonara (Updated)\",\n  \"servings\": 6,\n  \"difficulty\": \"Hard\",\n  \"description\": \"An authentic Roman pasta dish — richer and even more delicious.\"\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/recipes/","description":"**updateRecipe** — Updates an existing recipe by its ID. Only include fields you want to change.\n\n### URL Parameter\n- `:id` — The MongoDB ObjectId of the recipe\n\n### Body\nSend only the fields you wish to update. All schema validations still apply."},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": true,\n  \"message\": \"Recipe updated successfully\",\n  \"data\": {\n    \"_id\": \"665a1b2c3d4e5f6789012345\",\n    \"title\": \"Classic Spaghetti Carbonara (Updated)\",\n    \"description\": \"An authentic Roman pasta dish — richer and even more delicious.\",\n    \"ingredients\": [\"400g spaghetti\", \"200g pancetta\"],\n    \"category\": \"Dinner\",\n    \"prepTime\": 10,\n    \"cookTime\": 20,\n    \"servings\": 6,\n    \"difficulty\": \"Hard\",\n    \"createdAt\": \"2024-06-01T10:00:00.000Z\",\n    \"updatedAt\": \"2024-06-01T11:30:00.000Z\"\n  }\n}"},{"id":"dbd19799-264c-43b3-b389-a4cc48fa1046","name":"404 - Recipe Not Found","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Classic Spaghetti Carbonara (Updated)\",\n  \"servings\": 6,\n  \"difficulty\": \"Hard\",\n  \"description\": \"An authentic Roman pasta dish — richer and even more delicious.\"\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/recipes/","description":"**updateRecipe** — Updates an existing recipe by its ID. Only include fields you want to change.\n\n### URL Parameter\n- `:id` — The MongoDB ObjectId of the recipe\n\n### Body\nSend only the fields you wish to update. All schema validations still apply."},"status":"Not Found","code":404,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": false,\n  \"message\": \"Recipe not found with ID: 665a1b2c3d4e5f6789012345\"\n}"}],"_postman_id":"da178019-10d2-49e1-a5bd-cd7d8c544c0c"},{"name":"5. Delete Recipe","id":"af46c711-8eb6-4f00-bf0c-2eeece845e62","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"http://localhost:5000/api/recipes/","description":"<p><strong>deleteRecipe</strong> — Permanently deletes a recipe by its ID.</p>\n<h3 id=\"url-parameter\">URL Parameter</h3>\n<ul>\n<li><code>:id</code> — The MongoDB ObjectId of the recipe to delete</li>\n</ul>\n<blockquote>\n<p>⚠️ This action is irreversible.</p>\n</blockquote>\n","urlObject":{"path":["api","recipes",""],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"81774e89-61e3-4c05-aec6-57a7d118ec45","name":"200 - Recipe Deleted","originalRequest":{"method":"DELETE","header":[],"url":"http://localhost:5000/api/recipes/","description":"**deleteRecipe** — Permanently deletes a recipe by its ID.\n\n### URL Parameter\n- `:id` — The MongoDB ObjectId of the recipe to delete\n\n> ⚠️ This action is irreversible."},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": true,\n  \"message\": \"Recipe deleted successfully\",\n  \"data\": {}\n}"},{"id":"e275782e-1be3-463a-94c4-a813ab0efd66","name":"404 - Recipe Not Found","originalRequest":{"method":"DELETE","header":[],"url":"http://localhost:5000/api/recipes/","description":"**deleteRecipe** — Permanently deletes a recipe by its ID.\n\n### URL Parameter\n- `:id` — The MongoDB ObjectId of the recipe to delete\n\n> ⚠️ This action is irreversible."},"status":"Not Found","code":404,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"success\": false,\n  \"message\": \"Recipe not found with ID: 665a1b2c3d4e5f6789012345\"\n}"}],"_postman_id":"af46c711-8eb6-4f00-bf0c-2eeece845e62"}],"variable":[{"key":"baseUrl","value":"http://localhost:5000","description":"Change this to your deployed Render URL for production"},{"key":"recipeId","value":"","description":"Store a recipe ID here after creating one"}]}