Partner workspaces let a platform offer messaging to its own customers, one workspace per customer, created and run with a partner key and the Kirora-Workspace header. See Choose an integration.
Endpoints
| Endpoint | Request |
|---|---|
| List your tenant workspaces | GET /v1/workspaces |
| Create a tenant workspace | POST /v1/workspaces |
| Retrieve a tenant workspace | GET /v1/workspaces/{externalId} |
| Update a tenant workspace | PATCH /v1/workspaces/{externalId} |
| Delete a tenant workspace | DELETE /v1/workspaces/{externalId} |
| Suspend a tenant workspace | POST /v1/workspaces/{externalId}/suspend |
| Resume a tenant workspace | POST /v1/workspaces/{externalId}/resume |
| Cancel a tenant workspace's deletion | POST /v1/workspaces/{externalId}/cancel-deletion |
The Workspace object
{
"id": "0192f3c1-1a2b-7c3d-8e4f-5a6b7c8d9e0f",
"externalId": "tenant-lagos-01",
"name": "Juniper Kitchen London",
"country": "GB",
"timezone": "Europe/London",
"status": "active",
"suspendedAt": null,
"deletionRequestedAt": null,
"deletesAt": null,
"website": "https://juniperkitchen.co.uk",
"mailKind": "both",
"contactOptIn": "Order confirmations, and offers to diners who tick the box at checkout",
"createdAt": "2026-10-01T09:30:00.000Z"
}idstringrequireduuid
externalIdstringrequiredYour own id for the tenant.
namestringrequiredcountrystringrequiredTwo-letter ISO 3166-1 country code.
2 characters
timezonestringrequiredIANA timezone; decides local-time sends and report days.
statusstringrequiredsuspendedrefuses every send in the workspace until it is resumed;deletingrefuses them too, and the workspace is purged unless the deletion is cancelled.one of
active,suspended,deletingsuspendedAtstring | nullrequiredWhen it was suspended; null if not.
date-time
deletionRequestedAtstring | nullrequiredWhen deletion was asked for; null if not.
date-time
deletesAtstring | nullrequiredWhen the workspace and everything in it is deleted for good, unless the deletion is cancelled before; null if no deletion is pending.
date-time
websitestring | nullrequiredThe business's website.
uri · up to 500 characters
mailKindstring | nullrequiredWhat the workspace sends.
one of
marketing,transactional,bothcontactOptInstring | nullrequiredHow its contacts agreed to hear from it: a signup form, checkout, an app.
1–1,000 characters
createdAtstringrequireddate-time