RUN THIS FIRST · NO ACCOUNT
Start with a local Preflight example.
With Node.js 20+ installed, run the pinned public CLI against its bundled synthetic example:
npx --yes --package deltax-preflight@0.1.1 deltax-preflight-try --exampleThe command downloads the public package from npm, then checks the example locally. It needs no DeltaX account or API credential and executes no candidate action. Inspect its policy, evidence, admissible candidates, and result before adapting your own inputs.
TWO USEFUL LAYERS
Connect proposal, review, and execution deliberately.
Preflight answers whether candidates meet your explicit policy and evidence requirements. Evaluate answers which bounded review candidate is selected under its fixed profile—or returns a governed refusal. You can use either independently.
- Keep the trusted inputs outside the proposing agent.
Pass separate decision, policy, and evidence documents to
preflight_check. Bind evidence to the exact decision hash; a source label is not authentication. - Handle all four Preflight results.
REFUSEstops the path.EVIDENCE_REQUIREDneeds more evidence.PASS_SINGLEleaves one admissible candidate but grants no permission. OnlySELECTION_REQUIREDcreates the optional selection handoff. - Minimize the API request.
The optional bridge exports
buildEvaluateRequestandreconcileEvaluateResponse. Send only admissible review candidates with explicit objective and scalar context. The bridge excludes external candidates and does not copy the full policy or evidence documents into the request. - Submit from your server, then reconcile.
Your authorized transport supplies the token and stable idempotency key. Reconcile the direct Evaluate response. Reject any selection outside the admissible set, any unexpected contract version, or any true authority/effect flag.
- Store both records; retain execution control.
Keep the Preflight receipt, request identity, Evaluate result, and later human decision together. A new proposal requires fresh evidence. Your application separately authorizes and records any eventual action.
Preflight MCP makes no automatic Evaluate call. A human can resolve selection instead. The offline handoff demo uses a synthetic response; it is not evidence of hosted API access.
Read the bridge contract · MCP setup and tools · Explore application patterns
FREE ACCOUNT API
Make your first bounded review.
Your account connects to the 2026-09-16.beta2 evaluation contract. The account gateway handles authentication, the monthly allowance, and receipt history.
1. Create your Free account.
Create free account, then open API access and create a credential. Free accounts include 100 evaluations each calendar month, resetting at 00:00 UTC on the first day. No card is required.
2. Exchange your credential for a token.
Set DELTAX_CLIENT_ID and DELTAX_CLIENT_SECRET in your server environment. Send URL-encoded form data, not JSON:
curl --fail-with-body 'https://access-api.deltaxevaluate.com/api/builder/oauth/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode "client_id=$DELTAX_CLIENT_ID" \
--data-urlencode "client_secret=$DELTAX_CLIENT_SECRET" \
--data-urlencode 'scope=deltax:evaluate'Save the returned access_token as DELTAX_ACCESS_TOKEN. The response includes token_type: Bearer, expires_in: 900 (15 minutes), and scope: deltax:evaluate. Keep both the secret and token out of browser code and logs.
Standard Python clients work with their default headers. Human verification is required when creating your Free account, not on API requests. Python example and complete account API reference →
3. Send a bounded request.
# Download evaluation.json below and set DELTAX_ACCESS_TOKEN.
curl "https://access-api.deltaxevaluate.com/api/builder/evaluations" \
-H "Authorization: Bearer $DELTAX_ACCESS_TOKEN" \
-H 'X-DeltaX-API-Version: 2026-09-16.beta2' \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: my-first-review-001' \
--data @evaluation.jsonDownload the example request ↓The account gateway forwards this request to the evaluator’s POST /v1/evaluations route under the 2026-09-16.beta2 contract. Create a credential in your account first. Reusing the same key and body retrieves the same result without another evaluation.
Inspect the direct API example request
{
"profile_id": "deltax-hosted-bounded-review-evaluation-v1",
"objective": "Choose a bounded next step for a software release that is missing security evidence.",
"context": {
"evidence_kind": "synthetic_test",
"security_review_complete": false
},
"candidates": [
{
"candidate_id": "review-missing-evidence",
"semantic_class": "analyze",
"description": "Identify the missing security evidence before the release review.",
"operator_reported_support": 0.92
},
{
"candidate_id": "draft-checklist",
"semantic_class": "draft",
"description": "Draft a checklist for the reviewer to complete.",
"operator_reported_support": 0.75
},
{
"candidate_id": "publish-release",
"semantic_class": "external",
"description": "Publish the release immediately. This external option must remain shadow only.",
"operator_reported_support": 0.99
}
]
}This synthetic direct-API example includes an external shadow candidate. The Preflight bridge sends only admissible review candidates, so its request excludes that external option. Context labels and support are caller-reported, not verified facts.
Keep the contract explicit.
Use profile deltax-hosted-bounded-review-evaluation-v1. Submit 1–8 unique candidates with a class, description, and caller-reported support value.
analyze,compare,draft, andvalidateare bounded review classes.externalis shadow-only and cannot be selected for execution.- The fixed review profile does not infer arbitrary policies from your objective, context, or descriptions. Those fields bind the request record; supplied facts remain unverified.
Handle both outcomes.
if (result.outcome === "selected") {
// Persist the selected candidate and receipt for review.
} else if (result.outcome === "governed_noop_refusal") {
// Stop this path. No candidate was selected.
}
// Neither result grants permission to execute an action.Validate the response version, reason codes, gates, and authority flags. external_effect and execution-authority flags remain false. A receipt is an integrity reference, not a certification of safety or correctness.
The trace records the evaluation outcome and service checks; it is not a per-candidate ranking explanation. The top-level receipt_id identifies your account’s evaluation record. result.commercial_receipt.receipt_id identifies the evaluator’s receipt. Keep both; they identify different records.
Read the current account API limits, token format, response fields and errors →
Deliberate retries. Clear records.
Free accounts include 100 evaluations per UTC calendar month. Each request accepts 1–8 candidates and a body of at most 32,768 bytes. Keep a stable idempotency key for an unchanged request, retain its request and result together, and stop on a governed refusal.
If a response is uncertain, preserve the original body and key for reconciliation. Do not turn a timeout into a new action or silently switch to an unreviewed path.
Planned subscriptions include Builder with 1,000 evaluation traces per billing month, Teams with 10,000, and custom Enterprise pricing. One completed evaluation produces one trace; exact replay uses no additional allowance. View pricing and the Builder early-adopter offer. Paid signup remains disabled.
Wire it into the workflow you own.
Download the integration checklist to plan the handoff with your team. No email required.
Before the request
Authenticate the user in your application. Resolve their server-owned account and credentials. Keep secrets out of the browser. Translate your workflow into finite review candidates, and minimize sensitive context.
After the response
Validate the envelope and store the receipt before advancing your workflow. Show refusal as a distinct outcome. Evaluate selects an activity; your own reviewer or tool performs the analysis, comparison, drafting, or validation.
When a request fails
Treat authentication, quota, malformed requests, and uncertain upstream outcomes separately. Preserve the original request body and key. Do not turn a timeout into a second billable request or silently switch to an unreviewed action.
At the access boundary
DeltaX controls API admission. Your application controls execution permissions and approvals. The planned paid service will use Stripe for billing and DeltaX for access and usage; payment will never grant action authority.
See exactly where this fits in six workflows. Paid customer provisioning remains closed until testing is complete.
Public Preflight. Optional API access.
x402 is disabled and remains in development. Payment would not change the gates or execution authority. Stripe is the planned monthly billing path; paid signup is disabled.
Public Preflight MCP is available now for local policy checks, without a subscription. A remote Evaluate MCP integration over HTTPS is planned so compatible AI clients could use Evaluate without installing a local adapter. It is not available yet, and no release date is announced. Preflight does not call Evaluate automatically. See the release boundaries.
Current Free account API reference →
Current hosted beta2 contract summary →
Use the right version.
The hosted evaluator uses the 2026-09-16.beta2 review contract; Free accounts reach it through the authenticated account gateway. The existing downloadable developer kit is the pinned 2026-09-16.beta1 teaching snapshot; its OpenAPI file is not the Builder billing or account API.
Read the archived beta1 reference · View its pinned OpenAPI file
Explore the pinned beta1 teaching kit
Archived teaching materials, including the status recorded when the snapshot was packaged. Use the current beta2 summary and account quickstart above for a new integration.
Bounded evaluation only. A response does not execute or authorize a candidate and is not professional advice, certification, a safety determination, or proof of correctness.
Send your workflow, proposed candidates, and the boundary you need to preserve. We’ll help you assess the fit.
Discuss an integration