{"info":{"_postman_id":"b8e94ab9-428d-4a65-aac7-1cba762cf5ec","name":"recipe site","description":"<html><head></head><body><p>StartFragmentRecipe Finder is a mobile application that enables users to discover recipes based on ingredients they already have. Built with a modern tech stack, the app simplifies meal planning by connecting users to thousands of recipes via the Spoonacular API. The project emphasizes secure authentication, efficient state management, and a clean user interface while acting as a middleware to fetch and display recipe data.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"35386291","collectionId":"b8e94ab9-428d-4a65-aac7-1cba762cf5ec","publishedId":"2sAYdhHVCB","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2025-02-27T18:45:42.000Z"},"item":[{"name":"sign up","id":"50970183-392b-4dd3-9395-e5874c427c65","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"Gamunu Soisa\",\r\n    \"email\": \"gamunu@gmail.com\",\r\n    \"password\": \"123\"\r\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:3000/api/auth/register","description":"<p>StartFragment_Create a new user account and receive an authentication token._EndFragment</p>\n","urlObject":{"protocol":"http","port":"3000","path":["api","auth","register"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"72a0b5ff-ff09-4b59-aaa0-61594aad20ab","name":"sign up","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"Gamunu Soisa\",\r\n    \"email\": \"gamunu@gmail.com\",\r\n    \"password\": \"123\"\r\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:3000/api/auth/register"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"211"},{"key":"ETag","value":"W/\"d3-CSz24NRjPo9ckt/kam4eAGM216c\""},{"key":"Date","value":"Thu, 27 Feb 2025 12:51:50 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 8,\n    \"name\": \"Gamunu Soisa\",\n    \"email\": \"gamunu@gmail.com\",\n    \"token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOjgsImlhdCI6MTc0MDY2MDcxMCwiZXhwIjoxNzQwNjY0MzEwfQ.RTPnnBg-jIB70D5kQmBdSGAgidwhscYxurRUkmq4q1A\"\n}"}],"_postman_id":"50970183-392b-4dd3-9395-e5874c427c65"},{"name":"login request","id":"2d0eab22-c83b-4a24-8c9b-36a9a72c7e4d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"uma@gmail.com\",\r\n    \"password\": \"123\"\r\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:3000/api/auth/login","description":"<p>StartFragment_Authenticate user credentials to receive a session token._EndFragment</p>\n","urlObject":{"protocol":"http","port":"3000","path":["api","auth","login"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"d2bb2532-0f42-4c1a-91f4-9031cb2df7f2","name":"login request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"uma@gmail.com\",\r\n    \"password\": \"123\"\r\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:3000/api/auth/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"155"},{"key":"ETag","value":"W/\"9b-eOf8aA7q0/q+zUBZoeUGyY6Bgf8\""},{"key":"Date","value":"Thu, 27 Feb 2025 12:54:04 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOjEsImlhdCI6MTc0MDY2MDg0NCwiZXhwIjoxNzQwNjY0NDQ0fQ.4S5uQ98_jWNuLqVwiVej7P2P36F00dw2n2wixEGRTyg\"\n}"}],"_postman_id":"2d0eab22-c83b-4a24-8c9b-36a9a72c7e4d"},{"name":"get recipe request","id":"9465a3b9-d32c-4e38-a588-8e88df83db7c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"https://api.spoonacular.com/recipes/findByIngredients?ingredients=tomato&apiKey=4d0a224169d642f9ae249cf2f4d1de15","description":"<p>StartFragment_Find recipes based on provided ingredients using Spoonacular API._EndFragment</p>\n","urlObject":{"protocol":"https","path":["recipes","findByIngredients"],"host":["api","spoonacular","com"],"query":[{"key":"ingredients","value":"tomato"},{"key":"apiKey","value":"4d0a224169d642f9ae249cf2f4d1de15"}],"variable":[]}},"response":[{"id":"a77cb641-a3f5-452f-85d1-8d482aa1febb","name":"get recipe request","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.spoonacular.com/recipes/findByIngredients?ingredients=tomato&apiKey=4d0a224169d642f9ae249cf2f4d1de15","protocol":"https","host":["api","spoonacular","com"],"path":["recipes","findByIngredients"],"query":[{"key":"ingredients","value":"tomato"},{"key":"apiKey","value":"4d0a224169d642f9ae249cf2f4d1de15"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 27 Feb 2025 12:54:40 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Allow-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Authorization, UserId, Hash, Name, Password, Accept, User-Agent, Accept-Language, x-api-key, Content-Language, Content-Type, Cache-Control, Origin, X-Requested-With, X-Dev"},{"key":"Access-Control-Allow-Methods","value":"GET, HEAD, POST, OPTIONS, DELETE, PUT"},{"key":"Allow-Control-Allow-Methods","value":"GET, HEAD, POST, OPTIONS, DELETE, PUT"},{"key":"X-API-Quota-Request","value":"1.1"},{"key":"X-API-Quota-Used","value":"15.9"},{"key":"X-API-Quota-Left","value":"134.1"},{"key":"Content-Encoding","value":"gzip"},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"vary","value":"accept-encoding"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v4?s=N9vcc833XGGuByTJCSwUzhzdwU8igc3HLOj0uWd7jwyDt%2BUP4bE8%2FBEOdb2bwgGoUp29AmuPW65UVJ4HfLfC7CThgWSthvTcPzsyZYF68YF11OAhWp3tzQocOa2KFG2ulpab1FY%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"91885324fdfb602c-SIN"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"},{"key":"server-timing","value":"cfL4;desc=\"?proto=TCP&rtt=68926&min_rtt=48439&rtt_var=31701&sent=5&recv=7&lost=0&retrans=0&sent_bytes=2823&recv_bytes=1060&delivery_rate=83857&cwnd=252&unsent_bytes=0&cid=ceeada3103f1d650&ts=891&x=0\""}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 631757,\n        \"title\": \"Savory Slow Roasted Tomatoes with Filet of Anchovy\",\n        \"image\": \"https://img.spoonacular.com/recipes/631757-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 2,\n        \"missedIngredients\": [\n            {\n                \"id\": 1002044,\n                \"amount\": 1,\n                \"unit\": \"small handful\",\n                \"unitLong\": \"small handful\",\n                \"unitShort\": \"small handful\",\n                \"aisle\": \"Produce\",\n                \"name\": \"any herbs you like\",\n                \"original\": \"small handful of any fresh herbs you like, chopped - we use oregano but you can also use basil, thyme, etc.\",\n                \"originalName\": \"any fresh herbs you like, chopped - we use oregano but you can also use basil, thyme, etc\",\n                \"meta\": [\n                    \"fresh\",\n                    \"chopped\",\n                    \"canned\"\n                ],\n                \"extendedName\": \"canned fresh any herbs you like\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/lemon-basil.jpg\"\n            },\n            {\n                \"id\": 15001,\n                \"amount\": 8,\n                \"unit\": \"\",\n                \"unitLong\": \"\",\n                \"unitShort\": \"\",\n                \"aisle\": \"Seafood\",\n                \"name\": \"anchovy filets\",\n                \"original\": \"8 high quality anchovy filets, (we use anchovies from Sardegna packed in salt)\",\n                \"originalName\": \"high quality anchovy filets, (we use anchovies from Sardegna packed in salt)\",\n                \"meta\": [\n                    \"packed in salt)\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/anchovies.jpg\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 11529,\n                \"amount\": 4,\n                \"unit\": \"\",\n                \"unitLong\": \"\",\n                \"unitShort\": \"\",\n                \"aisle\": \"Produce\",\n                \"name\": \"round tomatoes\",\n                \"original\": \"4 round tomatoes (we grow & use grappolo for this dish)\",\n                \"originalName\": \"round tomatoes (we grow & use grappolo for this dish)\",\n                \"meta\": [\n                    \"for this dish\",\n                    \"(we grow & use grappolo )\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/tomato.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 10\n    },\n    {\n        \"id\": 638288,\n        \"title\": \"Chicken Roll-Ups With Feta Cheese and Arugula\",\n        \"image\": \"https://img.spoonacular.com/recipes/638288-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 2,\n        \"missedIngredients\": [\n            {\n                \"id\": 5062,\n                \"amount\": 1.5,\n                \"unit\": \"pounds\",\n                \"unitLong\": \"pounds\",\n                \"unitShort\": \"lb\",\n                \"aisle\": \"Meat\",\n                \"name\": \"chicken breast cutlets\",\n                \"original\": \"8 chicken breast cutlets, (about 1 ½ pounds)\",\n                \"originalName\": \"chicken breast cutlets, (about\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/chicken-breasts.png\"\n            },\n            {\n                \"id\": 10011959,\n                \"amount\": 1,\n                \"unit\": \"bunch\",\n                \"unitLong\": \"bunch\",\n                \"unitShort\": \"bunch\",\n                \"aisle\": \"Produce\",\n                \"name\": \"baby arugula\",\n                \"original\": \"1 bunch large baby arugula\",\n                \"originalName\": \"baby arugula\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/arugula-or-rocket-salad.jpg\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 11955,\n                \"amount\": 3,\n                \"unit\": \"ounces\",\n                \"unitLong\": \"ounces\",\n                \"unitShort\": \"oz\",\n                \"aisle\": \"Produce\",\n                \"name\": \"feta cheese\",\n                \"original\": \"3 ounces soft crumbled feta cheese with basil and sun-dried tomato, broken into small pie\",\n                \"originalName\": \"soft crumbled feta cheese with basil and sun-dried tomato, broken into small pie\",\n                \"meta\": [\n                    \"with basil and sun-dried tomato, broken into small pie\",\n                    \"crumbled\",\n                    \"soft\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/sundried-tomatoes.jpg\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 2\n    },\n    {\n        \"id\": 645555,\n        \"title\": \"Green Tomato Salad\",\n        \"image\": \"https://img.spoonacular.com/recipes/645555-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 2,\n        \"missedIngredients\": [\n            {\n                \"id\": 10211111,\n                \"amount\": 1,\n                \"unit\": \"teaspoon\",\n                \"unitLong\": \"teaspoon\",\n                \"unitShort\": \"tsp\",\n                \"aisle\": \"Ethnic Foods\",\n                \"name\": \"sumac powder\",\n                \"original\": \"1 teaspoon of sumac powder\",\n                \"originalName\": \"sumac powder\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/dried-sumac.jpg\"\n            },\n            {\n                \"id\": 99226,\n                \"amount\": 1,\n                \"unit\": \"handful\",\n                \"unitLong\": \"handful\",\n                \"unitShort\": \"handful\",\n                \"aisle\": \"Produce\",\n                \"name\": \"sage and mint leaves\",\n                \"original\": \"A handful of sage and mint leaves, finely chopped\",\n                \"originalName\": \"sage and mint leaves, finely chopped\",\n                \"meta\": [\n                    \"finely chopped\"\n                ],\n                \"extendedName\": \"fresh sage and mint leaves\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/fresh-sage.png\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 11527,\n                \"amount\": 1,\n                \"unit\": \"large\",\n                \"unitLong\": \"large\",\n                \"unitShort\": \"large\",\n                \"aisle\": \"Produce\",\n                \"name\": \"tomato\",\n                \"original\": \"1 large green tomato\",\n                \"originalName\": \"green tomato\",\n                \"meta\": [\n                    \"green\"\n                ],\n                \"extendedName\": \"green tomato\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/green-tomato.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 1\n    },\n    {\n        \"id\": 769775,\n        \"title\": \"Simple Spinach and Tomato Frittata\",\n        \"image\": \"https://img.spoonacular.com/recipes/769775-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 3,\n        \"missedIngredients\": [\n            {\n                \"id\": 99037,\n                \"amount\": 1,\n                \"unit\": \"small\",\n                \"unitLong\": \"small\",\n                \"unitShort\": \"small\",\n                \"aisle\": \"Pasta and Rice\",\n                \"name\": \"personal skillet\",\n                \"original\": \"small personal skillet\",\n                \"originalName\": \"personal skillet\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/no.jpg\"\n            },\n            {\n                \"id\": 1123,\n                \"amount\": 2,\n                \"unit\": \"\",\n                \"unitLong\": \"\",\n                \"unitShort\": \"\",\n                \"aisle\": \"Milk, Eggs, Other Dairy\",\n                \"name\": \"eggs\",\n                \"original\": \"2-3 lightly beaten eggs\",\n                \"originalName\": \"lightly beaten eggs\",\n                \"meta\": [\n                    \"lightly beaten\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/egg.png\"\n            },\n            {\n                \"id\": 10011457,\n                \"amount\": 1,\n                \"unit\": \"serving\",\n                \"unitLong\": \"serving\",\n                \"unitShort\": \"serving\",\n                \"aisle\": \"Produce\",\n                \"name\": \"spinach leaves\",\n                \"original\": \"spinach leaves\",\n                \"originalName\": \"spinach leaves\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/spinach.jpg\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 10311529,\n                \"amount\": 1,\n                \"unit\": \"serving\",\n                \"unitLong\": \"serving\",\n                \"unitShort\": \"serving\",\n                \"aisle\": \"Produce\",\n                \"name\": \"cherry tomatoes\",\n                \"original\": \"cherry tomatoes, halved\",\n                \"originalName\": \"cherry tomatoes, halved\",\n                \"meta\": [\n                    \"halved\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/cherry-tomatoes.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 7\n    },\n    {\n        \"id\": 642303,\n        \"title\": \"Eggplant pizzette\",\n        \"image\": \"https://img.spoonacular.com/recipes/642303-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 3,\n        \"missedIngredients\": [\n            {\n                \"id\": 11209,\n                \"amount\": 1,\n                \"unit\": \"large\",\n                \"unitLong\": \"large\",\n                \"unitShort\": \"large\",\n                \"aisle\": \"Produce\",\n                \"name\": \"round eggplant\",\n                \"original\": \"1 large round eggplant, washed, sliced into rounds\",\n                \"originalName\": \"round eggplant, washed, sliced into rounds\",\n                \"meta\": [\n                    \"washed\",\n                    \"sliced into rounds\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/eggplant.png\"\n            },\n            {\n                \"id\": 1040,\n                \"amount\": 100,\n                \"unit\": \"g\",\n                \"unitLong\": \"grams\",\n                \"unitShort\": \"g\",\n                \"aisle\": \"Cheese\",\n                \"name\": \"swiss cheese\",\n                \"original\": \"100g Swiss cheese, coarsely grated\",\n                \"originalName\": \"Swiss cheese, coarsely grated\",\n                \"meta\": [\n                    \"grated\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/Swiss-cheese.jpg\"\n            },\n            {\n                \"id\": 2044,\n                \"amount\": 3,\n                \"unit\": \"servings\",\n                \"unitLong\": \"servings\",\n                \"unitShort\": \"servings\",\n                \"aisle\": \"Produce\",\n                \"name\": \"basil and oregano leaves\",\n                \"original\": \"Basil and oregano leaves, fresh or dried\",\n                \"originalName\": \"Basil and oregano leaves, fresh or dried\",\n                \"meta\": [\n                    \"fresh\"\n                ],\n                \"extendedName\": \"fresh basil and oregano leaves\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/fresh-basil.jpg\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 11529,\n                \"amount\": 10,\n                \"unit\": \"Tbs\",\n                \"unitLong\": \"Tbs\",\n                \"unitShort\": \"Tbs\",\n                \"aisle\": \"Produce\",\n                \"name\": \"tomatoes\",\n                \"original\": \"10 Tbs chopped tomatoes\",\n                \"originalName\": \"chopped tomatoes\",\n                \"meta\": [\n                    \"chopped\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/tomato.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 5\n    },\n    {\n        \"id\": 663638,\n        \"title\": \"Tomato Stack Salad\",\n        \"image\": \"https://img.spoonacular.com/recipes/663638-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 3,\n        \"missedIngredients\": [\n            {\n                \"id\": 2069,\n                \"amount\": 4,\n                \"unit\": \"servings\",\n                \"unitLong\": \"servings\",\n                \"unitShort\": \"servings\",\n                \"aisle\": \"Oil, Vinegar, Salad Dressing\",\n                \"name\": \"balsamic vinegar\",\n                \"original\": \"Good balsamic vinegar for drizzling\",\n                \"originalName\": \"Good balsamic vinegar for drizzling\",\n                \"meta\": [\n                    \"good\",\n                    \"for drizzling\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/balsamic-vinegar.jpg\"\n            },\n            {\n                \"id\": 10111297,\n                \"amount\": 2,\n                \"unit\": \"tablespoons\",\n                \"unitLong\": \"tablespoons\",\n                \"unitShort\": \"Tbsp\",\n                \"aisle\": \"Produce\",\n                \"name\": \"herbs\",\n                \"original\": \"2 tablespoons fresh chopped herbs (thyme, chive, rosemary...)\",\n                \"originalName\": \"fresh chopped herbs (thyme, chive, rosemary...)\",\n                \"meta\": [\n                    \"fresh\",\n                    \"chopped\",\n                    \"(thyme, chive, rosemary...)\"\n                ],\n                \"extendedName\": \"fresh herbs\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/mixed-fresh-herbs.jpg\"\n            },\n            {\n                \"id\": 1159,\n                \"amount\": 10,\n                \"unit\": \"ounces\",\n                \"unitLong\": \"ounces\",\n                \"unitShort\": \"oz\",\n                \"aisle\": \"Cheese\",\n                \"name\": \"goat cheese\",\n                \"original\": \"10 ounces soft goat cheese, room temperature\",\n                \"originalName\": \"soft goat cheese, room temperature\",\n                \"meta\": [\n                    \"soft\",\n                    \"room temperature\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/goat-cheese.jpg\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 11529,\n                \"amount\": 4,\n                \"unit\": \"medium\",\n                \"unitLong\": \"mediums\",\n                \"unitShort\": \"medium\",\n                \"aisle\": \"Produce\",\n                \"name\": \"tomatoes\",\n                \"original\": \"4 ripe medium tomatoes\",\n                \"originalName\": \"ripe medium tomatoes\",\n                \"meta\": [\n                    \"ripe\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/tomato.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 2\n    },\n    {\n        \"id\": 715870,\n        \"title\": \"Salsa\",\n        \"image\": \"https://img.spoonacular.com/recipes/715870-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 3,\n        \"missedIngredients\": [\n            {\n                \"id\": 15012,\n                \"amount\": 1,\n                \"unit\": \"serving\",\n                \"unitLong\": \"serving\",\n                \"unitShort\": \"serving\",\n                \"aisle\": \"Gourmet\",\n                \"name\": \"texas cowboy caviar\",\n                \"original\": \"Texas Cowboy Caviar\",\n                \"originalName\": \"Texas Cowboy Caviar\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/caviar.png\"\n            },\n            {\n                \"id\": 6164,\n                \"amount\": 1,\n                \"unit\": \"serving\",\n                \"unitLong\": \"serving\",\n                \"unitShort\": \"serving\",\n                \"aisle\": \"Ethnic Foods\",\n                \"name\": \"cranberry avocado salsa\",\n                \"original\": \"Cranberry Avocado Salsa\",\n                \"originalName\": \"Cranberry Avocado Salsa\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/salsa.png\"\n            },\n            {\n                \"id\": 27028,\n                \"amount\": 1,\n                \"unit\": \"serving\",\n                \"unitLong\": \"serving\",\n                \"unitShort\": \"serving\",\n                \"aisle\": \"Ethnic Foods\",\n                \"name\": \"roasted tomatillo salsa\",\n                \"original\": \"Fresh Roasted Tomatillo Salsa\",\n                \"originalName\": \"Fresh Roasted Tomatillo Salsa\",\n                \"meta\": [\n                    \"fresh\"\n                ],\n                \"extendedName\": \"fresh roasted tomatillo salsa\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/salsa-verde.png\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 10311529,\n                \"amount\": 1,\n                \"unit\": \"serving\",\n                \"unitLong\": \"serving\",\n                \"unitShort\": \"serving\",\n                \"aisle\": \"Produce\",\n                \"name\": \"cherry tomato avocado salsa\",\n                \"original\": \"Cherry Tomato Avocado Salsa\",\n                \"originalName\": \"Cherry Tomato Avocado Salsa\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/cherry-tomatoes.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 1\n    },\n    {\n        \"id\": 648368,\n        \"title\": \"Jalapeno Queso With Goat Cheese\",\n        \"image\": \"https://img.spoonacular.com/recipes/648368-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 3,\n        \"missedIngredients\": [\n            {\n                \"id\": 1159,\n                \"amount\": 5.3,\n                \"unit\": \"oz\",\n                \"unitLong\": \"ounces\",\n                \"unitShort\": \"oz\",\n                \"aisle\": \"Cheese\",\n                \"name\": \"goat cheese\",\n                \"original\": \"1 package (5.3 oz) Fresh Goat Cheese, such as Chavrie\",\n                \"originalName\": \"package Fresh Goat Cheese, such as Chavrie\",\n                \"meta\": [\n                    \"fresh\",\n                    \" such as chavrie\"\n                ],\n                \"extendedName\": \"fresh goat cheese\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/goat-cheese.jpg\"\n            },\n            {\n                \"id\": 11979,\n                \"amount\": 1,\n                \"unit\": \"\",\n                \"unitLong\": \"\",\n                \"unitShort\": \"\",\n                \"aisle\": \"Ethnic Foods\",\n                \"name\": \"ea. jalapeno pepper\",\n                \"original\": \"1 ea. jalapeno pepper diced\",\n                \"originalName\": \"ea. jalapeno pepper diced\",\n                \"meta\": [\n                    \"diced\"\n                ],\n                \"extendedName\": \"diced ea. jalapeno pepper\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/jalapeno-pepper.png\"\n            },\n            {\n                \"id\": 6168,\n                \"amount\": 2,\n                \"unit\": \"teaspoons\",\n                \"unitLong\": \"teaspoons\",\n                \"unitShort\": \"tsp\",\n                \"aisle\": \"Condiments\",\n                \"name\": \"hot sauce\",\n                \"original\": \"2 teaspoons hot sauce\",\n                \"originalName\": \"hot sauce\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/hot-sauce-or-tabasco.png\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 10011693,\n                \"amount\": 8,\n                \"unit\": \"oz\",\n                \"unitLong\": \"ounces\",\n                \"unitShort\": \"oz\",\n                \"aisle\": \"Canned and Jarred\",\n                \"name\": \"canned tomatoes\",\n                \"original\": \"8 oz. can diced tomatoes, drained\",\n                \"originalName\": \"diced tomatoes, drained\",\n                \"meta\": [\n                    \"diced\",\n                    \"drained\",\n                    \"canned\"\n                ],\n                \"extendedName\": \"diced canned tomatoes\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/tomatoes-canned.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 1\n    },\n    {\n        \"id\": 644953,\n        \"title\": \"Goat Cheese Pesto Pizza\",\n        \"image\": \"https://img.spoonacular.com/recipes/644953-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 3,\n        \"missedIngredients\": [\n            {\n                \"id\": 93770,\n                \"amount\": 1,\n                \"unit\": \"\",\n                \"unitLong\": \"\",\n                \"unitShort\": \"\",\n                \"aisle\": \"Pasta and Rice\",\n                \"name\": \"pizza shell\",\n                \"original\": \"1 prepared pizza shell, 14 inches\",\n                \"originalName\": \"prepared pizza shell, 14 inches\",\n                \"meta\": [\n                    \"prepared\"\n                ],\n                \"extendedName\": \"cooked pizza shell\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/pizza-dough.jpg\"\n            },\n            {\n                \"id\": 93698,\n                \"amount\": 1,\n                \"unit\": \"cup\",\n                \"unitLong\": \"cup\",\n                \"unitShort\": \"cup\",\n                \"aisle\": \"Pasta and Rice\",\n                \"name\": \"pesto\",\n                \"original\": \"1 cup pesto\",\n                \"originalName\": \"pesto\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/basil-pesto.png\"\n            },\n            {\n                \"id\": 1159,\n                \"amount\": 1,\n                \"unit\": \"package\",\n                \"unitLong\": \"package\",\n                \"unitShort\": \"pkg\",\n                \"aisle\": \"Cheese\",\n                \"name\": \"goat cheese\",\n                \"original\": \"1 package of crumbled goat cheese, Alouette Provencal variety\",\n                \"originalName\": \"crumbled goat cheese, Alouette Provencal variety\",\n                \"meta\": [\n                    \"crumbled\"\n                ],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/goat-cheese.jpg\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 11529,\n                \"amount\": 1,\n                \"unit\": \"cup\",\n                \"unitLong\": \"cup\",\n                \"unitShort\": \"cup\",\n                \"aisle\": \"Produce\",\n                \"name\": \"tomatoes\",\n                \"original\": \"1 cup diced Tomatoes\",\n                \"originalName\": \"diced Tomatoes\",\n                \"meta\": [\n                    \"diced\"\n                ],\n                \"extendedName\": \"diced tomatoes\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/tomato.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 1\n    },\n    {\n        \"id\": 1674265,\n        \"title\": \"Easy Tomato Soup\",\n        \"image\": \"https://img.spoonacular.com/recipes/1674265-312x231.jpg\",\n        \"imageType\": \"jpg\",\n        \"usedIngredientCount\": 1,\n        \"missedIngredientCount\": 3,\n        \"missedIngredients\": [\n            {\n                \"id\": 1001,\n                \"amount\": 4,\n                \"unit\": \"tablespoons\",\n                \"unitLong\": \"tablespoons\",\n                \"unitShort\": \"Tbsp\",\n                \"aisle\": \"Milk, Eggs, Other Dairy\",\n                \"name\": \"butter\",\n                \"original\": \"4 tablespoons butter\",\n                \"originalName\": \"butter\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/butter-sliced.jpg\"\n            },\n            {\n                \"id\": 11282,\n                \"amount\": 1,\n                \"unit\": \"\",\n                \"unitLong\": \"\",\n                \"unitShort\": \"\",\n                \"aisle\": \"Produce\",\n                \"name\": \"onion\",\n                \"original\": \"1 onion\",\n                \"originalName\": \"onion\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/brown-onion.png\"\n            },\n            {\n                \"id\": 6615,\n                \"amount\": 1.5,\n                \"unit\": \"cups\",\n                \"unitLong\": \"cups\",\n                \"unitShort\": \"cup\",\n                \"aisle\": \"Canned and Jarred\",\n                \"name\": \"vegetable broth\",\n                \"original\": \"1.5 cups vegetable broth\",\n                \"originalName\": \"vegetable broth\",\n                \"meta\": [],\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/chicken-broth.png\"\n            }\n        ],\n        \"usedIngredients\": [\n            {\n                \"id\": 10011531,\n                \"amount\": 28,\n                \"unit\": \"ounces\",\n                \"unitLong\": \"ounces\",\n                \"unitShort\": \"oz\",\n                \"aisle\": \"Canned and Jarred\",\n                \"name\": \"tomatoes\",\n                \"original\": \"28 ounces canned whole tomatoes\",\n                \"originalName\": \"canned whole tomatoes\",\n                \"meta\": [\n                    \"whole\",\n                    \"canned\"\n                ],\n                \"extendedName\": \"canned whole tomatoes\",\n                \"image\": \"https://img.spoonacular.com/ingredients_100x100/tomatoes-canned.png\"\n            }\n        ],\n        \"unusedIngredients\": [],\n        \"likes\": 0\n    }\n]"}],"_postman_id":"9465a3b9-d32c-4e38-a588-8e88df83db7c"},{"name":"Get all users","id":"0d79cd07-761a-496e-a3ac-00600f36e3e8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"http://localhost:3000/api/auth/users","description":"<p>StartFragment_Retrieve list of all registered users (admin access required)._EndFragment</p>\n","urlObject":{"protocol":"http","port":"3000","path":["api","auth","users"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"086c5d09-3172-430e-b928-701070bd8cd1","name":"Get all users","originalRequest":{"method":"GET","header":[],"url":"http://localhost:3000/api/auth/users"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1369"},{"key":"ETag","value":"W/\"559-QF3tyEL0+e1SbbfEOPVf4aET4X8\""},{"key":"Date","value":"Thu, 27 Feb 2025 12:55:19 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 1,\n        \"name\": \"Nethmi Umaya\",\n        \"email\": \"uma@gmail.com\",\n        \"password\": \"$2b$10$J7tzS036pPIRArHVv1jvCegr72LNH32TNEWxEAIadSyxbUnz7Ifdq\",\n        \"createdAt\": \"2025-02-26T18:23:14.890Z\"\n    },\n    {\n        \"id\": 2,\n        \"name\": \"Ama Karunarathna\",\n        \"email\": \"ama@gmail.com\",\n        \"password\": \"$2b$10$xcjX05H23cyZj8wyJXquS.1jKxUA3oaLB/tcl7bIHflRJ0rf3Cm.W\",\n        \"createdAt\": \"2025-02-26T18:32:35.157Z\"\n    },\n    {\n        \"id\": 3,\n        \"name\": \"Nirosha Chandi\",\n        \"email\": \"niro@gmail.com\",\n        \"password\": \"$2b$10$m2616PvlG9UBaaAR/uwfHOnYx/62/Y/sv8pQQBxXjjwtuZb6.DyKi\",\n        \"createdAt\": \"2025-02-27T01:14:10.039Z\"\n    },\n    {\n        \"id\": 4,\n        \"name\": \"Hiruna Kethsara\",\n        \"email\": \"hiru@gmail.com\",\n        \"password\": \"$2b$10$SaPvfHxoo/1Z7aHpWAZCFO0WD409IpctIchqyjDmEUzeJfrG5hIBS\",\n        \"createdAt\": \"2025-02-27T01:27:01.689Z\"\n    },\n    {\n        \"id\": 5,\n        \"name\": \"Kamal Liyanage\",\n        \"email\": \"kama@gmail.com\",\n        \"password\": \"$2b$10$8q7Z9aNP/B2C2bT/x/kK7eAh.spcFVO/x5gv3hcI3Ik/sZ1bPne6W\",\n        \"createdAt\": \"2025-02-27T01:28:22.408Z\"\n    },\n    {\n        \"id\": 6,\n        \"name\": \"Ahas Saumya\",\n        \"email\": \"ahas@gmail.com\",\n        \"password\": \"$2b$10$lJZ48jI2aZbK6TWF0E/Vz.OJqfZ7oAKyFLAV.Pj251M25Cuzy39/W\",\n        \"createdAt\": \"2025-02-27T01:30:34.014Z\"\n    },\n    {\n        \"id\": 7,\n        \"name\": \"Amasha Dewapriya\",\n        \"email\": \"amasha@gmail.com\",\n        \"password\": \"$2b$10$APInfobt9.knwmLkDe.oIesyaLLJFGyjVYqK0gHvhft1lHe8/danC\",\n        \"createdAt\": \"2025-02-27T02:00:42.328Z\"\n    },\n    {\n        \"id\": 8,\n        \"name\": \"Gamunu Soisa\",\n        \"email\": \"gamunu@gmail.com\",\n        \"password\": \"$2b$10$tY4y.e5qsMJTKN/AXnSw4OXHDE4HLJ.4wgUZJHLB4oWq1hjMrd9te\",\n        \"createdAt\": \"2025-02-27T12:51:50.077Z\"\n    }\n]"}],"_postman_id":"0d79cd07-761a-496e-a3ac-00600f36e3e8"},{"name":"Search History","id":"5e85972b-c16b-4476-836e-0afff908a16e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"http://localhost:3000/api/recipes/history","description":"<p>StartFragment_Access the authenticated user's previous recipe search queries._EndFragment</p>\n","urlObject":{"protocol":"http","port":"3000","path":["api","recipes","history"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"1a87bd24-a831-40de-b135-b439e548ba9d","name":"Search History","originalRequest":{"method":"GET","header":[],"url":"http://localhost:3000/api/recipes/history"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1138"},{"key":"ETag","value":"W/\"472-T1ZksDsEBJiY8kdH9JGzIXQMCRs\""},{"key":"Date","value":"Thu, 27 Feb 2025 12:55:43 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 1,\n        \"query\": \"chicken\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T18:29:28.305Z\"\n    },\n    {\n        \"id\": 2,\n        \"query\": \"chicken\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T18:41:12.066Z\"\n    },\n    {\n        \"id\": 3,\n        \"query\": \"salad\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T18:41:32.561Z\"\n    },\n    {\n        \"id\": 4,\n        \"query\": \"pasta\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T18:42:17.512Z\"\n    },\n    {\n        \"id\": 5,\n        \"query\": \"pasta\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T19:07:40.878Z\"\n    },\n    {\n        \"id\": 6,\n        \"query\": \"pasta\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T19:09:08.868Z\"\n    },\n    {\n        \"id\": 7,\n        \"query\": \"cake\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T19:09:32.768Z\"\n    },\n    {\n        \"id\": 8,\n        \"query\": \"chicken\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T19:09:40.220Z\"\n    },\n    {\n        \"id\": 9,\n        \"query\": \"chicken\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T19:11:33.817Z\"\n    },\n    {\n        \"id\": 10,\n        \"query\": \"pasta\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T19:12:55.576Z\"\n    },\n    {\n        \"id\": 11,\n        \"query\": \"pasta\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-26T19:16:17.020Z\"\n    },\n    {\n        \"id\": 12,\n        \"query\": \"rice\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-27T01:15:41.082Z\"\n    },\n    {\n        \"id\": 13,\n        \"query\": \"pasta\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-27T01:16:07.144Z\"\n    },\n    {\n        \"id\": 14,\n        \"query\": \"mango\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-27T01:17:30.770Z\"\n    },\n    {\n        \"id\": 15,\n        \"query\": \"pasta\",\n        \"userId\": 1,\n        \"createdAt\": \"2025-02-27T01:19:01.654Z\"\n    }\n]"}],"_postman_id":"5e85972b-c16b-4476-836e-0afff908a16e"}]}