{"info":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","description":"<html><head></head><body><p>An API for logging budget transactions across multiple accounts. Each budget groups transactions by account, category, and subcategory, allowing users to track all of their income and expenses in a single place.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"14663488","collectionId":"600e5099-ffb9-4927-9e73-98d5d351d1ac","publishedId":"TzJuAdH2","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2021-04-20T15:14:59.000Z"},"item":[{"name":"Authorization","item":[{"name":"signup","event":[{"listen":"test","script":{"id":"dce95567-ef8b-40de-a5c2-bcb10fb0d2d8","exec":[""],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"0db84de9-187d-4b97-aa65-a955285ee16e","exec":[""],"type":"text/javascript"}}],"id":"88bc04a8-d4d8-4a6d-ae25-325499d50730","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"example@email.com\",\n    \"password\": \"thisISap@ssw0rd\",\n    \"confirmPassword\": \"thisISap@ssw0rd\",\n    \"firstName\": \"Jane\",\n    \"lastName\": \"Doe\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/auth/signup","description":"<p>Create new user account. Password must be 8-20 characters and contain at least one of each of the following:</p>\n<ul>\n<li>lowercase letter</li>\n<li>uppercase letter</li>\n<li>number</li>\n<li>one of the following special characters: @ $ ! % * ? &amp;</li>\n</ul>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"dbd8bf06-1488-410f-ab29-aa5d8235f22f","id":"dbd8bf06-1488-410f-ab29-aa5d8235f22f","name":"Authorization","type":"folder"}},"urlObject":{"path":["auth","signup"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"8f8c8e58-5a7c-42b1-899e-93bb282747ed","name":"signup","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"example@email.com\",\n    \"password\": \"thisISap@ssw0rd\",\n    \"confirmPassword\": \"thisISap@ssw0rd\",\n    \"firstName\": \"Jane\",\n    \"lastName\": \"Doe\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/auth/signup"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"235"},{"key":"ETag","value":"W/\"eb-EN5V1SUbp/MOuyx9QPXRhrKiRtk\""},{"key":"Date","value":"Sun, 18 Apr 2021 15:36:34 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Sign up successful\",\n    \"token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIyNTc3ZGYyMS04MWM2LTQ5Y2ItOTJjZi04NzA2Y2RlYmRjZWIiLCJpYXQiOjE2MTg3NjAxOTQsImV4cCI6MTYxODc2Mzc5NH0.QvvPxqwOC6mDvM67lUfLk6i4QsWK35Yr9zN_Wh0SOC8\"\n}"}],"_postman_id":"88bc04a8-d4d8-4a6d-ae25-325499d50730"},{"name":"login","event":[{"listen":"test","script":{"id":"2ec07fb6-21eb-4e13-940a-4201a58fe181","exec":[""],"type":"text/javascript"}}],"id":"27269bd4-3d3d-48f7-8c13-75f7a012dfec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"example@email.com\",\n    \"password\": \"thisISap@ssw0rd\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/auth/login","description":"<p>Retrieve bearer token for current session. Tokens expire after 1 hour.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"dbd8bf06-1488-410f-ab29-aa5d8235f22f","id":"dbd8bf06-1488-410f-ab29-aa5d8235f22f","name":"Authorization","type":"folder"}},"urlObject":{"path":["auth","login"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"3299d5ac-e857-4d3c-8ebb-70ff9ebe74b6","name":"login","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"example@email.com\",\n    \"password\": \"thisISap@ssw0rd\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/auth/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"233"},{"key":"ETag","value":"W/\"e9-GyzBMztgOmX8Layxbnjmdb3H4+s\""},{"key":"Date","value":"Sun, 18 Apr 2021 15:37:25 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Login successful\",\n    \"token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIyNTc3ZGYyMS04MWM2LTQ5Y2ItOTJjZi04NzA2Y2RlYmRjZWIiLCJpYXQiOjE2MTg3ODIzNTgsImV4cCI6MTYxODc4NTk1OH0.J5dfWVgEWVK-5OiLDNmfDO_t4zOJup5yGdq3iZSe6Gg\"\n}"}],"_postman_id":"27269bd4-3d3d-48f7-8c13-75f7a012dfec"}],"id":"dbd8bf06-1488-410f-ab29-aa5d8235f22f","description":"<h3 id=\"user-data\">User data:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Type</th>\n<th>Required?</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>firstName</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>lastName</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>email</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>password</td>\n<td>string</td>\n<td>R</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"e85d60c4-e5e8-4f3f-9506-4e068108d9ce","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"0a460778-c9f9-4ace-996c-d9f137f44b58","type":"text/javascript","exec":[""]}}],"_postman_id":"dbd8bf06-1488-410f-ab29-aa5d8235f22f"},{"name":"Budgets","item":[{"name":"User budgets","event":[{"listen":"test","script":{"id":"ca6757d9-8a8b-46a4-8ff1-af6de99a7e5f","exec":[""],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"6a158db9-8689-432f-a84f-ab776245eaec","exec":[""],"type":"text/javascript"}}],"id":"b907cdb4-9cac-44e6-b96e-170560afb4a4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"localhost:3000/budget","description":"<p>Returns title, description, and id of current user's budgets.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["budget"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"81d739d8-bb5e-4b20-a271-eae42b746ff7","name":"User budgets","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/budget"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"228"},{"key":"ETag","value":"W/\"e4-lzvEFkOFK/eNunRdCeNSZe6qQP0\""},{"key":"Date","value":"Sun, 18 Apr 2021 15:46:10 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 34,\n        \"title\": \"My New Business\",\n        \"description\": \"Third time's a charm\"\n    },\n    {\n        \"id\": 35,\n        \"title\": \"Home budget\",\n        \"description\": null\n    },\n    {\n        \"id\": 36,\n        \"title\": \"The kids' college funds\",\n        \"description\": \"Money that will ONLY be spent on education\"\n    }\n]"}],"_postman_id":"b907cdb4-9cac-44e6-b96e-170560afb4a4"},{"name":"Get single budget","event":[{"listen":"prerequest","script":{"id":"ca2a33b1-0c78-454f-8477-23e231f89deb","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"a88072b0-a513-46d0-851d-6e532d552e0a","exec":[""],"type":"text/javascript"}}],"id":"6143995f-a760-4804-b225-bc4b51396459","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"localhost:3000/budget/:id","description":"<p>Returns complete title, description, account, category, and transaction data for a given budget.</p>\n<p>Returned budget data is structured as follows: </p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"id\": \"{{budgetId}}\",\n    \"title\": \"{{budgetTitle}}\",\n    \"description\": \"{{budgetDescription}}\",\n    \"accounts\": {\n        \"{{accountId}}\": {\n            \"_accountData\": \"...\"\n        }\n    },\n    \"transactions\": [\n        {\n            \"_transactionData\": \"...\"\n        }\n    ],\n    \"categories\": {\n        \"{{categoryId}}\": {\n            \"_categoryData\": \"...\",\n            \"subcategories\": {\n                \"{{subcategoryId}}\": \"{{subcategoryDescription}}\"\n            }\n        }\n    }\n}\n</code></pre>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["budget",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Budget id</p>\n","type":"text/plain"},"type":"any","value":"34","key":"id"}]}},"response":[{"id":"44e45fe7-4338-4780-b604-9ca5bddd2da3","name":"Get single budget","originalRequest":{"method":"GET","header":[],"url":{"raw":"localhost:3000/budget/:id","host":["localhost:3000"],"path":["budget",":id"],"variable":[{"key":"id","value":"34","description":"Budget id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1568"},{"key":"ETag","value":"W/\"620-XMUcG0ODKH7ojXWL5K0PcmMLsV4\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:13:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 34,\n    \"title\": \"My New Business\",\n    \"description\": \"Third time's a charm\",\n    \"accounts\": {\n        \"40\": {\n            \"name\": \"Checking Account\",\n            \"description\": \"Chase Bank\",\n            \"startDate\": \"2018-01-20\",\n            \"startBalance\": 4000,\n            \"currentBalance\": 2000\n        },\n        \"41\": {\n            \"name\": \"Savings Account\",\n            \"description\": \"Chase Bank\",\n            \"startDate\": \"2018-01-20\",\n            \"startBalance\": 20000,\n            \"currentBalance\": 15000\n        },\n        \"42\": {\n            \"name\": \"Credit Card\",\n            \"description\": \"American Express\",\n            \"startDate\": \"2018-02-04\",\n            \"startBalance\": 0,\n            \"currentBalance\": 0\n        }\n    },\n    \"transactions\": [\n        {\n            \"id\": 41,\n            \"amount\": -5000,\n            \"description\": \"February Rent\",\n            \"date\": \"2020-02-01\",\n            \"accountId\": 41,\n            \"subcategoryId\": 46\n        },\n        {\n            \"id\": 42,\n            \"amount\": -1500,\n            \"description\": \"Initial Website Build\",\n            \"date\": \"2018-01-29\",\n            \"accountId\": 40,\n            \"subcategoryId\": 47\n        },\n        {\n            \"id\": 44,\n            \"amount\": 3000,\n            \"description\": \"Weekly sales\",\n            \"date\": \"2018-01-28\",\n            \"accountId\": 40,\n            \"subcategoryId\": 40\n        },\n        {\n            \"id\": 43,\n            \"amount\": -3500,\n            \"description\": null,\n            \"date\": \"2020-01-26\",\n            \"accountId\": 40,\n            \"subcategoryId\": 41\n        }\n    ],\n    \"categories\": {\n        \"40\": {\n            \"description\": \"Sales\",\n            \"isIncome\": true,\n            \"subcategories\": {\n                \"40\": \"Goods\",\n                \"45\": \"Services\"\n            }\n        },\n        \"41\": {\n            \"description\": \"Investments\",\n            \"isIncome\": true,\n            \"subcategories\": {\n                \"50\": \"Individual Investment\",\n                \"51\": \"Institutional Investment\"\n            }\n        },\n        \"42\": {\n            \"description\": \"Product\",\n            \"isIncome\": false,\n            \"subcategories\": {\n                \"43\": \"Raw Materials\",\n                \"44\": \"Packaging\"\n            }\n        },\n        \"43\": {\n            \"description\": \"Personnel\",\n            \"isIncome\": false,\n            \"subcategories\": {\n                \"41\": \"Salaries\",\n                \"42\": \"Bonuses\"\n            }\n        },\n        \"44\": {\n            \"description\": \"Property\",\n            \"isIncome\": false,\n            \"subcategories\": {\n                \"46\": \"Rent\"\n            }\n        },\n        \"45\": {\n            \"description\": \"Marketing\",\n            \"isIncome\": false,\n            \"subcategories\": {\n                \"47\": \"Website\",\n                \"48\": \"Online advertising\",\n                \"49\": \"Television advertising\"\n            }\n        }\n    }\n}"}],"_postman_id":"6143995f-a760-4804-b225-bc4b51396459"},{"name":"Create budget","event":[{"listen":"prerequest","script":{"id":"754e887b-e9c7-4cb1-9c41-04e1e3a3cb97","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"98fb086b-b937-44fc-a742-655c50536725","exec":[""],"type":"text/javascript"}}],"id":"2b71cbdd-87a0-42dc-8f0c-392480ae2098","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"title\": \"My New Business\",\n    \"description\": \"Third time's a charm\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/budget","description":"<p>Create new budget. Returns new budget id.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["budget"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"c9dbbafa-eab7-43b3-b112-b67874be8c48","name":"Create budget","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"title\": \"My New Business\",\n    \"description\": \"Third time's a charm\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/budget"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"55"},{"key":"ETag","value":"W/\"37-d4w0+Lp6zq67TZhvDI/wgV9VkEE\""},{"key":"Date","value":"Sun, 18 Apr 2021 15:42:48 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"budgetId\": 34,\n    \"message\": \"Budget created successfully\"\n}"}],"_postman_id":"2b71cbdd-87a0-42dc-8f0c-392480ae2098"},{"name":"Patch budget details","event":[{"listen":"test","script":{"id":"d9930170-8708-4b78-941a-7001176107c4","exec":[""],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"4b82a26f-d4b2-43f7-a984-18f60e45659e","exec":[""],"type":"text/javascript"}}],"id":"4525e4d5-baf1-4563-87c6-e7128ea52809","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":" {\n    \"title\": \"Home budget\",\n    \"description\": \"The Doe household\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/budget/:id","description":"<p>Edit budget title and description.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["budget",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Budget id</p>\n","type":"text/plain"},"type":"any","value":"35","key":"id"}]}},"response":[{"id":"dad394ca-e614-40f4-9dbd-6ffc36ed1373","name":"Patch budget details","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":" {\n    \"title\": \"Home budget\",\n    \"description\": \"The Doe household\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"localhost:3000/budget/:id","host":["localhost:3000"],"path":["budget",":id"],"variable":[{"key":"id","value":"35","description":"Budget id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"55"},{"key":"ETag","value":"W/\"37-HwLk6bWcgpcxVY4BbLo9+PUiZjA\""},{"key":"Date","value":"Mon, 19 Apr 2021 18:00:23 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"budgetId\": 35,\n    \"message\": \"Budget updated successfully\"\n}"}],"_postman_id":"4525e4d5-baf1-4563-87c6-e7128ea52809"},{"name":"Delete budget","event":[{"listen":"prerequest","script":{"id":"8beb4487-a8d5-4419-93b6-0ae22eb3d8c6","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"10aea9b3-8e3f-42e5-81ba-8b30ac608149","exec":[""],"type":"text/javascript"}}],"id":"5ea0fae6-dd4d-40ba-9588-ed74e2c80ac0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"localhost:3000/budget/:id","description":"<p>Delete a budget, including its accounts, categories, subcategories, and transactions.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["budget",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Budget id</p>\n","type":"text/plain"},"type":"any","value":"35","key":"id"}]}},"response":[{"id":"860c0049-0a56-4a18-8f33-11ed593f60b0","name":"Delete budget","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"localhost:3000/budget/:id","host":["localhost:3000"],"path":["budget",":id"],"variable":[{"key":"id","value":"35","description":"Budget id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"41"},{"key":"ETag","value":"W/\"29-MxLJVUwPoqPBWRj8SG8ewcSzaYY\""},{"key":"Date","value":"Mon, 19 Apr 2021 18:00:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Budget deleted successfully\"\n}"}],"_postman_id":"5ea0fae6-dd4d-40ba-9588-ed74e2c80ac0"}],"id":"c44402d1-00b3-4b30-94f4-09019caaded5","description":"<h3 id=\"budget-data\">Budget data:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Type</th>\n<th>Required?</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n<tr>\n<td>title</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"c44402d1-00b3-4b30-94f4-09019caaded5","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}}},{"name":"Accounts","item":[{"name":"Create account","event":[{"listen":"prerequest","script":{"id":"17edf36d-d181-4098-90cf-85fe5110bafe","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"7324da12-e165-41fe-995d-8b02008d6e31","exec":[""],"type":"text/javascript"}}],"id":"2e697334-8ac7-4746-8297-81204c7af93c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{   \n    \"name\": \"Checking Account\",\n    \"description\": \"Chase Bank\",\n    \"startBalance\": 4000,\n    \"startDate\": \"2018-01-20\",\n    \"budgetId\": 34\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/account","description":"<p>Add an account to a budget. Returns account id.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["account"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"21410fc2-7f51-46ee-a8e2-4c7353934eb8","name":"Create account","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{   \n    \"name\": \"Checking Account\",\n    \"description\": \"Chase Bank\",\n    \"startBalance\": 4000,\n    \"startDate\": \"2018-01-20\",\n    \"budgetId\": 34\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/account"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"57"},{"key":"ETag","value":"W/\"39-bIjZLZYTHrR+fOlhC4igoUdWG6Y\""},{"key":"Date","value":"Mon, 19 Apr 2021 15:20:46 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Account created successfully\",\n    \"accountId\": 40\n}"}],"_postman_id":"2e697334-8ac7-4746-8297-81204c7af93c"},{"name":"Edit account","event":[{"listen":"prerequest","script":{"id":"2a2af999-68c4-4811-9b21-03b99adb1ae1","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"c6c80111-d8c2-4d09-922d-aa9ec4b0515d","exec":[""],"type":"text/javascript"}}],"id":"a68a2493-f066-4d5e-bf9e-b14954a1de12","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{   \n    \"name\": \"Credit Card\",\n    \"description\": \"Discover\",\n    \"startBalance\": 0,\n    \"startDate\": \"2018-02-06\"\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/account/:id","description":"<p>Edit account details.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["account",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Account id</p>\n","type":"text/plain"},"type":"any","value":"42","key":"id"}]}},"response":[{"id":"db52f2ce-2119-4a9e-848c-d9e4354b9887","name":"Edit account","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{   \n    \"name\": \"Credit Card\",\n    \"description\": \"Discover\",\n    \"startBalance\": 0,\n    \"startDate\": \"2018-02-06\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"localhost:3000/account/:id","host":["localhost:3000"],"path":["account",":id"],"variable":[{"key":"id","value":"42","description":"Account id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"42"},{"key":"ETag","value":"W/\"2a-jhs+AEkRD2q376trYfDxoKODCT8\""},{"key":"Date","value":"Mon, 19 Apr 2021 17:58:09 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Account updated successfully\"\n}"}],"_postman_id":"a68a2493-f066-4d5e-bf9e-b14954a1de12"},{"name":"Delete account","event":[{"listen":"prerequest","script":{"id":"e5dd722a-b5ac-492a-9771-487dfe7ce4cc","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"4329a984-276c-4584-a6f8-ccd30add9fc3","exec":[""],"type":"text/javascript"}}],"id":"b2a28684-e379-40f1-82d9-735fb43d645f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"localhost:3000/account/:id","description":"<p>Delete an account and all of its associated transactions.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["account",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Account id</p>\n","type":"text/plain"},"type":"any","value":"42","key":"id"}]}},"response":[{"id":"0a152e66-cf15-4c50-b9ab-e116ade1c169","name":"Delete account","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"localhost:3000/account/:id","host":["localhost:3000"],"path":["account",":id"],"variable":[{"key":"id","value":"42","description":"Account id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"42"},{"key":"ETag","value":"W/\"2a-34WA/E85hFWaktkanlfSv4XDTGM\""},{"key":"Date","value":"Mon, 19 Apr 2021 17:58:35 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Account deleted successfully\"\n}"}],"_postman_id":"b2a28684-e379-40f1-82d9-735fb43d645f"}],"id":"461f65f9-5c75-4e9a-bcb9-2e9a6e1f8d19","description":"<h3 id=\"account-data\">Account data:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Type</th>\n<th>Required?</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string</td>\n<td></td>\n</tr>\n<tr>\n<td>startDate</td>\n<td>string (YYYY-MM-DD)</td>\n<td>R</td>\n</tr>\n<tr>\n<td>startBalance</td>\n<td>decimal</td>\n<td>R</td>\n</tr>\n<tr>\n<td>budgetId</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"461f65f9-5c75-4e9a-bcb9-2e9a6e1f8d19","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}}},{"name":"Categories","item":[{"name":"Create category","event":[{"listen":"prerequest","script":{"id":"fbdd346e-5dde-4063-9492-9a05a5fa18b2","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"466f0caf-45e0-4f78-b935-a77049904134","exec":[""],"type":"text/javascript"}}],"id":"87e09047-67e2-497e-bbd6-4f3b9b0eb62f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Sales\",\n    \"isIncome\": true,\n    \"budgetId\": 34\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/category","description":"<p>Add a transaction category to a budget. Returns category id.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["category"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"7280ac67-5670-495f-9475-f94d55c7ce27","name":"Create category","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Sales\",\n    \"isIncome\": true,\n    \"budgetId\": 34\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/category"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"59"},{"key":"ETag","value":"W/\"3b-hqGmRHkZkHjIfdYplIZSGiwogTY\""},{"key":"Date","value":"Mon, 19 Apr 2021 15:34:24 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Category created successfully\",\n    \"categoryId\": 40\n}"}],"_postman_id":"87e09047-67e2-497e-bbd6-4f3b9b0eb62f"},{"name":"Edit category","event":[{"listen":"test","script":{"id":"e9e6b2db-bc46-4162-b64f-864da9e7365c","exec":[""],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"0676bbfe-cb7d-49d7-a725-96c8da024fd7","exec":[""],"type":"text/javascript"}}],"id":"2577120f-3c93-4d03-ac8c-040ac5c5d197","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Shareholders\",\n    \"isIncome\": true\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/category/:id","description":"<p>Edit transaction category details.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["category",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Category id</p>\n","type":"text/plain"},"type":"any","value":"41","key":"id"}]}},"response":[{"id":"07bab7e0-b0aa-425b-a8da-020dd7f33765","name":"Edit category","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Shareholders\",\n    \"isIncome\": true\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"localhost:3000/category/:id","host":["localhost:3000"],"path":["category",":id"],"variable":[{"key":"id","value":"41","description":"Category id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"43"},{"key":"ETag","value":"W/\"2b-qHzEGuzfkbWWaCpwJ2RicWXJxGw\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:59:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Category updated successfully\"\n}"}],"_postman_id":"2577120f-3c93-4d03-ac8c-040ac5c5d197"},{"name":"Delete category","event":[{"listen":"test","script":{"id":"d36bc9c6-3c52-4cd1-ba0d-52e7636f95e6","exec":[""],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"ce2adffb-01a4-4491-b2df-5bef0b2e6e7c","exec":[""],"type":"text/javascript"}}],"id":"fad26d34-cc4f-4f7b-84be-6b4d43882f73","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"localhost:3000/category/:id","description":"<p>Delete a transaction category. All subcategories in given category will be automatically deleted as well.</p>\n<p><strong>All transactions with the given category must be deleted or given new categories prior to deleting their associated category.</strong> This request does not delete any transactions.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["category",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Category id</p>\n","type":"text/plain"},"type":"any","value":"41","key":"id"}]}},"response":[{"id":"49e186bd-c5ff-4587-8e87-0e6802ef7292","name":"Delete category","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"localhost:3000/category/:id","host":["localhost:3000"],"path":["category",":id"],"variable":[{"key":"id","value":"41","description":"Category id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"43"},{"key":"ETag","value":"W/\"2b-oSB9C9UJoaUkZ5Mu5gkTHkZwuV4\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:59:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Category deleted successfully\"\n}"}],"_postman_id":"fad26d34-cc4f-4f7b-84be-6b4d43882f73"}],"id":"23188e4e-eb4e-48c4-9e9e-ad798ce87361","description":"<h3 id=\"category-data\">Category data:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Type</th>\n<th>Required?</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>isIncome</td>\n<td>boolean</td>\n<td>R</td>\n</tr>\n<tr>\n<td>budgetId</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"23188e4e-eb4e-48c4-9e9e-ad798ce87361","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}}},{"name":"Subcategories","item":[{"name":"Create subcategory","event":[{"listen":"prerequest","script":{"id":"31618554-9538-4394-a0a1-9b9da5f48907","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"e207941c-9884-4b26-8940-f3abe5126699","exec":[""],"type":"text/javascript"}}],"id":"222edfa5-44d4-4a61-a18c-78ad4b6966ef","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Services\",\n    \"categoryId\": 40\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/subcategory","description":"<p>Add a transaction subcategory to a category. Returns subcategory id.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["subcategory"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"b2066de3-c729-49ac-9e06-42d8f730393d","name":"Create subcategory","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Services\",\n    \"categoryId\": 40\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/subcategory"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-V4sv2g2AMx4SQhBYN2WjT3V6cMM\""},{"key":"Date","value":"Mon, 19 Apr 2021 15:41:45 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Subcategory created successfully\",\n    \"subcategoryId\": 45\n}"}],"_postman_id":"222edfa5-44d4-4a61-a18c-78ad4b6966ef"},{"name":"Edit subcategory","event":[{"listen":"prerequest","script":{"id":"80652667-46f4-4d9e-b1b8-f701b5ec7775","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"7b784aa5-ceba-47ee-8095-2907c16e664f","exec":[""],"type":"text/javascript"}}],"id":"1a1593ae-6666-47f7-894f-755d03562fec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Corporate Investment\",\n    \"categoryId\": 41\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/subcategory/:id","description":"<p>Edit subcategory details.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["subcategory",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Subcategory id</p>\n","type":"text/plain"},"type":"any","value":"51","key":"id"}]}},"response":[{"id":"1e641f3d-fafe-4e27-b141-182b163cbdc6","name":"Edit subcategory","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Corporate Investment\",\n    \"categoryId\": 41\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"localhost:3000/subcategory/:id","host":["localhost:3000"],"path":["subcategory",":id"],"variable":[{"key":"id","value":"51","description":"Subcategory id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"46"},{"key":"ETag","value":"W/\"2e-6pmM8jN1iSDIFvA1K30TuCanCHU\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:54:54 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Subcategory updated successfully\"\n}"}],"_postman_id":"1a1593ae-6666-47f7-894f-755d03562fec"},{"name":"Delete subcategory","event":[{"listen":"prerequest","script":{"id":"948eb8b9-3b3e-4a6a-ab7f-8bf6fd0f4826","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"0fcfefa8-e219-4d4c-b318-e5df5d79caaf","exec":[""],"type":"text/javascript"}}],"id":"7583c0ac-29a0-4029-b9fa-badc965aec8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"localhost:3000/subcategory/:id","description":"<p>Delete a transaction subcategory. </p>\n<p><strong>All transactions with the given subcategory must be deleted or given new subcategories prior to deleting their overall subcategory.</strong> This request does not delete any transactions.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["subcategory",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Subcategory id</p>\n","type":"text/plain"},"type":"any","value":"51","key":"id"}]}},"response":[{"id":"17b31cfb-a610-476d-8fe1-7437d7037789","name":"Delete subcategory","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"localhost:3000/subcategory/:id","host":["localhost:3000"],"path":["subcategory",":id"],"variable":[{"key":"id","value":"51","description":"Subcategory id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"46"},{"key":"ETag","value":"W/\"2e-xl2yLmbTro8nQuP8fOf+uJGzmhU\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:55:48 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Subcategory removed successfully\"\n}"}],"_postman_id":"7583c0ac-29a0-4029-b9fa-badc965aec8c"}],"id":"02a73137-73bb-4fbe-a39d-d93d5365937e","description":"<h3 id=\"subcategory-data\">Subcategory data:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Type</th>\n<th>Required?</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string</td>\n<td>R</td>\n</tr>\n<tr>\n<td>categoryId</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"02a73137-73bb-4fbe-a39d-d93d5365937e","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}}},{"name":"Transactions","item":[{"name":"Create transaction","event":[{"listen":"prerequest","script":{"id":"74759823-8490-4f6c-8669-571382e198e4","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"ae16bd8a-483b-4ca5-b0c1-dccd5e820c79","exec":[""],"type":"text/javascript"}}],"id":"e01431cb-02cf-4228-b3da-58f444fffb5e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Rent\",\n    \"amount\": -5000,\n    \"date\": \"2018-02-01\",\n    \"subcategoryId\": 46,\n    \"accountId\": 41\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/transaction","description":"<p>Add a transaction to a given account and subcategory. <strong>Amount must be negative for all expenses, regardless of category.</strong></p>\n<p>Returns transaction id and new current balance for associated account.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["transaction"],"host":["localhost:3000"],"query":[],"variable":[]}},"response":[{"id":"d56d371f-d78c-4b67-bc22-2179c85122af","name":"Create transaction","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"Rent\",\n    \"amount\": -5000,\n    \"date\": \"2018-02-01\",\n    \"subcategoryId\": 46,\n    \"accountId\": 41\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/transaction"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"87"},{"key":"ETag","value":"W/\"57-iAudvgrdaxInhgmvOafbRlDffx0\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:04:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Transaction created successfully\",\n    \"transactionId\": 41,\n    \"currentBalance\": 15000\n}"}],"_postman_id":"e01431cb-02cf-4228-b3da-58f444fffb5e"},{"name":"Edit transaction","event":[{"listen":"prerequest","script":{"id":"a70f44a9-c268-43ce-8db9-c93b8950d3d6","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"c3690ba3-502e-467f-ae4f-3cf93f09b54d","exec":[""],"type":"text/javascript"}}],"id":"e0e2576b-28dc-4fd8-a84e-f8595df337e1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"February Rent\",\n    \"amount\": -5000,\n    \"date\": \"2020-02-01\",\n    \"subcategoryId\": 46,\n    \"accountId\": 41\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/transaction/:id","description":"<p>Edit a transaction. <strong>Amount must be negative for all expenses, regardless of category.</strong></p>\n<p>Returns new current balance for the associated account (as well as the current balance for the previous associated account, if applicable).</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["transaction",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Transaction id</p>\n","type":"text/plain"},"type":"any","value":"41","key":"id"}]}},"response":[{"id":"cc4507b8-265e-4859-a62d-6ee975474d08","name":"Edit transaction","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\n    \"description\": \"February Rent\",\n    \"amount\": -5000,\n    \"date\": \"2020-02-01\",\n    \"subcategoryId\": 46,\n    \"accountId\": 41\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"localhost:3000/transaction/:id","host":["localhost:3000"],"path":["transaction",":id"],"variable":[{"key":"id","value":"41","description":"Transaction id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"105"},{"key":"ETag","value":"W/\"69-JPH/nXMfptRntbqUhJIuPIcmyI4\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:00:21 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Transaction updated successfully\",\n    \"editedAccounts\": [\n        {\n            \"accountId\": 41,\n            \"currentBalance\": 15000\n        }\n    ]\n}"}],"_postman_id":"e0e2576b-28dc-4fd8-a84e-f8595df337e1"},{"name":"Delete transaction","event":[{"listen":"prerequest","script":{"id":"94bc827e-f786-4141-abcc-5ec53bf4981b","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"e45b1ae6-cc8c-4370-8a22-fb4986f9fd9a","exec":[""],"type":"text/javascript"}}],"id":"96b02929-9239-4f10-90b9-00eaa26fb208","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"localhost:3000/transaction/:id","description":"<p>Delete a transaction. Returns new current balance for the associated account.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}},"urlObject":{"path":["transaction",":id"],"host":["localhost:3000"],"query":[],"variable":[{"description":{"content":"<p>Transaction id</p>\n","type":"text/plain"},"type":"any","value":"41","key":"id"}]}},"response":[{"id":"5bd3a129-fe36-4fa8-8c9e-9aca7d8a9e6f","name":"Delete transaction","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"localhost:3000/transaction/:id","host":["localhost:3000"],"path":["transaction",":id"],"variable":[{"key":"id","value":"41","description":"Transaction id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"69"},{"key":"ETag","value":"W/\"45-SQsTt1BwL2iXLbtsCsSx6nwWD7w\""},{"key":"Date","value":"Mon, 19 Apr 2021 16:48:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Transaction removed successfully\",\n    \"currentBalance\": 20000\n}"}],"_postman_id":"96b02929-9239-4f10-90b9-00eaa26fb208"}],"id":"58332190-1c66-4531-8c0f-0c5aa578d3f3","description":"<h3 id=\"transaction-data\">Transaction data:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Type</th>\n<th>Required?</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n<tr>\n<td>amount</td>\n<td>decimal</td>\n<td>R</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string</td>\n<td></td>\n</tr>\n<tr>\n<td>date</td>\n<td>string (YYYY-MM-DD)</td>\n<td>R</td>\n</tr>\n<tr>\n<td>accountId</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n<tr>\n<td>subcategoryId</td>\n<td>integer</td>\n<td>R</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"58332190-1c66-4531-8c0f-0c5aa578d3f3","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":true,"source":{"_postman_id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","id":"600e5099-ffb9-4927-9e73-98d5d351d1ac","name":"Budget API Documentation","type":"collection"}}}],"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]}},"event":[{"listen":"prerequest","script":{"id":"bcbe99e9-715e-4d81-a24e-9f521d6f0f73","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"9a955b32-2428-4e9f-b5ca-ce6adcc16acd","type":"text/javascript","exec":[""]}}],"variable":[{"key":"baseUrl","value":"localhost:3000"},{"key":"bearerToken","value":""}]}