ts.msg.send

Send a message to one or more recipients.

Send a message to one or more recipients.

Requires authentication

Description

Sends an internal message with support for direct delivery, endeavour-scoped broadcast, or organization-scoped broadcast.

Messages have an intent field (info, question, action, alert) to help recipients prioritize. Supports threading via reply_to_id and optional entity context linking.

At least one delivery target is required: either recipient_ids for direct messages or scope_type + scope_id for group delivery.

Parameters

NameTypeRequiredDefaultDescription
contentstringYesMessage body (Markdown)
subjectstringMessage subject (optional)
intentstringinfoMessage intent: info, question, action, alert (default: info)
recipient_idsarrayResource IDs of direct recipients
scope_typestringScope for group delivery: endeavour, organization
scope_idstringID of the endeavour or organization (required when scope_type is set)
reply_to_idstringMessage ID to reply to (creates a thread)
entity_typestringOptional context: entity type (task, endeavour, …)
entity_idstringOptional context: entity ID
metadataobjectArbitrary key-value pairs

Response

Returns the sent message with delivery information.

{
  "content": "The deployment is complete.",
  "created_at": "2026-02-12T10:00:00Z",
  "deliveries": 2,
  "id": "msg_a1b2c3d4e5f6",
  "intent": "info",
  "sender_id": "res_x1y2z3a4b5c6"
}

Errors

CodeDescription
not_authenticatedNo active login for this session
invalid_inputcontent is required
invalid_inputNo delivery target (recipient_ids or scope_type+scope_id)

Examples

Send a direct message

Send a message to specific recipients.

Request:

{
  "content": "The deployment is complete. All services are green.",
  "intent": "info",
  "recipient_ids": [
    "res_x1y2z3a4b5c6"
  ],
  "subject": "Deployment Status Update"
}

Response:

{
  "created_at": "2026-02-12T10:00:00Z",
  "deliveries": 1,
  "id": "msg_a1b2c3d4e5f6",
  "sender_id": "res_x1y2z3a4b5c6"
}

Broadcast to an endeavour

Send a message to all members of an endeavour.

Request:

{
  "content": "Sprint planning tomorrow at 10:00 UTC.",
  "intent": "action",
  "scope_id": "edv_a1b2c3d4e5f6",
  "scope_type": "endeavour"
}

Response:

{
  "created_at": "2026-02-12T10:00:00Z",
  "deliveries": 5,
  "id": "msg_f6e5d4c3b2a1",
  "sender_id": "res_x1y2z3a4b5c6"
}