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. Patterns

Control loopscomingcoming soon

More than 10 decisions a second? Use a session. DecisionNode becomes the decision layer of a drone, a simulator or a monitoring loop: it picks the mode or the next action, and your controller carries it out.

on this page5 sections
  1. When to use a session
  2. A decision layer, never the controller
  3. The loop
  4. Designing frames
  5. What to build

When to use a session#

  • Now and then: a ticket, a payment, a tool call

    Use
    POST /v1/decide
    Why
    Each decision stands alone; one request, one answer
  • Many inputs at once

    Use
    Fan-out or a batch job
    Why
    Parallel requests within your rate limits, or half price when it can wait
  • More than 10 times a second, on one evolving input

    Use
    A session comingcoming soon
    Why
    The context is sent once and stays loaded; each frame carries only what changed
Which call for which rate
You decideUseWhy
Now and then: a ticket, a payment, a tool callPOST /v1/decideEach decision stands alone; one request, one answer
Many inputs at onceFan-out or a batch jobParallel requests within your rate limits, or half price when it can wait
More than 10 times a second, on one evolving inputA session comingcoming soonThe context is sent once and stays loaded; each frame carries only what changed

The rule of thumb

More than 10 decisions a second about the same thing: open a session. Fewer, or about different things: call /v1/decide.

A decision layer, never the controller#

A vehicle runs in layers. The inner loop keeps it stable, many times a second, on its own controller. Above it sits a layer that decides what to do: continue or abort, which mode, which manoeuvre next. That is the layer a session serves. Its answers feed your controller, which stays in charge of the vehicle.

  • Mission and planning

    Decides
    The route, the task, the next job
    Runs on
    Your planner, with /v1/decide calls when it needs a judgment
  • Decision layer

    Decides
    Which mode now, continue or abort, the next action
    Runs on
    A DecisionNode session comingcoming soon
  • Inner control loop

    Decides
    Attitude, speed, motors, brakes
    Runs on
    Your flight or motion controller, untouched
Where DecisionNode sits in a control stack
LayerDecidesRuns on
Mission and planningThe route, the task, the next jobYour planner, with /v1/decide calls when it needs a judgment
Decision layerWhich mode now, continue or abort, the next actionA DecisionNode session comingcoming soon
Inner control loopAttitude, speed, motors, brakesYour flight or motion controller, untouched

Never the sole means of control

DecisionNode returns decision outputs. It is not designed, tested or certified as the only control of any vehicle, aircraft or machine whose failure could cause harm. Keep your controller, its own limits and an independent fallback in place, and follow the aviation and product-safety rules that apply to you. See the Terms.

The loop#

POST /v1/sessionscomingcoming sooninstructions, state, questions, window 8

sent once, billed once

frames, each only what changedseq

  1. 7
  2. 8
  3. 9
  4. 10
  5. 11
  6. 12
  7. 13
  8. 14
  9. 15
  10. 16
  11. 17
  12. 18
  13. 19
window, last 8

replies, newest wins

    your controller

    mode

    continuereturn

    Takes the mode when the answer clears your threshold. It flies the vehicle, keeps its own limits and runs its own failsafe.

    A session opened once with instructions, state, questions and a window of 8 frames. Frames 15 to 19 stream in; each is answered on the fixed part plus the last 8 frames. Frames 17 and 18 arrive while 16 is being answered, so 18, the newest, is answered and the reply reports 17 as skipped. The reply to frame 19 says mode return with confidence 0.79 and abort 0.07, and your controller takes that mode.
    1. 1.Open a session once, with the mission brief as state and the questions every frame should answer.
    2. 2.On every tick, send only what changed as a frame: telemetry, a sensor reading, a camera frame.
    3. 3.Hand each reply to your controller as a request, not a command: it applies the mode when the answer clears your threshold and the controller's own limits allow it.
    4. 4.When no fresh reply has arrived by your deadline, the controller keeps its current mode or runs its own failsafe. Your code decides that on its own, every time.
    5. 5.End the session when the mission ends.

    Sessions has the full client in Python and TypeScript: one task streams frames, one reads replies and hands them on.

    Designing frames#

    • Put the constant part in the session. The brief, the rules and the geofence go in state once; frames carry readings.
    • Keep frames small. A frame holds at most 4,096 tokens or one image. Name the fields (battery, wind_mps) so the model knows what each value is.
    • Choose the window for the decision. A mode change that depends on a trend needs a few recent frames; a reflex check on the current frame needs one. Send "reset": true when the situation changes completely, such as after landing.
    • Ask only what this tick needs. List questions on a frame to answer some of them; each frame is billed for the questions it asks.

    What to build#

    • Drones and vehicles, civilian: mission supervision for survey, inspection and delivery flights; return, hold and land decisions; mode selection.
    • Simulators and games: the next manoeuvre or action from a stream of state.
    • Industrial monitoring: machine state to action, alert or hold, from sensor frames.
    • Long-running agents: stream tool results and get a typed next step, without resending the whole context each time.

    Civilian use only, outside a Defence Contract Addendum

    Without a signed Defence Contract Addendum, sessions serve civilian control loops only: the Acceptable Use Policy forbids weapons, harmful payloads and targeting. Under an addendum, its own rules apply, and what its Section 4 forbids stays forbidden in every case.

    previousGuardrailsnextPOST /v1/decide

    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. When to use a session
    2. A decision layer, never the controller
    3. The loop
    4. Designing frames
    5. What to build