Skip to main content

Class: OrgApi

Defined in: packages/sdk/src/api/org.ts:56

Extends

Constructors

Constructor

new OrgApi(apiKey, baseUrl, customFetch?): OrgApi

Defined in: packages/sdk/src/api/base.ts:173

Parameters

apiKey

string | undefined

baseUrl

string

customFetch?

{(input, init?): Promise<Response>; (input, init?): Promise<Response>; }

Returns

OrgApi

Inherited from

BaseApiClient.constructor

Methods

approveA2PMessages()

approveA2PMessages(orgUuid, sampleMessages): Promise<{ status: string; }>

Defined in: packages/sdk/src/api/org.ts:588

Approve sample messages for the org's A2P campaign.

Parameters

orgUuid

string

sampleMessages

string[]

Returns

Promise<{ status: string; }>


assignPhoneToWorkspace()

assignPhoneToWorkspace(orgUuid, providerPhoneUuid, workspaceUuid): Promise<ProviderPhoneNumber>

Defined in: packages/sdk/src/api/org.ts:313

Assign a phone number to a workspace.

Parameters

orgUuid

string

providerPhoneUuid

string

workspaceUuid

string

Returns

Promise<ProviderPhoneNumber>


cancelBusinessProfile()

cancelBusinessProfile(orgUuid): Promise<BusinessProfileCancelResponse>

Defined in: packages/sdk/src/api/org.ts:647

Cancel an in-flight Twilio review. Resets the cached profile state to draft so the user can edit and resubmit.

Parameters

orgUuid

string

Returns

Promise<BusinessProfileCancelResponse>


checkAccountMembership()

checkAccountMembership(orgUuid, accountUuid): Promise<{ isMember: boolean; }>

Defined in: packages/sdk/src/api/org.ts:114

Check if an account is already a member of an organization.

Parameters

orgUuid

string

accountUuid

string

Returns

Promise<{ isMember: boolean; }>


createOrganizationInvitation()

createOrganizationInvitation(orgIdOrUuid, data): Promise<InvitationResponse>

Defined in: packages/sdk/src/api/org.ts:172

Create a new invitation to join the organization.

Parameters

orgIdOrUuid

string | number

data

CreateOrganizationInvitationFormData

Returns

Promise<InvitationResponse>


createOrganizationWorkspace()

createOrganizationWorkspace(orgIdOrUuid, data): Promise<OrgWorkspace>

Defined in: packages/sdk/src/api/org.ts:275

Create a workspace in an organization.

Parameters

orgIdOrUuid

string | number

data

OrgCreateWorkspaceFormData

Returns

Promise<OrgWorkspace>


deleteOrganizationInvitation()

deleteOrganizationInvitation(orgIdOrUuid, invitationId): Promise<void>

Defined in: packages/sdk/src/api/org.ts:209

Delete (cancel) an organization invitation.

Parameters

orgIdOrUuid

string | number

invitationId

number

Returns

Promise<void>


deleteOrgDomain()

deleteOrgDomain(orgIdOrUuid, domainUuid): Promise<void>

Defined in: packages/sdk/src/api/org.ts:439

Delete a registered organization domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<void>


deletePhoneNumber()

deletePhoneNumber(orgUuid, providerPhoneUuid): Promise<void>

Defined in: packages/sdk/src/api/org.ts:388

Delete a phone number from the org (releases from Twilio).

Parameters

orgUuid

string

providerPhoneUuid

string

Returns

Promise<void>


disableOrgDomainEmail()

disableOrgDomainEmail(orgIdOrUuid, domainUuid, confirm?): Promise<EmailDisableResponse>

Defined in: packages/sdk/src/api/org.ts:483

Disable email support for an org domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

confirm?

boolean = false

Returns

Promise<EmailDisableResponse>


disableOrgDomainSite()

disableOrgDomainSite(orgIdOrUuid, domainUuid, confirm?): Promise<SiteDisableResponse>

Defined in: packages/sdk/src/api/org.ts:539

Disable custom site routing for an org domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

confirm?

boolean = false

Returns

Promise<SiteDisableResponse>


enableOrgDomainEmail()

enableOrgDomainEmail(orgIdOrUuid, domainUuid): Promise<EmailDomainConfig>

Defined in: packages/sdk/src/api/org.ts:446

Enable email DNS provisioning for a verified org domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<EmailDomainConfig>


enableOrgDomainSite()

enableOrgDomainSite(orgIdOrUuid, domainUuid): Promise<SiteDomainConfig>

Defined in: packages/sdk/src/api/org.ts:504

Enable custom site routing for a verified org domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<SiteDomainConfig>


getA2PStatus()

getA2PStatus(orgUuid): Promise<OrgA2PStatus>

Defined in: packages/sdk/src/api/org.ts:564

