Skip to main content
API
Broadcasts
  • Broadcasts expose sends, deliveries, reactions, reply threads, SLACK_BLOCK_KIT content, and link unfurling.
  • scheduleBroadcast.scheduledAt is optional, so you can return a scheduled broadcast to draft.
Other
  • Task.sourceLinks lists linked knowledge gaps. knowledgeGaps accepts filters, including status.
  • moveWorkflow places a workflow after another, or first when afterWorkflowId is null. Read where it sits from lexicographic position, and sort workflows with sortBy.
  • EmailEntry.inlineAttachments and ImportThreadMessageInput.emailMessageId are available.
  • Thread.broadcast and ThreadsFilter.broadcastIds relate reply threads to a broadcast.
  • changeThreadDiscussionStatus resolves and reopens a discussion.
Changed and removedUpdate your integration if it uses any of these fields or operations:
  • Replace BroadcastSendTarget.channels and BroadcastSendTargetInput.channels with scope, filters, recipients, and excludeRecipients.
  • Replace ThreadDiscussionAgentStatus.NEEDS_INPUT with TOOL_CALL_APPROVAL_PENDING.
  • Replace isSuccess on ThreadDiscussionToolCallEntryPayload with status (DiscussionToolCallStatus). service and op are optional.
  • Remove DiscussionsFilter.hasAgentSession. Filter with agentTypes and agentMachineUserIds.
  • Replace order on workflow inputs with moveWorkflow. Setting order no longer affects ordering, and Workflow.order is deprecated in favor of position.
  • Replace markThreadDiscussionAsResolved with changeThreadDiscussionStatus, which moves a discussion between OPEN and RESOLVED.
Broadcasts · Discussions · Tasks
Webhooks
2026-09-06
  • Added discussion.tool_call_approval_requested and discussion.tool_call_approval_resolved for agent tool-call approval changes.
  • Added agentStatus to discussions in discussion.message_created.
Webhook versions · JSON schema
API
GraphQL schema
  • Added createBroadcast, updateBroadcast, deleteBroadcast, and scheduleBroadcast mutations, plus broadcast, broadcasts, and searchBroadcasts queries, so you can manage broadcasts programmatically.
Guides
  • The Broadcasts guide now documents using the API, including the permissions your API key needs to create, update, and send broadcasts.
Broadcasts · Authentication
Webhooks
2026-09-02
Added workspaceFiles to messages in discussion.message_created.Webhook versions · JSON schema
Webhooks
2026-08-31
Added discussion.discussion_created, sent when a discussion is started on a thread. Existing event payloads did not change.Webhook versions · JSON schema
Webhooks
2026-08-25
Added thread.thread_locked, sent when a thread is locked. Existing event payloads did not change.Webhook versions · JSON schema
APIWebhooks
2026-08-19
Discussion status is now OPEN or RESOLVED. Agent activity moved to agentStatus (UNKNOWN, IDLE, and related values). If you filter or switch on the old discussion status values (IDLE, IN_PROGRESS, APPROVAL_REQUESTED), update those clients.Added the discussion.message_created webhook event, sent when a message is posted in a discussion. Existing event payloads did not change.Discussions · Webhook versions · JSON schema
API
Added isCustomAgent on MachineUser. true when the machine user is an agent the workspace built itself, rather than an ordinary API integration.Machine users
Webhooks
2026-07-14
  • Added thread.note_mention_created when a note mentions a machine user (for example an agent). Payload includes thread, note, and mentions (an array of machineUser).
  • Added attio and email_domain to tenant.source on thread.tenant_updated.
Webhook versions · JSON schema
API
Added createTenant. It fails if a tenant already exists with the given externalId. Use upsertTenant when you want create-or-update. Requires tenant:create.
Webhooks
2026-07-07
Added attio and email_domain to tenant.source on thread.tenant_updated.Webhook versions · JSON schema
API
  • Added threadsByExternalId to list every thread with a given externalId, across customers. threadByExternalId still returns a single thread for one customer.
  • Added knowledgeSourceCitationsByThread for the knowledge sources cited by AI replies on a thread.
Fetch threads · Searching knowledge
API
Added updateThreadExternalId. Pass externalId: null to clear it. Requires thread:edit.Updating threads
Webhooks
2026-06-15
  • Added WAITING_INDEFINITELY to statusDetail.type on thread (snoozed with no duration). The same value is available on the thread type in the API.
  • componentUser.user may be a machineUser as well as a user when a UI component references a machine user.
Webhook versions · JSON schema
API
Added importThread and importThreadMessages for backfilling historical threads without firing SLAs or autoresponders. Each externalId is idempotent (NOOP on replay). Requires thread:import.Importing threads
Webhooks
2026-05-06
Added dateTime and user UI component types to custom timeline entries.Webhook versions · JSON schema
API
Added a paginated discussions query with filters for user and discussion type.Fetch discussions
Webhooks
2026-04-21
  • Added thread.thread_tenant_updated, sent when a thread’s tenant changes.
  • Added reactionChange on thread.slack_message_updated.
Webhook versions · JSON schema
API
Added webhookDeliveryAttempts so you can inspect delivery attempts, including response status and body, without leaving the API.Delivery attempts
API
Added createDiscussion, sendDiscussionMessage, and the single discussion query, so you can open a side-conversation on a thread and post into it programmatically.Create a discussion · Send a message
API
Added importCustomers, importTenants, and importTenantFieldSchemas for bulk backfills from another system. Each is idempotent on externalId and returns added, updated, and skipped counts.
Webhooks
2026-03-13
Added the workflowButton UI component type to custom timeline entries.Webhook versions · JSON schema
Webhooks
2026-02-27
Added changeType on thread.slack_message_updated.Webhook versions · JSON schema
Webhooks
2026-02-13
  • Added dateValue on threadField.
  • Added DATE and CURRENCY to threadField.type.
Webhook versions · JSON schema
APIWebhooks
2026-02-11
Added updateNote for editing an existing note on a thread.Added numberValue on threadField and NUMBER to threadField.type.Notes · Webhook versions · JSON schema
API
Added lockThread to freeze a thread so non-admin users cannot reply or make changes.
API
Added updateThreadAgentStatus to set a thread’s AI agent status to IN_PROGRESS, HANDED_OFF, or HANDLED.Building agents
API
Tasks are now available over the API: createTask, updateTask, deleteTask, plus task, taskByRef, and a filterable tasks query.Tasks
API
Added labelTypeByExternalId, so you can look up a label type by the ID it has in your own system.Label types
API
Added deleteThread for permanently deleting a thread.Deleting threads
API
Added searchKnowledgeSources to search the knowledge your agents draw on.Searching knowledge
API
Added upsertTenantField, deleteTenantField, and deleteTenantFieldSchema, completing tenant field management over the API.Tenant fields
API
Added the tenantFieldSchemas query and upsertTenantFieldSchema mutation, including field visibility.Tenant fields
API
Added deleteTenant. Deleting a tenant unlinks it from all customers and removes its fields.Deleting tenants
API
Added the knowledgeSources query and deleteKnowledgeSource mutation.Searching knowledge
Webhooks
2025-08-06
  • Added additionalAssignees on thread.
  • Added externalId and isExcludedFromAi on labelType.
Webhook versions · JSON schema