Skip to content
DecisionNodeDecisionNdedocs
  • Guides
  • API reference
  • Examples
  • Playground

start here

  • QuickstartGet startedGet an API key, send one request with three questions, and branch your code on the typed answers. Plain HTTPS, no SDK to install.
  • POST /v1/decideAPI referenceAnswer typed questions about a state and optional images. One request, one buffered JSON response, one answer per question.
  • QuestionsConceptsQuestions say what to decide. Each one has a type that fixes the shape of its answer: a choice from your options, a score on your scale, a…
  • ConfidenceConceptsProbabilities are calibrated per question type, so a threshold means what it says.
  • ImagesConceptsSend images and text in the same request. The model reads printed and handwritten text, amounts, dates, objects and layout, and answers…
  • Pricing and billingYou pay for input tokens only. Output is free because the model generates no text.
↑↓ moveopen6 suggestions
Get API keyGet API key
DecisionNodeDecisionNde

Get started

  • Introduction
  • Quickstart
  • With coding agents
  • Examples

Concepts

  • State
  • Questions
  • Choice
  • Score
  • Truth
  • Number
  • Images
  • Confidence
  • Determinism

Models

  • DecisionNode-1.0
  • DecisionNode-1.0 Flash
  • Limits

Patterns

  • Confidence-gated routing
  • Fan-out
  • Guardrails
  • Control loopscomingcoming soon

API reference

  • POST/v1/decide
  • POST/v1/sessionscomingcoming soon
  • GET/v1/models
  • Errors
  • Rate limits

Pricing and billing

  • Pricing and billing

Policies

  • Responsible use

Migrate

  • Coming from a Jev-shaped API
  • Benchmarks
  • Pricing
  • Playground
Get API key
  • Guides
  • API reference
  • Examples
  • Playground

Get started

  • Introduction
  • Quickstart
  • With coding agents
  • Examples

Concepts

  • State
  • Questions
  • Choice
  • Score
  • Truth
  • Number
  • Images
  • Confidence
  • Determinism

Models

  • DecisionNode-1.0
  • DecisionNode-1.0 Flash
  • Limits

Patterns

  • Confidence-gated routing
  • Fan-out
  • Guardrails
  • Control loopscomingcoming soon

API reference

  • POST/v1/decide
  • POST/v1/sessionscomingcoming soon
  • GET/v1/models
  • Errors
  • Rate limits

Pricing and billing

  • Pricing and billing

Policies

  • Responsible use

Migrate

  • Coming from a Jev-shaped API
  1. docs
  2. /
  3. Migrate

Coming from a Jev-shaped API

If your code calls the decide API that TypeSafe AI documents for its Jev model, DecisionNode accepts the same request shape and returns the same response shape. This page lists what to change and what differs.

on this page7 sections
  1. What to change
  2. Side by side
  3. What differs
  4. Test before you switch
  5. Choose DecisionNode when
  6. Choose Jev when
  7. Methodology and sources

Independent, not affiliated

DecisionNode is built by Bynn Intelligence, Inc. and is not affiliated with, sponsored by, or endorsed by TypeSafe AI. TypeSafe, Jev and their marks belong to their respective owner and are named here only to identify the API being compared.

Information last reviewed: 4 October 2026. Scope: the DecisionNode API (decisionnode-latest, decisionnode-flash-latest) and the TypeSafe AI HTTP API for Jev as described on its public documentation pages listed under Sources. Prices are list prices per million input tokens in USD.

What to change#

The body fields model, state and questions and the response fields model, answers and usage have the same names and roles, so in most integrations three values change: the URL, the key and the model id.

const URL = "https://api.typesafe.ai/v1/systemone";
const KEY = readSecret("TYPESAFE_API_KEY");
const MODEL = "jev-latest";