Get the org's A2P brand registration status.

Parameters

orgUuid

string

Returns

Promise<OrgA2PStatus>


getActingMember()

getActingMember(): string | undefined

Defined in: packages/sdk/src/api/base.ts:226

Get the current acting member UUID.

Returns

string | undefined

Inherited from

BaseApiClient.getActingMember


getBusinessProfile()

getBusinessProfile(orgUuid): Promise<BusinessProfile>

Defined in: packages/sdk/src/api/org.ts:612

Live fetch of the org's Twilio Customer Profile + related entities.

Response carries both the lifecycle status and the compliance evaluationStatus. Twilio models lifecycle and evaluation as two separate enums on two separate resources, so the Submit-button gate is evaluationStatus === 'compliant' — never status === 'compliant', which is impossible (lifecycle status is one of draft / pending-review / in-review / twilio-approved / twilio-rejected).

Parameters

orgUuid

string

Returns

Promise<BusinessProfile>


getCurrentOrgMember()

getCurrentOrgMember(orgIdOrUuid): Promise<CurrentOrgMember>

Defined in: packages/sdk/src/api/org.ts:75

Get the current user's membership in an organization. Returns the user's org membership details including their role and scopes.

Parameters

orgIdOrUuid

string | number

Returns

Promise<CurrentOrgMember>


getOrganization()

getOrganization(idOrUuid): Promise<OrganizationResponse>

Defined in: packages/sdk/src/api/org.ts:67

Get organization by ID or UUID. Returns different response based on user's role:

  • Admins/Owners: AdminOrganization with full details
  • Members: MemberOrgView with basic info and workspace list

Use viewType field to determine the response type:

  • 'admin': AdminOrganization
  • 'member': MemberOrgView

Parameters

idOrUuid

string | number

Returns

Promise<OrganizationResponse>


getOrganizationInvitation()

getOrganizationInvitation(orgIdOrUuid, invitationId): Promise<InvitationResponse>

Defined in: packages/sdk/src/api/org.ts:185

Get a specific organization invitation.

Parameters

orgIdOrUuid

string | number

invitationId

number

Returns

Promise<InvitationResponse>


getOrganizationMembers()

getOrganizationMembers(orgIdOrUuid, options?): Promise<OrgMemberListResponse>

Defined in: packages/sdk/src/api/org.ts:95

List members of an organization.

Parameters

orgIdOrUuid

string | number

options?
page?

number

pageSize?

number

string

Returns

Promise<OrgMemberListResponse>


getOrganizationWorkspace()

getOrganizationWorkspace(orgIdOrUuid, workspaceUuid): Promise<OrgWorkspace>

Defined in: packages/sdk/src/api/org.ts:265

Get a single workspace in an organization.

Parameters

orgIdOrUuid

string | number

workspaceUuid

string

Returns

Promise<OrgWorkspace>


getOrganizationWorkspaces()

getOrganizationWorkspaces(orgIdOrUuid, options?): Promise<PaginatedResponse<OrgWorkspace>>

Defined in: packages/sdk/src/api/org.ts:240

List workspaces in an organization with pagination.

Parameters

orgIdOrUuid

string | number

options?
page?

number

pageSize?

number

search?

string

sortBy?

WorkspaceSortField

sortOrder?

SortOrder

Returns

Promise<PaginatedResponse<OrgWorkspace>>


getOrgBillingCustomer()

getOrgBillingCustomer(orgIdOrUuid): Promise<{ customerName: string | null; customerUuid: string | null; hasAccess: boolean; }>

Defined in: packages/sdk/src/api/org.ts:82

Get the billing customer UUID for an organization.

Parameters

orgIdOrUuid

string | number

Returns

Promise<{ customerName: string | null; customerUuid: string | null; hasAccess: boolean; }>


getOrgDomain()

getOrgDomain(orgIdOrUuid, domainUuid): Promise<OrgDomain>

Defined in: packages/sdk/src/api/org.ts:419

Get a registered organization domain by UUID.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<OrgDomain>


getOrgDomainEmail()

getOrgDomainEmail(orgIdOrUuid, domainUuid): Promise<EmailDomainConfigGetResponse>

Defined in: packages/sdk/src/api/org.ts:458

Get email DNS provisioning and verification status for an org domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<EmailDomainConfigGetResponse>


getOrgDomainSite()

getOrgDomainSite(orgIdOrUuid, domainUuid): Promise<SiteDomainConfigGetResponse>

Defined in: packages/sdk/src/api/org.ts:516

Get site CNAME provisioning and verification status for an org domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<SiteDomainConfigGetResponse>


getWorkspaceMemberRoles()

getWorkspaceMemberRoles(orgIdOrUuid, workspaceUuid): Promise<MemberRoleResponse[]>

Defined in: packages/sdk/src/api/org.ts:656

