Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.
If your Connected Users represent accounts, organizations, or some other group of users in your platform, then you may want to control the permissions of the credentials and configurations within that user to only the set that an authenticated user of your application should have access to.By default, a Paragon User Token grants access to all credentials and configurations within a Connected User (identified by the sub field in the JWT).
You can restrict access to specific credentials and configurations by adding an additional claim on the Paragon User Token (JWT) that is passed for an authenticated user in your platform.You can also use JWT Permissions to prevent certain types of API calls from being made using a given token, for example: Proxy API calls, App Events, Workflow triggers, or ActionKit requests.
The claim for JWT Permissions is called urn:useparagon:connect:permissions and is structured as an object with keys of Scopes (i.e. what to scope a group of permissions/rules to) and values of Permissions (i.e. visibility of specific credentials or configurations and the types of operations that are allowed).Here are some examples of token types that are expressible with JWT Permissions:
{ "sub": "<Paragon User ID>", "urn:useparagon:connect:permissions": { "integration:*": true }}
Claims passed in the JWT are not persisted or saved in any way. They are only used and evaluated for the current API request and should be included with every token that requires permissions control.
The following scopes can be used to assign permissions and rules. These scopes are ordered from least specific to most specific.Permissions designated at more specific scopes will override those inherited from less specific scopes.
Scope
Description
integration:*
All integrations
integration:[name]
An integration matching a name of [name] (as passed to
paragon.connect )
credential:*
All credentials belonging to an integration
credential:[uuid]
All credentials matching an ID of [uuid]
configuration:*
All configurations belonging to a credential
configuration:ext:[id]
All configurations matching an External ID of [id]
The following permissions can be used to configure API capabilities for a Paragon User Token. These permissions can apply to any of the scopes listed above.Permissions must be specified as an array, or as a Boolean interpreted as true = Allow All, false = Deny All.
Permission
Description
credential:write
Connect a new credential, reconnect an existing credential, or
disconnect an existing credential
config:write
Create, modify, or destroy a configuration
settings:read
Read User Settings and Workflow Enablement
settings:write
Write and read User Settings and Workflow Enablements
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Paragon Documentation","colors":{"primary":"#6645e6","light":"#6747e7","dark":"#6645e6"},"logo":{"light":"https://mintcdn.com/paragon/VsFfcYgo5-Qm6khT/logo/light.svg?fit=max\u0026auto=format\u0026n=VsFfcYgo5-Qm6khT\u0026q=85\u0026s=348909bc26f6451e89f4010d965f6e3f","dark":"https://mintcdn.com/paragon/VsFfcYgo5-Qm6khT/logo/dark.svg?fit=max\u0026auto=format\u0026n=VsFfcYgo5-Qm6khT\u0026q=85\u0026s=94df13e90b5d4116e55d031d5583fa1b","href":"https://docs.useparagon.com/"},"favicon":"https://mintcdn.com/paragon/jHdUQ3U2jexiiVjS/favicon.png?fit=max\u0026auto=format\u0026n=jHdUQ3U2jexiiVjS\u0026q=85\u0026s=92cb5c619d517e9c751282890f36033e","api":{"playground":{"proxy":false}},"background":{"decoration":"gradient"},"navbar":{"links":[{"href":"https://dashboard.useparagon.com/signup","label":"Sign up"}],"primary":{"type":"button","label":"Book a demo","href":"https://www.useparagon.com/book-demo"}},"footer":{"links":[{"header":"Home","items":[{"label":"Home","href":"https://www.useparagon.com"},{"label":"Sign Up","href":"https://dashboard.useparagon.com/signup"},{"label":"Book Demo","href":"https://www.useparagon.com/book-demo"},{"label":"Pricing","href":"https://www.useparagon.com/pricing"},{"label":"Careers","href":"https://www.useparagon.com/careers"}]},{"header":"Resources","items":[{"label":"Blog","href":"https://www.useparagon.com/blog"},{"label":"Case Studies","href":"https://www.useparagon.com/customers"},{"label":"ActionKit Playground","href":"https://try.actions.useparagon.com"},{"label":"Sync Playground","href":"https://try.sync.useparagon.com"},{"label":"Product Tour","href":"https://www.useparagon.com/product-tour-landing"}]},{"header":"Legal","items":[{"label":"Privacy Policy","href":"https://www.useparagon.com/privacy-policy"},{"label":"Terms of Service","href":"https://www.useparagon.com/terms-of-service"},{"label":"Your Privacy Choices","href":"/optout"}]}]},"fonts":{"heading":{"family":"Helvetica Now Display Medium","weight":400,"source":"https://framerusercontent.com/assets/OKeqk0lRqQ5xtPOYZPiID295g.woff2","format":"woff2"}},"integrations":{"ga4":{"measurementId":"G-DH6VCLG1X6"},"gtm":{"tagId":"GTM-WCJFR4H"},"cookies":{"key":"paragon_docs_integrations_consent","value":"granted"}},"errors":{"404":{"redirect":false}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"paragon","hasAudioNarration":false,"actualSubdomain":"paragon","customDomains":["docs.useparagon.com"],"gitSource":{"type":"github","owner":"useparagon-internal","repo":"docs-mintlify","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae3c95c97b1ae3164b1afaa","collectionId":"0d0c583a-8145-4f79-88fb-810e552b4378","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae3c95c97b1ae3164b1afaa"},"feedback":{"edits":false,"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae3c95c97b1ae3164b1afaa","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"ActionKit","count":1114},{"language":"default","tag":"Integrations Reference","count":1103},{"language":"default","tag":"Tools","count":863},{"language":"default","tag":"Triggers","count":147},{"language":"default","tag":"Integrations","count":126},{"language":"default","tag":"Integration Providers","count":126},{"language":"default","tag":"Managed Sync","count":67},{"language":"default","tag":"Platform","count":56},{"language":"default","tag":"Workflows","count":54},{"language":"default","tag":"Salesforce","count":51}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"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":"full-page-search","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":"turbopuffer-dual-write","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},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#top-aligned-table td{vertical-align:top;padding:8px}#footer a[href='/optout']{overflow:auto;max-width:100%}footer>div{padding-top:4rem!important}a.nav-tabs-item[href=\"/resources/integrations\"]{margin-left:auto}div.nav-tabs{width:100%}"}],"page":{"pagePath":"apis/api-reference/jwt-permissions","slug":"/apis/api-reference/jwt-permissions","pageMetadata":{"title":"JWT Permissions","description":"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.","href":"/apis/api-reference/jwt-permissions"},"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: \"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.\"\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];function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,..._provideComponents(),...props.components},{CodeBlock,CodeGroup,Frame,Heading,Info,OptimizedImage}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!CodeGroup)_missingMdxReference(`CodeGroup`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`If your Connected Users represent accounts, organizations, or some other `,_jsx(_components.em,{children:`group`}),` of users in your platform, then you may want to control the permissions of the credentials and configurations within that user to only the set that an authenticated user of your application should have access to.`]}),`\n`,_jsxs(_components.p,{children:[`By default, a Paragon User Token grants access to all credentials and configurations within a Connected User (identified by the `,_jsx(_components.code,{children:`sub`}),` field in the JWT).`]}),`\n`,_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/paragon/FRPfCwjBzebqFHrx/assets/jwt-permissions.png?fit=max\u0026auto=format\u0026n=FRPfCwjBzebqFHrx\u0026q=85\u0026s=01904bc9a5e37be6f48650c87558d6b7`,alt:`Diagram illustrating org- vs. user-level tokens`,\"data-og-width\":`1567`,width:`1567`,\"data-og-height\":`898`,height:`898`,\"data-path\":`assets/jwt-permissions.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/paragon/FRPfCwjBzebqFHrx/assets/jwt-permissions.png?w=280\u0026fit=max\u0026auto=format\u0026n=FRPfCwjBzebqFHrx\u0026q=85\u0026s=7d7dd54088eeaf16149846a498dcdc8a 280w, https://mintcdn.com/paragon/FRPfCwjBzebqFHrx/assets/jwt-permissions.png?w=560\u0026fit=max\u0026auto=format\u0026n=FRPfCwjBzebqFHrx\u0026q=85\u0026s=224ce1e41dbd6bc3adbbd557155f35a1 560w, https://mintcdn.com/paragon/FRPfCwjBzebqFHrx/assets/jwt-permissions.png?w=840\u0026fit=max\u0026auto=format\u0026n=FRPfCwjBzebqFHrx\u0026q=85\u0026s=b414c48f081a9ee06c3e25ad9005ac5a 840w, https://mintcdn.com/paragon/FRPfCwjBzebqFHrx/assets/jwt-permissions.png?w=1100\u0026fit=max\u0026auto=format\u0026n=FRPfCwjBzebqFHrx\u0026q=85\u0026s=8096d73764e8a4a96cb6a2203efd1cb7 1100w, https://mintcdn.com/paragon/FRPfCwjBzebqFHrx/assets/jwt-permissions.png?w=1650\u0026fit=max\u0026auto=format\u0026n=FRPfCwjBzebqFHrx\u0026q=85\u0026s=6baeb259c16a0b48098c8dba537c0afc 1650w, https://mintcdn.com/paragon/FRPfCwjBzebqFHrx/assets/jwt-permissions.png?w=2500\u0026fit=max\u0026auto=format\u0026n=FRPfCwjBzebqFHrx\u0026q=85\u0026s=1353ad42600deeab49b2bd388af8a719 2500w`})}),`\n`,_jsxs(_components.p,{children:[`You can restrict access to specific credentials and configurations by adding an additional claim on the `,_jsx(_components.a,{href:`/getting-started/installing-the-connect-sdk#setup`,children:`Paragon User Token`}),` (JWT) that is passed for an authenticated user in your platform.`]}),`\n`,_jsx(_components.p,{children:`You can also use JWT Permissions to prevent certain types of API calls from being made using a given token, for example: Proxy API calls, App Events, Workflow triggers, or ActionKit requests.`}),`\n`,_jsx(Heading,{level:`2`,id:`usage`,children:`Usage`}),`\n`,_jsxs(_components.p,{children:[`The claim for JWT Permissions is called `,_jsx(_components.code,{children:`urn:useparagon:connect:permissions`}),` and is structured as an object with keys of `,_jsx(_components.a,{href:`#jwt-scopes`,children:`Scopes`}),` (i.e. what to scope a group of permissions/rules to) and values of `,_jsx(_components.a,{href:`#jwt-permissions`,children:`Permissions`}),` (i.e. visibility of specific credentials or configurations and the types of operations that are allowed).`]}),`\n`,_jsx(_components.p,{children:`Here are some examples of token types that are expressible with JWT Permissions:`}),`\n`,_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`Admin (org-level)`,numberOfLines:`6`,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:`6`,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:` \"sub\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\u003cParagon User ID>\"`}),_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:` \"urn:useparagon:connect:permissions\"`}),_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:` \"integration:*\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\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:`Restricted to specific accounts (user-level)`,numberOfLines:`8`,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:`8`,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:` \"sub\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\u003cParagon User ID>\"`}),_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:` \"urn:useparagon:connect:permissions\"`}),_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:` \"integration:gmail\"`}),_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:` \"credential:abf961e3-12ec-40fe-8aa9-caa5ab162a6a\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\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(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Restricted to specific configurations`,numberOfLines:`26`,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:`26`,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:` \"sub\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\u003cParagon User ID>\"`}),_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:` \"urn:useparagon:connect:permissions\"`}),_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:` \"integration:*\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_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:` \"integration:slack\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Applies to all teams`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"credential:*\"`}),_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:` \"permissions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"events\"`})}),`\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:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Applies to all Slack configurations with external ID of`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // \"Team A\", for all Slack accounts`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"configuration:ext:Team A\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"config:write\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"settings:write\"`})}),`\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(_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:` \"integration:custom.test\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_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:` \"integration:hubspot\"`}),_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:` \"credential:*\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"config:write\"`})}),`\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(_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:`ActionKit access with restricted integrations`,numberOfLines:`14`,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:`14`,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:` \"sub\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\u003cParagon User ID>\"`}),_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:` \"urn:useparagon:connect:permissions\"`}),_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:` \"permissions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"actionkit\"`})}),`\n`,_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:` \"integration:salesforce\"`}),_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:` \"credential:*\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_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:` \"integration:hubspot\"`}),_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:` \"credential:*\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\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(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Claims passed in the JWT are not persisted or saved in any way.`}),` They are only used and evaluated for the current API request and should be included with every token that requires permissions control.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`jwt-scopes`,children:`JWT Scopes`}),`\n`,_jsx(_components.p,{children:`The following scopes can be used to assign permissions and rules. These scopes are ordered from least specific to most specific.`}),`\n`,_jsx(_components.p,{children:`Permissions designated at more specific scopes will override those inherited from less specific scopes.`}),`\n`,_jsxs(`table`,{\"data-full-width\":`false`,children:[_jsx(`thead`,{children:_jsxs(`tr`,{children:[_jsx(`th`,{width:`245`,children:`Scope`}),_jsx(`th`,{children:`Description`})]})}),_jsxs(`tbody`,{children:[_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`integration:*`})})}),_jsx(`td`,{children:`All integrations`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`integration:[name]`})})}),_jsx(`td`,{children:_jsxs(_components.p,{children:[`An integration matching a name of [name] (as passed to`,` `,`\n`,_jsx(`code`,{children:`paragon.connect`}),` )`]})})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`credential:*`})})}),_jsx(`td`,{children:`All credentials belonging to an integration`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`credential:[uuid]`})})}),_jsx(`td`,{children:`All credentials matching an ID of [uuid]`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`configuration:*`})})}),_jsx(`td`,{children:`All configurations belonging to a credential`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`configuration:ext:[id]`})})}),_jsx(`td`,{children:`All configurations matching an External ID of [id]`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`jwt-permissions`,children:`JWT Permissions`}),`\n`,_jsx(_components.p,{children:`The following permissions can be used to configure API capabilities for a Paragon User Token. These permissions can apply to any of the scopes listed above.`}),`\n`,_jsxs(_components.p,{children:[`Permissions must be specified as an array, or as a Boolean interpreted as `,_jsx(_components.code,{children:`true`}),` = Allow All, `,_jsx(_components.code,{children:`false`}),` = Deny All.`]}),`\n`,_jsxs(`table`,{children:[_jsx(`thead`,{children:_jsxs(`tr`,{children:[_jsx(`th`,{width:`221`,children:`Permission`}),_jsx(`th`,{children:`Description`})]})}),_jsxs(`tbody`,{children:[_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`credential:write`})})}),_jsx(`td`,{children:_jsx(_components.p,{children:`Connect a new credential, reconnect an existing credential, or\ndisconnect an existing credential`})})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`config:write`})})}),_jsx(`td`,{children:`Create, modify, or destroy a configuration`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`settings:read`})})}),_jsx(`td`,{children:`Read User Settings and Workflow Enablement`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`settings:write`})})}),_jsx(`td`,{children:`Write and read User Settings and Workflow Enablements`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`metadata:read`})})}),_jsx(`td`,{children:`Read User Metadata`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`metadata:write`})})}),_jsx(`td`,{children:`Write and read User Metadata`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`proxy-api`})})}),_jsx(`td`,{children:`Send requests to the Proxy API`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`events`})})}),_jsx(`td`,{children:`Send App Events`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`workflows`})})}),_jsx(`td`,{children:`Send Workflow Request triggers`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(_components.p,{children:_jsx(_components.strong,{children:`actionkit`})})}),_jsxs(`td`,{children:[`Send requests to the `,_jsx(_components.a,{href:`/actionkit/api-reference`,children:`ActionKit API`})]})]})]})]})]})}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":"JWT Permissions","description":"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.","href":"/apis/api-reference/jwt-permissions"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Usage","slug":"usage","depth":2,"children":[]},{"title":"JWT Scopes","slug":"jwt-scopes","depth":2,"children":[]},{"title":"JWT Permissions","slug":"jwt-permissions","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/paragon/b66e6962cf6c82d8/cookiebot-mintlify-consent.js"],"subdomain":"paragon","siteName":"Paragon Documentation","title":"JWT Permissions - Paragon Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-19T20:46:27.757Z","originalFileLocation":"apis/api-reference/jwt-permissions.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=\"description\" content=\"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Paragon Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/paragon/jEl23Mfv0t0lim0x/_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/paragon/jEl23Mfv0t0lim0x/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/paragon/jEl23Mfv0t0lim0x/_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/paragon/jEl23Mfv0t0lim0x/_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/paragon/jEl23Mfv0t0lim0x/_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/paragon/jEl23Mfv0t0lim0x/_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/paragon/jEl23Mfv0t0lim0x/_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/paragon/jEl23Mfv0t0lim0x/_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/paragon/jEl23Mfv0t0lim0x/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"JWT Permissions - Paragon Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Paragon Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.useparagon.com/apis/api-reference/jwt-permissions\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://paragon.mintlify.app/_mintlify/api/og/v2?division=SDK+%2F+API+Reference\u0026amp;title=JWT+Permissions\u0026amp;description=Use+JWT+Permissions+to+control+the+credentials+and+configurations+that+an+authenticated+user+has+access+to+using+the+Paragon+User+Token.\u0026amp;theme=13788743c298c81ac0d08ae9\u0026amp;signature=3bad7b5cc20aaf881bc9f5de4d9f85639481ce84da33b0ed070bb116fb76b2f5\">\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=\"JWT Permissions - Paragon Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://paragon.mintlify.app/_mintlify/api/og/v2?division=SDK+%2F+API+Reference\u0026amp;title=JWT+Permissions\u0026amp;description=Use+JWT+Permissions+to+control+the+credentials+and+configurations+that+an+authenticated+user+has+access+to+using+the+Paragon+User+Token.\u0026amp;theme=13788743c298c81ac0d08ae9\u0026amp;signature=3bad7b5cc20aaf881bc9f5de4d9f85639481ce84da33b0ed070bb116fb76b2f5\">\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/paragon/jEl23Mfv0t0lim0x/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Paragon Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6645e6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.useparagon.com/apis/api-reference/jwt-permissions\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/apis/api-reference/jwt-permissions.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.useparagon.com/#organization\",\"name\":\"Paragon Documentation\",\"url\":\"https://docs.useparagon.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/paragon/VsFfcYgo5-Qm6khT/logo/light.svg?fit=max\u0026auto=format\u0026n=VsFfcYgo5-Qm6khT\u0026q=85\u0026s=348909bc26f6451e89f4010d965f6e3f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.useparagon.com#website\",\"name\":\"Paragon Documentation\",\"url\":\"https://docs.useparagon.com\",\"publisher\":{\"@id\":\"https://docs.useparagon.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions#webpage\",\"url\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions\",\"name\":\"JWT Permissions\",\"description\":\"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.\",\"dateModified\":\"2026-05-19T20:46:27.757Z\",\"isPartOf\":{\"@id\":\"https://docs.useparagon.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"APIs\",\"item\":\"https://docs.useparagon.com/apis/api-reference\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SDK / API Reference\",\"item\":\"https://docs.useparagon.com/apis/api-reference\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"JWT Permissions\",\"item\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions#article\",\"headline\":\"JWT Permissions\",\"name\":\"JWT Permissions\",\"description\":\"Use JWT Permissions to control the credentials and configurations that an authenticated user has access to using the Paragon User Token.\",\"url\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions\",\"mainEntityOfPage\":{\"@id\":\"https://docs.useparagon.com/apis/api-reference/jwt-permissions#webpage\"},\"dateModified\":\"2026-05-19T20:46:27.757Z\",\"publisher\":{\"@id\":\"https://docs.useparagon.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.useparagon.com#website\"}}]}\u003c/script>","siteName":"Paragon Documentation","nav":{"global":null,"tabs":[{"tab":"Platform","pages":[{"title":"Platform","href":"/overview"}]},{"tab":"Agent OS","hidden":true,"pages":[{"title":"Agent OS","href":"/agent-os/overview"}]},{"tab":"Managed Sync","icon":"https://mintlify.s3.us-west-1.amazonaws.com/paragon/assets/sync-icon-light.svg","pages":[{"title":"Managed Sync","href":"/managed-sync/overview"}]},{"tab":"ActionKit","icon":"https://mintlify.s3.us-west-1.amazonaws.com/paragon/assets/actions-icon-light.svg","pages":[{"title":"ActionKit","href":"/actionkit/overview"}]},{"tab":"Workflows","icon":"https://mintlify.s3.us-west-1.amazonaws.com/paragon/assets/workflow-icon-light.svg","pages":[{"title":"Workflows","href":"/workflows/overview"}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/resources/integrations"}]},{"tab":"API Reference","groups":[{"group":"APIs","pages":[{"group":"SDK / API Reference","pages":[{"title":"SDK / API Reference","sidebarTitle":"Overview","href":"/apis/api-reference"},{"title":"Multi-Account Authorization","href":"/apis/api-reference/multi-account-authorization"},{"title":"Multi-Configuration","description":"Use the SDK to set up multiple configurations of settings or workflow enablements for one connected account authorization.","href":"/apis/api-reference/multi-configuration"},{"title":"JWT Permissions","href":"/apis/api-reference/jwt-permissions"}]},{"title":"Proxy API","description":"Send requests directly to an integration provider, on behalf of Connected Users.","href":"/apis/proxy"},{"title":"Users API","href":"/apis/users"},{"title":"Task History API","href":"/apis/task-history"}]}],"global":{"anchors":[{"anchor":"Blog","icon":"newspaper","href":"https://www.useparagon.com/blog"},{"anchor":"Status","icon":"gear","href":"https://status.useparagon.com/"}]}},{"tab":"Guides","menu":[{"item":"Home","pages":[{"title":"Home","href":"/guides"}]},{"item":"Authentication","groups":[{"group":"Authentication","pages":[{"title":"Authentication","href":"/tutorials/building-an-in-app-integrations-catalog"}]}],"global":{"anchors":[{"anchor":"Back to all guides","icon":"arrow-left","href":"/guides"}]}},{"item":"Deploying Integrations","groups":[{"group":"Deploying Integrations","pages":[{"title":"Deploying Integrations","href":"/knowledge-base/git-sync-missing-commits"}]}],"global":{"anchors":[{"anchor":"Back to all guides","icon":"arrow-left","href":"/guides"}]}},{"item":"Custom Integrations or Webhooks","groups":[{"group":"Custom Integrations or Webhooks","pages":[{"title":"Custom Integrations or Webhooks","href":"/knowledge-base/api-base-url-ip-403"}]}],"global":{"anchors":[{"anchor":"Back to all guides","icon":"arrow-left","href":"/guides"}]}},{"item":"Billing and Account Management","groups":[{"group":"Billing and Account Management","pages":[{"title":"Billing and Account Management","href":"/knowledge-base/email-invite-404"}]}],"global":{"anchors":[{"anchor":"Back to all guides","icon":"arrow-left","href":"/guides"}]}},{"item":"ActionKit","groups":[{"group":"ActionKit","pages":[{"title":"ActionKit","href":"/actionkit/actionkit-for-tool-calling"}]}],"global":{"anchors":[{"anchor":"Back to all guides","icon":"arrow-left","href":"/guides"}]}},{"item":"Workflows","groups":[{"group":"Workflows","pages":[{"title":"Workflows","href":"/tutorials/building-a-salesforce-integration"}]}],"global":{"anchors":[{"anchor":"Back to all guides","icon":"arrow-left","href":"/guides"}]}}],"pages":[{"title":"Guides","href":"/guides"}]},{"tab":"Release Notes","pages":[{"title":"Release Notes","href":"/changelog/product-updates"}]}]},"basePath":"","title":"JWT Permissions - Paragon Documentation","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-DXXFP6nH.js","DynamicMarkdown-B54_zNBF.js","zoom-image-lightbox-BG6oD64b.js","lightbox-handle-r17bVUz3.js"]}