Skip to content

Site under construction, formerly SigmaX has begun the process of transitioning to AIgentXS.

Developers

Inspect the Capital API contract.

SigmaX governs what a capital action is allowed to do next — mandate checks, preflight, human approval, and route disposition, recorded as an append-only audit trail. The ActionIntent API is how partners integrate that governed lifecycle. It is a decision-support and draft/paper routing layer: it records decisions and prepares dispositions, and it never transmits an order to a venue, custodies assets, or moves funds.

AI analyzes. Deterministic systems validate. Humans authorize. Capital remains governed.

This documentation serves Capital — SigmaX within AIgentXS. It does not establish integration availability for other sectors.

The ActionIntent API is a commercial plan — from $120,000/year + usage, issued per workspace. See plans and pricing →

What the API returns
Capital movementNone
Live executionDisabled
External sendOff by default
Human authorizationRequired

Confirm availability before integration

The public durable ActionIntent route was disabled when checked on . Workspace availability has not been verified. Confirm the enabled routes, workspace, and scopes with your operator.

A service-health check at /readyz is diagnostic. It is not a trial, authorization, or evidence that a documented customer capability is enabled.

Base URL & auth

One base URL. Scoped, operator-issued keys.

Authentication is a bearer key bound to a workspace. Keys are issued during onboarding rather than self-served, and restricted scopes keep a partner integration confined to exactly the routes it needs.

Base URL
api.sigmax.capital

All ActionIntent routes live under https://api.sigmax.capital. Durable routes are versioned under /v1.

Auth
Bearer key

Present an Action Spine principal key (sak_) as an Authorization: Bearer header. The key carries a workspace and an approver role — never capital or execution authority.

Restricted scopes
read_only · approval_inbox · handoff_receipts

Restricted Action Spine keys confine access by scope. The capability list below names selected read_only GET reads and the complete approval_inbox and handoff_receipts route sets. Workspace and operator gates still apply.

Provisioning
operator-issued

Keys are issued during onboarding after the workspace, scopes, and route surfaces are approved. Unapproved routes fail closed rather than returning guessed data.

  • GETread_only
    List ActionIntents
    /v1/trigger-engine/action-intents
  • GETread_only
    Replay an intent
    /v1/trigger-engine/action-intents/{id}/replay
  • GETread_only
    Read the append-only audit trail
    /v1/trigger-engine/audit
  • GETread_only
    Read the impact ledger
    /v1/trigger-engine/impact-ledger
  • GETapproval_inbox
    List pending approvals
    /v1/trigger-engine/approvals/pending
  • GETapproval_inbox
    Read approval principal
    /v1/trigger-engine/approvals/principal
  • POSTapproval_inbox
    Record an approval decision
    /v1/trigger-engine/approvals/{id}/decision
  • GEThandoff_receipts
    Fetch and verify a grant
    /v1/trigger-engine/authorization-grants/{id}
  • POSThandoff_receipts
    Record an inbound receipt
    /v1/trigger-engine/authorization-grants/{id}/receipts

Reference keys by env-var name, never by value. The typed client reads its key from an environment variable and never hardcodes it.

The governed response envelope

Every response states its own authority.

Every method returns the full governed envelope, not just its data. The authority fields are load-bearing and machine-checkable: a caller can confirm, on every single response, that no capital moved and that live execution stayed off. The safety posture is in the payload — not a footnote.

{
  "ok": true,
  "data": { /* the step artifact */ },
  "status": "paper_ready",
  "reason_codes": ["paper_only"],
  "next_allowed_actions": ["advisor_task"],
  "proof_ref": "intent_…",
  "no_capital_moved": true,          // always true
  "live_execution_enabled": false,   // always false
  "authority": {
    "capital_authority": "none",
    "execution_authority": false,
    "external_send": false,
    "customer_action": false,
    "customer_eligibility": "not_customer_eligible",
    "broker_submit_path": "none",
    "provider_calls": "not_called",
    "secrets_policy": "names_only"
  }
}
  • no_capital_moved

    Always true. Every success envelope asserts that no capital was moved.

  • live_execution_enabled

    Always false. Live execution is disabled by design — a compile-time constant in the client.

  • status + reason_codes

    The governed disposition and its reasons, drawn from a closed set. A blocked call names the gate that refused it.

  • authority

    The full authority posture of the call: no capital authority, no execution, no external send, no customer action, secrets referenced by name only.

A blocked request returns an error envelope (HTTP 400/401/404) carrying the same authority fields plus an error.code and reason_codes — inspect both to see which governance gate refused the request.