List available member roles for a workspace in the organization.

Parameters

orgIdOrUuid

string | number

workspaceUuid

string

Returns

Promise<MemberRoleResponse[]>


joinWorkspace()

joinWorkspace(orgIdOrUuid, workspaceUuid, data): Promise<OrgJoinWorkspaceResponse>

Defined in: packages/sdk/src/api/org.ts:666

Join a workspace as the current org admin/owner.

Parameters

orgIdOrUuid

string | number

workspaceUuid

string

data

OrgJoinWorkspaceRequest

Returns

Promise<OrgJoinWorkspaceResponse>


listOrganizationInvitations()

listOrganizationInvitations(orgIdOrUuid, options?): Promise<InvitationListResponse>

Defined in: packages/sdk/src/api/org.ts:151

List invitations for an organization.

Parameters

orgIdOrUuid

string | number

options?
page?

number

pageSize?

number

status?

InvitationStatus

Returns

Promise<InvitationListResponse>


listOrgDomains()

listOrgDomains(orgIdOrUuid): Promise<OrgDomainListResponse>

Defined in: packages/sdk/src/api/org.ts:402

List domains registered to an organization.

Parameters

orgIdOrUuid

string | number

Returns

Promise<OrgDomainListResponse>


listPhoneNumbers()

listPhoneNumbers(orgUuid): Promise<ProviderPhoneNumber[]>

Defined in: packages/sdk/src/api/org.ts:306

List all provider phone numbers owned by this organization.

Parameters

orgUuid

string

Returns

Promise<ProviderPhoneNumber[]>


purchasePhoneNumber()

purchasePhoneNumber(orgUuid, phoneNumber, numberType): Promise<ProviderPhoneNumber>

Defined in: packages/sdk/src/api/org.ts:374

Purchase a phone number from Twilio for this org inventory (org admin only).

Parameters

orgUuid

string

phoneNumber

string

numberType

"local" | "toll_free"

Returns

Promise<ProviderPhoneNumber>


reassignPhone()

reassignPhone(orgUuid, providerPhoneUuid, newWorkspaceUuid): Promise<ProviderPhoneNumber>

Defined in: packages/sdk/src/api/org.ts:327

Reassign a phone number to a different workspace.

Parameters

orgUuid

string

providerPhoneUuid

string

newWorkspaceUuid

string

Returns

Promise<ProviderPhoneNumber>


registerOrgDomain()

registerOrgDomain(orgIdOrUuid, domain): Promise<OrgDomain>

Defined in: packages/sdk/src/api/org.ts:409

Register a domain with an organization and return the TXT ownership proof.

Parameters

orgIdOrUuid

string | number

domain

string

Returns

Promise<OrgDomain>


releasePhone()

releasePhone(orgUuid, providerPhoneUuid): Promise<ProviderPhoneNumber>

Defined in: packages/sdk/src/api/org.ts:341

Release a phone number from its current workspace.

Parameters

orgUuid

string

providerPhoneUuid

string

Returns

Promise<ProviderPhoneNumber>


removeOrganizationMember()

removeOrganizationMember(orgIdOrUuid, memberId): Promise<void>

Defined in: packages/sdk/src/api/org.ts:138

Remove a member from an organization.

Parameters

orgIdOrUuid

string | number

memberId

number

Returns

Promise<void>


resendOrganizationInvitation()

resendOrganizationInvitation(orgIdOrUuid, invitationId): Promise<{ message: string; }>

Defined in: packages/sdk/src/api/org.ts:221

Resend an organization invitation email.

Parameters

orgIdOrUuid

string | number

invitationId

number

Returns

Promise<{ message: string; }>


searchPhoneNumbers()

searchPhoneNumbers(orgUuid, params?): Promise<AvailablePhoneNumberResponse[]>

Defined in: packages/sdk/src/api/org.ts:351

Search for available phone numbers to purchase from Twilio.

Parameters

orgUuid

string

params?
areaCode?

string

contains?

string

limit?

number

numberType?

"local" | "toll_free"

Returns

Promise<AvailablePhoneNumberResponse[]>


setActingMember()

setActingMember(memberUuid): void

Defined in: packages/sdk/src/api/base.ts:219

Set the acting member UUID for member identity switching. When set, all API requests will include the X-Acting-Member header. The backend will validate that the authenticated account owns this member and use it as the effective identity for the request.

Parameters

memberUuid

string | undefined

Returns

void

Inherited from

BaseApiClient.setActingMember


setEnhancedAuthHandler()

setEnhancedAuthHandler(handler): void

Defined in: packages/sdk/src/api/base.ts:193

Set the handler for enhanced authentication requirements (RFC 9470 Step-Up Auth). This handler is called when a 401 response includes WWW-Authenticate header with error="insufficient_user_authentication".

Parameters

