Submit intent
Submits a create, replace, or cancel command for an account in the caller’s organization. API keys need intent edit permission for the account environment; users need an admin role. Creates require a routable order_venue, resolve the symbol’s instrument, and pass trading controls. Live creates also require live-trading entitlement. Replace and cancel inherit the instrument and strategy; replace cannot change time in force. Authorization, entitlement, and control refusals are recorded for the rejections endpoint.
Authorizations
Headers
Optional key, at most 255 bytes, scoped to the organization. Repeating the same request returns its original intent with 201; reusing the key for a different request returns 409. Refused submissions do not consume the key.
Optional RFC 3339 deadline checked after authorization and controls, before writing. An expired deadline returns 412. It does not bound write completion; use POST /v1/intents/void to settle an unanswered keyed command.
Body
Trading account and command to submit
Requested intent operation and its payload.
- Option 1
- Option 2
- Option 3
Trading account that should execute the intent.
Carried in the body rather than the path: submission is a command against the caller's organization, and the account it targets is part of the command.
Optional caller-defined strategy the intent belongs to.
What a strategy is belongs to the caller: one run of a model, one cycle away from a target position and back. The platform never interprets it; it groups by it, so the ledger can report a strategy's executions and PnL across every intent placed under it.
Read on a create. A replace or cancel keeps the strategy of the intent it references: omit it, or repeat the same one. Naming a different strategy is refused with 400.
Response
Intent accepted