Side by side#

  • Endpoint

    DecisionNode
    POST /v1/decide on api.decisionnode.com
    Jev (TypeSafe AI, as documented)
    POST /v1/systemone on api.typesafe.ai
  • Authentication

    DecisionNode
    Authorization header, Bearer <key>
    Jev (TypeSafe AI, as documented)
    Authorization header, Bearer <API_KEY>
  • Request fields

    DecisionNode
    model and questions required; state and images optional
    Jev (TypeSafe AI, as documented)
    Documented as requiring state, model and questions
  • Response fields

    DecisionNode
    model, answers, usage
    Jev (TypeSafe AI, as documented)
    model, answers, usage
  • Error statuses

    DecisionNode
    401, 422, 429, 529, plus 400 for a request over a limit, 402 when the prepaid balance is empty and 403 for a safety refusal; every body under the same detail key
    Jev (TypeSafe AI, as documented)
    Documented: 401, 422, 429, 529
  • Question types

    DecisionNode
    choice, score, truth and number; noul is accepted as an alias of truth and answered under its own name
    Jev (TypeSafe AI, as documented)
    Documented as three types: choice, score and noul
  • Number answers on a grid

    DecisionNode
    number questions: a value on a grid you set, with expected, confidence and a probability per value
    Jev (TypeSafe AI, as documented)
    Not in the documented API as reviewed (October 2026)
  • Streaming decisions

    DecisionNode
    Sessions over a WebSocket comingcoming soon: the context sent once, one typed reply per frame
    Jev (TypeSafe AI, as documented)
    Not in the documented API as reviewed (October 2026), which describes request and response calls
  • Input

    DecisionNode
    Text, JSON and images (images field)
    Jev (TypeSafe AI, as documented)
    Documented as text only, with no image, audio or video input
  • Context

    DecisionNode
    64k tokens per request (65,536)
    Jev (TypeSafe AI, as documented)
    Documented as 64k tokens per request and 32k tokens for state plus the longest question
  • Price per 1M input tokens

    DecisionNode
    $0.042 (DecisionNode-⁠1.0), $0.021 (DecisionNode-⁠1.0 Flash, provisional)
    Jev (TypeSafe AI, as documented)
    Documented as $0.042
  • Output tokens

    DecisionNode
    Free
    Jev (TypeSafe AI, as documented)
    Documented as free
  • Model ids

    DecisionNode
    decisionnode-latest, decisionnode-flash-latest, pinned versions such as decisionnode-1.0
    Jev (TypeSafe AI, as documented)
    Documented aliases jev-latest (pointing to jev-1.13.0) and jev-preview
  • Default rate limits

    DecisionNode
    40 requests and 100,000 input tokens per second (provisional)
    Jev (TypeSafe AI, as documented)
    Documented as 100K tokens and 40 requests per second, subject to change
  • Client libraries

    DecisionNode
    Plain HTTPS; these docs show curl, Python and TypeScript
    Jev (TypeSafe AI, as documented)
    Python and JavaScript SDKs are documented
API comparison, as publicly documented on 4 October 2026
DecisionNodeJev (TypeSafe AI, as documented)
EndpointPOST /v1/decide on api.decisionnode.comPOST /v1/systemone on api.typesafe.ai
AuthenticationAuthorization header, Bearer <key>Authorization header, Bearer <API_KEY>
Request fieldsmodel and questions required; state and images optionalDocumented as requiring state, model and questions
Response fieldsmodel, answers, usagemodel, answers, usage
Error statuses401, 422, 429, 529, plus 400 for a request over a limit, 402 when the prepaid balance is empty and 403 for a safety refusal; every body under the same detail keyDocumented: 401, 422, 429, 529
Question typeschoice, score, truth and number; noul is accepted as an alias of truth and answered under its own nameDocumented as three types: choice, score and noul
Number answers on a gridnumber questions: a value on a grid you set, with expected, confidence and a probability per valueNot in the documented API as reviewed (October 2026)
Streaming decisionsSessions over a WebSocket comingcoming soon: the context sent once, one typed reply per frameNot in the documented API as reviewed (October 2026), which describes request and response calls
InputText, JSON and images (images field)Documented as text only, with no image, audio or video input
Context64k tokens per request (65,536)Documented as 64k tokens per request and 32k tokens for state plus the longest question
Price per 1M input tokens$0.042 (DecisionNode-⁠1.0), $0.021 (DecisionNode-⁠1.0 Flash, provisional)Documented as $0.042
Output tokensFreeDocumented as free
Model idsdecisionnode-latest, decisionnode-flash-latest, pinned versions such as decisionnode-1.0Documented aliases jev-latest (pointing to jev-1.13.0) and jev-preview
Default rate limits40 requests and 100,000 input tokens per second (provisional)Documented as 100K tokens and 40 requests per second, subject to change
Client librariesPlain HTTPS; these docs show curl, Python and TypeScriptPython and JavaScript SDKs are documented

