Decision API before software acts

Send one action. Get the decision record.

Decide returns yes, no, or review before your product, agent, queue, or internal tool changes state, with evidence, request_id, decision_id, and replay.

POST /api/decide 200 OK

Request

{
  "question": "Approve 15% annual-plan discount exception?",
  "mode": "single",
  "context": {
    "workflow": "pricing_exception",
    "margin_floor": "passed",
    "owner_rule": "verified"
  }
}

Response

{
  "verdict": "yes",
  "request_id": "req_9f3c",
  "decision_id": "dec_43b2",
  "evidence": ["MARGIN_FLOOR_OK", "OWNER_RULE_VERIFIED"],
  "action": "approve_discount"
}
Input context + guardrails Verdict yes / no / review Handle request_id Evidence replay trail Action proceed / route / block

Why now

Software is acting faster than teams can audit.

Agents, queues, billing systems, and internal tools now change state on their own. Decide gives each action a recorded verdict before it happens.

Problem

Actions outpace accountability

Rules live in prompts, spreadsheets, Slack threads, scripts, and manual approvals after the system has already moved.

Primitive

One recorded verdict

/api/decide turns context and guardrails into a decision record your system can store with the action.

Durability

Reasons compound

Every call creates replayable evidence. Over time, the decision record becomes the system of record for why software acted.

First wedge

Prove it first where mistakes are expensive.

Pricing exceptions are the first proof, not the whole category. They make the value obvious: revenue is at stake, ownership is clear, and the decision record must travel before CRM or billing changes.

Revenue impact

Discounts are decisions with margin risk.

A 15% exception can be fine or reckless depending on plan, term, owner, and margin floor. Decide makes the rule check explicit before the action lands.

Clear owner

RevOps already owns the boundary.

The first integration does not require a new department. It sits where decision policy, CRM metadata, and billing changes already meet.

Audit need

The answer must travel with the action.

request_id, decision_id, and evidence stay attached, so later review is a replay instead of a retrospective search.

Expansion path

The same contract gates any state change.

Once the decision record is trusted for pricing, the same pattern extends to access changes, eligibility, routing, payouts, reference applications, and execution gates.

Flagship proof run

Approve a pricing exception before CRM or billing changes.

This is the canonical buyer wedge: one high-friction software action, one owner, one guardrail set, one auditable decision record that downstream systems can trust.

Input

Discount exception

Approve 15% annual-plan discount for a growth account?

  • Owner: RevOps
  • System: CRM + billing
  • Action: approve / review / deny
Checks

Guardrails

Decide evaluates the context your software would otherwise scatter across policy docs and human review.

  • Margin floor passed
  • Owner rule verified
  • Evidence quality sufficient
Output

Decision record

{
  "verdict": "yes",
  "request_id": "req_9f3c",
  "decision_id": "dec_43b2",
  "evidence": ["MARGIN_FLOOR_OK", "OWNER_RULE_VERIFIED"],
  "action": "approve_discount"
}

Production integration

The whole wedge is one action boundary.

A customer does not need a new workflow portal to understand Decide. The first production proof is whether one existing software action can require a deterministic decision record before it changes state.

Trigger

Discount exception enters the system

Sales, RevOps, CRM, or billing emits a request that should not auto-apply without guardrails.

Context

Decide receives the facts

workflow, owner rule, margin floor, account segment, plan term, and source metadata become the payload.

Verdict

The API returns the decision

yes, no, review, or escalation maps to proceed, block, route, or hold.

Record

The handle follows the action

request_id, decision_id, hashes, and evidence are stored next to CRM or billing state.

Runtime contract

API contract. Stable result.

Decide should feel like infrastructure, not another dashboard. Send context and guardrails, then receive a decision record your system can store, replay, and attach to the action that follows.

Same input, same verdict Review is valid when confidence is low Replay exposes verdict drift
{
  "endpoint": "/api/decide",
  "request": {
    "question": "Approve 15% annual-plan discount exception?",
    "mode": "single",
    "context": {
      "workflow": "pricing_exception",
      "margin_floor": "passed",
      "owner_rule": "verified"
    }
  },
  "response": {
    "verdict": "yes",
    "request_id": "req_9f3c",
    "decision_id": "dec_43b2",
    "evidence": ["MARGIN_FLOOR_OK", "OWNER_RULE_VERIFIED"],
    "action": "approve_discount",
    "replay": "/api/decision/dec_43b2/replay"
  }
}
Decision API runtime path

Start with one production boundary.

Pick the moment where software needs a deterministic answer before it changes state. Production access is keyed, metered by monthly decision records, and scoped to live action boundaries.