handler

EnhancedAuthHandler | undefined

Returns

void

Inherited from

BaseApiClient.setEnhancedAuthHandler


setOrgAuthHandler()

setOrgAuthHandler(handler): void

Defined in: packages/sdk/src/api/base.ts:202

Set the handler for organization authentication requirements. This handler is called when a 401 response includes WWW-Authenticate header with realm="org". The handler should redirect the user to complete org auth.

Parameters

handler

OrgAuthHandler | undefined

Returns

void

Inherited from

BaseApiClient.setOrgAuthHandler


setOrgToken()

setOrgToken(token, orgUuid?): void

Defined in: packages/sdk/src/api/base.ts:240

Set the org auth credential for cross-domain requests. Legacy orgToken values use X-Org-Token; opaque gr_sess_ values use X-Org-Session, allowing org-level SSO verification without cookies.

orgUuid is the org that issued the credential; passing it lets the 401 handler detect a stale token when a subsequent request targets a different org and re-fire the org-auth handler instead of silently 401-ing. Callers without that context (legacy / unknown) may omit it.

Parameters

token

string | undefined

orgUuid?

string

Returns

void

Inherited from

BaseApiClient.setOrgToken


startA2PRegistration()

startA2PRegistration(orgUuid, brandName, brandDescription): Promise<{ status: string; workflowId: string; }>

Defined in: packages/sdk/src/api/org.ts:571

Start org-level A2P brand registration.

Parameters

orgUuid

string

brandName

string

brandDescription

string

Returns

Promise<{ status: string; workflowId: string; }>


submitBusinessProfile()

submitBusinessProfile(orgUuid): Promise<BusinessProfileSubmitResponse>

Defined in: packages/sdk/src/api/org.ts:637

Submit the business profile to Twilio for review. Server re-evaluates compliance live and returns 412 if the profile is not currently compliant; returns 409 if a review is already in flight.

Parameters

orgUuid

string

Returns

Promise<BusinessProfileSubmitResponse>


updateApiKey()

updateApiKey(newApiKey): void

Defined in: packages/sdk/src/api/base.ts:209

Update the API key (used after successful re-authentication).

Parameters

newApiKey

string

Returns

void

Inherited from

BaseApiClient.updateApiKey


updateBusinessProfile()

updateBusinessProfile(orgUuid, data): Promise<BusinessProfile>

Defined in: packages/sdk/src/api/org.ts:622

Upsert the org's business profile. Idempotent via cached SIDs. Returns a fresh BusinessProfileResponse on success — including the compliance evaluation result so the frontend can immediately enable Submit without a second round-trip.

Parameters

orgUuid

string

data

UpdateBusinessProfileRequest

Returns

Promise<BusinessProfile>


updateOrganizationInvitation()

updateOrganizationInvitation(orgIdOrUuid, invitationId, data): Promise<InvitationResponse>

Defined in: packages/sdk/src/api/org.ts:195

Update an organization invitation.

Parameters

orgIdOrUuid

string | number

invitationId

number

data

UpdateInvitationFormData

Returns

Promise<InvitationResponse>


updateOrganizationMember()

updateOrganizationMember(orgIdOrUuid, memberId, data): Promise<OrgMember>

Defined in: packages/sdk/src/api/org.ts:124

Update an organization member's role.

Parameters

orgIdOrUuid

string | number

memberId

number

data

UpdateOrgMemberRequest

Returns

Promise<OrgMember>


updateOrganizationWorkspace()

updateOrganizationWorkspace(orgIdOrUuid, workspaceUuid, data): Promise<OrgWorkspace>

Defined in: packages/sdk/src/api/org.ts:288

Update a workspace in an organization.

Parameters

orgIdOrUuid

string | number

workspaceUuid

string

data

OrgWorkspaceFormData

Returns

Promise<OrgWorkspace>


verifyOrgDomainEmail()

verifyOrgDomainEmail(orgIdOrUuid, domainUuid): Promise<EmailVerificationResponse>

Defined in: packages/sdk/src/api/org.ts:470

Verify email DNS records, including MX.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<EmailVerificationResponse>


verifyOrgDomainOwnership()

verifyOrgDomainOwnership(orgIdOrUuid, domainUuid): Promise<OwnershipVerificationResponse>

Defined in: packages/sdk/src/api/org.ts:426

Verify domain ownership by checking the _gravity-verify TXT record.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<OwnershipVerificationResponse>


verifyOrgDomainSite()

verifyOrgDomainSite(orgIdOrUuid, domainUuid): Promise<SiteVerificationResponse>

Defined in: packages/sdk/src/api/org.ts:526

Verify the site CNAME points at the Gravity Rail sites domain.

Parameters

orgIdOrUuid

string | number

domainUuid

string

Returns

Promise<SiteVerificationResponse>