# communicate-so Workspaces API

**Canonical:** https://apis.io/apis/communicate-so/communicate-so-workspaces-api/  
**Provider:** communicate-so — https://apis.io/providers/communicate-so/  
**Base URL:** https://app.communicate.so/api/v1  
**Documentation:** https://communicate.so/developers

communicate-so Workspaces API is one of 14 APIs that [communicate-so](https://apis.io/providers/communicate-so/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. This API exposes 6 JSON Schema definitions. Tagged areas include Workspaces. The published artifact set on APIs.io includes an OpenAPI specification and 6 JSON Schemas.

The Workspaces API from communicate-so — 79 operation(s) for workspaces.

## Operations (60 of 95)

| Method | Path | Summary |
|---|---|---|
| GET | `/workspaces` | List workspaces of the authenticated user |
| POST | `/workspaces` | Create a workspace owned by the authenticated user |
| POST | `/workspaces/{workspaceId}/contacts` | Create a standalone workspace contact; restricted-agent members cannot create… |
| GET | `/workspaces/{workspaceId}/contacts` | Search and page accessible contact profiles without hidden-agent totals |
| DELETE | `/workspaces/{workspaceId}/contacts/{contactId}` | Remove a directory profile while retaining historical conversations; this is… |
| GET | `/workspaces/{workspaceId}/contacts/{contactId}` | Read a contact profile and only the conversations visible to this member |
| PATCH | `/workspaces/{workspaceId}/contacts/{contactId}` | Edit supplied contact fields; restricted members cannot edit profiles shared… |
| POST | `/workspaces/{workspaceId}/support-requests/merge` | Merge duplicate support requests at their expected versions |
| POST | `/workspaces/{workspaceId}/support-requests/{requestId}/split` | Split a support request into separate goals by message |
| POST | `/workspaces/{workspaceId}/support-requests/{requestId}/transitions` | Activate, wait, end or reopen a support request at its expected version |
| POST | `/workspaces/{workspaceId}/support-requests/{requestId}/evidence` | Attach a verified resolution receipt to a support request |
| POST | `/workspaces/{workspaceId}/support-requests/{requestId}/sla/bind` | Bind the matching SLA policy to a support request |
| POST | `/workspaces/{workspaceId}/support-requests/{requestId}/sla/milestones` | Record an SLA milestone for a support request reply |
| GET | `/workspaces/{workspaceId}/support-requests/{requestId}/sla/clocks/{kind}` | Read one SLA clock for a support request |
| GET | `/workspaces/{workspaceId}/labels` | List the workspace labels conversations can carry |
| POST | `/workspaces/{workspaceId}/labels` | Create a workspace label with a hex color or color token name |
| PATCH | `/workspaces/{workspaceId}/labels/{labelId}` | Rename or recolor a workspace label |
| DELETE | `/workspaces/{workspaceId}/labels/{labelId}` | Delete a workspace label and remove it from every conversation |
| GET | `/workspaces/{destinationWorkspaceId}/linked-conversations` | List conversations on agents shared with this workspace |
| GET | `/workspaces/{destinationWorkspaceId}/linked-conversations/counts` | Count linked conversations by status |
| GET | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}` | Read one linked conversation with its messages |
| PATCH | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}` | Open, close, snooze or mark a linked conversation spam |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/read` | Mark a linked conversation read for the caller |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/copilot` | Draft, summarise or answer from a linked thread without sending anything… |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/copilot/endorse` | Record that a teammate used a learning-backed copilot suggestion in a linked… |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/attachments/presign` | Stage a linked reply attachment and return a short-lived upload URL; unusable… |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/attachments/confirm` | Verify and scan an uploaded linked reply attachment |
| GET | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/attachments/{attachmentId}/url` | Return a short-lived download URL for an attachment on a linked conversation |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/messages` | Send a teammate reply in a linked conversation |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/messages/{messageId}/undo` | Undo a queued linked reply before it sends |
| PATCH | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/messages/{messageId}` | Edit a queued linked reply |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/messages/{messageId}/retry` | Retry a failed linked reply |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/notes` | Add an internal note to a linked conversation |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/labels/{labelId}` | Add a source label to a linked conversation |
| DELETE | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/labels/{labelId}` | Remove a source label from a linked conversation |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/assign` | Assign a linked conversation to the caller or a teammate |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/takeover` | Take a linked conversation over from the AI |
| POST | `/workspaces/{destinationWorkspaceId}/linked-conversations/{conversationId}/actions/{actionId}/run` | Run an allowed action in a linked conversation |
| GET | `/workspaces/{workspaceId}/conversations` | List conversations, optionally for one agent |
| POST | `/workspaces/{workspaceId}/conversations` | Start a conversation with a contact and send the first message |
| GET | `/workspaces/{workspaceId}/conversations/{conversationId}` | Read one conversation with its messages |
| PATCH | `/workspaces/{workspaceId}/conversations/{conversationId}` | Open or close a conversation; active support requests need dispositions or force |
| GET | `/workspaces/{workspaceId}` | Read a workspace of the authenticated member |
| PATCH | `/workspaces/{workspaceId}` | Rename a workspace or change its timezone |
| DELETE | `/workspaces/{workspaceId}` | Delete an owned workspace with its name as confirmation |
| GET | `/workspaces/{workspaceId}/custom-domains` | List custom domains with the DNS records each still needs |
| POST | `/workspaces/{workspaceId}/custom-domains` | Register a custom domain for an agent on a paid workspace |
| POST | `/workspaces/{workspaceId}/custom-domains/{domainId}/verify` | Check DNS now and mark the custom domain verified when it matches |
| DELETE | `/workspaces/{workspaceId}/custom-domains/{domainId}` | Remove a custom domain; one that ever served traffic is parked until DNS moves… |
| GET | `/workspaces/{workspaceId}/webhooks` | List workspace webhooks without their signing secrets |
| POST | `/workspaces/{workspaceId}/webhooks` | Create a webhook; the signing secret is returned once |
| PATCH | `/workspaces/{workspaceId}/webhooks/{webhookId}` | Pause, resume or change the events of a webhook |
| DELETE | `/workspaces/{workspaceId}/webhooks/{webhookId}` | Delete a webhook |
| GET | `/workspaces/{workspaceId}/analytics` | Read workspace conversation analytics for the last N days |
| GET | `/workspaces/{workspaceId}/analytics/insights` | Read cached topic and sentiment insights for one agent; never spends credits |
| GET | `/workspaces/{workspaceId}/billing` | Read the workspace billing overview the caller may see |
| GET | `/workspaces/{workspaceId}/billing/purchases` | Read whether the workspace has bought before, for checkout copy |
| GET | `/workspaces/{workspaceId}/billing/usage` | Read credit usage for a date range |
| GET | `/workspaces/{destinationWorkspaceId}/linked-analytics` | Read conversation analytics for agents shared with this workspace |
| GET | `/workspaces/{destinationWorkspaceId}/linked-analytics/insights` | Read cached insights for a linked agent; never spends credits |

…and 35 more operations. They are listed in full on the page.

## Machine-readable artifacts (7)

- **OpenAPI** — https://artifacts.apis.io/communicate-so/openapi/communicate-so-workspaces-api-openapi.yml
- **JSONSchema** — https://artifacts.apis.io/communicate-so/json-schema/communicate-so-read-inbox-conversation-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/communicate-so/json-schema/communicate-so-list-workspace-agents-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/communicate-so/json-schema/communicate-so-create-agent-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/communicate-so/json-schema/communicate-so-duplicate-agent-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/communicate-so/json-schema/communicate-so-fetch-agent-logo-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/communicate-so/json-schema/communicate-so-read-agent-response-schema.json

## Other communicate-so APIs (12)

- [communicate-so Account credentials API](https://apis.io/apis/communicate-so/communicate-so-account-credentials-api/)
- [communicate-so Account preferences API](https://apis.io/apis/communicate-so/communicate-so-account-preferences-api/)
- [communicate-so Agents API](https://apis.io/apis/communicate-so/communicate-so-agents-api/)
- [communicate-so Authentication API](https://apis.io/apis/communicate-so/communicate-so-authentication-api/)
- [communicate-so Chat API](https://apis.io/apis/communicate-so/communicate-so-chat-api/)
- [communicate-so Discovery API](https://apis.io/apis/communicate-so/communicate-so-discovery-api/)
- [communicate-so Grill API](https://apis.io/apis/communicate-so/communicate-so-grill-api/)
- [communicate-so Inbox API](https://apis.io/apis/communicate-so/communicate-so-inbox-api/)
- [communicate-so Learnings API](https://apis.io/apis/communicate-so/communicate-so-learnings-api/)
- [communicate-so Notifications API](https://apis.io/apis/communicate-so/communicate-so-notifications-api/)
- [communicate-so Sources API](https://apis.io/apis/communicate-so/communicate-so-sources-api/)
- [communicate-so Teams API](https://apis.io/apis/communicate-so/communicate-so-teams-api/)

## Tags

Workspaces

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/communicate-so/communicate-so-workspaces-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/communicate-so/.