Evaluate: sandbox + docs Starter: keyed API, 10k/month Team: 50k/month + launch support Enterprise: controls, uptime, procurement
Input context + guardrails Verdict yes / no / review Handle request_id Evidence replay trail Action proceed / route / block

Reference applications prove the runtime shape; production value comes from the API contract your system can call repeatedly.

Expansion path

Start narrow. Expand wide.

The API can gate any bounded software action. Start with one expensive boundary, then expand as teams trust the record.

01 · First boundary

Pricing exceptions

Approve, deny, or escalate discount and packaging decisions before billing or CRM state changes.

  • Margin floors and guardrails stay explicit
  • request_id travels with the decision
  • Evidence explains why the call passed
Run the proof
02 · Second boundary

Eligibility and routing gates

Refund, cancel, return, trial, access, and routing checks use the same verdict contract once one boundary is trusted.

  • Source-backed reference apps prove the pattern
  • Policy evidence stays attached
  • Stable remotes keep compatibility links alive
View reference assets
03 · Platform primitive

Execution gates

Agents, wallets, queues, and internal tools can require a Decide response before value moves or state changes.

  • Verdict gates the next action
  • Evidence travels into the audit record
  • Hash or memo packets can prove what ran
Read platform guide

Who buys first

Sell the boundary, not a new dashboard.

The first buyer already has a workflow where a wrong action costs money or trust. Decide wins when it becomes the small decision contract their existing system calls before that action happens.

RevOps

Pricing exceptions

Guard margin, owner rules, and packaging exceptions before CRM or billing changes land.

Budget signal: revenue quality.
Platform

Agent and queue gates

Require a verdict before automations execute, route, refund, grant access, or move value.

Budget signal: automation safety.
Security / Ops

Replayable audit trail

Keep a deterministic reason attached to the action, not buried in a chat thread or spreadsheet.

Budget signal: review and dispute cost.

What the endpoint returns.

The surface area stays small on purpose. Every integration gets the same durable fields instead of another bespoke workflow UI.

Verdict

A deterministic yes, no, review, or ranked outcome that downstream systems can route without inventing a new decision process.

Request ID

A stable handle for every call, so the decision can be replayed, inspected, stored, escalated, or attached to another system.

Evidence

Rules, source fields, rationale, and checks that explain why the verdict happened and what changed the outcome.

Replay

The same input can be tested again against the same contract, making QA, compliance review, and dispute response much less vague.

Adopt it at one boundary.

Start where a product, agent, queue, or internal tool already needs a clear verdict before action.

1

Define

Pick one decision boundary, required context, guardrails, and the output your software needs before it acts.

2

Call

Send the payload to /api/decide and receive a verdict, request_id, and evidence trail.

3

Attach

Store the response next to the action, audit trail, memo packet, reference application output, or execution record.

Use Decide before software changes state.

Run the sandbox, copy an integration path, then request production access for one action boundary.

Pricing for the Decision API

Simple model: run Evaluate for free validation, then buy a Production API tier by monthly decision records (10k -> 50k -> 200k) and live action boundaries. Annual billing saves 20%, and burst packs handle temporary spikes.

Evaluate (free)

Validate payloads before production purchase

Use docs and runtime references to test deterministic outputs and request-linked evidence fields.

Docs, reference contracts, and sandbox payload testing
No production API key issuance
Docs-first integration validation path
Production API tiers

Pick by records and boundaries

Choose by monthly decision records, then by how many production action boundaries need to require a Decide verdict. Enterprise stays contract-led when governance and procurement controls are strict.

Expansion tier
API Team
From $1,199 / month

Up to 50,000 records/month

Growth tier for multiple boundaries and faster launch support.

Higher throughput envelope than Starter
Up to 3 live action boundaries
Implementation support included
Single contract for runtime + rollout
API Enterprise
From $3,999 / month

Up to 200,000 records/month

For multi-team governance, procurement review, and strict enterprise controls.

Custom throughput/uptime envelope
Procurement/security package
Custom boundary scope
Multi-team governance and rollout planning

Plan contract snapshot

Compare decision scope, delivery model, rate-limit envelope, and expansion path before you request access. Default delivery is remote integration handoff (not on-site services).