What differs#

  • Truth and noul. DecisionNode calls the probability type truth: is this statement true, as one calibrated probability from 0.00 to 1.00. A question sent as "type": "noul" is the same type under its old name: it is accepted unchanged and answered as { "type": "noul", "noul": 0.94 }, so code that reads answers.<key>.noul keeps working. Switch to truth when you next touch the code. See Truth.
  • Images. DecisionNode accepts an optional images array next to the state. Requests without it are unaffected. See Images.
  • Number questions. A fourth question type, number, answers how many or what value on a grid you set. It is an addition: requests that use only choice, score and noul or truth are unaffected. See Number.
  • Sessions comingcoming soon. For more than 10 decisions a second, a session keeps the context loaded and streams one reply per frame. /v1/decide itself is unchanged. See Sessions.
  • Two tiers. decisionnode-flash-latest is a compact, faster tier on the same API at a lower price per token (provisional). See DecisionNode-⁠1.0 Flash.
  • Formulas. These docs publish both confidence formulas, one for choice and one for score, so you can reproduce every confidence from probabilities. See Confidence.
  • SDKs. If your code uses TypeSafe AI's SDKs rather than raw HTTP, the SDK's own client handles the URL and errors. Replace the calls with plain HTTPS as shown in the quickstart, or wrap them in a small function of your own.

Test before you switch#

  1. 1.Collect a few hundred real requests with known outcomes.
  2. 2.Send each one to both APIs and store the answers side by side.
  3. 3.Compare accuracy and the share of answers above your thresholds on your own data.
  4. 4.Re-tune thresholds on DecisionNode before you cut over. Probabilities from different models are not interchangeable, even when the shapes match.

Try one of your own requests now

Paste a request body you already send into the playground in JSON mode and run it against both DecisionNode models.

Choose DecisionNode when#

  • Your decisions involve images as well as text, such as receipts, documents or product photos.
  • You want a lower-priced tier for high-volume, clear-cut decisions.
  • You want to keep your existing request bodies and compare results on your own traffic.

Choose Jev when#

  • Your integration depends on TypeSafe AI's Python or JavaScript SDKs and you prefer to keep them.
  • You rely on parts of TypeSafe AI's platform that this page does not cover.
  • Your own evaluation on your data favors its answers for your questions.

Methodology and sources#

This comparison is based on publicly available information from each provider's official documentation as reviewed on 4 October 2026. Features, pricing and availability may change. Verify current details directly with each provider before you decide. DecisionNode is an independent service and is not affiliated with, sponsored by, or endorsed by TypeSafe AI. All third-party names and trademarks are the property of their respective owners and are used only to identify the products being compared.

  • TypeSafe AI docs: HTTP API referencedocs.typesafe.ai/api.md
  • TypeSafe AI docs: Modelsdocs.typesafe.ai/models.md
  • TypeSafe AI docs: indexdocs.typesafe.ai/llms.txt
previousResponsible use

DecisionNode is built and run by Bynn Intelligence, Inc.

  • Home
  • Playground
  • Examples
  • Console
  • Responsible use
  • Terms
  • Acceptable use
  • Privacy
  • Data processing
  • Defence addendum
  • Cookies

on this page

  1. What to change
  2. Side by side
  3. What differs
  4. Test before you switch
  5. Choose DecisionNode when
  6. Choose Jev when
  7. Methodology and sources