{"info":{"_postman_id":"51815da3-8878-43c4-ad8b-6ddf2bbe1f76","name":"Micro-Okta","description":"<html><head></head><body><h2 id=\"integrating-micro-okta-with-your-web-app\">Integrating Micro-Okta with your web app</h2>\n<blockquote>\n<p>App Should Have Two login routes</p>\n</blockquote>\n<ul>\n<li><strong>/login</strong><ul>\n<li>Takes email &amp; password from user.</li>\n<li>Redirects to micro-okta.herokuapp.com/login?id={email}&amp;pass={password}</li>\n</ul>\n</li>\n<li><strong>/login_callback</strong><ul>\n<li>Takes OTP from user.</li>\n<li>Redirects to micro-okta.herokuapp.com/verify-otp?pin={OTP}</li>\n</ul>\n</li>\n</ul>\n<blockquote>\n<p>Every Protected Page Should have these Scripts in Head</p>\n</blockquote>\n<ul>\n<li><a href=\"https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js\"><code>https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js</code></a></li>\n<li><a href=\"https://cdn.jsdelivr.net/gh/MFA9000/micro-okta/protect.js\"><code>https://cdn.jsdelivr.net/gh/MFA9000/micro-okta/protect.js</code></a></li>\n</ul>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"18050350","collectionId":"51815da3-8878-43c4-ad8b-6ddf2bbe1f76","publishedId":"UVR7L8nt","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2021-12-14T18:15:10.000Z"},"item":[{"name":"Rest-API","item":[{"name":"api/login","id":"cdcfae39-3396-4280-91a2-e99032cf6a53","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/api/login?email=gnext9000@gmail.com&pass=mfa9000@","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Validate Credentials</li>\n<li>sends OTP</li>\n<li>Create Session token</li>\n</ul>\n<h4 id=\"return\">Return</h4>\n<ul>\n<li>If <strong>Valid Credentials</strong><ul>\n<li>Auth\": \"Success\"</li>\n<li>email : email_id</li>\n<li>token : session_token</li>\n</ul>\n</li>\n<li>If <strong>Invalid Credentials</strong><ul>\n<li>Auth\": \"Fail\"</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["api","login"],"host":["micro-okta","herokuapp","com"],"query":[{"description":{"content":"<p>email</p>\n","type":"text/plain"},"key":"email","value":"gnext9000@gmail.com"},{"description":{"content":"<p>password</p>\n","type":"text/plain"},"key":"pass","value":"mfa9000@"}],"variable":[]}},"response":[],"_postman_id":"cdcfae39-3396-4280-91a2-e99032cf6a53"},{"name":"api/verify-otp","id":"5e2506f6-0cab-4794-8ac5-3baadc6f1645","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/api/verify-otp?email=gnext9000@gmail.com&pin=515225&token=20111PegrgGsBqA2RoRx2kAx5R7k--LHQuXsyPvYAC_C08tXVLcNom5","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Validate OTP</li>\n<li>Create Session from Session_token</li>\n</ul>\n<h4 id=\"return\"><strong>Return</strong></h4>\n<ul>\n<li>If <strong>Valid OTP</strong><ul>\n<li>Auth : \"Success\"</li>\n<li>session_id : session_id</li>\n<li>user_id : user_id</li>\n<li>email : email_id</li>\n</ul>\n</li>\n<li>If <strong>Invalid OTP</strong><ul>\n<li>Auth : \"Fail\"</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["api","verify-otp"],"host":["micro-okta","herokuapp","com"],"query":[{"description":{"content":"<p>Email</p>\n","type":"text/plain"},"key":"email","value":"gnext9000@gmail.com"},{"description":{"content":"<p>OTP </p>\n","type":"text/plain"},"key":"pin","value":"515225"},{"description":{"content":"<p>Session-Token</p>\n","type":"text/plain"},"key":"token","value":"20111PegrgGsBqA2RoRx2kAx5R7k--LHQuXsyPvYAC_C08tXVLcNom5"}],"variable":[]}},"response":[],"_postman_id":"5e2506f6-0cab-4794-8ac5-3baadc6f1645"},{"name":"api/validate","id":"fddce3d1-bb99-48c8-b9a0-bde5cb923844","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/api/validate?session_id=102Rl0XflYCTEa8OB4OsLzJHA","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Validate Session_id</li>\n</ul>\n<h4 id=\"return\"><strong>Return</strong></h4>\n<ul>\n<li>If <strong>Valid Session</strong><ul>\n<li>Auth : \"Success\"</li>\n</ul>\n</li>\n<li>If <strong>Invalid Session</strong><ul>\n<li>Auth : \"Fail\"</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["api","validate"],"host":["micro-okta","herokuapp","com"],"query":[{"key":"session_id","value":"102Rl0XflYCTEa8OB4OsLzJHA"}],"variable":[]}},"response":[],"_postman_id":"fddce3d1-bb99-48c8-b9a0-bde5cb923844"},{"name":"api/info","id":"d5e5c0a5-6f9a-4534-9d91-577bfe5b519e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/api/info?session_id=102Rl0XflYCTEa8OB4OsLzJHA","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Fetch User info</li>\n</ul>\n<h4 id=\"return\"><strong>Return</strong></h4>\n<ul>\n<li>User Info JSON object</li>\n</ul>\n","urlObject":{"protocol":"https","path":["api","info"],"host":["micro-okta","herokuapp","com"],"query":[{"key":"session_id","value":"102Rl0XflYCTEa8OB4OsLzJHA"}],"variable":[]}},"response":[],"_postman_id":"d5e5c0a5-6f9a-4534-9d91-577bfe5b519e"},{"name":"api/name","id":"b801b63c-61f9-4f15-8b85-90dad15b657c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/api/name?session_id=102Rl0XflYCTEa8OB4OsLzJHA","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Fetch User Name</li>\n</ul>\n<h4 id=\"return\"><strong>Return</strong></h4>\n<ul>\n<li>User Name</li>\n</ul>\n","urlObject":{"protocol":"https","path":["api","name"],"host":["micro-okta","herokuapp","com"],"query":[{"key":"session_id","value":"102Rl0XflYCTEa8OB4OsLzJHA"}],"variable":[]}},"response":[],"_postman_id":"b801b63c-61f9-4f15-8b85-90dad15b657c"}],"id":"4705c1e1-e6c7-4e49-9119-657362040871","description":"<p>For Stateless Operations</p>\n","_postman_id":"4705c1e1-e6c7-4e49-9119-657362040871"},{"name":"Session-Callback-API","item":[{"name":"Auth","id":"046b7649-5186-4ec3-a9c3-a6a1dc42211f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/Auth?callback=https://demoplix1.herokuapp.com","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Checks for Previous Available Session ( session['session_id'] )</li>\n<li>Validate Session Status</li>\n<li>Stores Cookies in session<ul>\n<li>session['callback']</li>\n<li>session['domain'] (root domain of callback)</li>\n</ul>\n</li>\n</ul>\n<h4 id=\"return\">Return</h4>\n<ul>\n<li>If <strong>Valid Session</strong><ul>\n<li>redirect callback?session_id</li>\n</ul>\n</li>\n<li>If <strong>Invalid Session</strong><ul>\n<li>redirect domain/login</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["Auth"],"host":["micro-okta","herokuapp","com"],"query":[{"description":{"content":"<p>Callback_URL</p>\n","type":"text/plain"},"key":"callback","value":"https://demoplix1.herokuapp.com"}],"variable":[]}},"response":[],"_postman_id":"046b7649-5186-4ec3-a9c3-a6a1dc42211f"},{"name":"login","id":"322ff48c-06a5-4646-8d2e-31d15c4d6b5b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/login?id=gnext9000@gmail.com&pass=mfa9000@","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Validate User Credentials</li>\n<li>Sends OTP</li>\n<li>Create Session_token</li>\n<li>Stores Cookies in session<ul>\n<li>session['Session_token']</li>\n<li>session['user'] (Email)</li>\n</ul>\n</li>\n</ul>\n<h4 id=\"return\">Return</h4>\n<ul>\n<li>If <strong>Valid Credentials</strong><ul>\n<li>redirect domain/login_callback</li>\n</ul>\n</li>\n<li>If <strong>Invalid Credentials</strong><ul>\n<li>redirect domain/login</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["login"],"host":["micro-okta","herokuapp","com"],"query":[{"description":{"content":"<p>Email</p>\n","type":"text/plain"},"key":"id","value":"gnext9000@gmail.com"},{"description":{"content":"<p>Password</p>\n","type":"text/plain"},"key":"pass","value":"mfa9000@"}],"variable":[]}},"response":[],"_postman_id":"322ff48c-06a5-4646-8d2e-31d15c4d6b5b"},{"name":"verify-otp","id":"256c562a-a40d-4c37-b0ca-0f2adea2f8d9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/verify-otp?pin=396076","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Validate OTP</li>\n<li>Create Session from Session_token</li>\n<li>Stores Cookies in session<ul>\n<li>session['Session_id']</li>\n<li>session['User_id']</li>\n</ul>\n</li>\n</ul>\n<h4 id=\"return\">Return</h4>\n<ul>\n<li>If <strong>Valid OTP</strong><ul>\n<li>redirect callback?session_id</li>\n</ul>\n</li>\n<li>If <strong>Invalid OTP</strong><ul>\n<li>redirect domain/login</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["verify-otp"],"host":["micro-okta","herokuapp","com"],"query":[{"description":{"content":"<p>OTP</p>\n","type":"text/plain"},"key":"pin","value":"396076"}],"variable":[]}},"response":[],"_postman_id":"256c562a-a40d-4c37-b0ca-0f2adea2f8d9"},{"name":"logout","id":"ccaadeb6-33a0-420c-ba13-6b6296b8bfc3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://micro-okta.herokuapp.com/logout","description":"<h4 id=\"work\">Work</h4>\n<ul>\n<li>Erase All Session Cookies</li>\n</ul>\n<h4 id=\"return\">Return</h4>\n<ul>\n<li>redirect callback</li>\n</ul>\n","urlObject":{"protocol":"https","path":["logout"],"host":["micro-okta","herokuapp","com"],"query":[],"variable":[]}},"response":[],"_postman_id":"ccaadeb6-33a0-420c-ba13-6b6296b8bfc3"}],"id":"6f3a26d7-3d0b-4d02-a427-6b3d866f0a91","description":"<h4 id=\"this-api-works-on-sessions--callbacks\">This API Works on Sessions &amp; Callbacks</h4>\n<blockquote>\n<p>There is a Specific Session For each browser in the Microservice</p>\n</blockquote>\n<blockquote>\n<p>There is a Specific Order That Must be retained for any endpoint call</p>\n</blockquote>\n<ul>\n<li>/Auth</li>\n<li>/login</li>\n<li>/verify-otp</li>\n<li>/logout</li>\n</ul>\n","_postman_id":"6f3a26d7-3d0b-4d02-a427-6b3d866f0a91"}]}