Plan Price Delivery model Monthly decision scope Rate-limit envelope Overage / expansion Support + uptime terms
Evaluate ($0) $0 Sandbox + live demo validation only. No production usage. Shared demo limits; no contractual uptime terms. Move to API Starter, API Team, or API Enterprise for production. No production uptime terms.
API Starter (from $299/mo) From $299/mo Standalone keyed /api/decide access. Up to 10,000 decision records/month for one live boundary. Default Starter envelope: 20 req/min per API key (returned in x-ratelimit-*). Use burst packs (+10k/+25k/+50k) or upgrade to API Team. Self-serve runtime with docs-first implementation handoff.
API Team (from $1,199/mo) From $1,199/mo Quote-based API runtime with included implementation support. Up to 50,000 decision records/month across multiple boundaries. Higher contract-defined envelope than Starter. Use burst packs or move to Enterprise for stricter governance and larger envelopes. Launch support + contracted uptime terms + implementation support included.
API Enterprise (from $3,999/mo) From $3,999/mo Enterprise runtime with included rollout/governance support. Up to 200,000 decision records/month and/or strict multi-team controls. Custom throughput and uptime envelope by contract. Further custom tiers above 200k/month as volume and controls expand. Full procurement/security package and enterprise support model with implementation support included.

Need procurement or fit review? Book optional fit call.

FAQ

Can we start without a full platform rollout?

Yes. Choose API Starter for direct API runtime access, add burst packs for temporary spikes, or move to Team/Enterprise for larger envelopes and controls.

What happens right after payment?

You land on /payment/success with handoff steps, and receive kickoff confirmation by email. If missing after 10 minutes, check spam/promotions and contact [email protected].

Is Evaluate production-ready?

No. Evaluate is for runtime testing and payload validation only. Production usage starts with API Starter (or higher API tiers).

When does pricing move to custom scope?

Usually when monthly volume approaches or exceeds 200,000 decisions, when multi-team governance is required, or when procurement/compliance controls need custom contract terms.

Modeled estimate: Typical adoption starts with one product or internal workflow creating 3,000-5,000 decision records/month. Base-case review-time impact is often $6k-$9k/month before error-rate reduction. Production runtime starts on API Starter, API Team, or API Enterprise.

Decision ROI calculator

Use assumption-based decision-volume math before commercial commit so upside and spend stay explicit.

Decision ROI calculator

Estimate monthly review-time effect for one decision boundary and compare it against your selected plan cost.

Reference scenario (assumption-based): 5,000 records/month × 12 review minutes × 15% review-time reduction × $25/hour ≈ $3,750/month review-time impact before error-rate reduction.

Formula: hours saved = (records/month × avg review minutes ÷ 60) × reduction%; labor savings = hours saved × loaded hourly cost; net impact = labor savings - plan cost.

Hours saved / month 0 h
Labor savings / month $0
Plan cost in model $0
Net impact / month $0

Payback estimate appears after input values are applied.

Modeled estimate only. Use your baseline and measured decision-outcome deltas for procurement decisions.

Decision API Ops Console

Run intake-to-rollout operations from one place: commercial readiness checks, runtime telemetry, and launch actions.

Loading
Loading control-plane status…

Control Plane Readiness

These checks confirm intake delivery, checkout links, booking path, and confirmation channel for production rollout.

Ops access is linked to your signed-in Clerk account.

Runtime Telemetry

Use your x-metrics-token to load 24h runtime metrics and export the rollout scorecard snapshot.

No metrics loaded yet.
Load metrics to calculate delivery health.
Access Intakes (24h)
Access Delivery Success (24h)
Access Delivery Failures (24h)
Access Delivery Rate (24h)
Decision API Signals (24h)
MCP Signals (24h)
Events (1h)
Events (24h)
Events (7d)
Last Updated
Top event (24h) Count
Load metrics to view top events.

Executive Rollout Scorecard

Build a concise rollout brief from current readiness checks and telemetry. Use this for customer updates and weekly rollout readouts.

Generate report to produce an executive-ready scorecard.
No report generated yet.
Interactive API proof

Run the sandbox before you integrate.

Try the pricing-exception boundary, inspect the returned record, then copy cURL, JavaScript, or Python when the shape fits.

1 Test an action 2 Inspect the record 3 Copy integration
Request

Action boundary

POST /api/decide
Input shape
Return mode
Direct API single: ask one decision question and get yes, no, or review.

Sandbox calls are for integration design. Production keys add auth, quotas, telemetry, replay visibility, and commercial controls.

Try a boundary
Response

Decision record

Replayable
Integration handoff Latest request: not run yet
The sandbox uses shared demo limits. Production access adds keyed calls, quotas, telemetry, replay visibility, and commercial controls.

What makes it production-grade.

The value is not a prettier form. It is the repeatable contract between a decision, its evidence, and the action that follows.

Deterministic verdict

The same input returns the same verdict: yes, no, or review.

Replay handle

Every call gets a request id so teams can inspect, rerun, and attach outcomes.

Stateless input

Each request is scoped to current context, so old chat drift does not leak into production decisions.

Integration-ready

Response fields are compact and easy to route into products, automations, queues, agents, and MCP tools.

Reference proof apps

Reference applications show how the same primitive gates source-backed policy, pricing, and execution workflows.

From sandbox to production.

