Skip to main content
The POST /v8/missions/{runId}/signals endpoint lets you inject information or instructions into a mission that is already running or waiting. Signals are the primary mechanism for mid-flight human-in-the-loop interactions — for example, responding to a clarification request, providing additional context, or triggering a branch of the agent’s plan that depends on external data. The gateway durably records the signal and delivers it to the agent at its next observation cycle. Like mission creation, signal delivery is idempotent: re-sending the same Idempotency-Key with the same body is safe and produces no duplicate effects.
Signals are only delivered to missions in the running or waiting state. Sending a signal to a mission in a terminal state (succeeded, failed, cancelled) returns a 409 Conflict response.

Endpoint

Required scope: missions:write Required headers:

Path Parameters

runId
string (UUID)
required
The unique run identifier of the mission to signal. Returned by POST /v8/missions when the mission was created.

Request Body

signal
string
required
The name of the signal to send. Must be between 1 and 256 characters. The agent’s plan interprets this name to route the signal to the correct handler. Use descriptive, kebab-case names like "user-input", "approval-granted", or "data-ready".
payload
object
required
Arbitrary JSON data accompanying the signal. The shape of this object is determined by your agent’s signal handler contract, not by the gateway. Pass any serializable JSON value — object, array, string, number, or boolean.

Example Request


Response

Status: 200 OK A 200 OK with no response body confirms that the signal has been durably recorded by the Control Plane. The agent will receive the signal at its next observation cycle — this is an acknowledgement of receipt, not of delivery or processing.
The gateway documentation describes the response as “Signal durably recorded by the Control Plane.” Receiving 200 OK guarantees the signal will not be lost, even if the agent is mid-step when the request arrives.

Error Responses

All errors follow RFC 9457 Problem Details.

SDK Equivalent

Returns: Promise<void>