{
"errors": [
{
"code": "RoleHasAssignments",
"message": "role has active assignments; revoke them first"
}
]
}
Assign a role
Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, tenantId names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 TenantNotFound, and a user that does not exist answers 404 UserNotFound. Granting the same role to the same principal for the same tenant twice answers 409 AssignmentAlreadyExists. Users your identity provider manages over SCIM can be granted roles directly, like any other user.
Requires an organization API key with read and write access.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Plerion, Simplify Cloud Security - documentation","description":"Plerion, Simplify Cloud Security - documentation","colors":{"primary":"#FFA500","light":"#07C983","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/pleriondocs/GIwfwlVd5Zt2w0-r/logo/plerion.svg?fit=max\u0026auto=format\u0026n=GIwfwlVd5Zt2w0-r\u0026q=85\u0026s=86e89d26c3b52a61495baaf98faff52c","dark":"https://mintcdn.com/pleriondocs/GIwfwlVd5Zt2w0-r/logo/plerion.svg?fit=max\u0026auto=format\u0026n=GIwfwlVd5Zt2w0-r\u0026q=85\u0026s=86e89d26c3b52a61495baaf98faff52c"},"favicon":"https://mintcdn.com/pleriondocs/tawzAAKnRc9yNNhT/favicon.svg?fit=max\u0026auto=format\u0026n=tawzAAKnRc9yNNhT\u0026q=85\u0026s=43160b812d8a7d732e3a72cf166dbbec","navbar":{"primary":{"type":"button","label":"Dashboard","href":"https://app.plerion.com/sign-in"}},"footer":{"socials":{"x":"https://x.com/plerionhq","linkedin":"https://www.linkedin.com/company/plerion"},"links":[{"header":"Company","items":[{"label":"Plerion","href":"https://www.plerion.com"},{"label":"Contact","href":"https://www.plerion.com/company/contact-us"},{"label":"Partnerships","href":"https://www.plerion.com/company/partnerships"}]},{"header":"Resources","items":[{"label":"Blog","href":"https://www.plerion.com/blog"},{"label":"Trust center","href":"https://trust.plerion.com/"},{"label":"Privacy policy","href":"https://www.plerion.com/company/privacy-policy"}]}]},"search":{"prompt":"Search the docs"},"icons":{"library":"fontawesome"},"styling":{"eyebrows":"breadcrumbs","codeblocks":"system","latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"pleriondocs","hasAudioNarration":false,"actualSubdomain":"pleriondocs","customDomains":["docs.plerion.com"],"gitSource":{"type":"github","owner":"plerionhq","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aec8970981b8170d4f236e3","collectionId":"a029f19c-705e-43ab-b1af-ba76bab963d7","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aec8970981b8170d4f236e3"},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6aed98486b57de162dda2782","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"default","tag":"API reference","count":124},{"language":"default","tag":"Guides","count":121},{"language":"default","tag":"API documentation","count":82},{"language":"default","tag":"Integrations","count":72},{"language":"default","tag":"Cloud","count":48},{"language":"default","tag":"Platform","count":38},{"language":"default","tag":"CLI reference","count":24},{"language":"default","tag":"Ownership","count":22},{"language":"default","tag":"AWS","count":21},{"language":"default","tag":"Organization API","count":21}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/role-assignments/assign-a-role","slug":"/api-reference/role-assignments/assign-a-role","pageMetadata":{"title":"Assign a role","description":"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, `tenantId` names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 `TenantNotFound`, and a user that does not exist answers 404 `UserNotFound`. Granting the same role to the same principal for the same tenant twice answers 409 `AssignmentAlreadyExists`. Users your identity provider manages over SCIM can be granted roles directly, like any other user.\nRequires an organization API key with read and write access.\n","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml post /v1/organization/role-assignments","href":"/api-reference/role-assignments/assign-a-role","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, \", _jsx(_components.code, {\n children: \"tenantId\"\n }), \" names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 \", _jsx(_components.code, {\n children: \"TenantNotFound\"\n }), \", and a user that does not exist answers 404 \", _jsx(_components.code, {\n children: \"UserNotFound\"\n }), \". Granting the same role to the same principal for the same tenant twice answers 409 \", _jsx(_components.code, {\n children: \"AssignmentAlreadyExists\"\n }), \". Users your identity provider manages over SCIM can be granted roles directly, like any other user.\\nRequires an organization API key with read and write access.\"]\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}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Assign a role","description":"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, `tenantId` names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 `TenantNotFound`, and a user that does not exist answers 404 `UserNotFound`. Granting the same role to the same principal for the same tenant twice answers 409 `AssignmentAlreadyExists`. Users your identity provider manages over SCIM can be granted roles directly, like any other user.\nRequires an organization API key with read and write access.\n","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml post /v1/organization/role-assignments","href":"/api-reference/role-assignments/assign-a-role","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Role assignments"],"operationId":"createOrganizationRoleAssignment","summary":"Assign a role","description":"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, `tenantId` names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 `TenantNotFound`, and a user that does not exist answers 404 `UserNotFound`. Granting the same role to the same principal for the same tenant twice answers 409 `AssignmentAlreadyExists`. Users your identity provider manages over SCIM can be granted roles directly, like any other user.\nRequires an organization API key with read and write access.\n","requestBody":"ef3b61c2-4330-4852-a5b0-d3600a039a65","responses":{"201":"f9d5d0c5-ba8a-44df-b268-ae6f66b87915","400":"7cb7e159-17e2-4e56-bc22-1625264b190f","401":"8c5149e4-806b-417d-911c-356155bb71e9","403":"5aebf429-7a55-4476-ad93-417efb7181ec","404":"d672272e-5816-4c08-9db5-7325e9009630","409":"b6092e31-7514-417e-b782-2e495a1ffe44"},"method":"post","type":"path","servers":["d0240108-4c6e-49e3-bb34-33b398a8dc85"],"security":["bd2a62d1-5539-46e9-8f0a-61080f373d4d"],"path":"/v1/organization/role-assignments","baseUrlOptions":["https://{region}.api.plerion.com"],"title":"Assign a role","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"roleId":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"roleId","typeLabel":"string\u003cuuid>"},"principal":{"type":"object","properties":{"type":{"type":"string","enum":["user","group"],"isRequired":true,"uniqueKey":"principal.type","typeLabel":"enum\u003cstring>"},"id":{"type":"string","format":"uuid","description":"The user id or user group id.","isRequired":true,"uniqueKey":"principal.id","typeLabel":"string\u003cuuid>"}},"required":["type","id"],"isRequired":true,"uniqueKey":"principal","typeLabel":"object"},"tenantId":{"type":"string","format":"uuid","description":"Required for the built-in Tenant admin and Tenant read-only roles, not accepted for any other role.","uniqueKey":"tenantId","typeLabel":"string\u003cuuid>"}},"required":["roleId","principal"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"customRoleToGroup":{"title":"customRoleToGroup","value":{"roleId":"3f2a9c1e-5b7d-4e8a-9c21-7d4e5f6a8b90","principal":{"type":"group","id":"b1c2d3e4-f5a6-4b7c-8d9e-0f1a2b3c4d5e"}}},"tenantAdminOnOneTenant":{"title":"tenantAdminOnOneTenant","value":{"roleId":"b16184ca-b44a-4a0f-b879-95588322ad69","principal":{"type":"user","id":"a0b1c2d3-e4f5-4a6b-9c8d-9e0f1a2b3c4d"},"tenantId":"9d0e1f2a-3b4c-4d5e-8f7a-8b9c0d1e2f3a"}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"f9d5d0c5-ba8a-44df-b268-ae6f66b87915":{"description":"The created assignment.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"principal":{"type":"object","properties":{"type":{"type":"string","enum":["user","group"],"isRequired":true,"uniqueKey":"data.principal.type","typeLabel":"enum\u003cstring>"},"id":{"type":"string","format":"uuid","description":"The user id or user group id.","isRequired":true,"uniqueKey":"data.principal.id","typeLabel":"string\u003cuuid>"}},"required":["type","id"],"isRequired":true,"uniqueKey":"data.principal","typeLabel":"object"},"roleId":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"data.roleId","typeLabel":"string\u003cuuid>"},"roleScope":{"type":"string","enum":["organization","tenant"],"isRequired":true,"uniqueKey":"data.roleScope","typeLabel":"enum\u003cstring>"},"tenantId":{"oneOf":[{"type":"string","description":"The one tenant the assignment applies to. `null` for an organization-scoped role.","isRequired":true,"uniqueKey":"data.tenantId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The one tenant the assignment applies to. `null` for an organization-scoped role.","isRequired":true,"uniqueKey":"data.tenantId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.tenantId","typeLabel":"string | null"},"createdAt":{"oneOf":[{"type":"string","format":"date-time","description":"Null for a built-in role granted in the Plerion app.","isRequired":true,"uniqueKey":"data.createdAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Null for a built-in role granted in the Plerion app.","isRequired":true,"uniqueKey":"data.createdAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.createdAt","typeLabel":"string\u003cdate-time> | null"},"createdBy":{"oneOf":[{"type":"string","description":"The user id, or the organization API key id when created over this API. Null for a built-in role granted in the Plerion app.","isRequired":true,"uniqueKey":"data.createdBy.oneOf.0","typeLabel":"string"},{"type":"null","description":"The user id, or the organization API key id when created over this API. Null for a built-in role granted in the Plerion app.","isRequired":true,"uniqueKey":"data.createdBy.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.createdBy","typeLabel":"string | null"}},"required":["principal","roleId","roleScope","tenantId","createdAt","createdBy"],"uniqueKey":"data","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"principal":{"type":"user","id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"roleId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","roleScope":"organization","tenantId":"\u003cstring>","createdAt":"2023-11-07T05:31:56Z","createdBy":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"7cb7e159-17e2-4e56-bc22-1625264b190f":{"description":"The body is invalid (`InvalidBody`), `tenantId` is missing for a built-in tenant role (`TenantIdRequired`), given for any other role (`TenantIdNotAllowed`) or `*` (`TenantWildcardNotAllowed`), or the user group does not exist (`GroupNotFound`).\n","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"field":{"type":"string","description":"Present on validation errors.","uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"}},"required":["code","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"uniqueKey":"","typeLabel":"object"},"example":{"errors":[{"code":"TenantIdRequired","message":"tenantId is required for this role"}]},"examples":{"Example":{"title":"Example","value":{"errors":[{"code":"TenantIdRequired","message":"tenantId is required for this role"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"8c5149e4-806b-417d-911c-356155bb71e9":{"description":"The organization API key is missing, malformed or revoked.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"field":{"type":"string","description":"Present on validation errors.","uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"}},"required":["code","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"errors":[{"code":"\u003cstring>","message":"\u003cstring>","field":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"5aebf429-7a55-4476-ad93-417efb7181ec":{"description":"The key has the read access level and the operation writes, or the key is a tenant API key.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"field":{"type":"string","description":"Present on validation errors.","uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"}},"required":["code","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"errors":[{"code":"\u003cstring>","message":"\u003cstring>","field":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"d672272e-5816-4c08-9db5-7325e9009630":{"description":"No such role, user, tenant, assignment or principal kind. Codes include `RoleNotFound`, `UserNotFound`, `TenantNotFound`, `AssignmentNotFound` and `PrincipalKindNotFound`.\n","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"field":{"type":"string","description":"Present on validation errors.","uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"}},"required":["code","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"uniqueKey":"","typeLabel":"object"},"example":{"errors":[{"code":"RoleNotFound","message":"role not found"}]},"examples":{"Example":{"title":"Example","value":{"errors":[{"code":"RoleNotFound","message":"role not found"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"b6092e31-7514-417e-b782-2e495a1ffe44":{"description":"The change conflicts with current state. Codes include `AssignmentAlreadyExists`, `RoleHasAssignments`, `RoleHasApiKeys`, `BreakGlassRolesLocked` and `UserRecordChanged`.\n","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"field":{"type":"string","description":"Present on validation errors.","uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"}},"required":["code","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"uniqueKey":"","typeLabel":"object"},"example":{"errors":[{"code":"RoleHasAssignments","message":"role has active assignments; revoke them first"}]},"examples":{"Example":{"title":"Example","value":{"errors":[{"code":"RoleHasAssignments","message":"role has active assignments; revoke them first"}]}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"bd2a62d1-5539-46e9-8f0a-61080f373d4d":{"organizationApiKey":{"type":"http","scheme":"bearer","description":"Plerion organization API key (plerion_oak_…), created by an organization admin in the Plerion app.\n","scopes":[]}}},"servers":{"d0240108-4c6e-49e3-bb34-33b398a8dc85":{"url":"https://{region}.api.plerion.com","description":"Production API server - Select your preferred region","variables":{"region":{"default":"au","enum":["au","sg1","in1","us1"]}}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Plerion organization API key (plerion_oak_…), created by an organization admin in the Plerion app.\n","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Plerion organization API key (plerion_oak_…), created by an organization admin in the Plerion app.\n","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"organizationApiKey","name":"Authorization"}],"title":"organizationApiKey"}]},"originalFileLocation":"api-reference/organization-openapi.yaml"},"subdomain":"pleriondocs","siteName":"Plerion, Simplify Cloud Security - documentation","title":"Assign a role - Plerion, Simplify Cloud Security - documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-05T04:43:07.057Z","originalFileLocation":"api-reference/role-assignments/assign-a-role.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=\"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, tenantId names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 TenantNotFound, and a user that does not exist answers 404 UserNotFound. Granting the same role to the same principal for the same tenant twice answers 409 AssignmentAlreadyExists. Users your identity provider manages over SCIM can be granted roles directly, like any other user. Requires an organization API key with read and write access.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Plerion, Simplify Cloud Security - 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/pleriondocs/xDuw_jwQ1ux0MEWx/_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/pleriondocs/xDuw_jwQ1ux0MEWx/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pleriondocs/xDuw_jwQ1ux0MEWx/_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/pleriondocs/xDuw_jwQ1ux0MEWx/_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/pleriondocs/xDuw_jwQ1ux0MEWx/_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/pleriondocs/xDuw_jwQ1ux0MEWx/_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/pleriondocs/xDuw_jwQ1ux0MEWx/_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/pleriondocs/xDuw_jwQ1ux0MEWx/_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/pleriondocs/xDuw_jwQ1ux0MEWx/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Assign a role - Plerion, Simplify Cloud Security - documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, tenantId names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 TenantNotFound, and a user that does not exist answers 404 UserNotFound. Granting the same role to the same principal for the same tenant twice answers 409 AssignmentAlreadyExists. Users your identity provider manages over SCIM can be granted roles directly, like any other user. Requires an organization API key with read and write access.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Plerion, Simplify Cloud Security - documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://pleriondocs.mintlify.site/_mintlify/api/og/v2?division=Role+assignments\u0026amp;title=Assign+a+role\u0026amp;description=Grants+a+built-in+or+custom+role+to+a+user+or+a+user+group.+For+the+built-in+Tenant+admin+and+Tenant+read-only+roles%2C+%60tenantId%60+names+the+one+tenant+the+grant+\u0026amp;theme=20f0c40f02b58da5abe20cea\u0026amp;signature=c86f9a1457381adce2526ab7285762ef01966304bb18a307241ff726bbabb473\">\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=\"Assign a role - Plerion, Simplify Cloud Security - documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, tenantId names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 TenantNotFound, and a user that does not exist answers 404 UserNotFound. Granting the same role to the same principal for the same tenant twice answers 409 AssignmentAlreadyExists. Users your identity provider manages over SCIM can be granted roles directly, like any other user. Requires an organization API key with read and write access.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://pleriondocs.mintlify.site/_mintlify/api/og/v2?division=Role+assignments\u0026amp;title=Assign+a+role\u0026amp;description=Grants+a+built-in+or+custom+role+to+a+user+or+a+user+group.+For+the+built-in+Tenant+admin+and+Tenant+read-only+roles%2C+%60tenantId%60+names+the+one+tenant+the+grant+\u0026amp;theme=20f0c40f02b58da5abe20cea\u0026amp;signature=c86f9a1457381adce2526ab7285762ef01966304bb18a307241ff726bbabb473\">\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/pleriondocs/xDuw_jwQ1ux0MEWx/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Plerion, Simplify Cloud Security - documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FFA500\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/role-assignments/assign-a-role.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.plerion.com/#organization\",\"name\":\"Plerion, Simplify Cloud Security - documentation\",\"url\":\"https://docs.plerion.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/pleriondocs/GIwfwlVd5Zt2w0-r/logo/plerion.svg?fit=max\u0026auto=format\u0026n=GIwfwlVd5Zt2w0-r\u0026q=85\u0026s=86e89d26c3b52a61495baaf98faff52c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.plerion.com#website\",\"name\":\"Plerion, Simplify Cloud Security - documentation\",\"url\":\"https://docs.plerion.com\",\"publisher\":{\"@id\":\"https://docs.plerion.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role#webpage\",\"url\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role\",\"name\":\"Assign a role\",\"description\":\"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, tenantId names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 TenantNotFound, and a user that does not exist answers 404 UserNotFound. Granting the same role to the same principal for the same tenant twice answers 409 AssignmentAlreadyExists. Users your identity provider manages over SCIM can be granted roles directly, like any other user. Requires an organization API key with read and write access.\",\"dateModified\":\"2026-10-05T04:43:07.057Z\",\"isPartOf\":{\"@id\":\"https://docs.plerion.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Organization API\",\"item\":\"https://docs.plerion.com/api-reference/roles/list-roles\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Role assignments\",\"item\":\"https://docs.plerion.com/api-reference/role-assignments/list-role-assignments\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Assign a role\",\"item\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role#apireference\",\"headline\":\"Assign a role\",\"name\":\"Assign a role\",\"description\":\"Grants a built-in or custom role to a user or a user group. For the built-in Tenant admin and Tenant read-only roles, tenantId names the one tenant the grant applies to and is required; for every other role it is not accepted, because a custom role is already bound to its tenant. A tenant that is not in your organization answers 404 TenantNotFound, and a user that does not exist answers 404 UserNotFound. Granting the same role to the same principal for the same tenant twice answers 409 AssignmentAlreadyExists. Users your identity provider manages over SCIM can be granted roles directly, like any other user. Requires an organization API key with read and write access.\",\"url\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role\",\"mainEntityOfPage\":{\"@id\":\"https://docs.plerion.com/api-reference/role-assignments/assign-a-role#webpage\"},\"dateModified\":\"2026-10-05T04:43:07.057Z\",\"publisher\":{\"@id\":\"https://docs.plerion.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.plerion.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Plerion, Simplify Cloud Security - documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Plerion, Simplify Cloud Security - documentation","nav":{"global":null,"tabs":[{"tab":"Welcome","pages":[{"title":"Welcome","href":""}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides/getting-started"}]},{"tab":"API reference","groups":[{"group":"Overview","pages":[{"title":"Quick start with Plerion API","href":"/api-reference"},{"title":"API categories","href":"/api-reference/api-categories"}]},{"group":"API documentation","pages":[{"group":"Findings","pages":[{"title":"List findings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/findings","href":"/api-reference/findings/list"}]},{"group":"Alerts","pages":[{"title":"List alerts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/alerts","href":"/api-reference/alerts/list"}]},{"group":"AWS integration","pages":[{"title":"Get the tenant's external ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/external-id","href":"/api-reference/aws-integration/get-external-id"},{"title":"Create an onboarding token for a new integration","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/integrations/token","href":"/api-reference/aws-integration/generate-temporary-token"},{"title":"Get the onboarding CloudFormation template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/cloudformation-templates","href":"/api-reference/aws-integration/get-cloudformation-template"}]},{"group":"Tenant","pages":[{"title":"Get this tenant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant","href":"/api-reference/tenant/get"},{"title":"Get what this key can call","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/openapi","href":"/api-reference/tenant/discover"},{"title":"Get this tenant's usage","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/usage","href":"/api-reference/tenant/usage"}]},{"group":"Integrations","pages":[{"title":"List inbound integrations","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/integrations","href":"/api-reference/integrations/list-inbound-integrations"},{"title":"Replace an integration's user-defined tags","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/tenant/integrations/{integrationId}/user-defined-tags","href":"/api-reference/integrations/replace-user-defined-tags"}]},{"group":"Code security","pages":[{"title":"Upload infrastructure code for scanning","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/shiftleft/iac/scan","href":"/api-reference/code-security/upload-iac"},{"title":"List code scans","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/shiftleft/iac/scans","href":"/api-reference/code-security/list-scans"},{"title":"List a code scan's findings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/shiftleft/iac/scans/{scanId}/findings","href":"/api-reference/code-security/list-findings"},{"title":"List a code scan's vulnerabilities","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/shiftleft/iac/scans/{scanId}/vulnerabilities","href":"/api-reference/code-security/list-vulnerabilities"}]},{"group":"Compliance frameworks","pages":[{"title":"List compliance frameworks","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/compliance-frameworks","href":"/api-reference/compliance-frameworks/list"},{"title":"Download a compliance report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/integrations/{integrationId}/compliance-frameworks/{complianceId}/download","href":"/api-reference/compliance-frameworks/download-report"},{"title":"Request a compliance report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/integrations/{integrationId}/frameworks/{complianceFrameworkId}/reports","href":"/api-reference/compliance-frameworks/request-a-framework-report"}]},{"group":"Assets","pages":[{"title":"List assets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/assets","href":"/api-reference/assets/list"},{"title":"Get an asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/assets/{assetId}","href":"/api-reference/assets/get"},{"title":"Get an asset's SBOM","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/assets/{assetId}/sbom","href":"/api-reference/assets/get-sbom"},{"title":"Get an SBOM by asset ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/assets/sbom","href":"/api-reference/assets/get-sbom-by-asset-id"}]},{"group":"Asset groups","pages":[{"title":"List asset groups","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/asset-groups","href":"/api-reference/asset-groups/list"},{"title":"Create an asset group","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/asset-groups","href":"/api-reference/asset-groups/create"},{"title":"Get an asset group","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/asset-groups/{assetGroupId}","href":"/api-reference/asset-groups/get"},{"title":"Delete an asset group","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/tenant/asset-groups/{assetGroupId}","href":"/api-reference/asset-groups/delete"},{"title":"Update an asset group","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/tenant/asset-groups/{assetGroupId}","href":"/api-reference/asset-groups/update"}]},{"group":"Well-Architected frameworks","pages":[{"title":"List Well-Architected frameworks","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/well-architected-frameworks","href":"/api-reference/well-architected-frameworks/list"},{"title":"Download a Well-Architected report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/integrations/{integrationId}/well-architected-frameworks/{wellArchitectedFrameworkId}/download","href":"/api-reference/well-architected-frameworks/download-report"},{"title":"Request a Well-Architected report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/integrations/{integrationId}/frameworks/{wellArchitectedFrameworkId}/reports","href":"/api-reference/well-architected-frameworks/request-framework-report"}]},{"group":"Vulnerabilities","pages":[{"title":"List vulnerabilities","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/vulnerabilities","href":"/api-reference/vulnerabilities/list"},{"title":"List vulnerability exemptions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/profiles/{profileId}/vulnerability/exemptions","href":"/api-reference/vulnerabilities/list-vulnerability-exemptions-in-a-profile"},{"title":"Create a vulnerability exemption","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/profiles/{profileId}/vulnerability/exemptions","href":"/api-reference/vulnerabilities/create-a-vulnerability-exemption-in-a-profile"},{"title":"Get a vulnerability exemption","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/profiles/{profileId}/vulnerability/exemptions/{id}","href":"/api-reference/vulnerabilities/get-a-vulnerability-exemption-by-id"},{"title":"Delete a vulnerability exemption","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/tenant/profiles/{profileId}/vulnerability/exemptions/{id}","href":"/api-reference/vulnerabilities/delete-a-vulnerability-exemption-by-id"},{"title":"Update a vulnerability exemption","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/tenant/profiles/{profileId}/vulnerability/exemptions/{id}","href":"/api-reference/vulnerabilities/update-a-vulnerability-exemption-by-id"}]},{"group":"Profiles","pages":[{"title":"List profiles","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/profiles","href":"/api-reference/profiles/list"}]},{"group":"Detection exemptions","pages":[{"title":"Get a detection's exemptions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/profiles/{profileId}/detection-settings/{detectionId}/exemptions","href":"/api-reference/detection-exemptions/get"},{"title":"Replace a detection's exemptions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/tenant/profiles/{profileId}/detection-settings/{detectionId}/exemptions","href":"/api-reference/detection-exemptions/replace"}]},{"group":"Risks","pages":[{"title":"List risks","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/risks","href":"/api-reference/risks/list"},{"title":"Get a risk","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/risks/{riskId}","href":"/api-reference/risks/get"}]},{"group":"Audit logs","pages":[{"title":"List audit logs","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/audit-logs","href":"/api-reference/audit-logs/list"}]},{"group":"Custom checks","pages":[{"title":"List custom checks","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/custom-checks","href":"/api-reference/custom-checks/list"},{"title":"Create a custom check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/custom-checks","href":"/api-reference/custom-checks/create"},{"title":"Get a custom check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/custom-checks/{customCheckId}","href":"/api-reference/custom-checks/get"},{"title":"Replace a custom check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/tenant/custom-checks/{customCheckId}","href":"/api-reference/custom-checks/update"},{"title":"Delete a custom check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/tenant/custom-checks/{customCheckId}","href":"/api-reference/custom-checks/delete"},{"title":"Start a custom check dry run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/custom-check-dry-runs","href":"/api-reference/custom-checks/start-dry-run"},{"title":"Get a dry run's status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/custom-check-dry-runs/{dryRunId}","href":"/api-reference/custom-checks/get-dry-run-status"}]},{"group":"Metrics","pages":[{"title":"Query metrics","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/metrics","href":"/api-reference/metrics/query"}]},{"group":"Workload scans","pages":[{"title":"Request a workload scan","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/workload/scans","href":"/api-reference/workload-scans/request"},{"title":"Get a workload scan","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/workload/scans/{scanId}","href":"/api-reference/workload-scans/get"}]},{"group":"AWS access grants","pages":[{"title":"List AWS access grants","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/aws/access-grants","href":"/api-reference/aws-access-grants/list"},{"title":"Get access grant counts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/aws/access-grants/stats","href":"/api-reference/aws-access-grants/stats"},{"title":"List external principals with access","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/aws/access-grants/external-principals","href":"/api-reference/aws-access-grants/external-principals"},{"title":"Get an AWS access grant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/aws/access-grants/{id}","href":"/api-reference/aws-access-grants/get"},{"title":"Review an AWS access grant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/tenant/aws/access-grants/{id}","href":"/api-reference/aws-access-grants/update"}]},{"group":"Custom dashboards","pages":[{"title":"List the tenant's custom dashboards","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/custom-reports","href":"/api-reference/custom-dashboards/list"}]},{"group":"Preferences","pages":[{"title":"Get the tenant default home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/preferences/home-dashboard","href":"/api-reference/preferences/get-tenant-default"},{"title":"Set the tenant default home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/tenant/preferences/home-dashboard","href":"/api-reference/preferences/set-tenant-default"},{"title":"Clear the tenant default home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/tenant/preferences/home-dashboard","href":"/api-reference/preferences/clear-tenant-default"}]},{"group":"Ownership","pages":[{"title":"List ownership rules","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/ownership/rules","href":"/api-reference/ownership/list-rules"},{"title":"Set ownership rules","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/tenant/ownership/rules","href":"/api-reference/ownership/set-rules"},{"title":"Preview ownership rules","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/ownership/rules/preview","href":"/api-reference/ownership/preview-rules"},{"title":"Get ownership settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/ownership/settings","href":"/api-reference/ownership/get-settings"},{"title":"Update ownership settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/tenant/ownership/settings","href":"/api-reference/ownership/update-settings"},{"title":"List tag keys for ownership","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/ownership/tag-keys","href":"/api-reference/ownership/list-tag-keys"},{"title":"List integration tag keys for ownership","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/ownership/integration-tag-keys","href":"/api-reference/ownership/list-integration-tag-keys"},{"title":"Get ownership summary","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/ownership/summary","href":"/api-reference/ownership/get-summary"},{"title":"List assets with no owner, by reason","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/ownership/uncovered","href":"/api-reference/ownership/list-assets-with-no-owner"},{"title":"Explain an asset's owners","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/ownership/explain","href":"/api-reference/ownership/explain-an-assets-owners"},{"title":"Set owners on assets by hand","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/tenant/assets/owner","href":"/api-reference/ownership/set-owners-on-assets"},{"title":"List owners","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/owners","href":"/api-reference/ownership/list-owners"},{"title":"Create an owner","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/owners","href":"/api-reference/ownership/create-an-owner"},{"title":"Delete several owners","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/owners/not-an-owner","href":"/api-reference/ownership/delete-several-owners"},{"title":"List owners that are likely duplicates","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/owners/review","href":"/api-reference/ownership/list-likely-duplicates"},{"title":"Delete an owner","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/tenant/owners/{ownerId}","href":"/api-reference/ownership/delete-an-owner"},{"title":"Update an owner","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/tenant/owners/{ownerId}","href":"/api-reference/ownership/update-an-owner"},{"title":"Merge owners into one","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/owners/{ownerId}/merge","href":"/api-reference/ownership/merge-owners"},{"title":"Undo a merge","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tenant/owners/{ownerId}/unmerge","href":"/api-reference/ownership/undo-a-merge"},{"title":"Add or remove the names an owner goes by","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/tenant/owners/{ownerId}/aliases","href":"/api-reference/ownership/update-an-owners-names"},{"title":"Get an owner's history","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/owners/{ownerId}/history","href":"/api-reference/ownership/get-owner-history"},{"title":"Get the commands to retag an owner's assets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tenant/owners/{ownerId}/retag-plan","href":"/api-reference/ownership/get-retag-commands"}]}]},{"group":"Organization API","pages":[{"group":"Roles","pages":[{"title":"List roles","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/roles","href":"/api-reference/roles/list-roles"},{"title":"Create a custom role","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml post /v1/organization/roles","href":"/api-reference/roles/create-a-custom-role"},{"title":"Get a role","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/roles/{roleId}","href":"/api-reference/roles/get-a-role"},{"title":"Update a custom role","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml put /v1/organization/roles/{roleId}","href":"/api-reference/roles/update-a-custom-role"},{"title":"Delete a custom role","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml delete /v1/organization/roles/{roleId}","href":"/api-reference/roles/delete-a-custom-role"}]},{"group":"Role assignments","pages":[{"title":"List role assignments","description":"Returns the assignments matching exactly one filter: `roleId`, `userId` or `groupId`. A request with no filter answers 400 `MissingAssignmentFilter`. Page with `cursor` and `perPage`; a `cursor` this list did not issue answers 400 `InvalidCursor`. A `userId` listing also includes the built-in roles the user was granted in the Plerion app, with `createdAt` and `createdBy` null, since those grants carry no date or author. A role held both ways is listed once.\nRequires an organization API key with read access.\n","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/role-assignments","href":"/api-reference/role-assignments/list-role-assignments"},{"title":"Assign a role","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml post /v1/organization/role-assignments","href":"/api-reference/role-assignments/assign-a-role"},{"title":"Revoke a role","description":"Removes one assignment. For the built-in Tenant admin and Tenant read-only roles, the `tenantId` query parameter names which tenant's grant to revoke and is required; for every other role it is not accepted. For a user and a built-in role, the grant is removed wherever it is held, including one made in the Plerion app, in the one call. Answers 404 `AssignmentNotFound` when the principal does not hold the role, and 409 `UserRecordChanged` when the user was edited at the same moment; retry.\nRequires an organization API key with read and write access.\n","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml delete /v1/organization/role-assignments/{roleId}/{principalType}/{principalId}","href":"/api-reference/role-assignments/revoke-a-role"}]},{"group":"Permission catalog","pages":[{"title":"Get the permission catalog","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/permission-catalog","href":"/api-reference/permission-catalog/get-the-permission-catalog"}]},{"group":"Preferences","pages":[{"title":"Get a user's home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/users/{userId}/preferences/home-dashboard","href":"/api-reference/preferences/get-a-users-home-dashboard"},{"title":"Set a user's home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml put /v1/organization/users/{userId}/preferences/home-dashboard","href":"/api-reference/preferences/set-a-users-home-dashboard"},{"title":"Clear a user's home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml delete /v1/organization/users/{userId}/preferences/home-dashboard","href":"/api-reference/preferences/clear-a-users-home-dashboard"},{"title":"Get a user's navigation","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/users/{userId}/preferences/navigation","href":"/api-reference/preferences/get-a-users-navigation"},{"title":"Set a user's navigation","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml put /v1/organization/users/{userId}/preferences/navigation","href":"/api-reference/preferences/set-a-users-navigation"},{"title":"Clear a user's navigation","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml delete /v1/organization/users/{userId}/preferences/navigation","href":"/api-reference/preferences/clear-a-users-navigation"},{"title":"Get a user group's home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/user-groups/{groupId}/preferences/home-dashboard","href":"/api-reference/preferences/get-a-user-groups-home-dashboard"},{"title":"Set a user group's home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml put /v1/organization/user-groups/{groupId}/preferences/home-dashboard","href":"/api-reference/preferences/set-a-user-groups-home-dashboard"},{"title":"Clear a user group's home dashboard","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml delete /v1/organization/user-groups/{groupId}/preferences/home-dashboard","href":"/api-reference/preferences/clear-a-user-groups-home-dashboard"},{"title":"Get a user group's navigation","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml get /v1/organization/user-groups/{groupId}/preferences/navigation","href":"/api-reference/preferences/get-a-user-groups-navigation"},{"title":"Set a user group's navigation","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml put /v1/organization/user-groups/{groupId}/preferences/navigation","href":"/api-reference/preferences/set-a-user-groups-navigation"},{"title":"Clear a user group's navigation","deprecated":null,"version":null,"openapi":"/api-reference/organization-openapi.yaml delete /v1/organization/user-groups/{groupId}/preferences/navigation","href":"/api-reference/preferences/clear-a-user-groups-navigation"}]}]},{"group":"SCIM API","pages":[{"group":"Discovery","pages":[{"title":"Supported SCIM protocol features","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/ServiceProviderConfig","href":"/api-reference/discovery/supported-scim-protocol-features"},{"title":"List supported resource types","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/ResourceTypes","href":"/api-reference/discovery/list-supported-resource-types"},{"title":"Get one resource type","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/ResourceTypes/{resourceTypeId}","href":"/api-reference/discovery/get-one-resource-type"},{"title":"List attribute schemas","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/Schemas","href":"/api-reference/discovery/list-attribute-schemas"},{"title":"Get one attribute schema","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/Schemas/{schemaUri}","href":"/api-reference/discovery/get-one-attribute-schema"}]},{"group":"Users","pages":[{"title":"List or filter users","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/Users","href":"/api-reference/users/list-or-filter-users"},{"title":"Create or adopt a user","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml post /v1/organization/scim/v2/Users","href":"/api-reference/users/create-or-adopt-a-user"},{"title":"Get one user","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/Users/{userId}","href":"/api-reference/users/get-one-user"},{"title":"Replace a user","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml put /v1/organization/scim/v2/Users/{userId}","href":"/api-reference/users/replace-a-user"},{"title":"Deprovision a user","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml delete /v1/organization/scim/v2/Users/{userId}","href":"/api-reference/users/deprovision-a-user"},{"title":"Partially update a user","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml patch /v1/organization/scim/v2/Users/{userId}","href":"/api-reference/users/partially-update-a-user"},{"title":"Search users with a request body","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml post /v1/organization/scim/v2/Users/.search","href":"/api-reference/users/search-users-with-a-request-body"}]},{"group":"Groups","pages":[{"title":"List or filter groups","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/Groups","href":"/api-reference/groups/list-or-filter-groups"},{"title":"Create a group","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml post /v1/organization/scim/v2/Groups","href":"/api-reference/groups/create-a-group"},{"title":"Get one group","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml get /v1/organization/scim/v2/Groups/{groupId}","href":"/api-reference/groups/get-one-group"},{"title":"Replace a group","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml put /v1/organization/scim/v2/Groups/{groupId}","href":"/api-reference/groups/replace-a-group"},{"title":"Delete a group","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml delete /v1/organization/scim/v2/Groups/{groupId}","href":"/api-reference/groups/delete-a-group"},{"title":"Partially update a group","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml patch /v1/organization/scim/v2/Groups/{groupId}","href":"/api-reference/groups/partially-update-a-group"},{"title":"Search groups with a request body","deprecated":null,"version":null,"openapi":"/api-reference/scim-openapi.yaml post /v1/organization/scim/v2/Groups/.search","href":"/api-reference/groups/search-groups-with-a-request-body"}]}]}]},{"tab":"CLI reference","pages":[{"title":"CLI reference","href":"/cli-reference/introduction"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]},{"tab":"FAQs","hidden":true,"pages":[{"title":"FAQs","href":"/faqs"}]}]},"basePath":"","title":"Assign a role - Plerion, Simplify Cloud Security - documentation","buildId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","deploymentId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-i2a3QZ8E.js","utils-ChLwp8m0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DRktVTDc.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CA2pEs4T.js","snippetPresets-ClQ6XrKD.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Ct_Lv36y.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-Cn2PYw9e.js","shallow-rkyymjXQ.js","getApiPlaygroundDisplay-BB9vkXtE.js","CodeSnippet-Bm5RU7m1.js","CodeSnippets-BgU9Deuz.js","Page-BUDYNlhG.js","getPastedJson-BD-6NNum.js","icon-8Z6tud2e.js","MethodPill-Tuzr4g3V.js","DuplicateIcon-0ceWFYhN.js","createIcon-FBXow_ST.js","DynamicMarkdown-CD8713Yy.js","SectionHeading-7zgzQbH-.js","axios-vUo_bRtp.js","Markdown-D7Ofw1oz.js","clsx-eKJ4rcii.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CwjSCXIK.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-9EK5IAXV.js"]}