Skip to content

Published by DecisionNode (Bynn Intelligence, Inc.). Not affiliated with, endorsed by or operated by TypeSafe AI. About this site

Jev, compared

How the Jev API works

One endpoint, a state and a map of typed questions. The request and the response in our own words, then the same decision on DecisionNode.

Facts checked

The endpoint

Every decision is a POST to https://api.typesafe.ai/v1/systemone with a JSON body, an Authorization: Bearer header carrying your API key and Content-Type: application/json. A second endpoint, GET /v1/models, lists the models your key can use.

The request

FieldTypeRequiredWhat it holds
state string, object or array Yes The input to decide on.
model string Yes jev-latest, jev-preview or the pinned jev-1.13.0.
questions object Yes Your own ids mapped to typed questions. Answers come back under the same ids.

Each question has a type, instructions (a string, an object or an array) and, depending on the type, criteria:

Typecriteria
choice Required: an object of option names to descriptions (a description may be null). Up to 255 options.
score Required: an ordered array of 2 to 10 level descriptions, lowest first.
noul Optional: descriptions of what a true and a false answer mean.

The response

FieldContents
model The model that answered.
answers.<id> (choice) choice (the top option), probabilities for every option, confidence from 0 to 1.
answers.<id> (score) score (the expected level), legend, probabilities for every level, confidence.
answers.<id> (noul) noul: one probability from 0 to 1 that the answer is yes.
usage input_tokens and output_tokens.

Errors

StatusMeaning
401 The API key is missing or wrong.
422 The body failed validation.
429 Over the rate limit. Retry with exponential backoff.
529 Temporarily overloaded. Retry after a short wait.

Source: TypeSafe's API reference, checked October 12, 2026. Read it for the exact schema before you build against it.

The same decision on DecisionNode

DecisionNode's request has the same outline. Its yes/no type is called truth, and images and video frames can go beside the state.

curl https://api.decisionnode.com/v1/decide \
  -H "Authorization: Bearer $DECISIONNODE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "decisionnode-1.0",
  "state": "We were charged twice for the October invoice (INV-20931). The second charge pushed our card over its limit and our team seats were suspended this morning. Please refund the duplicate and restore access.",
  "questions": {
    "route": {
      "type": "choice",
      "instructions": "Which team should handle this ticket?",
      "criteria": {
        "billing": "Charges, invoices, refunds and plans",
        "bug": "Something in the product is broken",
        "account": "Login, seats and permissions",
        "feature_request": "Asks for something the product does not do"
      }
    },
    "urgency": {
      "type": "score",
      "instructions": "How urgent is this ticket?",
      "criteria": [
        "routine: no deadline",
        "soon: within a few days",
        "today: blocks work today",
        "critical: outage or data loss"
      ]
    },
    "refund": {
      "type": "truth",
      "instructions": "Is the customer asking for money back?",
      "criteria": {
        "true": "Asks for a refund or a credit",
        "false": "Any other request"
      }
    },
    "escalate": {
      "type": "truth",
      "instructions": "Should a person handle this now instead of an automated reply?"
    }
  }
}'
PartJevDecisionNode
Endpoint POST api.typesafe.ai/v1/systemone POST api.decisionnode.com/v1/decide
Yes/no type noul truth
Model names jev-latest, jev-1.13.0 decisionnode-1.0, decisionnode-1.0-flash
Inputs besides state None images (up to 16), videos as frames
More answer types None number, point, box
More endpoints GET /v1/models GET /v1/models, /v1/uploads, /v1/batches, /v1/sessions

DecisionNode's full reference: POST /v1/decide. This request and four more are on the use cases page.

Jev API questions

Is there an official Jev SDK?

Yes. TypeSafe lists client SDKs for Python and for JavaScript and TypeScript, which retry rate-limit and overload errors on their own. The API is plain JSON over HTTPS, so any HTTP client works too.

What are Jev's rate limits?

100,000 tokens and 80 requests a second per key, as of October 2026. TypeSafe says the limits can change without notice and offers higher ones on custom and enterprise plans. Requests over a limit get a 429.

How long can a Jev request be?

64k tokens for the state and all questions together, and 32k tokens for the state plus the single longest question.

Does the Jev API accept images?

No. The state is text: a string, a JSON object or an array of text. DecisionNode's API takes images and video frames beside the state.

Run your own decisions on DecisionNode

Send text, JSON or images with typed questions and get probabilities back. Free tier: 50 Flash and 20 MoE requests a day.

Try DecisionNode