Skip to main content
POST
Run a scope

Authorizations

Authorization
string
header
required

A Modus personal access token (modus_<orgUuid>_<prefix>_<secret>) or an OAuth 2.1 access token, sent as Authorization: Bearer <token>.

Path Parameters

id
integer
required

Scope id.

Body

application/json
message
string
required

The user message to send.

sessionId
string
required

Opaque client-generated conversation token for continuity. The server NEVER derives the run target identity (scope/workflow/modus) from this string — target identity comes only from the request path and DTO (see RunTarget). It is used solely to thread successive turns of the same conversation together.

organizationId
string

Organization id. Ignored for authenticated callers — the server uses the principal's org.

version
enum<string>

Saved version to run (scope/workflow; ignored for Modus).

Available options:
published,
draft
fileThreadId
string

Document-scoped conversation thread id.

config
object
attachments
object
userContext
object
supplementalContext
object
source
enum<string>

Origin of the run.

Available options:
home,
agent_settings,
agent,
api,
modus_api,
mcp,
slack,
slack_dm,
teams,
context_chat,
other
runId
string

Client-supplied run id (Idempotency-Key header wins).

streamProtocolVersion
enum<number>

Streaming protocol version. Version 2 supports assistant-content replacement events.

Available options:
2
experimentalFeatures
boolean
debug
boolean
subordinateSkillIds
number[]

Subordinate scope ids for an unsaved supervisor-scope draft test.

Response

SSE stream of run events.

The response is of type string.