Only a super Admin user is allowed to proceed with this flow.Make sure to either:
Send a valid Authorization header with of type Bearer TOKEN_VALUE where TOKEN_VALUE is the token generated for the super admin.
In case your app supports cookie, you can enable request cookies as our API Automatically sets a cookie named session-token which is forwarded with each request to our api.
To generate an access token for a machine or service user, you will first need to obtain the machine user’s client ID and secret.
These credentials can be used to authenticate and gain access to the API programmatically.
1
Obtain Machine User Credentials
First, create a machine user by making a POST request to the appropriate endpoint
(as described in this section).
The response will include the machine user’s clientId and clientSecret.
2
Generate Access Token
Use the clientId and clientSecret obtained from the machine user creation
API to generate an access token.
The access token is required to authenticate subsequent API requests.
{"docsConfig":{"$schema":"https://mintlify.com/docs.json","theme":"mint","name":"Locai IAM Service Docs","colors":{"primary":"#0D9373","light":"#07C983","dark":"#0D9373"},"favicon":"/images/favicon.png","logo":{"light":"https://mintlify.s3-us-west-1.amazonaws.com/locai-a2c1f1e4/logo/locai-logo.svg","dark":"https://mintlify.s3-us-west-1.amazonaws.com/locai-a2c1f1e4/logo/locai-light-logo.svg"},"navbar":{"primary":{"type":"button","label":"API Playground","href":"https://dev-iam.razi.ai/docs"}},"seo":{"metatags":{"og:title":"Locai IAM Service Docs","og:image":"/images/favicon.png","og:description":"Docs for IAM Service related modules","og:logo":"/logo/locai-logo.svg"},"indexing":"all"},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/locai","github":"https://github.com/LocAI1/iam-service"}},"navigation":{"global":{"anchors":[{"anchor":"Slack","href":"https://locai-workspace.slack.com/archives/C07GY8L0NPK","icon":{"name":"slack","style":"solid"}},{"anchor":"Contribute","href":"https://github.com/LocAI1/iam-service/pulls","icon":{"name":"code-pull-request","style":"solid"}},{"anchor":"Feature Request / Issues","href":"https://github.com/LocAI1/iam-service/issues","icon":{"name":"scrubber","style":"regular"}}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"locai-a2c1f1e4","hasAudioNarration":false,"actualSubdomain":"locai-a2c1f1e4","customDomains":["iam-docs.razi.ai"],"gitSource":{"type":"github","owner":"locai1","repo":"iam-docs-v1","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a21e64a94a5dc2e6daf38e1","collectionId":"2321d05c-6625-4d9a-bc69-e0dada2d6805","schemaVersion":"v2"},"entitlements":{},"buildId":"6a21e64a94a5dc2e6daf38e1:success","clientVersion":"0.0.3971","searchFilterCounts":[{"language":"default","tag":"API Tutorials","count":74},{"language":"default","tag":"Libraries","count":62},{"language":"default","tag":"API Reference","count":40},{"language":"default","tag":"React SDK","count":30},{"language":"default","tag":"Authorization","count":21},{"language":"default","tag":"Multi Tenancy","count":16},{"language":"default","tag":"Hooks","count":15},{"language":"default","tag":"Authentication","count":14},{"language":"default","tag":"Organization Management","count":10},{"language":"default","tag":"Authenticated Flows","count":8}]},"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":"editor-v7-file-tree","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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"editor-agent-model-picker","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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-tutorials/authenticated-flows/generate-machine-user-token","slug":"/api-tutorials/authenticated-flows/generate-machine-user-token","pageMetadata":{"title":"Access Token Generation for Machine User","description":null,"sidebar_position":2,"icon":"universal-access","iconType":"solid","href":"/api-tutorials/authenticated-flows/generate-machine-user-token"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Info,Step,Steps,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(Warning,{children:[_jsx(_components.p,{children:`Only a super Admin user is allowed to proceed with this flow.`}),_jsx(_components.p,{children:`Make sure to either:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Send a valid `,_jsx(_components.code,{children:`Authorization`}),` header with of type `,_jsx(_components.code,{children:`Bearer TOKEN_VALUE`}),` where `,_jsx(_components.strong,{children:`TOKEN_VALUE`}),` is the token generated for the super admin.`]}),`\n`,_jsxs(_components.li,{children:[`In case your app supports cookie, you can enable request cookies as our API Automatically sets a cookie named `,_jsx(_components.code,{children:`session-token`}),` which is forwarded with each request to our api.`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:`To generate an access token for a machine or service user, you will first need to obtain the machine user’s client ID and secret.\nThese credentials can be used to authenticate and gain access to the API programmatically.`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Obtain Machine User Credentials`,children:_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`First, create a machine user by making a POST request to the appropriate endpoint\n(as described in `,_jsx(_components.strong,{children:_jsx(_components.a,{href:`/api-tutorials/authenticated-flows/create-machine-user`,children:`this`})}),` section).`]}),`\n`,_jsx(_components.li,{children:`The response will include the machine user’s clientId and clientSecret.`}),`\n`]})}),_jsxs(Step,{title:`Generate Access Token`,children:[_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Use the clientId and clientSecret obtained from the machine user creation\nAPI to generate an access token.`}),`\n`,_jsx(_components.li,{children:`The access token is required to authenticate subsequent API requests.`}),`\n`]}),_jsx(CodeBlock,{numberOfLines:`9`,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:`9`,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:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --url`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://dev-iam.razi.ai/v1/authentication/machine-users/access-token`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --header`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Authorization: Bearer YOUR_SECRET_TOKEN'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},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:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --header`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'X-App-Name: '`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --data`}),_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\": \"example-client-id\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"clientSecret\": \"zNUTk6frtcdrpEbRiOYx3lGjZpou1oRGVxt40SUj2qkBzUVh8gybTmOObmFvDPKw\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`}`})}),`\n`]})})}),_jsx(_components.p,{children:`Upon successful generation of the access token, you will receive a response similar to the below:`}),_jsx(CodeBlock,{numberOfLines:`4`,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:`4`,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:` \"token\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\u003cJWT TOKEN>\"`}),_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:` \"expiresInSeconds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`43199`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]})]}),`\n`,_jsx(Info,{children:_jsx(_components.p,{children:`This token can now be used to authenticate API requests on behalf of the machine user`})}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:_jsx(_components.a,{href:`https://dev-iam.razi.ai/docs#tag/authentication/POST/v1/authentication/machine-users/access-token`,children:`Link to Playground`})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{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":"Access Token Generation for Machine User","description":null,"sidebar_position":2,"icon":"universal-access","iconType":"solid","href":"/api-tutorials/authenticated-flows/generate-machine-user-token"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"subdomain":"locai-a2c1f1e4","siteName":"Locai IAM Service Docs","title":"Locai IAM Service Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"originalFileLocation":"api-tutorials/authenticated-flows/generate-machine-user-token.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;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=\"system\"}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=\"application-name\" content=\"Locai IAM Service Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/locai-a2c1f1e4/_generated/favicon/apple-touch-icon.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/locai-a2c1f1e4/_generated/favicon/favicon-32x32.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/locai-a2c1f1e4/_generated/favicon/favicon-16x16.png?v=3\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/locai-a2c1f1e4/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"Locai IAM Service Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Docs for IAM Service related modules\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Locai IAM Service Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://iam-docs.razi.ai/api-tutorials/authenticated-flows/generate-machine-user-token\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://locai-a2c1f1e4.mintlify.app/images/favicon.png\">\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=\"Locai IAM Service Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Docs for IAM Service related modules\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://locai-a2c1f1e4.mintlify.app/images/favicon.png\">\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=\"https://mintlify.s3.us-west-1.amazonaws.com/locai-a2c1f1e4/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Locai IAM Service Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0D9373\">\u003cmeta data-mint-head name=\"og:logo\" content=\"/logo/locai-logo.svg\">\u003clink data-mint-head rel=\"canonical\" href=\"https://iam-docs.razi.ai/api-tutorials/authenticated-flows/generate-machine-user-token\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-tutorials/authenticated-flows/generate-machine-user-token.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://iam-docs.razi.ai/#organization\",\"name\":\"Locai IAM Service Docs\",\"url\":\"https://iam-docs.razi.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintlify.s3-us-west-1.amazonaws.com/locai-a2c1f1e4/logo/locai-logo.svg\"}},{\"@type\":\"WebSite\",\"@id\":\"https://iam-docs.razi.ai#website\",\"name\":\"Locai IAM Service Docs\",\"url\":\"https://iam-docs.razi.ai\",\"publisher\":{\"@id\":\"https://iam-docs.razi.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://iam-docs.razi.ai/api-tutorials/authenticated-flows/generate-machine-user-token#webpage\",\"url\":\"https://iam-docs.razi.ai/api-tutorials/authenticated-flows/generate-machine-user-token\",\"name\":\"Access Token Generation for Machine User\",\"isPartOf\":{\"@id\":\"https://iam-docs.razi.ai#website\"}},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://iam-docs.razi.ai/api-tutorials/authenticated-flows/generate-machine-user-token#article\",\"headline\":\"Access Token Generation for Machine User\",\"name\":\"Access Token Generation for Machine User\",\"url\":\"https://iam-docs.razi.ai/api-tutorials/authenticated-flows/generate-machine-user-token\",\"mainEntityOfPage\":{\"@id\":\"https://iam-docs.razi.ai/api-tutorials/authenticated-flows/generate-machine-user-token#webpage\"},\"image\":\"https://iam-docs.razi.ai/images/favicon.png\",\"publisher\":{\"@id\":\"https://iam-docs.razi.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://iam-docs.razi.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Locai IAM Service Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Locai IAM Service Docs","nav":{"global":{"anchors":[{"anchor":"Slack","href":"https://locai-workspace.slack.com/archives/C07GY8L0NPK","icon":{"name":"slack","style":"solid"}},{"anchor":"Contribute","href":"https://github.com/LocAI1/iam-service/pulls","icon":{"name":"code-pull-request","style":"solid"}},{"anchor":"Feature Request / Issues","href":"https://github.com/LocAI1/iam-service/issues","icon":{"name":"scrubber","style":"regular"}}]},"tabs":[{"tab":"Introduction","groups":[{"group":"Features","pages":[{"title":"Introduction","icon":"rocket","href":"/introduction"}]}]},{"tab":"API Tutorials","groups":[{"group":"API Tutorials","pages":[{"title":"Getting Started","icon":"wand-magic-sparkles","iconType":"solid","href":"/api-tutorials/getting-started"},{"title":"Features Setup","icon":"wrench","iconType":"solid","href":"/api-tutorials/email-template-setup"},{"title":"Basic Flows Supported for user authentication","sidebarTitle":"Basic Flows","icon":"arrow-progress","iconType":"solid","href":"/api-tutorials/basic-flows"},{"group":"Unauthenticated Flows","icon":{"name":"lock-open","style":"solid"},"pages":[{"title":"Sign up by username and password","icon":"right-to-bracket","iconType":"solid","href":"/api-tutorials/unauthenticated-flows/sign-up-by-username-password"},{"title":"Sign in by username and password","icon":"user","iconType":"solid","href":"/api-tutorials/unauthenticated-flows/sign-in-by-username-password"},{"title":"Forgot Password","icon":"key","iconType":"solid","href":"/api-tutorials/unauthenticated-flows/forgot-password"},{"title":"Access Token Generation for Machine User","icon":"universal-access","iconType":"solid","href":"/api-tutorials/unauthenticated-flows/generate-machine-user-token"}]},{"group":"Authenticated Flows","icon":{"name":"lock","style":"solid"},"pages":[{"title":"Verify Email","icon":"badge-check","iconType":"solid","href":"/api-tutorials/authenticated-flows/verify-email"},{"title":"Fetch User Information","icon":"bars-progress","iconType":"solid","href":"/api-tutorials/authenticated-flows/get-user-info"},{"title":"Reset Password","icon":"rotate","iconType":"solid","href":"/api-tutorials/authenticated-flows/reset-password"},{"title":"Update User Information","icon":"pen-to-square","iconType":"solid","href":"/api-tutorials/authenticated-flows/update-user-info"},{"title":"Token Introspection","icon":"shield-check","iconType":"solid","href":"/api-tutorials/authenticated-flows/token-introspection"},{"title":"Sign Out User","icon":"right-from-bracket","iconType":"solid","href":"/api-tutorials/authenticated-flows/log-out-user"},{"group":"Machine User","icon":"robot","pages":[{"title":"Create Machine User","icon":"head-side-gear","iconType":"solid","href":"/api-tutorials/authenticated-flows/create-machine-user"},{"title":"JWKS Endpoint","icon":"arrows-rotate-reverse","iconType":"solid","href":"/api-tutorials/unauthenticated-flows/jwks-endpoint"}]}]},{"group":"Social Media Flows","icon":{"name":"bolt","style":"solid"},"pages":[{"title":"Social Media Integration","icon":"plug","iconType":"solid","href":"/api-tutorials/social-media-flows/introduction"},{"group":"Setup OAuth Providers","icon":"wrench","pages":[{"title":"Google Integration","icon":"google","iconType":"brands","href":"/api-tutorials/social-media-flows/oauth-providers/google-idp"},{"title":"Azure AD Integration","icon":"microsoft","iconType":"brands","href":"/api-tutorials/social-media-flows/oauth-providers/azure-idp"}]},{"title":"Get App Metadata","icon":"database","iconType":"solid","href":"/api-tutorials/social-media-flows/fetch-app-metadata"},{"title":"Create Intent","icon":"link","iconType":"solid","href":"/api-tutorials/social-media-flows/create-intent"},{"title":"Validate Intent","icon":"check","iconType":"solid","href":"/api-tutorials/social-media-flows/validate-intent"}]},{"group":"Multi Tenancy","icon":{"name":"building","style":"solid"},"pages":[{"title":"Multi-Tenancy Architecture","icon":"users","iconType":"solid","href":"/api-tutorials/multi-tenancy/introduction"},{"group":"Invite Based Flows","icon":{"name":"user-plus","style":"solid"},"pages":[{"title":"Onboard new organization","icon":"layer-plus","iconType":"solid","href":"/api-tutorials/multi-tenancy/invite-based/setup-new-organization"},{"title":"Invite Organization Managers","icon":"paper-plane","iconType":"solid","href":"/api-tutorials/multi-tenancy/invite-based/onboard-org-manager"},{"title":"Assign/Invite User with custom role","icon":"paper-plane","iconType":"solid","href":"/api-tutorials/multi-tenancy/invite-based/assign-or-invite-user-with-custom-roles"}]},{"title":"Get User Roles and permissions","icon":"list-check","iconType":"solid","href":"/api-tutorials/multi-tenancy/get-user-roles"},{"title":"Permission Introspection","icon":"file-check","iconType":"solid","href":"/api-tutorials/multi-tenancy/introspection"},{"group":"Organization Management","icon":{"name":"robot","style":"solid"},"pages":[{"title":"Machine User Flow","icon":"robot","iconType":"solid","href":"/api-tutorials/multi-tenancy/machine-user/introduction"},{"title":"Get All Organizations","icon":"sitemap","iconType":"solid","href":"/api-tutorials/multi-tenancy/machine-user/get-all-organization"},{"title":"Get All Users","icon":"users","iconType":"solid","href":"/api-tutorials/multi-tenancy/machine-user/get-all-users"},{"title":"Get all User of Organization","icon":"users","iconType":"solid","href":"/api-tutorials/multi-tenancy/machine-user/get-all-users-of-organization"},{"title":"Search User of Organization","icon":"searchengin","iconType":"solid","href":"/api-tutorials/multi-tenancy/organization-management/search-users-of-organization"},{"title":"Add User to Organization","icon":"plus","iconType":"solid","href":"/api-tutorials/multi-tenancy/machine-user/add-user-to-org"},{"title":"Delete User from Organization","icon":"ban","iconType":"solid","href":"/api-tutorials/multi-tenancy/machine-user/delete-user-from-organization"},{"title":"Delete a User","icon":"trash","iconType":"solid","href":"/api-tutorials/multi-tenancy/machine-user/delete-a-user"},{"title":"Get Organizations Details","icon":"info","iconType":"solid","href":"/api-tutorials/multi-tenancy/organization-management/get-org-details"},{"title":"Update Organizations Details","icon":"wrench","iconType":"solid","href":"/api-tutorials/multi-tenancy/organization-management/update-org-details"}]}]}]}]},{"tab":"Libraries","groups":[{"group":"Libraries","pages":[{"title":"JavaScript SDK","icon":"js","iconType":"solid","href":"/libraries/javascript"},{"group":"React SDK","icon":{"name":"react","style":"solid"},"pages":[{"title":"Overview","href":"/libraries/react/overview"},{"title":"Install","href":"/libraries/react/install"},{"title":"Quickstart","href":"/libraries/react/quickstart"},{"group":"Components","icon":"rectangle-code","pages":[{"title":"\u003cSignIn />","href":"/libraries/react/components/sign-in"},{"title":"\u003cSignUp />","href":"/libraries/react/components/sign-up"},{"title":"\u003cForgotPassword />","href":"/libraries/react/components/forgot-password"},{"title":"\u003cUserDetails />","href":"/libraries/react/components/user-details"}]},{"group":"Composite Elements","icon":"rectangles-mixed","pages":[{"title":"Overview","href":"/libraries/react/composite-elements/overview"},{"group":"Sign In","pages":[{"title":"\u003cSignInForm />","href":"/libraries/react/composite-elements/sign-in-elements/sign-in-form"}]},{"group":"Sign Up","pages":[{"title":"\u003cSignUpForm />","href":"/libraries/react/composite-elements/sign-up-elements/sign-up-form"},{"title":"\u003cVerifyForm />","href":"/libraries/react/composite-elements/sign-up-elements/verify-form"}]},{"group":"Forgot Password","pages":[{"title":"\u003cRequestCodeForm />","href":"/libraries/react/composite-elements/forgot-password-elements/request-code-form"},{"title":"\u003cUpdatePasswordForm />","href":"/libraries/react/composite-elements/forgot-password-elements/update-password-form"}]},{"group":"User Details","pages":[{"title":"\u003cProfileForm />","href":"/libraries/react/composite-elements/user-details-elements/profile-form"},{"title":"\u003cSecurityForm />","href":"/libraries/react/composite-elements/user-details-elements/security-form"}]}]},{"group":"Hooks","icon":"webhook","pages":[{"title":"Overview","href":"/libraries/react/hooks/overview"},{"group":"Basic","pages":[{"title":"useSession()","href":"/libraries/react/hooks/basic/use-session"},{"title":"useSignIn()","href":"/libraries/react/hooks/basic/use-sign-in"},{"title":"useSignUp()","href":"/libraries/react/hooks/basic/use-sign-up"},{"title":"useSignOut()","href":"/libraries/react/hooks/basic/use-sign-out"},{"title":"useRequestForgotPasswordCodeByEmail()","href":"/libraries/react/hooks/basic/use-request-forgot-password-code-by-email"},{"title":"useUpdatePasswordWithCode()","href":"/libraries/react/hooks/basic/use-update-password-with-code"},{"title":"useVerifyUserEmail()","href":"/libraries/react/hooks/basic/use-verify-user-email"}]},{"group":"OAuth","pages":[{"title":"useAppMetadata()","href":"/libraries/react/hooks/oauth/use-app-metadata"},{"title":"useCreateIdentityProviderIntent()","href":"/libraries/react/hooks/oauth/use-create-identity-provider-intent"},{"title":"useValidateIdentityProviderIntent()","href":"/libraries/react/hooks/oauth/use-validate-identity-provider-intent"}]},{"group":"User Details","pages":[{"title":"useUserDetails()","href":"/libraries/react/hooks/user-details/use-user-details"},{"title":"useUpdateUserProfile()","href":"/libraries/react/hooks/user-details/use-update-user-profile"},{"title":"useUpdateUserPasswordWithCurrentPassword()","href":"/libraries/react/hooks/user-details/use-update-user-password-with-current-password"}]},{"group":"Other","pages":[{"title":"useChangeLanguage()","href":"/libraries/react/hooks/other/use-change-language"}]}]}]}]}]},{"tab":"API Reference","groups":[{"group":"Metadata","pages":[{"openapi":"get /v1/authentication/org-metadata","href":"/api-reference/metadata/get-org-metadata","title":"Get org metadata"},{"openapi":"get /v1/authentication/apps/metadata","href":"/api-reference/metadata/get-app-metadata","title":"Get app metadata"}]},{"group":"Authentication","pages":[{"openapi":"post /v1/authentication/users","href":"/api-reference/authentication/create-user-by-email-and-password","title":"Create User By Email and Password"},{"openapi":"post /v1/authentication/users/login","href":"/api-reference/authentication/sign-in-by-email-and-password","title":"Sign In By Email and Password"},{"openapi":"post /v1/authentication/users/password/reset-request/email","href":"/api-reference/authentication/request-password-reset-code-by-email","title":"Request password reset code by email"},{"openapi":"put /v1/authentication/users/password","href":"/api-reference/authentication/update-user-password-using-email-and-verification-code","title":"Update user password using email and verification code"},{"openapi":"put /v1/authentication/users/invite","href":"/api-reference/authentication/accept-user-invite-with-email-and-verification-code","title":"Accept user invite with email and verification code"},{"openapi":"get /v1/authentication/token/jwks","href":"/api-reference/authentication/get-user-jwks","title":"Get User JWKs"},{"openapi":"post /v1/authentication/machine-users/access-token","href":"/api-reference/authentication/generate-access-token-for-machine-user","title":"Generate Access Token for Machine User"},{"openapi":"put /v1/authentication/users/{userId}/password","href":"/api-reference/authentication/update-user-password-using-current-password","title":"Update User Password using current password"},{"openapi":"delete /v1/authentication/users/sessions/{sessionId}","href":"/api-reference/authentication/sign-out-user-by-sessionid","title":"Sign Out user by sessionId"},{"openapi":"get /v1/authentication/users/me","href":"/api-reference/authentication/get-user-information-by-token","title":"Get user information by token"},{"openapi":"get /v1/authentication/users/{userId}","href":"/api-reference/authentication/get-user-information-by-user-id","title":"Get user information by user id"},{"openapi":"put /v1/authentication/users/{userId}","href":"/api-reference/authentication/update-user-information","title":"Update user information"},{"openapi":"post /v1/authentication/users/email/verification-request","href":"/api-reference/authentication/request-to-send-email-verification-code","title":"Request to send email verification code"},{"openapi":"post /v1/authentication/users/email/verification","href":"/api-reference/authentication/verify-user-email","title":"Verify user email"}]},{"group":"IDP Authentication","pages":[{"openapi":"post /v1/authentication/idp/intents/create","href":"/api-reference/idp-authentication/create-idp-intent-by-id","title":"Create Idp Intent by id"},{"openapi":"post /v1/authentication/idp/intents/validate","href":"/api-reference/idp-authentication/validate-idp-intent","title":"Validate Idp Intent"}]},{"group":"Authorization","pages":[{"openapi":"post /v1/authorization/organizations/{orgId}/members","href":"/api-reference/authorization/invite-user-in-organization","title":"Invite User in organization"},{"openapi":"post /v1/authorization/organizations/{orgId}/managers","href":"/api-reference/authorization/invite-org-user-managers-in-organization","title":"Invite Org User managers in organization"},{"openapi":"post /v1/authorization/organizations/setup","href":"/api-reference/authorization/setup-organization","title":"Setup Organization"},{"openapi":"put /v1/authorization/organizations/{orgId}/roles","href":"/api-reference/authorization/update-roles-and-permissions-of-organization","title":"Update Roles and Permissions of organization"},{"openapi":"put /v1/authorization/organizations/{orgId}/members/{userId}/roles","href":"/api-reference/authorization/update-member-roles","title":"Update Member Roles"},{"openapi":"get /v1/authorization/organizations/user/{userId}/roles","href":"/api-reference/authorization/get-user-roles-for-logged-in-user","title":"Get User Roles for logged in user"},{"openapi":"get /v1/authorization/organizations/user/{userId}/roles/byid","href":"/api-reference/authorization/get-user-roles-by-user-id","title":"Get User Roles by user id"},{"openapi":"post /v1/authorization/organizations/{orgId}/users/{userId}/permissions","href":"/api-reference/authorization/check-permissions-of-user","title":"Check Permissions of User"},{"openapi":"post /v1/authorization/idps/google","href":"/api-reference/authorization/add-identity-provider-for-google","title":"Add Identity Provider for Google"},{"openapi":"post /v1/authorization/idps/azure","href":"/api-reference/authorization/add-identity-provider-for-microsoft-azuread","title":"Add Identity Provider for Microsoft AzureAD"},{"openapi":"post /v1/authorization/machine-users","href":"/api-reference/authorization/creates-a-machine-service-user","title":"Creates a Machine/ Service User"},{"openapi":"get /v1/authorization/organizations","href":"/api-reference/authorization/get-all-organizations","title":"Get All Organizations"},{"openapi":"delete /v1/authorization/users/{userId}","href":"/api-reference/authorization/delete-user","title":"Delete User"},{"openapi":"post /v1/authorization/organizations/users/search","href":"/api-reference/authorization/search-users-of-an-organization","title":"Search Users of an organization"},{"openapi":"post /v1/authorization/organizations/users/{userId}","href":"/api-reference/authorization/add-user-to-org","title":"Add user to org"},{"openapi":"delete /v1/authorization/organizations/users/{userId}","href":"/api-reference/authorization/delete-user-from-org","title":"Delete user from org"},{"openapi":"get /v1/authorization/organizations/users","href":"/api-reference/authorization/get-all-users-of-an-organization","title":"Get All Users of an organization"},{"openapi":"get /v1/authorization/users","href":"/api-reference/authorization/get-all-users","title":"Get all users"},{"openapi":"post /v1/authorization/users/search","href":"/api-reference/authorization/search-users","title":"Search users"},{"openapi":"get /v1/authorization/organizations/{orgId}","href":"/api-reference/authorization/get-organization-data","title":"Get Organization Data"},{"openapi":"patch /v1/authorization/organizations/{orgId}","href":"/api-reference/authorization/udpate-organization-data","title":"Udpate Organization Data"}]},{"group":"Probes","pages":[{"openapi":"get /health","href":"/api-reference/probes/health-check","title":"Health Check"}]}]}]},"title":"Locai IAM Service Docs","buildId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","deploymentId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","dynamics":[],"chunks":[]}