API base
All routes below are rooted at the public API base.
https://api.decionis.com/v1Decionis exposes a governed API surface for canonical decision evaluation, signal intake, policy encoding, execution handoff, downloadable validation packs, and Decision Dossier verification. Most integrations start with OTP-based onboarding, issue a mapping deployment bundle, persist the returned org API key, and then call /v1/protocol/evaluate-decision. /v1/action-gate/evaluate remains available as a higher-level wrapper when a surface needs a pre-modeled response envelope.
Use the API base for programmatic requests and the docs surface for reference material.
All routes below are rooted at the public API base.
https://api.decionis.com/v1Share this docs surface with partner engineering teams.
/docs/apiZero-config onboarding starts with public account verification, which returns the onboarding grant and org ID. Then a mapping session is created, and the deployment bundle returns the org API key, connector ID, webhook secret, webhook URL, and current policy version. The first governed partner call should then use POST /v1/protocol/evaluate-decision with that org API key. Live provider traffic can continue through the Decionis-issued webhook, while outbound decision callbacks use the first-class WEBHOOK integration provider.
Use the protocol route as the default decision surface once onboarding and deployment-bundle issuance are complete.
POST /v1/protocol/evaluate-decision is the primary route for new governed decision integrations, including the finance CFD workflow pack added for partner broker flows.
https://api.decionis.com/v1/protocol/evaluate-decisionPOST /v1/action-gate/evaluate stays available for adapters that want an action-gate-specific response envelope, but it is not the public canonical path for new finance decision use cases.
https://api.decionis.com/v1/action-gate/evaluateOTP verify -> signal mapping session -> deployment bundle -> store the org API key -> call POST /v1/protocol/evaluate-decision. The Decision Evaluation page includes the full Geminix Capital CFD request and response examples.
These are the primary reference areas for partner integrations.
API key posture, public routes, and webhook trust requirements.
Canonical /v1/protocol/evaluate-decision payloads, response fields, and wrapper route guidance.
Implementation order for teams adopting Decionis for the first time.
Sample-driven zero-config mapping sessions, required fields, and dry-run validation.
Inbound signal ingress plus outbound WEBHOOK callback configuration, trust headers, and retry posture.
Versioned policy bundles and execution dispatch artifact submission.
Org-scoped dossier retrieval, share-safe public verification, and portable artifacts.
Org-level evidence exports, manifest hashes, and downloadable regulator-facing bundles.
Shareable OpenAPI import path and verify route for Google Cloud and Vertex AI agent workflows.
| Area | Primary docs path |
|---|---|
| Auth | /docs/auth |
| Decision Evaluation | /docs/decision-evaluation |
| Quickstart | /docs/quickstart |
| Signal Mapping | /docs/signal-mapping |
| Webhooks | /docs/webhooks |
| Policy Encoding | /docs/policy-encoding |
| Decision Dossier | /docs/decision-dossier |
| Validation Packs | /docs/validation-packs |
| Vertex AI | /docs/vertex-ai-extension |
| Vertex Go-Live | /docs/vertex-go-live |
Use this file as the shareable import artifact for Vertex AI Extension or mirror it into your Google Cloud-controlled storage path.
https://decionis.com/openapi/decionis-vertex-extension-v1.yamlThis page keeps the current auth model and request flow explicit so partners do not assume Google-specific auth is already required in phase 1.
/docs/vertex-ai-extensionUse this page once the adapter call is working and you want a production-ready rollout checklist for proof, telemetry, metering, and rollback.
/docs/vertex-go-liveThis is the smallest useful route set for a partner integrating Decionis as a governed decision surface.
/v1/public/auth/register/startPublicRequest the sponsor email OTP that starts self-serve onboarding.
/v1/public/auth/register/verifyPublicVerify the OTP and receive the onboarding grant plus resolved org ID.
/v1/public/pilot/signal-mapping/sessionsOnboarding grant or org API keyCreate a sample-driven mapping session after OTP verify returns the onboarding grant.
curl -X POST https://api.decionis.com/v1/public/pilot/signal-mapping/sessions \
-H "Authorization: Bearer <onboarding_grant>" \
-H "Content-Type: application/json" \
-d '{
"org_id": "<org_uuid>"
}'/v1/public/pilot/signal-mapping/sessions/:sessionId/deployment-bundleOnboarding grant or org API keyIssue the org API key, connector ID, webhook secret, webhook URL, and policy version once the mapping baseline is ready.
curl -X POST https://api.decionis.com/v1/public/pilot/signal-mapping/sessions/<session_id>/deployment-bundle \
-H "Authorization: Bearer <onboarding_grant>" \
-H "Content-Type: application/json" \
-d '{
"provider_key": "partner_webhook",
"workflow_key": "decision_intake",
"source_label": "primary_stream"
}'/v1/orgs/:orgId/integrations/WEBHOOK/connectAPI keyCreate or update the standard outbound decision callback destination for a partner or internal receiver.
curl -X POST https://api.decionis.com/v1/orgs/<org_id>/integrations/WEBHOOK/connect \
-H "Authorization: Bearer dcy_org_xxx" \
-H "Content-Type: application/json" \
-d '{
"config": {
"endpoint_url": "https://partner.example.com/decionis/webhook",
"provider_name": "partner-webhook",
"workflow_id": "decision_intake"
},
"credentials": {
"webhook_secret": "whsec_partner_xxx"
},
"subscriptions": [
{
"event_name": "decisioning.v2.ran",
"is_enabled": true,
"filter": {}
}
]
}'/v1/protocol/evaluate-decisionAPI keyCanonical governed decision route for direct partner decision requests after the deployment bundle has issued the org API key.
curl -X POST https://api.decionis.com/v1/protocol/evaluate-decision -H "Authorization: Bearer dcy_org_xxx" -H "Idempotency-Key: cfd-order-001" -H "Content-Type: application/json" -d '{
"org_id": "<org_uuid>",
"decision_type": "CFD_TRADE_EXECUTION",
"amount": 18000,
"risk_score": 0.74,
"objective_profile": "risk_conservative",
"mode": "ENFORCEMENT",
"workflow_key": "cfd_trade_execution",
"vertical_pack": "cfd_trade_execution",
"context": {
"broker": "Geminix Capital",
"instrument": "EURUSD",
"side": "BUY",
"order_type": "MARKET",
"notional": 18000,
"leverage": 12,
"margin_available": 5400,
"stop_loss": 1.0715,
"take_profit": 1.094,
"time_in_force": "GTC",
"approval_path": ["desk_risk", "finance_control"],
"policy_version": "cfd_trade_execution-v1"
}
}'/v1/action-gate/evaluateAPI keyHigher-level wrapper for surfaces that want an action-gate envelope. Use /v1/protocol/evaluate-decision as the default public route when you are integrating a new decision workflow directly.
/v1/protocol/policies/bundlesAPI keySubmit a versioned policy bundle when the integration participates in policy authoring.
/v1/orgs/:orgId/audit-exportsAPI keyQueue a validation pack or downloadable regulator-evidence bundle once the workspace is live.
/v1/google-cloud/vertex/extensions/verifyAPI keyPhase 1 Vertex AI adapter route that normalizes agent intent, invokes Decionis Protocol, and returns a governed verdict plus Decision Dossier verification links.
curl -X POST https://api.decionis.com/v1/google-cloud/vertex/extensions/verify \
-H "Authorization: Bearer dcy_org_xxx" \
-H "Content-Type: application/json" \
-d '{
"org_id": "<org_uuid>",
"decision_type": "TRANSACTION_ROUTING",
"workflow_key": "finance_transaction_routing",
"system_of_record": "SAP",
"intent": {
"action_type": "CREATE_VENDOR_PAYMENT"
}
}'/v1/public/decision-dossiers/:dossierId/verify?sig=<signature>PublicVerify a Decision Dossier through a share-safe public route without exposing the full org-scoped artifact.
The docs surface should make failure posture explicit so integrators can recover without support.
| Status | Meaning | Expected action |
|---|---|---|
| 400 | Payload shape or required field mismatch | Fix request shape and retry. |
| 401 | Missing or invalid API credentials | Rotate or supply a valid API key. |
| 403 | Caller is outside org or route trust boundary | Use the correct org-scoped credential or public route. |
| 409 | Artifact version or connector state conflict | Resolve the latest state, then resubmit. |
| 422 | Mapping, policy, or dossier input is semantically invalid | Correct the payload content, not just the syntax. |