Organization management endpoints. Organizations are groups of users within an Issuer, commonly used for multi-tenancy where each customer is an Organization.
Base URL: https://api.authpi.com — see the Core API overview for
authentication, pagination, and idempotency, or try these endpoints in the
interactive reference.
GET/v1/accounts/{account_id}/issuers/{issuer_id}/organizationsList Organizations
Lists all organizations within an issuer.
Organizations are groups of users, commonly used for multi-tenancy where each customer or team is an organization.
Use cases for organizations:
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
| Name | Type | Required | Description |
|---|---|---|---|
limit | integer | Optional | Maximum number of items to return (1-100, default: 50) |
cursor | string | Optional | Pagination cursor (org_id from previous response) |
status | active | suspended | deleted | Optional | Filter by organization status. If not specified, returns all non-deleted organizations. |
sso_enabled | true | false | Optional | Filter by SSO enabled status. |
sso_only | true | false | Optional | Filter by SSO-only enforcement (password login disabled). |
mfa_required | true | false | Optional | Filter by MFA requirement. |
invitation_enabled | true | false | Optional | Filter by invitation enabled status. |
| Code | Description | Schema |
|---|---|---|
| 200 | Paginated list of organizations | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizationsCreate Organization
Creates a new organization within an issuer.
Organizations are containers for grouping users, typically representing:
After creating an organization:
Custom metadata:
Use the metadata field to store application-specific data like billing tier, feature flags, or external system IDs.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
name | string | Optional | A name for the resource. |
description | string | null | Optional | A description for the resource. Markdown supported. |
logo_url | string | Optional | A URL |
org_type | business | nonprofit | government | Optional | |
max_members | integer | Optional | |
default_member_scopes | string[] | Optional | |
invitation_enabled | boolean | Optional | |
invitation_message | string | Optional | |
address | Address | Optional | |
business_details | object | Optional | |
contact | object | Optional | |
social_links | object[] | Optional | |
scopes | string[] | Optional | |
security | object | Optional | |
custom_fields | object | Optional | |
metadata | object | Optional | |
created_by_user_id | string | Optional | User ID |
creator_scopes | string[] | Optional |
| Code | Description | Schema |
|---|---|---|
| 201 | Organization created successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
GET/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}Get Organization
Retrieves the full details of an organization by its ID.
Returns complete organization information including:
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
| Code | Description | Schema |
|---|---|---|
| 200 | Organization retrieved successfully | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
PATCH/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}Update Organization
Updates an organization's details.
All fields in the request body are optional - only include the fields you want to change.
Updatable fields:
Metadata updates:
Metadata is merged, not replaced. To remove a key, set it to null.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
name | string | null | Optional | A name for the resource. |
description | string | null | Optional | A description for the resource. Markdown supported. |
logo_url | string | null | Optional | |
status | active | suspended | Optional | |
status_reason | string | Optional | |
status_by | string | Optional | |
max_members | integer | Optional | |
default_member_scopes | string[] | Optional | |
invitation_enabled | boolean | Optional | |
invitation_message | string | null | Optional | |
address | Address | null | Optional | |
business_details | object | Optional | |
contact | object | null | Optional | |
social_links | object[] | Optional | |
scopes | string[] | Optional | |
security | object | Optional | |
sso | object | Optional | |
custom_fields | object | Optional | |
metadata | Metadata | Optional |
| Code | Description | Schema |
|---|---|---|
| 200 | Organization updated successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
| 412 | Precondition Failed - The resource has been modified since the provided ETag. | PreconditionFailedError |
DELETE/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}Delete Organization
Deletes an organization and removes all its members.
What happens on deletion:
Before deleting:
Note: This is a permanent operation. Unlike users and issuers, organizations do not have a soft-delete grace period.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
| Code | Description | Schema |
|---|---|---|
| 204 | No Content - The operation completed successfully with no response body. | — |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
| 412 | Precondition Failed - The resource has been modified since the provided ETag. | PreconditionFailedError |
GET/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/membersList Organization Members
Lists all members of an organization with their roles and status.
Each membership includes:
Use the status filter to find suspended members or audit removed memberships.
Use the scope filter to find all members who have a specific effective scope (including scopes inherited from groups).
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
| Name | Type | Required | Description |
|---|---|---|---|
limit | integer | Optional | Maximum number of items to return (1-100, default: 50) |
cursor | string | Optional | Pagination cursor from previous response |
status | active | suspended | Optional | Filter by membership status |
scope | string | Optional | Filter members by effective scope (includes scopes inherited from groups) |
| Code | Description | Schema |
|---|---|---|
| 200 | Members retrieved successfully | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/membersAdd Organization Member
Adds a user as a member of an organization.
The user must already exist in the issuer. This endpoint creates the membership association with the specified role and permissions.
Roles: Define roles that make sense for your application. Common patterns:
owner - Full control, can delete the organizationadmin - Can manage members and settingsmember - Standard accessScopes: Use scopes for fine-grained permissions within your application. Scopes are included in access tokens when the user authenticates in the context of this organization.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
member_id | string | Required | |
scopes | string[] | Optional | |
groups | string[] | Optional | |
user_title | string | Optional | |
metadata | Metadata | Optional |
| Code | Description | Schema |
|---|---|---|
| 201 | Member added successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
| 409 | Conflict - The request conflicts with the current state of the resource. | ApiError |
PATCH/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/members/{member_id}Update Organization Member
Updates a member's role, scopes, or status within an organization.
Common operations:
Status changes:
suspended immediately blocks the member from accessing organization resourcesactive restores access| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
member_id | string | Required | The unique identifier of the organization member (user or agent) |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
status | active | suspended | Optional | |
scopes | string[] | Optional | |
groups | string[] | Optional | |
user_title | string | null | Optional | |
metadata | Metadata | Optional |
| Code | Description | Schema |
|---|---|---|
| 200 | Member updated successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
DELETE/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/members/{member_id}Remove Organization Member
Removes a member from an organization.
This permanently removes the membership. The member:
Alternative: To temporarily block access while retaining membership history, use Update Organization Member to set status to suspended instead.
Note: Removing the last owner of an organization may leave it without administrative access. Consider transferring ownership first.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
member_id | string | Required | The unique identifier of the organization member (user or agent) |
| Code | Description | Schema |
|---|---|---|
| 204 | No Content - The operation completed successfully with no response body. | — |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
GET/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/groupsList Organization Groups
Lists all groups defined in an organization.
Groups are named bundles of scopes that can be assigned to members. When a member is assigned a group, they inherit all of the group's scopes.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
| Name | Type | Required | Description |
|---|---|---|---|
limit | integer | Optional | Maximum number of items to return (1-100, default: 50) |
cursor | string | Optional | Pagination cursor from previous response |
| Code | Description | Schema |
|---|---|---|
| 200 | Groups retrieved successfully | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/groupsCreate Organization Group
Creates a new group in an organization.
A group is a named bundle of scopes. Assign groups to members instead of managing individual scopes. When a group's scopes change, all members with that group automatically inherit the updated scopes.
Organizations can have up to 100 groups.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
name | string | Required | A name for the resource. |
description | string | null | Optional | A description for the resource. Markdown supported. |
scopes | string[] | Required | |
metadata | Metadata | Optional |
| Code | Description | Schema |
|---|---|---|
| 201 | Group created successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
GET/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/groups/{group_id}Get Organization Group
Retrieves a single group by ID.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
group_id | string | Required | The unique identifier of the group |
| Code | Description | Schema |
|---|---|---|
| 200 | Group retrieved successfully | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
PATCH/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/groups/{group_id}Update Organization Group
Updates a group's name, description, or scopes.
When a group's scopes are updated, all memberships referencing this group will have their effective scopes re-computed and synced. This means scope changes propagate automatically to all members of the group.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
group_id | string | Required | The unique identifier of the group |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
name | string | Optional | A name for the resource. |
description | string | null | Optional | A description for the resource. Markdown supported. |
scopes | string[] | Optional | |
metadata | Metadata | Optional |
| Code | Description | Schema |
|---|---|---|
| 200 | Group updated successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
| 412 | Precondition Failed - The resource has been modified since the provided ETag. | PreconditionFailedError |
DELETE/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/groups/{group_id}Delete Organization Group
Deletes a group from the organization.
Memberships that reference this group will have their effective scopes re-computed without the deleted group's scopes. The group ID remains in membership records but is silently ignored during scope resolution.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
group_id | string | Required | The unique identifier of the group |
| Code | Description | Schema |
|---|---|---|
| 204 | No Content - The operation completed successfully with no response body. | — |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
| 412 | Precondition Failed - The resource has been modified since the provided ETag. | PreconditionFailedError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/sso/rotate-secretRotate SSO Client Secret
Rotates the OIDC client secret used for SSO authentication.
A new secret is generated and stored on the organization's SSO configuration. The new secret is returned in the response—store it securely, as it cannot be retrieved again.
Prerequisites:
Note: Unlike client secret rotation, there is no grace period—the old secret is replaced immediately.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
| Code | Description | Schema |
|---|---|---|
| 200 | SSO secret rotated successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/sso/domainsAdd SSO Domain
Adds a domain to the organization's SSO configuration for email-based IdP routing.
After adding a domain, you must verify ownership by creating a DNS TXT record with the provided values. Use the Verify SSO Domain endpoint to complete verification.
How it works:
Prerequisites:
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
domain | string | Required |
| Code | Description | Schema |
|---|---|---|
| 201 | Domain added successfully. Create the DNS TXT record to verify ownership. | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
| 409 | Conflict - The request conflicts with the current state of the resource. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/sso/domains/{domain}/verifyVerify SSO Domain
Verifies ownership of an SSO domain by checking the DNS TXT record.
After adding a domain and creating the required DNS TXT record, call this endpoint to verify ownership. DNS propagation may take up to 48 hours, though it typically completes within minutes.
Response:
verified: true — Domain ownership confirmed, SSO routing is active for this domainverified: false with error — Verification failed, check the error message for details| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
domain | string | Required | Domain name (e.g., 'auth.example.com') |
| Code | Description | Schema |
|---|---|---|
| 200 | Verification result | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
DELETE/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/sso/domains/{domain}Remove SSO Domain
Removes a domain from the organization's SSO configuration.
Once removed, users with email addresses on this domain will no longer be routed to the organization's SSO provider. This action is immediate and permanent.
Note: You can remove both verified and unverified domains.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
domain | string | Required | Domain name (e.g., 'auth.example.com') |
| Code | Description | Schema |
|---|---|---|
| 204 | No Content - The operation completed successfully with no response body. | — |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
GET/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/invitationsList Invitations
Lists invitations for an organization with optional status filtering.
Invitations allow you to invite users to join an organization before they have an account. When a user accepts an invitation, they become a member with the scopes defined in the invitation.
Invitation statuses:
Use the status filter to find pending invitations that need follow-up or to audit historical invitations.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
| Name | Type | Required | Description |
|---|---|---|---|
limit | integer | Optional | Maximum number of items to return (1-100, default: 50) |
cursor | string | Optional | Pagination cursor from previous response |
status | pending | accepted | declined | expired | revoked | Optional | Filter by invitation status |
| Code | Description | Schema |
|---|---|---|
| 200 | Invitations retrieved successfully | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/invitationsCreate Invitation
Creates a new invitation to join an organization.
An invitation email will be sent to the specified email address with a link to accept the invitation. The invitee does not need to have an existing account—they can create one when accepting.
Invitation lifecycle:
Scopes:
Define what permissions the invitee will have in the organization. Common patterns:
["member"] - Basic read access["member", "write"] - Read and write access["admin"] - Full administrative accessExpiration:
By default, invitations expire after 7 days. You can customize this with expires_in_seconds (max 30 days).
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
email_invited | string | Required | |
scopes | string[] | Required | |
user_title | string | Optional | |
message | string | Optional | |
inviter | Inviter | Optional | |
expires_in_seconds | integer | Optional | |
metadata | Metadata | Optional |
| Code | Description | Schema |
|---|---|---|
| 201 | Invitation created successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
| 409 | Conflict - The request conflicts with the current state of the resource. | ApiError |
GET/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/invitations/{invitation_id}Get Invitation
Retrieves a specific invitation by ID.
Returns the full invitation details including:
Note: The invitation challenge is never returned in API responses for security reasons.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
invitation_id | string | Required | The unique identifier of the invitation |
| Code | Description | Schema |
|---|---|---|
| 200 | Invitation retrieved successfully | object |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
PATCH/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/invitations/{invitation_id}Update Invitation
Updates a pending invitation.
Only pending invitations can be updated. Once an invitation is accepted, declined, expired, or revoked, it cannot be modified.
Updatable fields:
Common operations:
expires_at to a future timestampscopes arraymessage with additional information| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
invitation_id | string | Required | The unique identifier of the invitation |
Content type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
scopes | string[] | Optional | |
user_title | string | null | Optional | |
message | string | null | Optional | |
expires_at | integer | Optional | Unix timestamp in milliseconds |
metadata | Metadata | Optional |
| Code | Description | Schema |
|---|---|---|
| 200 | Invitation updated successfully | object |
| 400 | Bad Request - The request is malformed or contains invalid data. | ApiError |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/invitations/{invitation_id}/revokeRevoke Invitation
Revokes a pending invitation.
Once revoked, the invitation link will no longer work and the invitee cannot accept it. This action is permanent.
Use cases:
Note: Only pending invitations can be revoked. Invitations that have already been accepted, declined, or expired cannot be revoked.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
invitation_id | string | Required | The unique identifier of the invitation |
| Code | Description | Schema |
|---|---|---|
| 204 | No Content - The operation completed successfully with no response body. | — |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |
POST/v1/accounts/{account_id}/issuers/{issuer_id}/organizations/{org_id}/invitations/{invitation_id}/resendResend Invitation
Resends the invitation email to the invitee.
Use this when the original invitation email was not received or the invitee needs a reminder.
Requirements:
pending statusNote: The invitation link and challenge remain the same—only the email is resent. Consider updating the expiration date if it's close to expiring.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Required | The unique identifier of the account |
issuer_id | string | Required | The unique identifier of the issuer |
org_id | string | Required | The unique identifier of the organization |
invitation_id | string | Required | The unique identifier of the invitation |
| Code | Description | Schema |
|---|---|---|
| 204 | No Content - The operation completed successfully with no response body. | — |
| 401 | Unauthorized - Authentication is required or has failed. | ApiError |
| 403 | Forbidden - You don't have permission to perform this action. | ApiError |
| 404 | Not Found - The requested resource does not exist. | ApiError |