The playground proves the record shape. Production access adds the operating controls your system needs before it relies on Decide at a live action boundary.

01

Validate the contract

Run a real action boundary in the sandbox and confirm the fields your product will store: verdict, request_id, decision_id, evidence, and action.

Run sandbox
02

Attach the record

Map the response to the software action that follows, so downstream state changes keep the decision handle and evidence trail.

View proof artifact
03

Go live with controls

Request keyed access, choose the monthly record tier, and launch one production boundary with auth, quotas, telemetry, and replay visibility.

Request access
Production readiness

Security posture, runtime status, and API docs are part of the access path.

Decide should be easy to test publicly and boring to approve privately: one contract, visible controls, and documented incident paths.

Ready to gate one software action?

Start with one production boundary, one verdict contract, and one replayable evidence trail.

Reference applications · Stable remotes

Source-backed reference apps are a Decide proof surface.

Refund, cancel, return, and trial checks show how clients can consume deterministic verdicts with stable endpoints, source links, and replayable evidence.

Proof surface

Reference apps prove the API shape.

Registry links, MCP install URLs, REST endpoints, and source references remain on *.decide.fyi. This is a preserved reference application for the broader Decision API.

Refund reference app

refund.decide.fyi
Last policy sync (UTC): updated daily
Live

Stable Decide runtime for refund eligibility checks. Returns ALLOWED, DENIED, or UNKNOWN based on each vendor's official refund policy window.

100 vendors Stateless Updated daily Free / No auth
Visit

Cancel reference app

cancel.decide.fyi
Last policy sync (UTC): updated daily
Live

Stable Decide runtime for cancellation penalty checks. Returns FREE_CANCEL, PENALTY, or LOCKED based on each vendor's cancellation terms.

100 vendors Stateless ETF detection Free / No auth
Visit

Return reference app

return.decide.fyi
Last policy sync (UTC): updated daily
Live

Stable Decide runtime for return eligibility checks. Returns RETURNABLE, EXPIRED, or NON_RETURNABLE with return type and method.

100 vendors Stateless Return method Free / No auth
Visit

Trial reference app

trial.decide.fyi
Last policy sync (UTC): updated daily
Live

Stable Decide runtime for trial terms checks. Returns TRIAL_AVAILABLE or NO_TRIAL with trial length, card requirement, and auto-conversion status.

100 vendors Stateless Card & auto-convert Free / No auth
Visit

Stable demo + audit trail

Run the stable Decide reference remotes, inspect deterministic responses, and keep a scoped audit trail for QA and incident review.

Trust Suite: not run
Run Request
Run request to update output below.
Audit scope: this browser (guest). Sign in to scope trail and monitors to your account.
Response
Run a request to see output.
Audit Trail
Showing 0 of 0 runs.
Time (UTC) Reference app Mode Status Latency Req hash Actions
No runs yet. Run your first request.

Connect your agent

Add the stable Decide reference remotes to any MCP-compatible client.

Claude Desktop / Cursor / Windsurf
{
  "mcpServers": {
    "refund-decide": {
      "url": "https://refund.decide.fyi/api/mcp"
    },
    "cancel-decide": {
      "url": "https://cancel.decide.fyi/api/mcp"
    },
    "return-decide": {
      "url": "https://return.decide.fyi/api/mcp"
    },
    "trial-decide": {
      "url": "https://trial.decide.fyi/api/mcp"
    }
  }
}
JSON-RPC — tools/call
curl -X POST https://refund.decide.fyi/api/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "refund_eligibility",
      "arguments": {
        "vendor": "adobe",
        "days_since_purchase": 12,
        "region": "US",
        "plan": "individual"
      }
    }
  }'
REST API
curl -X POST https://refund.decide.fyi/api/v1/refund/eligibility \
  -H "Content-Type: application/json" \
  -d '{"vendor":"spotify","days_since_purchase":5,"region":"US","plan":"individual"}'

Built for policy automations

Deterministic outputs, no hidden state, and stable remotes for products that build on Decide.

Deterministic

Same input, same output. Every time. Fully auditable decisions your agent can cite.

Stateless

No sessions, no tokens, no stored data. Pure function over HTTP.

MCP Native

JSON-RPC 2.0 over HTTP POST. Works with Claude Desktop, Cursor, and any MCP client.

100 Vendors

Adobe, Netflix, Spotify, Microsoft 365, and 96 more. Updated daily via automated checks.

Keyed Runtime

Reference validation runs sandbox-first; production Decision API access uses explicit keys and commercial runtime controls.

Open Source

Full reference rules, source links, and server code on GitHub. Verify everything.

Run deterministic decisions with confidence.

Use the proof surfaces to validate the primitive, then integrate Decide where your workflow needs deterministic verdicts.