{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Bvndle LAAS Docs","colors":{"primary":"#6B3B90","light":"#9176a1","dark":"#492669"},"logo":{"light":"https://mintcdn.com/bvndle/YHT3XZPfOJt_8SZV/logo/Bvndle%20Doc%20Logo.png?fit=max\u0026auto=format\u0026n=YHT3XZPfOJt_8SZV\u0026q=85\u0026s=bf962347cac7b7a92d49ba2a82262185","dark":"https://mintcdn.com/bvndle/YHT3XZPfOJt_8SZV/logo/Bvndle%20Doc%20Logo.png?fit=max\u0026auto=format\u0026n=YHT3XZPfOJt_8SZV\u0026q=85\u0026s=bf962347cac7b7a92d49ba2a82262185"},"favicon":"https://mintcdn.com/bvndle/ROO50JAPkwdL6nOD/favicon.svg?fit=max\u0026auto=format\u0026n=ROO50JAPkwdL6nOD\u0026q=85\u0026s=ac637c421ff1b157f51f1d3378a4afa1","appearance":{"default":"light","strict":true},"navbar":{"links":[{"href":"https://partner.bvndle.com/","label":"Go to Website"}],"primary":{"type":"button","label":"Sign up","href":"https://partner.bvndle.com/"}},"footer":{"socials":{"x":"https://x.com/trybvndle","linkedin":"https://www.linkedin.com/company/trybvndle/about"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bvndle","hasAudioNarration":false,"actualSubdomain":"bvndle","customDomains":["docs.bvndle.com"],"gitSource":{"type":"github","owner":"thrindleprojects","repo":"bvndle-lass-documentation","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae0cc7eb64cd9c8a5d43bed","collectionId":"cc773afc-63af-4328-b09f-969ea55658ca","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae0cc7eb64cd9c8a5d43bed"},"entitlements":{},"buildId":"6ae47df4e7bd3811c808c9f4","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"Bvndle Gamification","count":61},{"language":"default","tag":"Bvndle LAAS","count":31},{"language":"default","tag":"Bvndle SSO","count":12},{"language":"default","tag":"Streaks","count":11},{"language":"default","tag":"Coins","count":11},{"language":"default","tag":"Raffles","count":10},{"language":"default","tag":"Missions","count":9},{"language":"default","tag":"Spin Wheel","count":8},{"language":"default","tag":"User Tier","count":7},{"language":"default","tag":"Rules Engine","count":7}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":":root{--bvndle-primary:#6b3b90;--bvndle-secondary:#dc5695}img[alt=\"light logo\"]{height:80px}nav a>span{background:var(--bvndle-primary)!important}#navigation-items a{background-color:transparent!important;transition:font-weight .1s ease-in-out}#navigation-items a:hover{color:var(--bvndle-primary);font-weight:600}#navigation-items>div a{border-radius:0!important;border-left:2px solid transparent;margin-left:15px!important;padding-left:12px!important;padding-top:5px!important;padding-bottom:5px!important}#navigation-items>div a:is(.text-primary){border-left-color:var(--bvndle-secondary)}"}],"page":{"pagePath":"bvndle-sso/create-authorization-code-v2","slug":"/bvndle-sso/create-authorization-code-v2","pageMetadata":{"title":"Create Authorization Code (V2)","description":"Call this endpoint to create an authorization code using PKCE","href":"/bvndle-sso/create-authorization-code-v2"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Call this endpoint to create an authorization code using PKCE\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const EcosystemURLBlock=({content=[],title=``})=>{return _jsxs(`div`,{style:{backgroundColor:`#6B3B900A`,borderRadius:`8px`,borderColor:`#F8F8F8`},className:`mint-flex mint-flex-col mint-gap-4 mint-border mint-p-6`,children:[title\u0026\u0026_jsx(`p`,{className:`mint-font-bold mint-text-2xl`,style:{color:`#1C1C1C`,marginBlock:`0px`},children:title||``}),content.length>0\u0026\u0026content?.map((el,id)=>_jsxs(`div`,{className:`mint-flex mint-flex-col [\u0026>*]:mint-my-0 mint-gap-2`,children:[_jsxs(`div`,{className:`mint-flex mint-items-center mint-justify-between [\u0026>*]:mint-my-0`,style:{height:`fit-content`},children:[_jsx(`span`,{className:`mint-font-bold`,style:{color:`#1C1C1CCC`,marginBlock:`0px`},children:el.title}),_jsxs(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,onClick:async()=>{await navigator.clipboard.writeText(el.caption);alert(`Link copied!`)},children:[_jsx(`path`,{d:`M6 10C6 8.1144 6 7.1716 6.58579 6.58579C7.1716 6 8.1144 6 10 6H10.6667C12.5523 6 13.4951 6 14.0809 6.58579C14.6667 7.1716 14.6667 8.1144 14.6667 10V10.6667C14.6667 12.5523 14.6667 13.4951 14.0809 14.0809C13.4951 14.6667 12.5523 14.6667 10.6667 14.6667H10C8.1144 14.6667 7.1716 14.6667 6.58579 14.0809C6 13.4951 6 12.5523 6 10.6667V10Z`,stroke:`#191B1F`,\"stroke-opacity\":`0.6`,\"stroke-linecap\":`round`,\"stroke-linejoin\":`round`}),_jsx(`path`,{d:`M11.3334 6.00016C11.3318 4.02877 11.302 3.00764 10.7282 2.30845C10.6174 2.17342 10.4936 2.04962 10.3586 1.9388C9.62096 1.3335 8.52516 1.3335 6.3335 1.3335C4.14184 1.3335 3.04602 1.3335 2.30845 1.9388C2.17342 2.04961 2.04962 2.17342 1.9388 2.30845C1.3335 3.04602 1.3335 4.14184 1.3335 6.3335C1.3335 8.52516 1.3335 9.62096 1.9388 10.3586C2.04961 10.4936 2.17342 10.6174 2.30845 10.7282C3.00764 11.302 4.02877 11.3318 6.00016 11.3334`,stroke:`#191B1F`,\"stroke-opacity\":`0.6`,\"stroke-linecap\":`round`,\"stroke-linejoin\":`round`})]})]}),_jsx(`p`,{className:`mint-font-medium mint-text-sm mint-border-none`,style:{color:el.color||`#1C1C1CCC`},children:el.caption})]},id))]})};const Table=({data=[]})=>_jsxs(`div`,{className:`mint-text-sm mint-font-mono`,children:[_jsxs(`div`,{style:{gap:10,display:`grid`,padding:`5px 10px`,backgroundColor:`#F7F9FB`,color:`rgba(25,27,31,0.6)`,gridTemplateColumns:`repeat(3, minmax(0, 1fr))`},children:[_jsx(`span`,{children:`name`}),_jsx(`span`,{children:`type`}),_jsx(`span`,{children:`Description`})]}),data?.map((item,idx)=>_jsxs(`div`,{style:{gap:10,display:`grid`,padding:`8px 10px`,color:`rgba(25,27,31,0.8)`,gridTemplateColumns:`repeat(3, minmax(0, 1fr))`},children:[_jsx(`span`,{className:`mint-break-words`,children:item.name}),_jsx(`span`,{children:item.type}),_jsx(`span`,{children:item.desc})]},idx))]});const NoteStatement=({label,message})=>_jsxs(`div`,{className:`mint-relative mint-text-sm`,style:{borderRadius:16,padding:`1px 20px`,backgroundColor:`rgba(252,155,28,.06)`},children:[_jsxs(`p`,{style:{marginBlock:0},children:[label\u0026\u0026_jsxs(`span`,{children:[_jsx(`span`,{className:`mint-font-bold`,style:{color:`#fc9b1c`},children:label||`PS`}),message\u0026\u0026`: `]}),message]}),_jsx(`div`,{className:`mint-absolute mint-left-0 mint-top-1/2 mint--translate-y-1/2 mint-rounded-e-full`,style:{width:2,height:35,backgroundColor:`#fc9b1c`}})]});function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading,_MdxComponentBoundary}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`NoteStatement`,children:_jsx(NoteStatement,{label:`Note`,message:`Step 1 of 2: generate a cryptographically random codeVerifier and compute codeChallenge = BASE64URL(SHA256(codeVerifier)) without padding. Keep the verifier on the client for the token exchange; do not send it to this endpoint.`})}),`\n`,_jsx(Heading,{level:`4`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`EcosystemURLBlock`,children:_jsx(EcosystemURLBlock,{content:[{title:`URL`,caption:`https://test-api.bvndle.com/api/v2/ufel/users/authorization/authorization-code?scope=profile\u0026deviceType=mobile`,color:`#6B3B90`},{title:`Base URL`,caption:`https://test-api.bvndle.com/api/v2/ufel`,color:`#6B3B90`},{title:`HTTP Method`,caption:`POST`},{title:`Authentication`,caption:`None`}]})}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`NoteStatement`,children:_jsx(NoteStatement,{label:`Query Parameter`})}),`\n`,_jsx(_MdxComponentBoundary,{name:`Table`,children:_jsx(Table,{data:[{name:`scope`,type:`string`,desc:`Optional. One of fullname, email or profile. Defaults to profile. Send it in the query string; scope in the body is ignored.`},{name:`deviceType`,type:`string`,desc:`Optional. Either mobile or web. Selects the registered redirect URL when redirectUrl is omitted. Other values are rejected.`}]})}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`NoteStatement`,children:_jsx(NoteStatement,{label:`Request Body`})}),`\n`,_jsx(_MdxComponentBoundary,{name:`Table`,children:_jsx(Table,{data:[{name:`clientId`,type:`string`,desc:`Required. The client ID issued to the SSO partner application.`},{name:`tag`,type:`string`,desc:`Required. The user's unique tag.`},{name:`password`,type:`string`,desc:`Required. The user's account password.`},{name:`codeChallenge`,type:`string`,desc:`Required. BASE64URL(SHA256(codeVerifier)) without padding: exactly 43 characters using A-Z, a-z, 0-9, - and _. Hex digests and standard or padded Base64 are rejected.`},{name:`codeChallengeMethod`,type:`string`,desc:`Required. Must be S256. The plain method is not supported.`},{name:`redirectUrl`,type:`string (URI)`,desc:`Optional. Must not contain a query string. If omitted, uses the registered mobile or web URL selected by deviceType when configured, otherwise the default redirect URL.`},{name:`state`,type:`string`,desc:`Optional. A random value for each login attempt, 1–512 characters. Returned in the redirect URL for the client to check. Omit instead of sending an empty string.`}]})}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsxs(_components.p,{children:[`Generate a verifier of 43–128 characters using only `,_jsx(_components.code,{children:`A-Z`}),`, `,_jsx(_components.code,{children:`a-z`}),`, `,_jsx(_components.code,{children:`0-9`}),`, `,_jsx(_components.code,{children:`-`}),`, `,_jsx(_components.code,{children:`.`}),`, `,_jsx(_components.code,{children:`_`}),` and `,_jsx(_components.code,{children:`~`}),`. For example, in Node.js:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` crypto`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` require`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"crypto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` codeVerifier`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` crypto`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`randomBytes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`32`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`toString`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"base64url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` codeChallenge`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` crypto`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`createHash`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"sha256\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`update`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`codeVerifier`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`digest`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"base64url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` state`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` crypto`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`randomBytes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`16`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`toString`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"hex\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The fixed challenge in the cURL example corresponds to the verifier shown on the `,_jsx(_components.a,{href:`/bvndle-sso/get-sso-access-token-v2`,children:`Get SSO Access Token (V2)`}),` page. Generate a fresh pair for each login.`]}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`11`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`11`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --request`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'https://test-api.bvndle.com/api/v2/ufel/users/authorization/authorization-code?scope=profile\u0026deviceType=mobile'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`--header `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'Content-Type: application/json'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`--data-raw `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"clientId\": \"\u003cyour-client-id>\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"tag\": \"\u003cuser-tag>\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"password\": \"\u003cuser-password>\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"codeChallenge\": \"Zb25qaaHzAyaS5_YK9-tj0YcmNnggu0bjvutHn2-Js0\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"codeChallengeMethod\": \"S256\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"state\": \"7f3c9a1e5b2d48c6a0e1f4b7d9c23e68\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`}'`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`NoteStatement`,children:_jsx(NoteStatement,{label:`Response`,message:`This endpoint returns JSON, not an HTTP redirect. Read authorization-code and state from the query string of data.redirectUrl. If you sent state, URL-decode it and compare it with the saved value before exchanging the code. Stop the login if it is missing or different. Step 2 does not return state.`})}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`NoteStatement`,children:_jsx(NoteStatement,{label:`Expiry`,message:`The authorization code expires after 30 minutes and can be exchanged only once. Each new authorization request replaces the user's previous code, challenge and state. The SSO token is created at this step and expires after 15 minutes, so exchange the code immediately.`})}),`\n`,_jsxs(_components.p,{children:[`Continue with `,_jsx(_components.a,{href:`/bvndle-sso/get-sso-access-token-v2`,children:`Get SSO Access Token (V2)`}),`, sending the authorization code and original verifier.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{EcosystemURLBlock,Table,NoteStatement,default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create Authorization Code (V2)","description":"Call this endpoint to create an authorization code using PKCE","href":"/bvndle-sso/create-authorization-code-v2"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[153,3376,")=>null;const Table=()=>null;const NoteStatement=()=>null;fu"],[3537,3541,"ResponseExample,_Mdx"],[3678,3693,"ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!_MdxComponentBo"],[15302,16847,"_jsxs(ResponseExample,{children:[_jsx(CodeBlock,{filename:`Success`,numberOfLines:`7`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"RedirectUrl and authorization code fetched successfully\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"redirectUrl\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://google.com?authorization-code=GDTC1ZHSNSEO95QDXMCT\u0026state=7f3c9a1e5b2d48c6a0e1f4b7d9c23e68\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Error 400`,numberOfLines:`9`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`9`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"failed\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"invalid data provided\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"errorType\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"invalid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"appErrorCode\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Unsupported code challenge method\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`NoteStatement`,children:_jsx(NoteStatement,{label:`Response`,message:`This endpoint returns JSON, not an HTTP redirect. Read authorization-code and state from the query string of data.redirectUrl. If you sent state, URL-decode it and compare it with the saved value before exchanging the code. Stop the login if it is missing or different. Step 2 does not return state.`})}),`\n`,_jsx(Heading,{level:`3`,id:``}),`\n`,_jsx(_MdxComponentBoundary,{name:`NoteStatement`,children:_jsx(NoteStatement,{label:`Expiry`,message:`The authorization code expires after 30 minutes and can be exchanged only once. Each new authorization request replaces the user's previous code, challenge and state. The SSO token is created at this step and expires after 15 minutes, so exchange the code immediately.`})}),`\n`,_jsxs(_components.p,{children:[`Continue with `,_jsx(_components.a,{href:`/bvndle-sso/get-sso-access-token-v2`,children:`Get SSO Access Token (V2)`}),`, sending the authorization code and original verifier.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{EcosystemURLBlock,Table,NoteStatement,default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}"]]},"mdxExtracts":{"tableOfContents":[],"codeExamples":{"response":{"type":"ResponseExample","children":[{"filename":"Success","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"7\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"status\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"RedirectUrl and authorization code fetched successfully\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"redirectUrl\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"https://google.com?authorization-code=GDTC1ZHSNSEO95QDXMCT\u0026#x26;state=7f3c9a1e5b2d48c6a0e1f4b7d9c23e68\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Error 400","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"9\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"status\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"failed\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"invalid data provided\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"errorType\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"invalid\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"appErrorCode\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Unsupported code challenge method\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]}}},"jsLinks":[],"dynamicCss":".mint-absolute {\n position: absolute\n}\n.mint-relative {\n position: relative\n}\n.mint-left-0 {\n left: 0px\n}\n.mint-top-1\\/2 {\n top: 50%\n}\n.mint-flex {\n display: flex\n}\n.mint--translate-y-1\\/2 {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))\n}\n.mint-flex-col {\n flex-direction: column\n}\n.mint-items-center {\n align-items: center\n}\n.mint-justify-between {\n justify-content: space-between\n}\n.mint-gap-2 {\n gap: 0.5rem\n}\n.mint-gap-4 {\n gap: 1rem\n}\n.mint-break-words {\n overflow-wrap: break-word\n}\n.mint-rounded-e-full {\n border-start-end-radius: 9999px;\n border-end-end-radius: 9999px\n}\n.mint-border {\n border-width: 1px\n}\n.mint-border-none {\n border-style: none\n}\n.mint-p-6 {\n padding: 1.5rem\n}\n.mint-font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace\n}\n.mint-text-2xl {\n font-size: 1.5rem;\n line-height: 2rem\n}\n.mint-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem\n}\n.mint-font-bold {\n font-weight: 700\n}\n.mint-font-medium {\n font-weight: 500\n}\n.\\[\\\u0026\\>\\*\\]\\:mint-my-0>* {\n margin-top: 0px;\n margin-bottom: 0px\n}","subdomain":"bvndle","siteName":"Bvndle LAAS Docs","title":"Create Authorization Code (V2) - Bvndle LAAS Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-30T11:22:36.252Z","originalFileLocation":"bvndle-sso/create-authorization-code-v2.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Call this endpoint to create an authorization code using PKCE\">\u003cmeta data-mint-head name=\"application-name\" content=\"Bvndle LAAS Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create Authorization Code (V2) - Bvndle LAAS Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Call this endpoint to create an authorization code using PKCE\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Bvndle LAAS Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bvndle.mintlify.app/_mintlify/api/og/v2?division=Bvndle+SSO\u0026amp;title=Create+Authorization+Code+%28V2%29\u0026amp;description=Call+this+endpoint+to+create+an+authorization+code+using+PKCE\u0026amp;theme=3c667bc5cadf2e848fca5e12\u0026amp;signature=fbc3967f1866e2cfda4d5648e78c2a98eb78de02cbda3f5ebddb3faf62037c16\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create Authorization Code (V2) - Bvndle LAAS Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Call this endpoint to create an authorization code using PKCE\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bvndle.mintlify.app/_mintlify/api/og/v2?division=Bvndle+SSO\u0026amp;title=Create+Authorization+Code+%28V2%29\u0026amp;description=Call+this+endpoint+to+create+an+authorization+code+using+PKCE\u0026amp;theme=3c667bc5cadf2e848fca5e12\u0026amp;signature=fbc3967f1866e2cfda4d5648e78c2a98eb78de02cbda3f5ebddb3faf62037c16\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/bvndle/okcXT8anikfvjFAx/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Bvndle LAAS Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6B3B90\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/bvndle-sso/create-authorization-code-v2.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.bvndle.com/#organization\",\"name\":\"Bvndle LAAS Docs\",\"url\":\"https://docs.bvndle.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/bvndle/YHT3XZPfOJt_8SZV/logo/Bvndle%20Doc%20Logo.png?fit=max\u0026auto=format\u0026n=YHT3XZPfOJt_8SZV\u0026q=85\u0026s=bf962347cac7b7a92d49ba2a82262185\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.bvndle.com#website\",\"name\":\"Bvndle LAAS Docs\",\"url\":\"https://docs.bvndle.com\",\"publisher\":{\"@id\":\"https://docs.bvndle.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2#webpage\",\"url\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2\",\"name\":\"Create Authorization Code (V2)\",\"description\":\"Call this endpoint to create an authorization code using PKCE\",\"dateModified\":\"2026-10-30T11:22:36.252Z\",\"isPartOf\":{\"@id\":\"https://docs.bvndle.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Bvndle SSO\",\"item\":\"https://docs.bvndle.com/bvndle-sso/get-started-web\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create Authorization Code (V2)\",\"item\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2#article\",\"headline\":\"Create Authorization Code (V2)\",\"name\":\"Create Authorization Code (V2)\",\"description\":\"Call this endpoint to create an authorization code using PKCE\",\"url\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2\",\"mainEntityOfPage\":{\"@id\":\"https://docs.bvndle.com/bvndle-sso/create-authorization-code-v2#webpage\"},\"dateModified\":\"2026-10-30T11:22:36.252Z\",\"publisher\":{\"@id\":\"https://docs.bvndle.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.bvndle.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Bvndle LAAS Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Bvndle LAAS Docs","nav":{"global":null,"pages":[{"group":"Bvndle Developers","pages":[{"title":"Get Started","href":"/bvndle-developers"}]},{"group":"Bvndle LAAS","pages":[{"title":"Get Started","href":"/get-started"},{"group":"Onboarding","pages":[{"title":"Onboarding","href":"/onboarding/onboarding"},{"title":"Onboarding - Bulk","href":"/onboarding/onboarding-bulk"},{"title":"Authentication","href":"/onboarding/authentication"},{"title":"User onboarding - Remove a single user","href":"/onboarding/remove-single-user"},{"title":"User onboarding - Remove onboarded users (bulk)","href":"/onboarding/remove-bulk-users"}]},{"group":"Rules Engine","pages":[{"title":"Create Rules","href":"/rules-engine/create-rules"},{"title":"Edit Rule","href":"/rules-engine/edit-rules"},{"title":"Award","href":"/rules-engine/award"},{"title":"Get all Rules","href":"/rules-engine/get-all-rules"},{"title":"Get a Rule","href":"/rules-engine/get-a-rule"},{"title":"Get Award Rule Status","href":"/rules-engine/get-award-rule-status"},{"title":"Award Rule (async)","href":"/rules-engine/award-rule(async)"}]},{"group":"Gift Card","pages":[{"title":"Create Gift Card","href":"/gift-card/create-gift-card"}]},{"group":"Coins","pages":[{"title":"Get a User coin Balance Rule","href":"/coins/get-coin-balance"},{"title":"Get Partner Specific Coin for User","href":"/coins/get-partner-specific-coin-for-user"},{"title":"Get User Transaction History","href":"/coins/get-user-transaction-history"},{"title":"Get Leaderboard","href":"/coins/get-leaderboard"},{"title":"User-Partner Coin Redemption","href":"/coins/user-partner-coin-redemption"},{"title":"Partner-User Coin Redemption","href":"/coins/partner-user-coin-redemption"},{"title":"Debit Multiple Wallets","href":"/coins/debit-multiple-wallets"},{"group":"V2","pages":[{"title":"User-Partner Coin Redemption","href":"/coins/v2/user-partner-coin-redemption"},{"title":"Partner-User Coin Redemption","href":"/coins/v2/partner-user-coin-redemption"},{"title":"Debit Multiple Wallets","href":"/coins/v2/debit-multiple-wallets"},{"title":"Get Transfer Status","href":"/coins/get-transfer-status"}]}]},{"group":"Trending Deals","pages":[{"title":"Get Url","href":"/trending-deals/get-url"}]},{"group":"Webhook","pages":[{"title":"Onboarding","href":"/webhook/onboarding"},{"title":"Coin Debit","href":"/webhook/coin-debit"},{"title":"Coin Credit","href":"/webhook/coin-credit"},{"title":"Rule Awarded","href":"/webhook/rule-awarded"},{"title":"User Tag Update","href":"/webhook/user-tag-update"}]}]},{"group":"Bvndle SSO","pages":[{"title":"Getting Started - Web","href":"/bvndle-sso/get-started-web"},{"title":"Getting Started - Mobile","href":"/bvndle-sso/get-started-mobile"},{"title":"Onboard Partners","href":"/bvndle-sso/onboard-partners"},{"title":"Partner Login","href":"/bvndle-sso/partner-login"},{"title":"Update Partner's Details","href":"/bvndle-sso/update-partners-details"},{"title":"Create Authorization Code","description":"Call this endpoint to get authorization code from the auth server","href":"/bvndle-sso/create-authorization-code"},{"title":"Create Authorization Code (V2)","href":"/bvndle-sso/create-authorization-code-v2"},{"title":"Get SSO Access Token","description":"Call this endpoint to get SSO access token (JWT) that contains the user's information","href":"/bvndle-sso/get-sso-access-token"},{"title":"Get SSO Access Token (V2)","href":"/bvndle-sso/get-sso-access-token-v2"},{"title":"Create Tag","href":"/bvndle-sso/create-tag"},{"title":"Verify Tag","href":"/bvndle-sso/verify-tag"},{"title":"Get User Tag","href":"/bvndle-sso/get-user-tag"},{"title":"Find User Tag","href":"/bvndle-sso/find-user-tag"},{"title":"Link Bvndle Tag to LAAS User Account","href":"/bvndle-sso/link-bvndle-to-laas"}]},{"group":"Bvndle Gamification","pages":[{"title":"Authentication","href":"/bvndle-gamification/authentication"},{"group":"Missions","pages":[{"title":"Create Mission","href":"/bvndle-gamification/missions/create-mission"},{"title":"Get Mission","href":"/bvndle-gamification/missions/get-mission"},{"title":"Get Missions","href":"/bvndle-gamification/missions/get-missions"},{"title":"Update Mission","href":"/bvndle-gamification/missions/update-mission"},{"title":"Start Mission","href":"/bvndle-gamification/missions/start-mission"},{"title":"Complete Mission","href":"/bvndle-gamification/missions/complete-mission"},{"title":"User Active Missions","href":"/bvndle-gamification/missions/user-active-missions"},{"title":"Active Missions","href":"/bvndle-gamification/missions/active-missions"},{"title":"Activity Log","href":"/bvndle-gamification/missions/activity-log"}]},{"group":"User Tier","pages":[{"title":"Create User Tier","href":"/bvndle-gamification/user-tier/create-user-tier"},{"title":"Get User Tier","href":"/bvndle-gamification/user-tier/get-user-tier"},{"title":"Get All User Tier","href":"/bvndle-gamification/user-tier/get-all-user-tier"},{"title":"Delete User Tier","href":"/bvndle-gamification/user-tier/delete-user-tier"},{"title":"Update User Tier","href":"/bvndle-gamification/user-tier/update-user-tier"},{"title":"Upgrade User Tier","href":"/bvndle-gamification/user-tier/upgrade-user-tier"},{"title":"Set First Tier to User","href":"/bvndle-gamification/user-tier/set-first-tier-to-user"}]},{"title":"Get Leaderboard","href":"/bvndle-gamification/get-leaderboard"},{"group":"Raffles","pages":[{"title":"Get Raffles","href":"/bvndle-gamification/raffles/get-raffles"},{"title":"Get Raffle","href":"/bvndle-gamification/raffles/get-raffle"},{"title":"Create Raffle","href":"/bvndle-gamification/raffles/create-raffle"},{"title":"End Raffle","href":"/bvndle-gamification/raffles/end-raffle"},{"title":"Get Active Raffle","href":"/bvndle-gamification/raffles/get-active-raffle"},{"title":"Pause Raffle","href":"/bvndle-gamification/raffles/pause-raffle"},{"title":"Resume Raffle","href":"/bvndle-gamification/raffles/resume-raffle"},{"title":"Get Entry Fee","href":"/bvndle-gamification/raffles/get-entry-fee"},{"title":"Join Raffle","href":"/bvndle-gamification/raffles/join-raffle"},{"title":"Winner Leaderboard","href":"/bvndle-gamification/raffles/winner-leaderboard"}]},{"group":"Spin Wheel","pages":[{"title":"Get Spin Wheels","href":"/bvndle-gamification/spin-wheel/get-spin-wheels"},{"title":"Get A Spin Wheel","href":"/bvndle-gamification/spin-wheel/get-a-spin-wheel"},{"title":"Get Active Spin Wheel","href":"/bvndle-gamification/spin-wheel/get-active-spin-wheel"},{"title":"Create Spin Wheel","href":"/bvndle-gamification/spin-wheel/create-spin-wheel"},{"title":"Manage Spin Wheel Prize","href":"/bvndle-gamification/spin-wheel/manage-wheel-prize"},{"title":"Update Spin Wheel Prize","href":"/bvndle-gamification/spin-wheel/update-spin-wheel-prize"},{"title":"Spin A Wheel","href":"/bvndle-gamification/spin-wheel/spin-wheel"},{"title":"Spin Wheel History","href":"/bvndle-gamification/spin-wheel/spin-wheel-history"}]},{"group":"Streaks","pages":[{"title":"Create Streak","href":"/bvndle-gamification/streaks/create-streak"},{"title":"Get Streak","href":"/bvndle-gamification/streaks/get-streak"},{"title":"Update Streak","href":"/bvndle-gamification/streaks/update-streak"},{"title":"Update Streak Reward","href":"/bvndle-gamification/streaks/update-streak-reward"},{"title":"Create a Daily Streak Reward","href":"/bvndle-gamification/streaks/create-daily-streak-reward"},{"title":"Get Streaks","href":"/bvndle-gamification/streaks/get-streaks"},{"title":"Get Streak Rewards","href":"/bvndle-gamification/streaks/get-streak-rewards"},{"title":"Add Reward for Streak","href":"/bvndle-gamification/streaks/add-reward-for-streak"},{"title":"Award Streak Rule","href":"/bvndle-gamification/streaks/award-streak-rule"},{"title":"All Streaks Users","href":"/bvndle-gamification/streaks/all-streaks-users"},{"title":"Get User Streaks","href":"/bvndle-gamification/streaks/get-user-streaks"}]},{"group":"Badges","pages":[{"title":"Create Badge","href":"/bvndle-gamification/badge/create-badge"},{"title":"Get Partner Badges","href":"/bvndle-gamification/badge/get-partner-badges"},{"title":"Get Badge","href":"/bvndle-gamification/badge/get-badge"},{"title":"Update Badge","href":"/bvndle-gamification/badge/update-badge"}]},{"group":"Tickets","pages":[{"title":"Create Ticket","href":"/bvndle-gamification/tickets/create-ticket"},{"title":"Get Tickets","href":"/bvndle-gamification/tickets/get-tickets"},{"title":"Get Ticket","href":"/bvndle-gamification/tickets/get-ticket"},{"title":"Update Ticket","href":"/bvndle-gamification/tickets/update-ticket"},{"title":"Get User Tickets","href":"/bvndle-gamification/tickets/get-user-ticket"}]},{"group":"Special Campaign","pages":[{"title":"Create Special Campaign","href":"/bvndle-gamification/special-campaign/create-special-campaign"},{"title":"Get a Special Campaign","href":"/bvndle-gamification/special-campaign/get-special-campaign"},{"title":"Get Partner Special Campaigns","href":"/bvndle-gamification/special-campaign/get-partner-special-campaigns"},{"title":"Stop Special Campaign","href":"/bvndle-gamification/special-campaign/stop-special-campaign"},{"title":"Get Participants","href":"/bvndle-gamification/special-campaign/get-participants"}]}]}]},"title":"Create Authorization Code (V2) - Bvndle LAAS Docs","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":["2b790eda92"],"chunks":["ApiExamples-FJpQavWq.js","utils-CWQmgYtH.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","cloneDeep-izs3Hzxb.js","utils-4-Aw3rSD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D_GvPF7k.js","shallow-Bs2ZB0NO.js","snippetPresets-DFmpFA7C.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","getApiPlaygroundDisplay-DCcqJJk-.js","CodeSnippet-DzDxawVe.js","CodeSnippets-aUr7fU-7.js"]}