Skip to content

DocsUse it from

2 min read · updated

Ways in

Five ways to talk to a Decisio server; all of them send the same JSON to the same route.

A Decisio server speaks TypeSafe’s System One wire format on POST /v1/systemone. Anything that can send JSON can use it, and so can a client or framework that already speaks that format. Pick the way that matches what you have.

Figure · Ways in

Five ways in, one route: every client sends the same JSON.

Each is a link to its page.

Source: docs/api.md and docs/migrating.md of the pinned release.

With a server running (Get started starts one), one yes/no question needs no options and no instructions:

curl http://127.0.0.1:8000/v1/systemone \
-H 'Content-Type: application/json' \
-d '{"state": "I was charged twice for October. Please refund one.", "questions": {"urgent": {"type": "noul"}}}'
# {"model": "...", "answers": {"urgent": {"type": "noul", "noul": ...}}, "usage": {"input_tokens": ..., "output_tokens": ...}}

Run against the CPU stand-in at v0.11.1 on 2026-10-14.

WordMeaning
wire formatthe shape of the request and the answer; Decisio implements TypeSafe’s published System One format
routean address on the server that does one thing; POST /v1/systemone asks questions
base URLthe address a client sends its requests to, here http://127.0.0.1:8000 unless --host and --port say otherwise

The body is a state and its questions, by name. GET /v1/models names the model the server serves, and the answer carries the server’s time in a header (x-decisio-server-ms). The HTTP API has every field.

If you haveUsePage
nothing yet, or any languageHTTPThe HTTP API
a Python scriptthe standard library, or TypeSafe’s SDKPython
a Node or browser appfetch, no packageJavaScript and TypeScript
a System One client alreadychange its addressSystem One clients
LangChain, the Vercel AI SDK, n8n, TanStack AI or Pipecattheir TypeSafe integration, pointed hereFrameworks