Workspaces API
17 endpoints — authenticate with a workspace access token via Authorization: Bearer. See the API introduction for base URLs, pagination, and rate limits.
List Workspaces
GET/api/workspaces/
List workspaces. **Scopes**: `workspaces:read` `workspaces:write`
Query parameters
Filter by slug.
Page number, defaults to 1.
Size of a page, defaults to 10. Maximum is 100.
Sorting criterion. Several criteria can be used simultaneously and will be applied in order. Add a minus sign `-` before the criteria name to sort by descending order.
Returns 200 with PaginatedList_Workspace_.
curl -X GET \
https://api.rapidly.tech/api/workspaces/ \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Create Workspace
POST/api/workspaces/
Create an workspace. **Scopes**: `workspaces:write`
Request body WorkspaceCreate
Name
Slug
Avatar Url
Public support email.
Official website of the workspace.
Link to social profiles.
Additional, private, business details Rapidly needs about active workspaces for compliance (KYC).
PresentmentCurrency
Returns 201 with Workspace.
curl -X POST \
https://api.rapidly.tech/api/workspaces/ \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{ ... }'Get Workspace
GET/api/workspaces/{id}
Get an workspace by ID. **Scopes**: `workspaces:read` `workspaces:write`
Path parameters
The workspace ID.
Returns 200 with Workspace.
curl -X GET \
https://api.rapidly.tech/api/workspaces/{id} \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Update Workspace
PATCH/api/workspaces/{id}
Update an workspace. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Request body WorkspaceUpdate
Name
Avatar Url
Public support email.
Official website of the workspace.
Links to social profiles.
Additional, private, business details Rapidly needs about active workspaces for compliance (KYC).
Default presentment currency for the workspace
Returns 200 with Workspace.
curl -X PATCH \
https://api.rapidly.tech/api/workspaces/{id} \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{ ... }'Delete Workspace
DELETE/api/workspaces/{id}
Request deletion of a workspace. If the workspace has no blocking resources, it will be immediately soft-deleted. If it has a Stripe account, that will be deleted first. If deletion cannot proceed immediately (e.g. Stripe deletion fails), a support ticket will be created for manual handling. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Returns 200 with WorkspaceDeletionResponse.
curl -X DELETE \
https://api.rapidly.tech/api/workspaces/{id} \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Get Workspace Account
GET/api/workspaces/{id}/account
Get the account for an workspace. **Scopes**: `workspaces:read` `workspaces:write`
Path parameters
The workspace ID.
Returns 200 with Account.
curl -X GET \
https://api.rapidly.tech/api/workspaces/{id}/account \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Switch Workspace Stripe Account
POST/api/workspaces/{id}/switch-account
Switch the workspace's active Stripe account to an existing one. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Request body Body_workspaces_switch_account
Account Id
Returns 200 with Account.
curl -X POST \
https://api.rapidly.tech/api/workspaces/{id}/switch-account \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{ ... }'Get Workspace Payment Status
GET/api/workspaces/{id}/payment-status
Get payment status and onboarding steps for an workspace.
Path parameters
The workspace ID.
Query parameters
Only perform account verification checks, skip share and integration checks
Returns 200 with WorkspacePaymentStatus.
curl -X GET \
https://api.rapidly.tech/api/workspaces/{id}/payment-status \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Members
GET/api/workspaces/{id}/members
List members in an workspace. **Scopes**: `workspaces:read` `workspaces:write`
Path parameters
The workspace ID.
Query parameters
Page number, defaults to 1.
Size of a page, defaults to 10. Maximum is 100.
Returns 200 with PaginatedList_WorkspaceMember_.
curl -X GET \
https://api.rapidly.tech/api/workspaces/{id}/members \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Invite Member
POST/api/workspaces/{id}/members/invite
Invite a user to join an workspace. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Request body WorkspaceMemberInvite
Email address of the user to invite
Returns 201 with WorkspaceMember.
curl -X POST \
https://api.rapidly.tech/api/workspaces/{id}/members/invite \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{ ... }'Leave Workspace
DELETE/api/workspaces/{id}/members/leave
Leave an workspace. Users can only leave an workspace if they are not the admin and there is at least one other member. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Returns 204 with unknown.
curl -X DELETE \
https://api.rapidly.tech/api/workspaces/{id}/members/leave \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Remove Member
DELETE/api/workspaces/{id}/members/{user_id}
Remove a member from an workspace. Only workspace admins can remove members. Admins cannot remove themselves. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Returns 204 with unknown.
curl -X DELETE \
https://api.rapidly.tech/api/workspaces/{id}/members/{user_id} \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Validate Workspace Details with AI
POST/api/workspaces/{id}/ai-validation
Validate workspace details using AI compliance check. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Returns 200 with WorkspaceReviewStatus.
curl -X POST \
https://api.rapidly.tech/api/workspaces/{id}/ai-validation \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Submit Appeal for Workspace Review
POST/api/workspaces/{id}/appeal
Submit an appeal for workspace review after AI validation failure. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Request body WorkspaceAppealRequest
Detailed explanation of why this workspace should be approved. Minimum 50 characters.
Returns 201 with WorkspaceAppealResponse.
curl -X POST \
https://api.rapidly.tech/api/workspaces/{id}/appeal \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{ ... }'Mark AI Onboarding Complete
POST/api/workspaces/{id}/ai-onboarding-complete
Mark the AI onboarding as completed for this workspace. **Scopes**: `workspaces:write`
Path parameters
The workspace ID.
Returns 200 with Workspace.
curl -X POST \
https://api.rapidly.tech/api/workspaces/{id}/ai-onboarding-complete \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Get Workspace Review Status
GET/api/workspaces/{id}/review-status
Get the current review status and appeal information for an workspace. **Scopes**: `workspaces:read` `workspaces:write`
Path parameters
The workspace ID.
Returns 200 with WorkspaceReviewStatus.
curl -X GET \
https://api.rapidly.tech/api/workspaces/{id}/review-status \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"Get Workspace
GET/api/customer-portal/workspaces/{slug}
Get a customer portal's workspace by slug.
Path parameters
The workspace slug.
Returns 200 with CustomerWorkspaceData.
curl -X GET \
https://api.rapidly.tech/api/customer-portal/workspaces/{slug} \
-H "Authorization: Bearer $RAPIDLY_ACCESS_TOKEN"