Quickstart

Your first governed call.

With an operator-issued Action Spine read_only key, send a bearer-authenticated GET request. The reference key is read from an environment variable — the value never appears in code. The reply is the governed envelope.

Request
curl -sS https://api.sigmax.capital/v1/trigger-engine/action-intents \
  -H "Authorization: Bearer $SIGMAX_ACTION_SPINE_KEY"
Response
{
  "ok": true,
  "data": { /* workspace-scoped list result */ },
  "no_capital_moved": true,
  "live_execution_enabled": false,
  "authority": { "capital_authority": "none", "execution_authority": false }
}

The selected read_only capabilities below provide a starting point. This Action Spine scope permits no writes; workspace and operator gates still apply.

  • GETread_only
    List ActionIntents
    /v1/trigger-engine/action-intents
  • GETread_only
    Replay an intent
    /v1/trigger-engine/action-intents/{id}/replay
  • GETread_only
    Read the append-only audit trail
    /v1/trigger-engine/audit
  • GETread_only
    Read the impact ledger
    /v1/trigger-engine/impact-ledger
Integration essentials

The four things every integration uses.

The full contract is in the OpenAPI spec. These four patterns cover almost every integration path.

Idempotency

A durable create requires an idempotency key, sent in the Idempotency-Key header or the body field. The same key with the same payload returns the existing record; the same key with a different payload is refused. Keys are workspace-scoped.

Cursor pagination

List surfaces use opaque, Stripe-style cursors. Pass limit, then pass next_cursor back as cursor while holding filters constant. The cursor is a bytestring — never construct or parse it. A malformed, tampered, or filter-mismatched cursor fails closed with a 400, never a silent restart.

Signed webhooks

Subscribe an HTTPS endpoint to receive signed, non-authoritative event records from a closed event catalog. Delivery is off by default. Every send is HMAC-signed over timestamp.delivery_id.raw_body; the payload carries only IDs and a payload_hash — never object bodies, secrets, or PII. The signing secret is returned once at creation.

Closed reason-code model

Both reason_codes and error.code come from a closed set. Non-blocking dispositions (allowed, paper_only, handoff_ready, approval_required) advance the lifecycle; every blocked_* code means a governance gate refused the request. There are no open-ended error strings to parse.

Resources

The spec, the SDK, and access.

The machine-readable contract is public. TypeScript SDK source is available in the repository. Workspace access, delivery, and enabled routes require a scoped onboarding review.

Public
OpenAPI specification

The OpenAPI 3.1 contract for the ActionIntent API. CI checks the generated contract against source registrations. Deployment flags and workspace permissions determine which documented routes are available to a caller.

View openapi.json →
Design partners
TypeScript SDK

A typed client that returns the full governed envelope — no_capital_moved and live_execution_enabled are compile-time constants. It is not yet published to a public registry. Confirm the supported distribution and workspace access during onboarding.

Paid plan
Access & pricing

The ActionIntent API is a commercial plan — from $120,000/year + usage, priced per workspace. Keys are operator-issued after the workspace, scope, and supported routes are approved. Start an access review to confirm availability; a listed plan does not activate a route.

The API surface

One governed API. Three tiers. A boundary that never moves.

SigmaX exposes intelligence, proof, and governed proposals by API — never capital movement, execution, custody, or order routing. Each tier states its own authority, and access depends on the documented scopes and deployment controls. Confirm workspace availability before making an integration plan.

Tier 1
Read & evidence
GET-only reads · no authority

Operator-provisioned access. Confirm enabled routes and workspace scopes before integration. Drift Radar reads require the corresponding entitlement; the documented ActionIntent reads also require the durable surface to be enabled (SIGMAX_TRIGGER_ENGINE_DURABLE_ENABLED). Fiduciary, decisions, and liquidity reads use the separate unified scoped key plane below. Documentation describes the contract; it does not confirm access for your workspace.

Tier 2
Built · default-off
Governed proposal
Propose-only · Agent Gateway

An agent can create at most a draft ActionIntent through the human-gated Agent Gateway — never an order, a transfer, or an approval. Every response asserts no_capital_moved: true and live_execution_enabled: false. The front door is built and stays off until an operator arms it.

Tier 3
Structurally absent
Capital & execution
No customer endpoint · by design

There is no customer-facing live-submit, order, transfer, custody, or customer-capital route in this API release. Route dispositions top out at draft, CSV ticket, or locked; any future live-capital route requires separate legal review, certified controls, and explicit operator approval.

