Skip to content

API: Identity

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/invitations/{token}

Preview Invitation (previewInvitation)

IAM action: none (public, no sign-in)

ParameterInTypeDescription
token requiredpathstring

Responses

  • 200 OK (InvitationPreview)
  • 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 InvitationPreview
FieldTypeDescription
account_existsboolean
emailstring
expires_atstring (date-time)
organization_namestring

POST/api/v1/invitations/{token}/accept

Accept Invitation (acceptInvitation)

Join the organization. New people set a password; existing users must be signed in.

IAM action: none (public, no sign-in)

ParameterInTypeDescription
token requiredpathstring

Request body (JSON, AcceptIn)

FieldTypeDescription
full_namestring Default: "".
passwordstring (nullable)

Responses

  • 200 OK (AcceptOut)
  • 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 AcceptOut
FieldTypeDescription
created_accountboolean
emailstring
organization_idstring
user_idstring

GET/api/v1/me

Me (me)

IAM action: none (any signed-in caller)

Responses

  • 200 OK (MeOut)
  • 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 MeOut
FieldTypeDescription
bound_organization_idstring (nullable)
emailstring (nullable)
idstring
kindstring
mfaboolean
organizationsarray of MembershipOut

GET/api/v1/me/preferences

Get Preferences (getPreferences)

IAM action: none (any signed-in caller)

Responses

  • 200 OK (PreferencesOut)
  • 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 PreferencesOut
FieldTypeDescription
onboarding_dismissedarray of string
theme"system" | "dark" | "light"
theme_savedboolean

PATCH/api/v1/me/preferences

Update Preferences (updatePreferences)

IAM action: none (any signed-in caller)

Request body (JSON, PreferencesPatch)

FieldTypeDescription
onboardingOnboardingVisibility (nullable)
theme"system" | "dark" | "light" (nullable)

Responses

  • 200 OK (PreferencesOut)
  • 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 PreferencesOut
FieldTypeDescription
onboarding_dismissedarray of string
theme"system" | "dark" | "light"
theme_savedboolean

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

List Invitations (listInvitations)

IAM action: iam:DescribeInvitation

ParameterInTypeDescription
organization_id requiredpathstring
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_InvitationOut_)
  • 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_InvitationOut_
FieldTypeDescription
itemsarray of InvitationOut
next_cursorstring (nullable)

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

Invite (invite)

IAM action: iam:CreateInvitationiam:AddUserToGroup

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, InvitationIn)

FieldTypeDescription
email requiredstring
groupsarray of string

Responses

  • 201 Created (InvitationOut)
  • 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 InvitationOut
FieldTypeDescription
accepted_atstring (date-time) (nullable)
created_atstring (date-time)
emailstring
expires_atstring (date-time)
groupsarray of string
idstring
invited_bystring
organization_idstring
statestring
trnstring

DELETE/api/v1/orgs/{organization_id}/invitations/{invitation_id}

Revoke Invitation (revokeInvitation)

IAM action: iam:DeleteInvitation

ParameterInTypeDescription
organization_id requiredpathstring
invitation_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}/onboarding

Get Onboarding (getOnboarding)

IAM action: org:DescribeOrganization

ParameterInTypeDescription
organization_id requiredpathstring

Responses

  • 200 OK (OnboardingOut)
  • 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 OnboardingOut
FieldTypeDescription
completeboolean
dismissedboolean
organization_idstring
stepsarray of OnboardingStep

GET/api/v1/orgs/{organization_id}/service-accounts

List Service Accounts (listServiceAccounts)

IAM action: iam:DescribeServiceAccount

ParameterInTypeDescription
organization_id requiredpathstring
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_ServiceAccountOut_)
  • 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_ServiceAccountOut_
FieldTypeDescription
itemsarray of ServiceAccountOut
next_cursorstring (nullable)

POST/api/v1/orgs/{organization_id}/service-accounts

Create Service Account (createServiceAccount)

IAM action: iam:CreateServiceAccount

ParameterInTypeDescription
organization_id requiredpathstring

Request body (JSON, ServiceAccountIn)

FieldTypeDescription
descriptionstring Default: "".
name requiredstring
tagsobject

Responses

  • 201 Created (ServiceAccountOut)
  • 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 ServiceAccountOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
disabledboolean
idstring
namestring
tagsobject
trnstring

GET/api/v1/orgs/{organization_id}/service-accounts/{account_id}

Get Service Account (getServiceAccount)

IAM action: iam:DescribeServiceAccount

ParameterInTypeDescription
organization_id requiredpathstring
account_id requiredpathstring

Responses

  • 200 OK (ServiceAccountOut)
  • 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 ServiceAccountOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
disabledboolean
idstring
namestring
tagsobject
trnstring

PATCH/api/v1/orgs/{organization_id}/service-accounts/{account_id}

Update Service Account (updateServiceAccount)

IAM action: iam:UpdateServiceAccount

ParameterInTypeDescription
organization_id requiredpathstring
account_id requiredpathstring

Request body (JSON, ServiceAccountPatch)

FieldTypeDescription
descriptionstring (nullable)
disabledboolean (nullable)
tagsobject (nullable)

Responses

  • 200 OK (ServiceAccountOut)
  • 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 ServiceAccountOut
FieldTypeDescription
created_atstring (date-time)
descriptionstring
disabledboolean
idstring
namestring
tagsobject
trnstring

DELETE/api/v1/orgs/{organization_id}/service-accounts/{account_id}

Delete Service Account (deleteServiceAccount)

IAM action: iam:DeleteServiceAccount

ParameterInTypeDescription
organization_id requiredpathstring
account_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}/service-accounts/{owner_id}/access-keys

List Service Account Keys (listServiceAccountKeys)

