Skip to content

API: IAM

Generated from the API's OpenAPI schema. Paths are relative to https://cloud.tebibhost.com. Authentication, errors, pagination and idempotency are on the API overview.

GET/api/v1/orgs/{organization_id}/groups

List Groups (listGroups)

IAM action: iam:DescribeGroup

ParameterInTypeDescription
organization_id requiredpathstring
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_GroupOut_)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of Page_GroupOut_
FieldTypeDescription
itemsarray of GroupOut
next_cursorstring (nullable)

POST/api/v1/orgs/{organization_id}/groups

Create Group (createGroup)

IAM action: iam:CreateGroup

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, GroupIn)

FieldTypeDescription
descriptionstring Default: "".
name requiredstring

Responses

  • 201 Created (GroupOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of GroupOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
idstring
member_countinteger
namestring
trnstring

GET/api/v1/orgs/{organization_id}/groups/{group_id}

Get Group (getGroup)

IAM action: iam:DescribeGroup

ParameterInTypeDescription
organization_id requiredpathstring
group_id requiredpathstring

Responses

  • 200 OK (GroupOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of GroupOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
idstring
member_countinteger
namestring
trnstring

PATCH/api/v1/orgs/{organization_id}/groups/{group_id}

Update Group (updateGroup)

IAM action: iam:UpdateGroup

ParameterInTypeDescription
organization_id requiredpathstring
group_id requiredpathstring

Request body (JSON, GroupPatch)

FieldTypeDescription
descriptionstring (nullable)

Responses

  • 200 OK (GroupOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of GroupOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
idstring
member_countinteger
namestring
trnstring

DELETE/api/v1/orgs/{organization_id}/groups/{group_id}

Delete Group (deleteGroup)

IAM action: iam:DeleteGroup

ParameterInTypeDescription
organization_id requiredpathstring
group_id requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

GET/api/v1/orgs/{organization_id}/groups/{group_id}/members

List Group Members (listGroupMembers)

IAM action: iam:DescribeGroup

ParameterInTypeDescription
organization_id requiredpathstring
group_id requiredpathstring

Responses

  • 200 OK (array of GroupMemberOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

PUT/api/v1/orgs/{organization_id}/groups/{group_id}/members/{user_id}

Add Group Member (addGroupMember)

IAM action: iam:AddUserToGroup

ParameterInTypeDescription
organization_id requiredpathstring
group_id requiredpathstring
user_id requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

DELETE/api/v1/orgs/{organization_id}/groups/{group_id}/members/{user_id}

Remove Group Member (removeGroupMember)

IAM action: iam:RemoveUserFromGroup

ParameterInTypeDescription
organization_id requiredpathstring
group_id requiredpathstring
user_id requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

GET/api/v1/orgs/{organization_id}/guardrails

List Guardrails (listGuardrails)

The organization's guardrails. Every one must allow a request; none attached means no limit. They bind every principal, OrgOwners included, except for iam:*Guardrail*.

IAM action: iam:ListGuardrails

ParameterInTypeDescription
organization_id requiredpathstring
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_GuardrailOut_)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of Page_GuardrailOut_
FieldTypeDescription
itemsarray of GuardrailOut
next_cursorstring (nullable)

POST/api/v1/orgs/{organization_id}/guardrails

Attach Guardrail (attachGuardrail)

Attach a policy as a guardrail. Its statements cap every principal in the organization (Principal is not allowed in them); it grants nothing by itself.

IAM action: iam:AttachGuardrail

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, GuardrailIn)

FieldTypeDescription
policy requiredstringPolicy ID, TRN or name: the organization's or a managed one.

Responses

  • 201 Created (GuardrailOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of GuardrailOut
FieldTypeDescription
created_atstring (date-time)
created_bystring
idstring
policy_idstring
policy_namestring
policy_trnstring
trnstring

GET/api/v1/orgs/{organization_id}/guardrails/{guardrail_id}

Get Guardrail (getGuardrail)

IAM action: iam:DescribeGuardrail

ParameterInTypeDescription
organization_id requiredpathstring
guardrail_id requiredpathstring

Responses

  • 200 OK (GuardrailOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of GuardrailOut
FieldTypeDescription
created_atstring (date-time)
created_bystring
idstring
policy_idstring
policy_namestring
policy_trnstring
trnstring

DELETE/api/v1/orgs/{organization_id}/guardrails/{guardrail_id}

Detach Guardrail (detachGuardrail)

IAM action: iam:DetachGuardrail

ParameterInTypeDescription
organization_id requiredpathstring
guardrail_id requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

GET/api/v1/orgs/{organization_id}/iam/credential-report

Get Credential Report (getCredentialReport)

IAM action: iam:GetCredentialReport

ParameterInTypeDescription
organization_id requiredpathstring

Responses

  • 200 OK (CredentialReportOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of CredentialReportOut
FieldTypeDescription
generated_atstring (date-time)
organization_idstring
principalsarray of ReportPrincipalOut
unused_key_disable_daysinteger (nullable)

GET/api/v1/orgs/{organization_id}/iam/settings

Get Iam Settings (getIamSettings)

IAM action: iam:GetIamSettings

ParameterInTypeDescription
organization_id requiredpathstring

Responses

  • 200 OK (IamSettingsOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of IamSettingsOut
FieldTypeDescription
access_key_default_ttl_daysinteger
access_key_max_ttl_daysinteger
unused_key_disable_daysinteger (nullable)

PUT/api/v1/orgs/{organization_id}/iam/settings

Update Iam Settings (updateIamSettings)

IAM action: iam:UpdateIamSettings

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, IamSettingsIn)

FieldTypeDescription
unused_key_disable_days requiredinteger (nullable)

Responses

  • 200 OK (IamSettingsOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of IamSettingsOut
FieldTypeDescription
access_key_default_ttl_daysinteger
access_key_max_ttl_daysinteger
unused_key_disable_daysinteger (nullable)

POST/api/v1/orgs/{organization_id}/iam/simulate

Simulate Principal Policy (simulatePrincipalPolicy)

Would a principal be allowed? Decides every action on every resource with the same evaluator as live requests and names the deciding layer and statements. Needs iam:SimulatePrincipalPolicy on the principal and read access to it (iam:DescribeUser, iam:DescribeServiceAccount or iam:DescribeRole).

IAM action: iam:SimulatePrincipalPolicyiam:DescribeUseriam:DescribeServiceAccountiam:DescribeRole

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, SimulateIn)

FieldTypeDescription
actions requiredarray of stringActions to check, e.g. compute:StartVM (no wildcards).
contextobjectRequest keys to simulate: auth:mfa, auth:source-ip, auth:current-time, auth:epoch-time, auth:credential-type, and request:*, iam:*, resource:* keys (resource:tag/<key> stands in for the resource's tags). Keys describing the principal or the resource are ignored.
principal requiredstringTRN of a user, service account, role or role session in this organization.
resources requiredarray of stringResource TRNs in this organization; '<type>/*' checks a create.
session_policyobject (nullable)Roles only: a session policy, as if passed to AssumeRole.

Responses

  • 200 OK (SimulateOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of SimulateOut
FieldTypeDescription
ignored_context_keysarray of string
principalstring
resultsarray of SimulationResultOut

GET/api/v1/orgs/{organization_id}/permission-boundaries

List Permission Boundaries (listPermissionBoundaries)

Boundaries in the organization; filter by principal (TRN).

IAM action: iam:DescribePermissionBoundary

ParameterInTypeDescription
organization_id requiredpathstring
principalquerystring (nullable)
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_PermissionBoundaryOut_)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of Page_PermissionBoundaryOut_
FieldTypeDescription
itemsarray of PermissionBoundaryOut
next_cursorstring (nullable)

PUT/api/v1/orgs/{organization_id}/permission-boundaries

Put Permission Boundary (putPermissionBoundary)

Set or replace a principal's permission boundary: their identity policies then only grant what the boundary also allows. Repeating the same request changes nothing.

IAM action: iam:PutPermissionBoundary

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, PermissionBoundaryIn)

FieldTypeDescription
policy requiredstringPolicy ID, TRN or name: the organization's or a managed one.
principal requiredstringTRN of a user, service account or role in this organization.

Responses

  • 200 OK (PermissionBoundaryOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of PermissionBoundaryOut
FieldTypeDescription
created_atstring (date-time)
created_bystring
idstring
policy_idstring
policy_namestring
policy_trnstring
principalstring
principal_typestring

DELETE/api/v1/orgs/{organization_id}/permission-boundaries/{boundary_id}

Delete Permission Boundary (deletePermissionBoundary)

IAM action: iam:DeletePermissionBoundary

ParameterInTypeDescription
organization_id requiredpathstring
boundary_id requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

GET/api/v1/orgs/{organization_id}/policies

List Policies (listPolicies)

scope: all, local (this organization's) or managed (TebibHost's).

IAM action: iam:DescribePolicy

ParameterInTypeDescription
organization_id requiredpathstring
scopequerystring
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_PolicyOut_)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of Page_PolicyOut_
FieldTypeDescription
itemsarray of PolicyOut
next_cursorstring (nullable)

POST/api/v1/orgs/{organization_id}/policies

Create Policy (createPolicy)

IAM action: iam:CreatePolicy

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, PolicyIn)

FieldTypeDescription
descriptionstring Default: "".
document requiredobject
name requiredstring

Responses

  • 201 Created (PolicyDetailOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of PolicyDetailOut
FieldTypeDescription
attachment_countinteger
created_atstring (date-time)
default_versioninteger
descriptionstring
documentobject
idstring
managedboolean
namestring
trnstring
updated_atstring (date-time)

GET/api/v1/orgs/{organization_id}/policies/{policy_ref}

Get Policy (getPolicy)

policy_ref: a policy ID or name (TebibHost-managed policies by name, e.g. ReadOnly).

IAM action: iam:DescribePolicy

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring

Responses

  • 200 OK (PolicyDetailOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of PolicyDetailOut
FieldTypeDescription
attachment_countinteger
created_atstring (date-time)
default_versioninteger
descriptionstring
documentobject
idstring
managedboolean
namestring
trnstring
updated_atstring (date-time)

PATCH/api/v1/orgs/{organization_id}/policies/{policy_ref}

Update Policy (updatePolicy)

IAM action: iam:UpdatePolicy

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring

Request body (JSON, PolicyPatch)

FieldTypeDescription
descriptionstring (nullable)

Responses

  • 200 OK (PolicyDetailOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of PolicyDetailOut
FieldTypeDescription
attachment_countinteger
created_atstring (date-time)
default_versioninteger
descriptionstring
documentobject
idstring
managedboolean
namestring
trnstring
updated_atstring (date-time)

DELETE/api/v1/orgs/{organization_id}/policies/{policy_ref}

Delete Policy (deletePolicy)

IAM action: iam:DeletePolicy

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

PUT/api/v1/orgs/{organization_id}/policies/{policy_ref}/default-version

Set Default Policy Version (setDefaultPolicyVersion)

IAM action: iam:SetDefaultPolicyVersion

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring

Request body (JSON, DefaultVersionIn)

FieldTypeDescription
version requiredinteger

Responses

  • 200 OK (PolicyDetailOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of PolicyDetailOut
FieldTypeDescription
attachment_countinteger
created_atstring (date-time)
default_versioninteger
descriptionstring
documentobject
idstring
managedboolean
namestring
trnstring
updated_atstring (date-time)

GET/api/v1/orgs/{organization_id}/policies/{policy_ref}/versions

List Policy Versions (listPolicyVersions)

IAM action: iam:DescribePolicy

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring

Responses

  • 200 OK (array of VersionOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

POST/api/v1/orgs/{organization_id}/policies/{policy_ref}/versions

Create Policy Version (createPolicyVersion)

IAM action: iam:CreatePolicyVersion

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring

Request body (JSON, VersionIn)

FieldTypeDescription
document requiredobject
set_as_defaultboolean Default: true.

Responses

  • 201 Created (VersionOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of VersionOut
FieldTypeDescription
created_atstring (date-time)
created_bystring
documentobject
is_defaultboolean
versioninteger

GET/api/v1/orgs/{organization_id}/policies/{policy_ref}/versions/{version}

Get Policy Version (getPolicyVersion)

IAM action: iam:DescribePolicy

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring
version requiredpathinteger

Responses

  • 200 OK (VersionOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of VersionOut
FieldTypeDescription
created_atstring (date-time)
created_bystring
documentobject
is_defaultboolean
versioninteger

DELETE/api/v1/orgs/{organization_id}/policies/{policy_ref}/versions/{version}

Delete Policy Version (deletePolicyVersion)

IAM action: iam:DeletePolicyVersion

ParameterInTypeDescription
organization_id requiredpathstring
policy_ref requiredpathstring
version requiredpathinteger

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

GET/api/v1/orgs/{organization_id}/policy-attachments

List Attachments (listAttachments)

Filter by principal (TRN) and/or policy (ID, TRN or name).

IAM action: iam:DescribePolicyAttachment

ParameterInTypeDescription
organization_id requiredpathstring
principalquerystring (nullable)
policyquerystring (nullable)
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_PolicyAttachmentOut_)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of Page_PolicyAttachmentOut_
FieldTypeDescription
itemsarray of PolicyAttachmentOut
next_cursorstring (nullable)

POST/api/v1/orgs/{organization_id}/policy-attachments

Create Attachment (createAttachment)

IAM action: iam:AttachUserPolicyiam:AttachGroupPolicyiam:AttachServiceAccountPolicyiam:AttachRolePolicy

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, PolicyAttachmentIn)

FieldTypeDescription
policy requiredstring
principal requiredstring
project_idstring (nullable)

Responses

  • 201 Created (PolicyAttachmentOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of PolicyAttachmentOut
FieldTypeDescription
created_atstring (date-time)
created_bystring
idstring
policy_idstring
policy_trnstring
principalstring
principal_typestring
project_idstring (nullable)

DELETE/api/v1/orgs/{organization_id}/policy-attachments/{attachment_id}

Delete Attachment (deleteAttachment)

IAM action: iam:DetachUserPolicyiam:DetachGroupPolicyiam:DetachServiceAccountPolicyiam:DetachRolePolicy

ParameterInTypeDescription
organization_id requiredpathstring
attachment_id requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

GET/api/v1/orgs/{organization_id}/roles

List Roles (listRoles)

IAM action: iam:DescribeRole

ParameterInTypeDescription
organization_id requiredpathstring
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_RoleOut_)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of Page_RoleOut_
FieldTypeDescription
itemsarray of RoleOut
next_cursorstring (nullable)

POST/api/v1/orgs/{organization_id}/roles

Create Role (createRole)

IAM action: iam:CreateRole

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, RoleIn)

FieldTypeDescription
descriptionstring Default: "".
max_session_secondsinteger Default: 3600.
name requiredstring
tagsobject
trust_policy requiredobject

Responses

  • 201 Created (RoleOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of RoleOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
idstring
max_session_secondsinteger
namestring
tagsobject
trnstring
trust_policyobject
updated_atstring (date-time)

GET/api/v1/orgs/{organization_id}/roles/{role_id}

Get Role (getRole)

IAM action: iam:DescribeRole

ParameterInTypeDescription
organization_id requiredpathstring
role_id requiredpathstring

Responses

  • 200 OK (RoleOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of RoleOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
idstring
max_session_secondsinteger
namestring
tagsobject
trnstring
trust_policyobject
updated_atstring (date-time)

PATCH/api/v1/orgs/{organization_id}/roles/{role_id}

Update Role (updateRole)

IAM action: iam:UpdateRole

ParameterInTypeDescription
organization_id requiredpathstring
role_id requiredpathstring

Request body (JSON, RolePatch)

FieldTypeDescription
descriptionstring (nullable)
max_session_secondsinteger (nullable)
tagsobject (nullable)
trust_policyobject (nullable)

Responses

  • 200 OK (RoleOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of RoleOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
idstring
max_session_secondsinteger
namestring
tagsobject
trnstring
trust_policyobject
updated_atstring (date-time)

DELETE/api/v1/orgs/{organization_id}/roles/{role_id}

Delete Role (deleteRole)

IAM action: iam:DeleteRole

ParameterInTypeDescription
organization_id requiredpathstring
role_id requiredpathstring

Responses

  • 204 No Content
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)

POST/api/v1/orgs/{organization_id}/roles/{role_id}/assume

Assume Role (assumeRole)

Temporary credentials for the role. Needs iam:AssumeRole on the role in the caller's policies AND the role's trust policy to allow the caller.

IAM action: iam:AssumeRole

ParameterInTypeDescription
organization_id requiredpathstring
role_id requiredpathstring

Request body (JSON, AssumeRoleIn)

FieldTypeDescription
duration_secondsinteger (nullable)
policyobject (nullable)
session_name requiredstring

Responses

  • 200 OK (CredentialsOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of CredentialsOut
FieldTypeDescription
access_key_idstring
expires_atstring (date-time)
role_trnstring
secretstring
session_idstring
session_trnstring
tokenstring

POST/api/v1/orgs/{organization_id}/roles/{role_id}/revoke-sessions

Revoke Role Sessions (revokeRoleSessions)

End every active session of the role now.

IAM action: iam:RevokeRoleSessions

ParameterInTypeDescription
organization_id requiredpathstring
role_id requiredpathstring

Responses

  • 200 OK (RevokedOut)
  • 400 Invalid request (ErrorOut)
  • 401 Not authenticated (ErrorOut)
  • 403 Access denied: the error names the action and the resource (ErrorOut)
  • 404 Not found (also: the resource belongs to another organization) (ErrorOut)
  • 409 Conflict or quota exceeded (ErrorOut)
  • 422 Idempotency key reused for a different request (ErrorOut)
  • 429 Rate limited (ErrorOut)
Fields of RevokedOut
FieldTypeDescription
revokedinteger