AI analyzes. Deterministic systems validate. Humans authorize. Capital remains governed.

Every response: no_capital_moved: true · live_execution_enabled: false

Unified scoped keysBuilt · operator-gated

One key model. Least privilege, per product.

A single unified key plane (the sxk_ prefix) carries an explicit, closed set of per-product scopes. A key reaches exactly the routes its scopes allow — nothing else. It is deny-by-default, stored as a one-way hash, and shown once at creation. Eligible provisioned accounts can issue keys through the portal when issuance is enabled for their deployment. These keys remain separate from action-review principal credentials.

GETdrift:read
  • /api/v1/drift
GETevidence:read
  • /api/v1/fiduciary
  • /v1/client/decision-assurance
GETdecisions:read
  • /v1/decisions
  • /v1/divergence
  • /v1/audit
GETliquidity:read
  • /v1/commercial/liquidity-radar
GET + POSTproposals:write
  • /v1/agent-gateway/proposals
  • /v1/agent-gateway/candidates

The paths above identify registered route families; individual endpoints still require their workspace, entitlement, and operator gates. The proposal scope permits only the closed create, fetch, candidates, evaluate, and audit route set, not arbitrary routes beneath those paths. An empty or malformed scope set authorizes nothing — a tampered key never half-works. The four read scopes are GET-only, so a read scope can never escalate to a write, and proposals:write reaches only the propose-only gateway — never a trigger-engine write, a connector, or a capital path.

OnboardingBuilt · operator-gated

Atlas is your implementation engineer.

Atlas is SigmaX’s own governed AI assistant — the same assistant that answers questions across this site and the platform. During implementation it guides your team through setup and verifies readiness read-only: it reports which environment-variable names are present or missing and what to do next — and it never enters a credential, provisions Stripe, activates a connector, or authorizes an action. A human does all of that. This is the same chain as everywhere in SigmaX: a guide that checks, and a person who acts.

01
Atlas reads the setup

Read-only. Atlas runs one readiness check on the workspace SigmaX stands up for you and reports which environment-variable names are present versus missing, plus the exact next step. It never reads, echoes, or validates a secret value.

02
Humans configure — each side its own

Your team places only its own values: your SigmaX API key in your environment, your endpoints, your workspace settings. SigmaX configures its side — provider credentials and all Stripe billing. You never create prices or touch payment infrastructure. Atlas points at the name and its purpose; a person places the value.

03
You authorize

Atlas never provisions Stripe, activates a connector, exchanges a token, or moves capital. Every side-effect is a human decision. AI proposes; humans authorize.

04
Atlas re-checks

Atlas re-runs the read-only readiness check to confirm progress and surface the next gap. Guide, then verify — Atlas never acts on your behalf.

The readiness surface is value-free by construction: env-var names and present/missing booleans only, gated behind SigmaX’s operator token, activating nothing. It is off until a SigmaX operator enables it for your implementation — your team never needs a token or a Stripe login.

Request an API review →
On the roadmapIn build

What’s next for the unified API.

These are designed and in build — not live. We label them as such so the boundary between shipped and planned stays honest.

Self-serve key issuance
In build

A buyer’s plan mints an sxk_ key carrying exactly its scopes — with no operator in the loop. Keys are operator-issued today.

Unified OpenAPI across all tiers
In build

The published contract covers the Action Spine today. Extending it across every Tier-1 read surface — each path labeled with its tier and authority posture — is next.

Metering across every read
In build

Usage metering and monthly quota — built default-off, being wired across every Tier-1 read.

See verified pilot readiness →
Compliance disclaimer

SigmaX provides capital decision intelligence, scenario analysis, and authority workflow software. SigmaX does not provide investment advice. SigmaX does not place trades, move funds, route customer capital, or manage client capital. Shadow/simulated/paper/backtested results are not live trading results. No result is a guarantee of future performance. Human approval is required before any capital-linked action.

Where SigmaX uses AI, it is governed as assistive software: truthful capability claims, human oversight, traceable records, disclosure of AI assistance, and no capital authority. SigmaX designs AI controls with reference to applicable securities obligations, FINRA existing-rule guidance, SEC AI-claims discipline, NIST AI RMF-style risk management, and EU AI Act transparency readiness. This is compliance-readiness design, not a claim that every deployment or jurisdiction-specific use has completed legal review.

Integrate the governed lifecycle.

Review the plans and the contract, then request a scoped key. The ActionIntent API is a paid plan (from $120,000/year + usage); every call you make stays on the intelligence side of the boundary: no capital movement, no live execution, human authorization required.