IAM action: iam:DescribeAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring

Responses

  • 200 OK (array of AccessKeyOut)
  • 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}/service-accounts/{owner_id}/access-keys

Create Service Account Key (createServiceAccountKey)

IAM action: iam:CreateAccessKeyiam:CreateNonExpiringAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring

Request body (JSON, AccessKeyIn)

FieldTypeDescription
allowed_cidrsarray of string
descriptionstring Default: "".
expires_atstring (date-time) (nullable)
never_expiresboolean Default: false.

Responses

  • 201 Created (AccessKeyCreatedOut)
  • 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 AccessKeyCreatedOut
FieldTypeDescription
allowed_cidrsarray of string
created_atstring (date-time)
descriptionstring
disables_atstring (date-time) (nullable)
expires_atstring (date-time) (nullable)
idstring
last_used_atstring (date-time) (nullable)
last_used_ipstring (nullable)
ownerstring
secretstring
statusstring
status_reasonstring
tokenstring
trnstring

PATCH/api/v1/orgs/{organization_id}/service-accounts/{owner_id}/access-keys/{key_id}

Update Service Account Key (updateServiceAccountKey)

IAM action: iam:UpdateAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring
key_id requiredpathstring

Request body (JSON, AccessKeyPatch)

FieldTypeDescription
descriptionstring (nullable)
statusstring (nullable)

Responses

  • 200 OK (AccessKeyOut)
  • 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 AccessKeyOut
FieldTypeDescription
allowed_cidrsarray of string
created_atstring (date-time)
descriptionstring
disables_atstring (date-time) (nullable)
expires_atstring (date-time) (nullable)
idstring
last_used_atstring (date-time) (nullable)
last_used_ipstring (nullable)
ownerstring
statusstring
status_reasonstring
trnstring

DELETE/api/v1/orgs/{organization_id}/service-accounts/{owner_id}/access-keys/{key_id}

Delete Service Account Key (deleteServiceAccountKey)

IAM action: iam:DeleteAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring
key_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}/users

List Users (listUsers)

IAM action: iam:DescribeUser

ParameterInTypeDescription
organization_id requiredpathstring
limitqueryinteger (nullable)
cursorquerystring (nullable)

Responses

  • 200 OK (Page_OrgUserOut_)
  • 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_OrgUserOut_
FieldTypeDescription
itemsarray of OrgUserOut
next_cursorstring (nullable)

GET/api/v1/orgs/{organization_id}/users/{owner_id}/access-keys

List User Keys (listUserKeys)

IAM action: iam:DescribeAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring

Responses

  • 200 OK (array of AccessKeyOut)
  • 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}/users/{owner_id}/access-keys

Create User Key (createUserKey)

IAM action: iam:CreateAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring

Request body (JSON, AccessKeyIn)

FieldTypeDescription
allowed_cidrsarray of string
descriptionstring Default: "".
expires_atstring (date-time) (nullable)
never_expiresboolean Default: false.

Responses

  • 201 Created (AccessKeyCreatedOut)
  • 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 AccessKeyCreatedOut
FieldTypeDescription
allowed_cidrsarray of string
created_atstring (date-time)
descriptionstring
disables_atstring (date-time) (nullable)
expires_atstring (date-time) (nullable)
idstring
last_used_atstring (date-time) (nullable)
last_used_ipstring (nullable)
ownerstring
secretstring
statusstring
status_reasonstring
tokenstring
trnstring

PATCH/api/v1/orgs/{organization_id}/users/{owner_id}/access-keys/{key_id}

Update User Key (updateUserKey)

IAM action: iam:UpdateAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring
key_id requiredpathstring

Request body (JSON, AccessKeyPatch)

FieldTypeDescription
descriptionstring (nullable)
statusstring (nullable)

Responses

  • 200 OK (AccessKeyOut)
  • 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 AccessKeyOut
FieldTypeDescription
allowed_cidrsarray of string
created_atstring (date-time)
descriptionstring
disables_atstring (date-time) (nullable)
expires_atstring (date-time) (nullable)
idstring
last_used_atstring (date-time) (nullable)
last_used_ipstring (nullable)
ownerstring
statusstring
status_reasonstring
trnstring

DELETE/api/v1/orgs/{organization_id}/users/{owner_id}/access-keys/{key_id}

Delete User Key (deleteUserKey)

IAM action: iam:DeleteAccessKey

ParameterInTypeDescription
organization_id requiredpathstring
owner_id requiredpathstring
key_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}/users/{user_id}

Get User (getUser)

IAM action: iam:DescribeUser

ParameterInTypeDescription
organization_id requiredpathstring
user_id requiredpathstring

Responses

  • 200 OK (OrgUserOut)
  • 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 OrgUserOut
FieldTypeDescription
emailstring
full_namestring
groupsarray of string
idstring
joined_atstring (date-time)
mfa_enabledboolean
tagsobject
trnstring

PATCH/api/v1/orgs/{organization_id}/users/{user_id}

Update User (updateUser)

IAM action: iam:UpdateUser

ParameterInTypeDescription
organization_id requiredpathstring
user_id requiredpathstring

Request body (JSON, OrgUserPatch)

FieldTypeDescription
tagsobject (nullable)

Responses

  • 200 OK (OrgUserOut)
  • 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 OrgUserOut
FieldTypeDescription
emailstring
full_namestring
groupsarray of string
idstring
joined_atstring (date-time)
mfa_enabledboolean
tagsobject
trnstring

DELETE/api/v1/orgs/{organization_id}/users/{user_id}

Remove User (removeUser)

Remove a user from the organization: memberships, attachments, keys and sessions go.

IAM action: iam:RemoveUser

ParameterInTypeDescription
organization_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)