Decide on an assistant interaction
Records the caller’s decision on the pending interaction an assistant put in front of them — answers to its questions, acceptance of a blueprint, approval of a plan, a revision request, or dismissal — and delivers it to the assistant as the caller’s next message. Only the person who opened the assistant may decide, and only on the exact revision and digest they were shown (409 otherwise). Approving a plan requires a signed-in user holding every permission its enabled steps need; the plan then runs in the background, one existing operation per step, under the caller’s permissions, and its progress is appended to the assistant’s events. The response is the interaction after the decision.
Authorizations
A Recursion API key, created in the console under API keys.
Headers
Optional tenant consistency check. When present, it must name the tenant bound to the API key, including when x-organization-id is default.
1Organization in which to act. Required for a tenant-scoped API key. Optional for an organization-scoped key, where it must name that same organization. The value may be an organization id or default.
1Path Parameters
The assistant session (UUID) that made the interaction.
The interaction id, from the interaction's event.
128Body
Request body of managedAgentsSubmitAssistantInteractionDecision: one decision on the exact revision of an assistant interaction the caller was shown.
The decision: answer a question interaction, accept a blueprint, approve a plan, ask for a revision of a blueprint or plan, or dismiss any pending interaction.
answer, accept, approve, request_revision, cancel The digest of that revision, as shown. A mismatch is a 409.
128The interaction revision being decided, as shown. A stale revision is a 409.
1 <= x <= 9007199254740991Answers, with decision answer. Every non-optional question needs one.
4Comments pinned to steps or fields, with decision request_revision.
30With decision approve: optional steps to turn off.
12With decision approve: replacement values for editable step fields, keyed by stepId and then field name. Any edit records a new revision written by the person.
A note for the assistant. Required for request_revision unless comments are given.
4000Response
A typed request for the reader's input that an assistant put in front of them: questions, a solution blueprint, or a plan of changes. Each state is recorded as one event; the latest event per interactionId is the current state.
A typed request for the reader's input that an assistant put in front of them: questions, a solution blueprint, or a plan of changes. Each state is recorded as one event; the latest event per interactionId is the current state.
Digest of this revision's content. A decision names it so a person decides exactly what they were shown.
Stable id of the interaction. Revisions of a blueprint or plan keep it.
What is being asked: questions, a solution blueprint, or a plan of changes.
question, blueprint, plan Who wrote this revision: the assistant, or the person through an inline edit.
assistant, user When this revision was put in front of the reader.
Revision number, starting at 1. Only the latest revision of a pending interaction can be decided.
1 <= x <= 9007199254740991Lifecycle state of the interaction.
pending, answered, accepted, revision_requested, cancelled, superseded, executing, completed, failed Short heading for the interaction.
The solution design, on a blueprint interaction.
The person's decision, once one was made.
The changes, on a plan interaction.
The questions, on a question interaction.
What each approved step did, once a plan executes.
One or two sentences on why this is being asked.