{"info":{"_postman_id":"8e2de34e-984a-4fe9-ae71-de036fd1f010","name":"Restaurant API Collection","description":"<html><head></head><body><h1 id=\"restaurant-api\">Restaurant API</h1>\n<p>This API(identifiable as Restaurant API in the meantime) will serve as an online collection of restaurants, for existing or newly created online and onsite restaurants, providing them another platform for sales.</p>\n<p>It is a mobile food vendor to customer services. Food vendors will place food items they have on their profile, with cost price(including delivery), customers will scan through, find what they want and place orders. Payments will be made to the platform, vendors can withdraw from their account at anytime.</p>\n<p>Endpoints for this API is exposes in this documentation, with instructions and examples of requests and expected responses.</p>\n<p><strong>Authentication</strong>: This API uses JWT authentication, and some of its endpoint requires a valid JWT to be supplied in the request header.</p>\n<p><strong>Configuration</strong>: This collection requires several predefined environment variable, which are listed below. You will need to add them to your own environment when testing with Postman</p>\n<p><code>url</code>: The root url. The default value should be 127.0.0.1:5000<br><code>access_token</code>: JWT used for login. It will be set automatically by some of the request test scripts.<br><code>refresh_token</code>: Used for refreshing a JWT. It will be set automatically by some of the request test scripts.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Restaurant API","slug":"restaurant-api"}],"owner":"20762208","collectionId":"8e2de34e-984a-4fe9-ae71-de036fd1f010","publishedId":"2s83zjt47y","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2022-10-11T20:08:02.000Z"},"item":[{"name":"vendors","item":[{"name":"images","item":[{"name":"Logo Upload","id":"3444dcc1-d920-4b3b-ba92-b7a3f6c41ecd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"multipart/form-data"},{"key":"Authorization","value":"Bearer {{access_token}}"}],"body":{"mode":"formdata","formdata":[{"key":"image","type":"file","src":"/home/zubic/Pictures/Screenshots/img_err_code.png"}]},"url":"{{url}}/vendor/logo_upload","description":"<h2 id=\"avatar-upload-or-vendors-logo-upload\">Avatar Upload or Vendor's Logo Upload.</h2>\n<p><code>Note:</code></p>\n<p>*   Content-Type should be set to multipart/form-data\n*   File should be sent with <code>\"image\"</code> key\n*   Authorization header should be set to <code>Bearer {access_token}</code>\n*   The only allowed extensions include<br />    <code>'.jpg', '.jpe', '.jpeg', '.png', '.gif', '.svg', '.bmp'</code></p>\n","urlObject":{"path":["vendor","logo_upload"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"11000ca1-7021-484a-a211-044489e51abe","name":"Logo Upload","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"multipart/form-data"},{"key":"Authorization","value":"Bearer {{access_token}}"}],"body":{"mode":"formdata","formdata":[{"key":"image","type":"file","src":"/home/zubic/Pictures/Screenshots/screen2.png"}]},"url":"{{url}}/vendor/logo_upload"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 02:26:43 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"49"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Image vendor_5.png Uploaded\"\n}"},{"id":"579cf59f-1a3c-4bdb-860f-202735c4addb","name":"unsupported image format","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"multipart/form-data"},{"key":"Authorization","value":"Bearer {{access_token}}"}],"body":{"mode":"formdata","formdata":[{"key":"image","type":"file","src":"/home/zubic/Pictures/Screenshots/postman.poo"}]},"url":"{{url}}/vendor/logo_upload"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 02:27:40 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"56"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Image extension '.poo' not allowed\"\n}"}],"_postman_id":"3444dcc1-d920-4b3b-ba92-b7a3f6c41ecd"},{"name":"Get a Logo","id":"79955204-f7d2-48b5-a2cc-44516c81da3f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/logo/1","description":"<h3 id=\"returns-an-image-file-if-found-accepts-vendor-id-as-path-parameter-for-the-vendor-image-you-need\">Returns an image file if found. Accepts Vendor ID as path parameter for the Vendor image you need.</h3>\n<p><code>Note:</code></p>\n<p>*   Authorization header must be set to `Bearer access_token}</p>\n","urlObject":{"path":["vendor","logo","1"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"6bfa8e65-5c17-455b-b5ef-aadb4a08a59e","name":"Get a Logo","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/logo/5"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":null},{"id":"43caa9a2-b102-4222-b4d0-6a55e327d50f","name":"Image not found","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/logo/50"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 02:45:36 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"37"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Image not found\"\n}"}],"_postman_id":"79955204-f7d2-48b5-a2cc-44516c81da3f"},{"name":"Delete a Logo","id":"ac6bd8fa-caad-44f2-b78f-a09fed922aa8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/logo/1","description":"<h3 id=\"deletes-a-vendors-logoavatar-it-takes-the-vendor-id-as-path-parameter-privilege-is-limited-only-to-owner-of-the-account\">Deletes a Vendor's Logo/Avatar. It takes the Vendor ID as path parameter. Privilege is limited only to owner of the account.</h3>\n<p><code>Note:</code></p>\n<p>*   Authorization header must be set to <code>Bearer {access_token}</code>\n*   Privilege for this operation will only be for owner of the account</p>\n","urlObject":{"path":["vendor","logo","1"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"6e1ca618-7526-4f8c-a325-f33b63070315","name":"Delete a Logo","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/logo/5"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 03:07:53 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"35"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Image Deleted\"\n}"},{"id":"ba8c133f-8844-4482-8d2c-9dfa1d5b71e5","name":"Image not found","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/logo/20"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 03:04:01 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"37"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Image not found\"\n}"},{"id":"7114b331-3df6-4e26-a26e-8a18d417d5c6","name":"No privilege granted","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/logo/2"},"status":"FORBIDDEN","code":403,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 03:06:30 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"77"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"You do not have the privilege to perform this operation\"\n}"}],"_postman_id":"ac6bd8fa-caad-44f2-b78f-a09fed922aa8"}],"id":"292162bd-fe22-4a7e-b2cf-6aa27d857978","_postman_id":"292162bd-fe22-4a7e-b2cf-6aa27d857978","description":""},{"name":"Email Register","id":"1ce456fb-9530-4ddf-ac58-6a58fd91e8c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/email","description":"<h4 id=\"initializes-a-vendors-registration-sends-vendors-confirmation-id-and-registration-link-in-email-use-confirmation-id-received-in-email-to-build-register-vendor-request\">Initializes a Vendor's registration. Sends Vendor's confirmation ID and Registration Link in email. Use confirmation ID received in email to build Register Vendor request.</h4>\n<p><code>Note:</code></p>\n<p>* Duplicate <strong>Email</strong> not allowed<br />* Invalid email will return a 500</p>\n","urlObject":{"path":["vendor","email"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"382e2c8a-3300-4d1f-aa44-5d63d2ade01d","name":"Email Register","originalRequest":{"method":"POST","header":[{"key":"","value":"","description":"Successfully sent email","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/email"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 09 Oct 2022 21:06:19 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"114"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"An Email has been sent to <oduazubike@gmail.com>. Please open and complete your Registration\"\n}"},{"id":"a243a158-4c08-40ca-af1c-2f0f23798918","name":"Email already exists","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/email"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 09 Oct 2022 21:17:17 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"66"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Email <oduazubike@gmail.com> already exists!\"\n}"},{"id":"8ee93d4b-3fe6-43cc-88d5-7395d8980dab","name":"Invalid email /internal server error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"od11zubike@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/email"},"status":"INTERNAL SERVER ERROR","code":500,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 09 Oct 2022 21:19:24 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"84"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Error in sending confirmation email, user registration failed.\"\n}"},{"id":"cdacb8f0-822b-4b04-80dd-95978f0ffdf0","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"od11zubike@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/email"},"status":"INTERNAL SERVER ERROR","code":500,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 09 Oct 2022 21:27:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"93"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Internal server error! An error occurred while processing your request.\"\n}"}],"_postman_id":"1ce456fb-9530-4ddf-ac58-6a58fd91e8c9"},{"name":"Resend Email","id":"b4334424-e4d3-469e-a118-415720054e54","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"{{url}}/vendor/resend_email/oduazubike@gmail.com","description":"<h4 id=\"this-resource-is-to-request-a-resend-of-the-confirmation-email-in-case-the-initial-one-expires-or-is-unused-for-some-other-reasons--it-receives-the-email-in-the-path-parameter-id-sent-to-email-also-to-be-used-for-building-register-vendor-request-url\">This Resource is to request a resend of the confirmation email in case the initial one expires, or is unused for some other reasons . It receives the email in the path parameter. ID sent to email also to be used for building Register Vendor request URL.</h4>\n<p><code>Note:</code></p>\n<p>* Email must already exist(must have already registered email)<br />* Will only process request for un-validated email accounts<br />* Email must be passed in URL</p>\n","urlObject":{"path":["vendor","resend_email","oduazubike@gmail.com"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"3f9e8836-1d45-4446-8a46-d3f309a115ae","name":"Resend Email","originalRequest":{"method":"POST","header":[{"key":"","value":"","type":"text","disabled":true},{"key":"","value":"","description":"Successfully re-sent email","type":"text"}],"url":{"raw":"{{url}}/vendor/resend_email/oduazubike@gmail.com","host":["{{url}}"],"path":["vendor","resend_email","oduazubike@gmail.com"],"query":[{"key":null,"value":null,"type":"text","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 09 Oct 2022 21:32:21 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"94"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Confirmation Email has been re-sent to your email <oduazubike@gmail.com>\"\n}"},{"id":"d4c60bd5-c6d0-4d88-98c0-9d72fa94a0b0","name":"Already validated email","originalRequest":{"method":"POST","header":[{"key":"","value":"","type":"text","disabled":true}],"url":"{{url}}/vendor/resend_email/oduazubike@gmail.com"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 09 Oct 2022 21:49:55 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"81"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Account with email <oduazubike@gmail.com> already Validated\"\n}"},{"id":"76561228-975d-4fc9-9bb8-11fdf1d7a93b","name":"Account for such email not found","originalRequest":{"method":"POST","header":[{"key":"","value":"","type":"text","disabled":true}],"url":"{{url}}/vendor/resend_email/victor@gmail.com"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 09 Oct 2022 21:58:09 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"46"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Vendor Account Not Found\"\n}"}],"_postman_id":"b4334424-e4d3-469e-a118-415720054e54"},{"name":"Register Vendor","event":[{"listen":"test","script":{"id":"7162b221-d7cc-4ae4-a317-ab7951309e90","exec":["var jsonData = pm.response.json();","pm.test(\"access_token not empty\", function () {","    pm.expect(jsonData.access_token).not.eql(undefined);","});","","pm.test(\"refresh token not empty\", function () {","    pm.expect(jsonData.refresh_token).not.eql(undefined);","});","// set access token as environement variable","if (jsonData.access_token !== undefined) {","    postman.setEnvironmentVariable(\"access_token\", jsonData.access_token);","} else {","    postman.setEnvironmentVariable(\"access_token\", null);","}","// set refresh token as environement variable","if (jsonData.refresh_token !== undefined) {","    postman.setEnvironmentVariable(\"refresh_token\", jsonData.refresh_token);","} else {","    postman.setEnvironmentVariable(\"refresh_token\", null);","}"],"type":"text/javascript"}}],"id":"dbf21938-003b-4768-ad8c-db037ec5140e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"azu Mic\",\n    \"dob\": \"7 11, 2022\",\n    \"restaurant\": \"vics\",\n    \"city\": \"New York city\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/register/f30361f422cb4fd0bc3f56994fe5f575","description":"<h4 id=\"this-resource-completes-the-registration-of-a-vendor-uses-the-confirmation-id-sent-in-the-email-as-path-parameter\">This Resource completes the registration of a Vendor. Uses the confirmation ID sent in the email as path parameter.</h4>\n<p><code>Note:</code></p>\n<p>* Duplicate <strong>Restaurant name</strong> not allowed<br />* Confirmation ID expires in 30 minutes<br />* Confirmation ID can only be used once</p>\n","urlObject":{"path":["vendor","register","f30361f422cb4fd0bc3f56994fe5f575"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"221770ae-a61a-4168-8771-0f164514b2c3","name":"Register Vendor","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"Odu Victor Azubike\",\n    \"dob\": \"7 11, 2022\",\n    \"restaurant\": \"Fast Foods\",\n    \"city\": \"Real city\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/register/a32c44a4f57d4b5caad0c071df1e26df"},"status":"CREATED","code":201,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 11:31:45 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"66"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Restaurant <Fast Foods> created successfully\"\n}"},{"id":"55f1fcb2-8a23-49ee-b462-a4432747754a","name":"Not found or wrong confirmation ID","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"Odu Victor Azubike\",\n    \"dob\": \"7 11, 2022\",\n    \"restaurant\": \"Fast Foods\",\n    \"city\": \"Real city\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/register/a32c44a4f57d4b5caad0c071df1e26d"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 11:33:40 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"47"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Confirmation ID not found\"\n}"},{"id":"f7af3e71-6b2b-4214-8838-a9243c6e92cd","name":"Expired confirmation ID","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"Odu Victor Azubike\",\n    \"dob\": \"7 11, 2022\",\n    \"restaurant\": \"Fast Foods\",\n    \"city\": \"Real city\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/register/a32c44a4f57d4b5caad0c071df1e26df"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 11:35:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"49"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Confirmation ID has expired\"\n}"},{"id":"fe05092b-8b09-49a3-b80c-2d85c1d247d4","name":"Already existing Restaurant name","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"Odu Victor Azubike\",\n    \"dob\": \"7 11, 2022\",\n    \"restaurant\": \"Fast Foods\",\n    \"city\": \"Real city\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/register/830225734c9745d7a649dedf3268f390"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 11:45:35 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"92"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Restaurant name <Fast Foods> already exists, please choose another one\"\n}"},{"id":"930c3b2f-fe88-4977-8de9-128a9661b080","name":"Confirmation ID/Vendor already validated","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"Victor Azubike\",\n    \"dob\": \"7 11, 2022\",\n    \"restaurant\": \"Free Foods\",\n    \"city\": \"Real city\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/register/830225734c9745d7a649dedf3268f390"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 11:48:04 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"113"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Confirmation ID already validated! Ensure to use correct confirmation ID sent to your Email\"\n}"}],"_postman_id":"dbf21938-003b-4768-ad8c-db037ec5140e"},{"name":"Vendor Login","event":[{"listen":"test","script":{"id":"7162b221-d7cc-4ae4-a317-ab7951309e90","exec":["var jsonData = pm.response.json();","pm.test(\"access_token not empty\", function () {","    pm.expect(jsonData.access_token).not.eql(undefined);","});","","pm.test(\"refresh token not empty\", function () {","    pm.expect(jsonData.refresh_token).not.eql(undefined);","});","// set access token as environement variable","if (jsonData.access_token !== undefined) {","    postman.setEnvironmentVariable(\"access_token\", jsonData.access_token);","} else {","    postman.setEnvironmentVariable(\"access_token\", null);","}","// set refresh token as environement variable","if (jsonData.refresh_token !== undefined) {","    postman.setEnvironmentVariable(\"refresh_token\", jsonData.refresh_token);","} else {","    postman.setEnvironmentVariable(\"refresh_token\", null);","}"],"type":"text/javascript"}}],"id":"34f42716-bae7-4d94-a609-45e81d0e6966","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/login","description":"<h4 id=\"logs-a-vendor-in-by-issuing-an-access-and-refresh-token-tokens-to-be-used-in-the-authorization-header-for-protected-resources\">Logs a Vendor in, by issuing an access and refresh token. Tokens to be used in the Authorization header for protected Resources.</h4>\n<p><code>Notes:</code></p>\n<p>*   Account must be created and validated before login\n*   Access token expires after 15 minutes after which refresh token should be requested</p>\n","urlObject":{"path":["vendor","login"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"6cedcf81-43db-489d-8650-fe2b3ed2599e","name":"Vendor Login","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 12:25:18 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"575"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6dHJ1ZSwiaWF0IjoxNjY1NDA0NzE4LCJqdGkiOiI4MzMyOGRmMi03ODEzLTQxZjItOTY1MS1kMTYzNGY0ZDhjMjkiLCJ0eXBlIjoiYWNjZXNzIiwic3ViIjoxLCJuYmYiOjE2NjU0MDQ3MTgsImV4cCI6MTY2NTQwNTYxOH0.XtQyceYy8sePJa-xzEhs26W2tKirsqU_1Mr8ZOHnFGk\",\n    \"refresh_token\": \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NTQwNDcxOCwianRpIjoiOTkyMjEzMjMtZGFhOS00YmM0LTg4OGYtZDg0NDc2NzJiMGExIiwidHlwZSI6InJlZnJlc2giLCJzdWIiOjEsIm5iZiI6MTY2NTQwNDcxOCwiZXhwIjoxNjY3OTk2NzE4fQ.rupF5egys3i6Z7c2VJtC57khd2k6g-Xs49cD4YKCM1s\"\n}"},{"id":"575d1fd6-0a10-45ff-a08e-e351aa50840e","name":"Incorrect email/passowrd supplied","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\",\n    \"password\": \"passord\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/login"},"status":"UNAUTHORIZED","code":401,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 12:35:16 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"50"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Invalid credentials supplied\"\n}"},{"id":"9daf51f5-70f0-4227-aeed-cca6800cf789","name":"Unvalidated or unregistered account","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"zubic@gmail.com\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}/vendor/login"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 12:39:09 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"110"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Account not validated yet! Check email and proceed to complete Registration before login\"\n}"}],"_postman_id":"34f42716-bae7-4d94-a609-45e81d0e6966"},{"name":"Token Refrehing","event":[{"listen":"test","script":{"id":"7162b221-d7cc-4ae4-a317-ab7951309e90","exec":["var jsonData = pm.response.json();","pm.test(\"access_token not empty\", function () {","    pm.expect(jsonData.access_token).not.eql(undefined);","});","// set access token as environement variable","if (jsonData.access_token !== undefined) {","    postman.setEnvironmentVariable(\"access_token\", jsonData.access_token);","} else {","    postman.setEnvironmentVariable(\"access_token\", null);","}"],"type":"text/javascript"}}],"id":"144abc81-5cd9-4993-8316-c0962e1a6434","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"}],"url":"{{url}}//vendor/refresh","description":"<h4 id=\"this-resource-refreshes-a-vendors-token-when-expired-it-issues-a-non-fresh-token-and-requires-a-refresh-token-as-authorization-header\">This Resource refreshes a Vendor's token, when expired. It issues a non-fresh token and requires a refresh token as Authorization header.</h4>\n<p><code>Note:</code></p>\n<p>*   Requires Authorization header, set to <code>Bearer {refresh_token}</code>\n*   Must be logged in before making this request\n*   Must send a valid JWT token</p>\n","urlObject":{"path":["","vendor","refresh"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"ca6ea257-7663-4099-adad-cc249ee6f4aa","name":"Token Refrehing","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"{{url}}//vendor/refresh"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 12:55:09 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"288"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NTQwNjUwOSwianRpIjoiNTRkOGRiZTEtZDU3Ny00YTI1LWJiNjYtZmJkNjg2MjllZWZmIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY1NDA2NTA5LCJleHAiOjE2NjU0MDc0MDl9.rsWCFdyUlVx_LKEZNbKyEitspvnS3hLy6M5T9_ZS6xc\"\n}"},{"id":"b9a455dd-6268-4370-bbc3-7fd5e0fcbf0a","name":"Invalid token/not logged-in","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"{{url}}//vendor/refresh"},"status":"UNAUTHORIZED","code":401,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 12:53:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"79"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Description\": \"This is not a valid jwt token\",\n    \"Error\": \"Invalid JWT\"\n}"},{"id":"21fda432-77b7-4383-ab4a-a956f23929ef","name":"Token authorization header required","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"","type":"text","disabled":true},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"{{url}}//vendor/refresh"},"status":"UNAUTHORIZED","code":401,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 12:56:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"101"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Description\": \"You need a token to access the endpoint\",\n    \"Error\": \"Token required endpoint\"\n}"}],"_postman_id":"144abc81-5cd9-4993-8316-c0962e1a6434"},{"name":"For Critical Logins","event":[{"listen":"test","script":{"id":"7162b221-d7cc-4ae4-a317-ab7951309e90","exec":["var jsonData = pm.response.json();","pm.test(\"access_token not empty\", function () {","    pm.expect(jsonData.access_token).not.eql(undefined);","});","// set access token as environement variable","if (jsonData.access_token !== undefined) {","    postman.setEnvironmentVariable(\"access_token\", jsonData.access_token);","} else {","    postman.setEnvironmentVariable(\"access_token\", null);","}"],"type":"text/javascript"}}],"id":"a63eb09d-1d22-4fd0-8538-429f5bb612c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}//vendor/critical_login","description":"<h4 id=\"this-request-is-made-when-critical-actions-or-resourcesresources-that-requires-only-fresh-tokens-are-requested-with-a-non-fresh-tokens-it-issues-a-fresh-access-token-and-requires-a-refresh-token\">This request is made when critical actions or resources(resources that requires only fresh tokens) are requested with a non-fresh tokens. It issues a fresh access token and requires a refresh token.</h4>\n<p><code>Note:</code></p>\n<p>* Password of logged in vendor must be correct.<br />* Authorization header must be set to <code>Bearer {refresh_token}</code></p>\n","urlObject":{"path":["","vendor","critical_login"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"3fa9f9fa-af1b-4394-8ca8-3651bb193eb9","name":"For Critical Logins","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}//vendor/critical_login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 13:14:41 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"287"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6dHJ1ZSwiaWF0IjoxNjY1NDA3NjgxLCJqdGkiOiI0NWE4ZWMzNy1kYTBhLTQxNmYtOGMzMi1iYjJjODU5YjVmYTUiLCJ0eXBlIjoiYWNjZXNzIiwic3ViIjoxLCJuYmYiOjE2NjU0MDc2ODEsImV4cCI6MTY2NTQwODU4MX0.getJGlB8u9wK4-J-nZNPZXRYps8WmxAcHce7kpJlqoI\"\n}"},{"id":"caed48f3-c506-4d8a-969c-57dfdd94b471","name":"Incorrect password supplied","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"passord\"\n}","options":{"raw":{"language":"json"}}},"url":"{{url}}//vendor/critical_login"},"status":"UNAUTHORIZED","code":401,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 13:15:18 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"50"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Invalid credentials supplied\"\n}"}],"_postman_id":"a63eb09d-1d22-4fd0-8538-429f5bb612c9"},{"name":"Vendor details","id":"8f4e7809-eb6f-4574-bdfb-f527a2953b19","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{url}}/vendor/1","description":"<h4 id=\"this-resource-takes-the-vendors-id-in-the-url-as-path-parameter-and-returns-the-vendors-details\">This Resource takes the Vendor's ID in the URL as path parameter and returns the Vendor's details.</h4>\n","urlObject":{"path":["vendor","1"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"d66c5045-0bff-4657-84dc-8771435110d0","name":"Vendor details","originalRequest":{"method":"GET","header":[],"url":"{{url}}/vendor/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 13:53:57 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"253"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"date_created\": \"2022-10-10 11:31:45.584063+00:00\",\n    \"full_name\": \"Odu Victor Azubike\",\n    \"email\": \"oduazubike@gmail.com\",\n    \"city\": \"Real city\",\n    \"restaurant\": \"Fast Foods\",\n    \"validated\": true,\n    \"dob\": \"7 11, 2022\",\n    \"id\": 1\n}"},{"id":"ac07764f-6332-4915-b963-10d619a854ac","name":"Account not found","originalRequest":{"method":"GET","header":[],"url":"{{url}}/vendor/10"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 14:01:00 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"46"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Vendor Account Not Found\"\n}"}],"_postman_id":"8f4e7809-eb6f-4574-bdfb-f527a2953b19"},{"name":"Delete a Vendor","id":"c0cbd7b8-a0f5-4ad0-b93f-9be513427af2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/1","description":"<h4 id=\"this-resource-deletes-a-vendors-account-it-takes-vendor-id-in-the-url-as-path-parameter\">This Resource deletes a Vendor's account. It takes Vendor ID in the URL as path parameter.</h4>\n<p><code>Note:</code></p>\n<p>*   Authorization header must be set to <code>Bearer {access_token}</code>\n*   Token must be fresh\n*   Operation privilege limited to owner of the account</p>\n","urlObject":{"path":["vendor","1"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"070a0d1e-cae5-4d16-b3d5-209b1c9209cc","name":"Delete a Vendor","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 14:18:34 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"44"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Vendor Account Deleted\"\n}"},{"id":"cc75497e-62f3-41c6-a757-b9201178a7ad","name":"Account not found","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/24"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 14:15:47 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"46"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Vendor Account Not Found\"\n}"},{"id":"5e30e3e6-1081-4f83-b711-b409ded7a6c0","name":"operation  privilege not granted","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/2"},"status":"FORBIDDEN","code":403,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 14:17:00 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"77"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"You do not have the privilege to perform this operation\"\n}"}],"_postman_id":"c0cbd7b8-a0f5-4ad0-b93f-9be513427af2"},{"name":"Get All Vendors","id":"db75d105-a34e-44a0-a8b5-e3ff14751965","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{url}}/vendors","description":"<h4 id=\"this-resource-returns-all-vendor-accounts-and-their-full-details\">This Resource returns all Vendor accounts, and their full details</h4>\n","urlObject":{"path":["vendors"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"fc8e0182-18ab-464c-b1f5-b5939df3a5b0","name":"Get All Vendors","originalRequest":{"method":"GET","header":[],"url":"{{url}}/vendors"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 19:09:16 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"643"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Vendors\": [\n        {\n            \"email\": \"victor@gmail.com\",\n            \"id\": 2,\n            \"validated\": true,\n            \"city\": \"Real city\",\n            \"date_created\": \"2022-10-10 11:47:50.579309+00:00\",\n            \"dob\": \"7 11, 2022\",\n            \"restaurant\": \"Free Foods\",\n            \"full_name\": \"Victor Azubike\"\n        },\n        {\n            \"email\": \"zubic@gmail.com\",\n            \"id\": 3,\n            \"validated\": false,\n            \"city\": null,\n            \"date_created\": \"2022-10-10 12:38:07.154208+00:00\",\n            \"dob\": null,\n            \"restaurant\": null,\n            \"full_name\": null\n        }\n    ]\n}"}],"_postman_id":"db75d105-a34e-44a0-a8b5-e3ff14751965"},{"name":"Get All of a Vendor's Confirmation","id":"f9630777-5d5c-4f1d-b363-98458eec9811","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{url}}/vendor/confirmations/1","description":"<h4 id=\"this-resource-returns-all-confirmation-details-of-a-vendor-this-is-meant-for-testing-only\">This Resource returns all confirmation details of a Vendor. This is meant for testing only</h4>\n","urlObject":{"path":["vendor","confirmations","1"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"824a34a6-d87e-4744-bc0f-8b4d76769644","name":"Get All of a Vendor's Confirmation","originalRequest":{"method":"GET","header":[],"url":"{{url}}/vendor/confirmations/4"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 19:35:28 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"342"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Current-Time\": 1665430528,\n    \"Confirmations\": [\n        {\n            \"expire_at\": 1665430363,\n            \"vendor_id\": 4,\n            \"id\": \"01225683e23c4cdbaba270f8d2fa0055\"\n        },\n        {\n            \"expire_at\": 1665432163,\n            \"vendor_id\": 4,\n            \"id\": \"c45c03641f5b4681a6f907804d780248\"\n        }\n    ]\n}"},{"id":"990c96e3-55dc-4f36-ad50-eae7dd146c4a","name":"Account not found","originalRequest":{"method":"GET","header":[],"url":"{{url}}/vendor/confirmations/40"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 19:36:13 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"46"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Vendor Account Not Found\"\n}"}],"_postman_id":"f9630777-5d5c-4f1d-b363-98458eec9811"},{"name":"Most Recent Confirmation","id":"d86ef551-f791-4cc1-8ce0-dc8ea420f334","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{url}}/vendor/recent_confirmation/1","description":"<h4 id=\"returns-the-most-recent-confirmation-details-of-a-vendor-this-resource-is-for-testing-only\">Returns the most recent confirmation details of a Vendor. This resource is for testing only.</h4>\n","urlObject":{"path":["vendor","recent_confirmation","1"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"44679329-243a-4e20-9124-561561cf349d","name":"Most Recent Confirmation","originalRequest":{"method":"GET","header":[],"url":"{{url}}/vendor/recent_confirmation/4"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 19:54:42 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"98"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"expire_at\": 1665432163,\n    \"vendor_id\": 4,\n    \"id\": \"c45c03641f5b4681a6f907804d780248\"\n}"},{"id":"60feb390-275d-478a-b5a0-79f21af86992","name":"Account not found","originalRequest":{"method":"GET","header":[],"url":"{{url}}/vendor/recent_confirmation/40"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 20:02:47 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"46"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Vendor Account Not Found\"\n}"}],"_postman_id":"d86ef551-f791-4cc1-8ce0-dc8ea420f334"},{"name":"Update Account","id":"ebb36db0-b5c5-48a6-b371-2d1465bb1cae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"My name\",\n    \"dob\": \"05 04, 22\",\n    \"city\": \"Starling city\"\n}"},"url":"{{url}}/vendor/update","description":"<h2 id=\"updates-less-critical-vendor-account-details-for-logged-in-vendor-and-return-all-details-for-the-account-including-the-just-updated-details\">Updates less critical vendor account details for logged in Vendor and return all details for the account including the just updated details.</h2>\n<p><code>Note:</code></p>\n<ul>\n<li>Set Authorization header to <code>Bearer {access_token}</code></li>\n<li>One or all of the fields can be blank</li>\n</ul>\n","urlObject":{"path":["vendor","update"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"a70e79a0-2cf7-40f0-9926-974928f7fbe3","name":"Update Account","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"full_name\": \"Janeth Doe\",\n    \"dob\": \"05 04, 22\",\n    \"city\": \"Working city\"\n}"},"url":"{{url}}/vendor/update"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Fri, 14 Oct 2022 20:45:33 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"231"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 4,\n    \"validated\": true,\n    \"email\": \"tochi@gmail.com\",\n    \"full_name\": \"Janeth Doe\",\n    \"city\": \"Working city\",\n    \"date_created\": \"2022-10-14T20:28:00.480009\",\n    \"restaurant\": \"tochi\",\n    \"dob\": \"05 04, 22\"\n}"}],"_postman_id":"ebb36db0-b5c5-48a6-b371-2d1465bb1cae"},{"name":"Restaurant Name Update","id":"d7879033-8340-4dc1-bce7-25f87647dd06","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"restaurant\": \"Fast Foods\"\n}"},"url":"{{url}}/vendor/restaurant_update","description":"<h2 id=\"updates-the-vendor-accounts-restaurant-name-this-is-only-allowed-30days-after-registration-or-after-last-update-of-this-resource\">Updates the Vendor account's restaurant name. This is only allowed 30days after registration or after last update of this resource.</h2>\n<p><code>Note:</code></p>\n<ul>\n<li>Set Authorization header to <code>Bearer {access_token}</code></li>\n<li>Token must be fresh</li>\n<li>Duplicate name not allowed</li>\n<li>Request will not be granted less then 30days after registration or last update</li>\n</ul>\n","urlObject":{"path":["vendor","restaurant_update"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"9ee32c9c-7971-4171-85e3-3426de9947e3","name":"Restaurant Name Update","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"restaurant\": \"Fast Foods\"\n}"},"url":"{{url}}/vendor/restaurant_update"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 16 Oct 2022 12:59:25 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"236"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"validated\": true,\n    \"full_name\": \"azu Mic\",\n    \"restaurant\": \"Fast Foods\",\n    \"dob\": \"7 11, 2022\",\n    \"city\": \"New York city\",\n    \"date_created\": \"2022-10-16T12:49:55.012862\",\n    \"email\": \"victor@gmail.com\",\n    \"id\": 1\n}"},{"id":"eae819e3-2393-43ca-a949-3765e6fe6496","name":"Update time not reached","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"restaurant\": \"Fast Foods\"\n}"},"url":"{{url}}/vendor/restaurant_update"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 16 Oct 2022 12:56:36 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"106"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"You can only update the Restaurant name 30days after registration or previous update\"\n}"},{"id":"0f47310e-8e7f-4cc0-8c17-8903c8f79bc4","name":"Duplicate restaurant name","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"restaurant\": \"Fast Foods\"\n}"},"url":"{{url}}/vendor/restaurant_update"},"status":"BAD REQUEST","code":400,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Sun, 16 Oct 2022 13:04:38 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"92"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Restaurant name <Fast Foods> already exists, please choose another one\"\n}"}],"_postman_id":"d7879033-8340-4dc1-bce7-25f87647dd06"},{"name":"Forgot Password","id":"cd10f946-6fd8-42b5-8577-1eb602432247","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\"\n}"},"url":"{{url}}/vendor/forgot/password","description":"<h3 id=\"this-resource-is-for-requesting-a-password-reset-when-password-is-forgotten-a-token-is-sent-to-vendors-email-token-is-to-be-used-in-url-as-path-parameter-for-the-reset-password-request-or-resource\">This Resource is for requesting a password reset, when password is forgotten. A token is sent to Vendor's email. Token is to be used in URL as path parameter for the Reset Password request or resource.</h3>\n","urlObject":{"path":["vendor","forgot","password"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"e4e6bf74-a273-4029-8ccc-f28084787ecc","name":"Forgot Password","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduazubike@gmail.com\"\n}"},"url":"{{url}}/vendor/forgot/password"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 20:44:08 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"85"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"An email has been sent to you, to allow you reset your password\"\n}"},{"id":"690627da-edcb-4e26-a915-7e02166f40e7","name":"Account with email not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"oduaubike@gmail.com\"\n}"},"url":"{{url}}/vendor/forgot/password"},"status":"NOT FOUND","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 20:45:54 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"46"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Vendor Account Not Found\"\n}"}],"_postman_id":"cd10f946-6fd8-42b5-8577-1eb602432247"},{"name":"Reset Password","id":"2e2ab25c-547d-402b-b76a-bf587cd40715","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"pass\"\n}"},"url":"{{url}}/vendor/reset/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NTQzNTc5NSwianRpIjoiMTNlYTc2NTUtY2YwOC00MWVmLWI0MDQtZDgzZTg1ZjBkZjY4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6NSwibmJmIjoxNjY1NDM1Nzk1LCJleHAiOjE2NjU0MzYwOTV9.EQX__SYN358KE6wjiFyyjFnvrSnUCLeqqTKNW-ZtOM8","description":"<h3 id=\"this-resource-is-to-reset-password-when-forgotten-the-token-sent-to-email-from-the-forgot-password-request-is-used-token-used-is-immediately-revoked-after-a-successful-password-reset\">This Resource is to reset password when forgotten. The token sent to email from the Forgot Password request is used. Token used is immediately revoked after a successful password reset.</h3>\n<p><code>Note:</code></p>\n<p>*   Token expires after 5 minutes</p>\n","urlObject":{"path":["vendor","reset","eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NTQzNTc5NSwianRpIjoiMTNlYTc2NTUtY2YwOC00MWVmLWI0MDQtZDgzZTg1ZjBkZjY4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6NSwibmJmIjoxNjY1NDM1Nzk1LCJleHAiOjE2NjU0MzYwOTV9.EQX__SYN358KE6wjiFyyjFnvrSnUCLeqqTKNW-ZtOM8"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"cf00c7be-6403-4d61-8d42-28f370c1a2c3","name":"Reset Password","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"pass\"\n}"},"url":"{{url}}/vendor/reset/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NTQzNTc5NSwianRpIjoiMTNlYTc2NTUtY2YwOC00MWVmLWI0MDQtZDgzZTg1ZjBkZjY4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6NSwibmJmIjoxNjY1NDM1Nzk1LCJleHAiOjE2NjU0MzYwOTV9.EQX__SYN358KE6wjiFyyjFnvrSnUCLeqqTKNW-ZtOM8"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 21:04:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"103"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Your Password Reset was successful! You will need to login with your new password\"\n}"},{"id":"883fe033-3e4b-468a-acbd-e763291ac068","name":"Expired token","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"password\"\n}"},"url":"{{url}}/vendor/reset/eyJ0eXAiOiJKV1QiLCJhbGciOiJeUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NTQzNDY0MCwianRpIjoiM2U3Y2FkNmEtNGQzMS00YmU5LTg2NTAtN2NjNTQ3ODRhNGUwIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6NSwibmJmIjoxNjY1NDM0NjQwLCJleHAiOjE2NjU0MzQ5NDB9.uARd6RMiBK0wpVtk8JHYA36o5aVCsb0vMgcQLay265Q"},"status":"UNAUTHORIZED","code":401,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 20:59:58 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"74"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Description\": \"Your token has expired\",\n    \"Error\": \"token expired\"\n}"}],"_postman_id":"2e2ab25c-547d-402b-b76a-bf587cd40715"},{"name":"Change Password","id":"76576b87-5a95-43bf-869c-1872e5cbd680","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"password\",\n    \"new_password\": \"password\"\n}"},"url":"{{url}}/vendor/change_password","description":"<h3 id=\"this-resource-changes-a-vendors-password-when-the-password-is-not-forgotten-it-requests-the-present-password-ensures-its-correct-and-saves-a-new-the-new-entered\">This Resource changes a Vendor's password when the password is not forgotten. It requests the present password, ensures its correct and saves a new the new entered.</h3>\n<p><code>Note:</code></p>\n<p>* Authorization header must be set to <code>Bearer {access_token}</code><br />* Token must be fresh</p>\n","urlObject":{"path":["vendor","change_password"],"host":["{{url}}"],"query":[{"disabled":true,"key":"","value":null}],"variable":[]}},"response":[{"id":"9ab749c6-213b-49d3-9f10-1bc65ee8999a","name":"Change Password","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"pass\",\n    \"new_password\": \"password\"\n}"},"url":{"raw":"{{url}}/vendor/change_password","host":["{{url}}"],"path":["vendor","change_password"],"query":[{"key":"","value":null,"type":"text","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 21:13:32 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"65"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Your Password has been changed Successfully\"\n}"},{"id":"f47cba6b-1550-42b2-8d22-57c4e2ce219d","name":"Incorrect password","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"passwo\",\n    \"new_password\": \"password\"\n}"},"url":{"raw":"{{url}}/vendor/change_password","host":["{{url}}"],"path":["vendor","change_password"],"query":[{"key":"","value":null,"type":"text","disabled":true}]}},"status":"UNAUTHORIZED","code":401,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Mon, 10 Oct 2022 21:18:01 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"48"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Your Password is incorrect\"\n}"}],"_postman_id":"76576b87-5a95-43bf-869c-1872e5cbd680"},{"name":"Access Logout","id":"5036f3e5-b12b-4586-94dd-cfc83971b165","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/access_logout","description":"<h3 id=\"revokes-the-vendors-access-token-this-request-and-the-refresh-logout-must-both-pass-to-successfully-logout-a-vendor\">Revokes the Vendor's access token. This request and the Refresh Logout must both pass to successfully logout a Vendor.</h3>\n<p><code>Note:</code></p>\n<p>*   Must be logged in\n*   Authorization header must be set to <code>Bearer {access_token}</code></p>\n","urlObject":{"path":["vendor","access_logout"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"773d74c1-b9af-4f6d-a3de-860f7ae20caf","name":"Access Logout","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"}],"url":"{{url}}/vendor/access_logout"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 02:20:12 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"61"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Your access tokens have been logged out\"\n}"}],"_postman_id":"5036f3e5-b12b-4586-94dd-cfc83971b165"},{"name":"Refresh Logout","id":"2def4df4-42a1-444f-9069-d9e861781ab7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"}],"url":"{{url}}/vendor/refresh_logout","description":"<h3 id=\"revokes-the-vendors-refresh-token-this-request-and-the-access-logout-must-both-pass-to-successfully-logout-a-vendor\">Revokes the Vendor's refresh token. This request and the Access Logout must both pass to successfully logout a Vendor.</h3>\n<p><code>Note:</code></p>\n<p>*   Must be logged in\n*   Authorization header must be set to <code>Bearer {refresh_token}</code></p>\n","urlObject":{"path":["vendor","refresh_logout"],"host":["{{url}}"],"query":[],"variable":[]}},"response":[{"id":"a9d4773a-2470-4cef-b7bf-6ea77b9da191","name":"Refresh Logout","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{refresh_token}}","type":"text"}],"url":"{{url}}/vendor/refresh_logout"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"Werkzeug/2.2.2 Python/3.10.4"},{"key":"Date","value":"Tue, 11 Oct 2022 02:20:23 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"62"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Your refresh tokens have been logged out\"\n}"}],"_postman_id":"2def4df4-42a1-444f-9069-d9e861781ab7"}],"id":"2e15f61f-c17f-43d3-a912-ec3932e408d7","_postman_id":"2e15f61f-c17f-43d3-a912-ec3932e408d7","description":""}]}