Skip to content

Product documentation

Organizations

B2B Organizations — the tenant's own customer companies (SSO-1897): org CRUD, membership, and email invitations (token shown once on invite).

Organizations

B2B Organizations — the tenant's own customer companies (SSO-1897): org CRUD, membership, and email invitations (token shown once on invite).

Base URL: https://api.stg.thoryn.org

Operations

MethodPathSummaryScopes
POST/api/v1/organization-invitations/acceptOrganization Invitation Accept Acceptbearer, no extra scope
GET/api/v1/organizationsOrganizations Listtenant:orgs.read
POST/api/v1/organizationsOrganizations Createtenant:orgs.write
GET/api/v1/organizations/{id}Organizations Gettenant:orgs.read
PATCH/api/v1/organizations/{id}Organizations Patchtenant:orgs.write
DELETE/api/v1/organizations/{id}Organizations Deletetenant:orgs.write
GET/api/v1/organizations/{id}/invitationsOrganizations List Invitationstenant:orgs.read
POST/api/v1/organizations/{id}/invitationsOrganizations Invitetenant:orgs.write
DELETE/api/v1/organizations/{id}/invitations/{invId}Organizations Revoke Invitationtenant:orgs.write
GET/api/v1/organizations/{id}/membersOrganizations List Memberstenant:orgs.read
POST/api/v1/organizations/{id}/membersOrganizations Add Membertenant:orgs.write
PATCH/api/v1/organizations/{id}/members/{subject}Organizations Patch Member Statustenant:orgs.write
DELETE/api/v1/organizations/{id}/members/{subject}Organizations Remove Membertenant:orgs.write

Operation details

POST /api/v1/organization-invitations/accept

Organization Invitation Accept Accept

  • Operation ID: organizationInvitationAcceptAccept
  • Required scopes: bearer, no extra scope

Request body (required): application/jsonAcceptInvitationRequest

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

GET /api/v1/organizations

Organizations List

  • Operation ID: organizationsList
  • Required scopes: tenant:orgs.read

Parameters:

NameInRequiredTypeDescription
slugquerynostring
externalIdquerynostring
limitquerynointeger
cursorquerynostring

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

POST /api/v1/organizations

Organizations Create

  • Operation ID: organizationsCreate
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
Idempotency-Keyheadernostring

Request body (required): application/jsonCreateOrganizationRequest

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

GET /api/v1/organizations/{id}

Organizations Get

  • Operation ID: organizationsGet
  • Required scopes: tenant:orgs.read

Parameters:

NameInRequiredTypeDescription
idpathyesstring

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

PATCH /api/v1/organizations/{id}

Organizations Patch

  • Operation ID: organizationsPatch
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
idpathyesstring

Request body (required): application/jsonUpdateOrganizationRequest

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

DELETE /api/v1/organizations/{id}

Organizations Delete

  • Operation ID: organizationsDelete
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
idpathyesstring

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

GET /api/v1/organizations/{id}/invitations

Organizations List Invitations

  • Operation ID: organizationsListInvitations
  • Required scopes: tenant:orgs.read

Parameters:

NameInRequiredTypeDescription
idpathyesstring
limitquerynointeger
cursorquerynostring

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

POST /api/v1/organizations/{id}/invitations

Organizations Invite

  • Operation ID: organizationsInvite
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
idpathyesstring
Idempotency-Keyheadernostring

Request body (required): application/jsonCreateInvitationRequest

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

DELETE /api/v1/organizations/{id}/invitations/{invId}

Organizations Revoke Invitation

  • Operation ID: organizationsRevokeInvitation
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
idpathyesstring
invIdpathyesstring

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

GET /api/v1/organizations/{id}/members

Organizations List Members

  • Operation ID: organizationsListMembers
  • Required scopes: tenant:orgs.read

Parameters:

NameInRequiredTypeDescription
idpathyesstring
limitquerynointeger
cursorquerynostring

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

POST /api/v1/organizations/{id}/members

Organizations Add Member

  • Operation ID: organizationsAddMember
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
idpathyesstring
Idempotency-Keyheadernostring

Request body (required): application/jsonAddMemberRequest

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

PATCH /api/v1/organizations/{id}/members/{subject}

Organizations Patch Member Status

  • Operation ID: organizationsPatchMemberStatus
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
idpathyesstring
subjectpathyesstring

Request body (required): application/jsonUpdateMemberStatusRequest

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)

DELETE /api/v1/organizations/{id}/members/{subject}

Organizations Remove Member

  • Operation ID: organizationsRemoveMember
  • Required scopes: tenant:orgs.write

Parameters:

NameInRequiredTypeDescription
idpathyesstring
subjectpathyesstring

Responses:

StatusDescriptionBody
200OKobject
401Unauthorized — bearer token missing, expired, signed by an untrusted issuer, or missing the tnt tenant claim.Problem (problem+json)
403Forbidden — token lacks a required tenant:* scope, or the tnt claim does not match the tenant addressed by the request path.Problem (problem+json)