https://api.odei.ai
Single production origin for runtime, docs, and contracts.
Inspect the Runtime Contract Behind ODEI
api.odei.ai is the operational contract behind ODEI: onboarding intake, runtime health,
world-model projection, token telemetry, contract artifacts, and authenticated v2 routes. Use this page to
validate what already works, inspect the app preview contract, and bind agents to the governed query plane.
Create your personal AI agent with your own World Model, governance, and execution loop in under 5 minutes.
Use app.odei.ai to preview the founding-cohort onboarding runtime. Public announcement is coming soon, but the exact bootstrap,
pricing, intake, and provisioning contract is already live for technical review and controlled onboarding.
Fetch schema and contracts, then move into the signed v2 query plane.
Treat OpenAPI, x402, and the public v2 schema as machine-readable truth, then bind your client to the governed world-model and guardrail routes.
Docs shell is checked against the public runtime OpenAPI plus the v2 YAML contract.
Public reads, consent-gated writes, and authenticated v2 queries are documented as distinct trust lanes.
Everything here is written for smoke tests, SDKs, dashboards, and production operators.
Model the client by trust lane, not by page section.
Quickstart in 3 Calls
Validate runtime health, read the live digital world model, then inspect the founding-cohort intake lane. This gives you a clean integration baseline before you request or wire authenticated v2 access.
Verify runtime and contract
Confirm the public API is alive and that the machine-readable contract is fetchable.
curl -fsS https://api.odei.ai/health
curl -fsS https://api.odei.ai/openapi.json
Read the live digital world model
Use the zero-auth read lane before you reach for writes or governed v2 query flows.
curl -fsS https://api.odei.ai/api/worldmodel/live
curl -fsS https://api.odei.ai/api/site-metrics
Submit the founding cohort intake contract
Use the same structured intake contract as app.odei.ai, then preserve the returned intake ID as the first provisioning trail anchor.
curl -X POST https://api.odei.ai/api/intake \
-H "Content-Type: application/json" \
-d '{
"lane": "human",
"consent": true,
"name": "Anton",
"agentName": "Maya",
"role": "Founder",
"workspaceName": "Odei Founder Runtime",
"operatorScope": "Solo operator",
"telegram": "odei_ai",
"modelProvider": "Claude",
"modelAccess": "Bring my API key",
"governanceMode": "Approval-first",
"runtimeProfile": "founder-operator",
"activationPreference": "Review with me first",
"billingReadiness": "Invoice me for founding cohort setup",
"worldSources": ["Email", "Calendar", "Documents"],
"executionSurfaces": ["Draft + send", "Internal reports"],
"firstMission": "Prepare my weekly operating brief",
"useCase": "Runtime profile: founder-operator. Workspace: Odei Founder Runtime. Operator scope: Solo operator. Model provider: Claude. Model access: Bring my API key. Governance mode: Approval-first. Activation preference: Review with me first. Billing readiness: Invoice me for founding cohort setup. World sources: Email, Calendar, Documents. Execution surfaces: Draft + send, Internal reports. First mission: Prepare my weekly operating brief."
}'
/api/v2/world-model/*, /api/v2/guardrail/check) require
Authorization: Bearer ... or X-Api-Key. Only
/api/v2/health and /api/v2/schema are public. Treat anonymous runtime reads and
signed v2 requests as separate clients in your architecture.
Bootstrap Paths
ODEI now has two clean entry points. Humans inspect onboarding at app.odei.ai and, when
invited, submit the founding-cohort intake. Agents start from public contracts, then move into the governed
v2 lane with explicit auth and quota awareness.
1) Human onboarding preview
Open the app surface, inspect the runtime profile, pricing, activation boundary, and exact intake contract, then retain the returned intake ID if you are invited into the founding cohort lane. The app preview can render a provisioning capsule locally from the same submitted runtime contract.
1. Open https://app.odei.ai
2. Review runtime profile + model access
3. Inspect pricing + plan + auth + entitlement artifacts
4. Inspect activation states + expected outputs
5. Inspect the exact runtime package:
https://app.odei.ai/runtime-package.json?profile=founder-operator
6. Inspect the exact intake template or preload a sharable preview:
https://app.odei.ai/?profile=founder-operator&model=Claude&governance=Approval-first
7. If invited, submit intake and store the intake ID
8. If using the app surface, save the locally-rendered provisioning capsule
2) Agent bootstrap
Bind the graph model from public artifacts first, then switch to signed v2 requests for governed query and guardrail validation.
curl -fsS https://api.odei.ai/health
curl -fsS https://api.odei.ai/openapi.json
curl -fsS https://api.odei.ai/api/v2/schema
# then attach Bearer or X-Api-Key for v2 world-model routes
3) Commercial contract
Treat the x402 surface as machine-readable capability metadata. It describes the paid query plane but does not act as an auth grant.
curl -fsS https://api.odei.ai/.well-known/x402.json
# publish capability metadata
# keep payment + auth as separate concerns
Choose the First Runtime Wedge
The first ODEI cohort is intentionally narrow. Start with repeated high-value work where memory, governance, and execution immediately change the outcome. Pick the closest runtime profile first, then keep the initial World Model and mission boundary tight.
Founder operator
Best for inbox triage, investor follow-ups, and weekly operating briefs that already recur every week.
Profile: founder-operator
Model: Claude
Governance: Approval-first
First mission:
Prepare my weekly operating brief and surface follow-ups that matter.
Deal operator
Best for silent thread detection, counterparty timing, and next-touch preparation across email, calendar, and CRM.
Profile: deal-operator
Model: ChatGPT
Governance: Hybrid autonomy
First mission:
Track silent threads and draft the next follow-up with deal context loaded.
Research operator
Best for fixed-perimeter monitoring, World Model updates, and receipt-backed briefs when something materially changes.
Profile: research-operator
Model: Gemini
Governance: Approval-first
First mission:
Watch my research perimeter and issue a brief when the landscape moves.
Team runtime
Best for a small team that needs one shared World Model, approvals, and governed operator lanes before full rollout.
Profile: team-runtime
Model: Bring your own layer
Governance: Team approvals
First mission:
Stand up one shared runtime with the first operating cadence queued.
Workspace Ownership Boundary
ODEI should not hand the user another provider-locked chat surface. The first runtime needs to resolve as a bounded system: one World Model workspace, one governance boundary, one replaceable model layer, and one receipt surface that stays inspectable across sessions.
World Model workspace
The workspace contract makes the first memory boundary explicit so context, people, commitments, and artifacts stop resetting with every session.
Personal runtime:
- one bounded World Model namespace
- one accountable operator lane
- one reopenable provisioning trail
Governance + receipts
The runtime boundary is not just memory. Approvals, execution limits, and outcome receipts stay attached so the operator can inspect why work happened.
Stable boundary:
- governance profile
- receipt surface
- first mission queue
- operator review lane
Portable model layer
The model provider can change later. The workspace contract is what should remain stable when Claude, ChatGPT, Gemini, or another model sits on top.
Replaceable layer:
- model provider
- model access mode
- execution surfaces
- world sources stay governed
Governance Loop Contract
The ODEI loop should be inspectable as a runtime contract, not inferred from copy. Each profile resolves into one Observe → Decide → Act → Verify → Evolve sequence under one explicit approval posture.
Observe → Decide
The loop starts from bounded world sources, then applies priority, timing, and governance before action is queued.
Input boundary:
- world sources
- first mission
- runtime profile
- governance posture
Act → Verify
Execution is governed, then checked against receipts, approval outcomes, and state changes before the loop compounds.
Execution boundary:
- governed action lane
- approval mode
- receipt surface
- verification contract
Evolve
The World Model updates timing, preferences, and context so the next cycle starts from a better operator memory, not from zero.
Continuity boundary:
- same world model
- same governance loop
- same receipt trail
- replaceable model layer
Founding Cohort Onboarding Contract
The app preview is intentionally narrow. Humans bring one model lane, one small World Model boundary, and one mission that matters. The API returns a deterministic intake envelope immediately; the app surface then renders a provisioning capsule from the same runtime contract and the API publishes a canonical capsule endpoint instead of leaving the human with a vague waitlist entry.
What to bring
Keep the first runtime bounded so activation produces a governed operator instead of a loose assistant spec.
Bring:
- one model provider + access mode
- one governance mode
- three world sources to start
- one or two execution surfaces
- one mission with a real operating cadence
Shareable preview presets
Use query presets to open the same onboarding state in the app for demos, operator reviews, or agent-assisted handoff.
Founder:
https://app.odei.ai/?profile=founder-operator&model=Claude&governance=Approval-first
Deals:
https://app.odei.ai/?profile=deal-operator&model=ChatGPT&governance=Hybrid%20autonomy
Research:
https://app.odei.ai/?profile=research-operator&model=Gemini&governance=Approval-first
What activation returns
The post-submit output contract is already explicit even while public self-serve activation is still closed.
Immediate API response:
- intake_id
- lane
- source
- receivedAt
- consentAt
- summary
- normalized
- activation_package
- launch_checklist
- provisioning_trail.links.provisioningCapsule
- provisioning_trail
- provisioning_trail.links.firstMissionPack
- provisioning_trail.links.activationPackage
- provisioning_trail.links.launchChecklist
App preview:
- provisioning_capsule rendered from submitted runtime contract
- activation_package rendered from the same runtime contract
- launch_checklist rendered from the same runtime contract
Then:
- runtime_scope
- governance_boundary
- tool_map
- first_mission_queue
- receipt_surface
First Mission Pack
The first runtime should return a concrete governed outcome immediately: one mission queue, one first delivery, one receipt trail, and one success signal that proves the runtime is useful before broader rollout.
What it fixes
Without a first mission pack, onboarding yields a runtime boundary but not a clear first proof of value.
What it returns
- template label
- resolved first mission
- first delivery
- receipt expectations
- success signal
- loop contract
How to use it
Humans inspect it in the app before submit. Agents pin it as a bootstrap artifact alongside the intake template and provisioning schema.
Activation Package
The activation package is the deterministic contract for what actually gets activated after reviewed provisioning: workspace boundary, governance boundary, first delivery, receipt surface, entitlements, and billing mode.
What it fixes
Without an activation package, readiness can still feel abstract. This artifact makes the first runtime boundary explicit before public self-serve opens.
What it returns
- profile label
- workspace boundary
- governance boundary
- first delivery
- receipt surface
- included entitlements
- activation review sequence
- billing mode
How to use it
Humans inspect it in the app before submit. Agents pin it next to the first mission pack and provisioning schema so the activation boundary stays deterministic.
Launch Checklist
The launch checklist turns activation from a vague review state into an explicit operator gate: what is already captured, what defines the runtime boundary, and what still requires input or reviewed provisioning.
What it fixes
Without a checklist, reviewed provisioning still feels interpretive. This artifact makes launch readiness operational before self-serve activation opens.
What it returns
- profile label
- review state
- counts by captured / defined / pending_input / pending_review
- checklist items with summary + next step
- explicit operator gate before activation
How to use it
Humans inspect it in the app before submit. Agents pin it next to the activation package and first mission pack so launch readiness stays deterministic.
Founding Cohort Operating Contract
Humans, operators, and agents should read the same launch boundary. This lane is intentionally narrow, invite-first, and built around repeatable work where governed agency changes the outcome immediately.
Ideal first operator
- founder operator
- deal operator
- research operator
- small team preparing one shared runtime
Not for yet
- casual experimentation without a real mission
- public self-serve activation before review
- broad team rollout before one runtime is proven
What to prepare
- one model lane
- three world sources or fewer
- one governance mode
- one execution boundary
- one mission with a real cadence
Activation cadence
Immediate:
- deterministic intake envelope returned immediately
First operator review window:
- runtime scoping
- governance review
After reviewed provisioning:
- activation readiness
- first mission queue
- receipt surface
What “Under 5 Minutes” Actually Means
The promise is intentionally narrow. ODEI does not claim a fully expanded runtime in five minutes. It guarantees that the first governed runtime boundary becomes explicit, shareable, and machine-readable immediately.
1) Shareable preview state
The app encodes model lane, governance mode, world sources, execution surfaces, and first mission into a reusable preview URL.
profile + model + governance
world sources + execution surfaces
first mission
= reusable preview URL
2) Exact intake contract
The intake payload is fully visible before submission. Humans can inspect it in the app; agents can POST the same contract directly.
Preview app state
→ inspect exact JSON payload
→ copy or download contract
→ submit to /api/intake
3) Deterministic intake envelope
The API response is intentionally deterministic so downstream tooling can anchor the provisioning trail without ambiguity while still having enough runtime context to continue cleanly.
{
"ok": true,
"id": "intake_...",
"intakeId": "intake_...",
"lane": "human",
"source": "app_odei_ai",
"receivedAt": "2026-03-17T...",
"consentAt": "2026-03-17T...",
"summary": {
"runtimeProfile": "founder-operator",
"modelProvider": "Claude",
"governanceMode": "Approval-first"
},
"normalized": {
"workspaceName": "Odei Founder Runtime",
"operatorScope": "Solo operator"
},
"provisioningTrail": {
"currentState": "intake_received",
"nextSteps": ["runtime_scoping", "governance_review", "tool_mapping", "first_mission_queue"],
"links": {
"intakeStatus": "https://api.odei.ai/api/intake/intake_...",
"provisioningCapsule": "https://api.odei.ai/api/intake/intake_.../capsule",
"resumeApp": "https://app.odei.ai/?intake=intake_...",
"authState": "https://app.odei.ai/auth-state.json",
"entitlementsState": "https://app.odei.ai/entitlements-state.json",
"activationState": "https://app.odei.ai/activation-state.json",
"activationPackage": "https://app.odei.ai/activation-package.json?profile=founder-operator",
"launchChecklist": "https://app.odei.ai/launch-checklist.json?profile=founder-operator",
"firstMissionPack": "https://app.odei.ai/first-mission-pack.json?profile=founder-operator",
"billingContract": "https://app.odei.ai/billing-contract.json"
}
},
"activationPackage": {
"profileLabel": "Founder operator",
"workspaceBoundary": "Odei Founder Runtime · Solo operator",
"governanceBoundary": "Approval-first · Review with me first",
"firstDelivery": "A governed operating brief with the real next actions already queued.",
"receiptSurface": "Signals, draft actions, approval requests, and outcome checks attached to the brief."
},
"launchChecklist": {
"profileLabel": "Founder operator",
"reviewState": "pending_reviewed_provisioning",
"counts": { "captured": 2, "defined": 5, "pendingInput": 0, "pendingReview": 1 },
"items": [{ "id": "operator_identity", "state": "captured" }]
}
}
4) App-rendered provisioning capsule
The app renders the provisioning capsule from the same submitted runtime contract, and GET /api/intake/{intakeId}/capsule keeps the canonical handoff artifact live after submit.
API envelope received
→ app renders provisioning capsule
→ canonical capsule endpoint stays live
→ render launch checklist
→ runtime scoping
→ governance review
→ first mission queue
Resume + Intake Status Contract
Provisioning cannot depend on one browser session. Every intake ID now has a canonical status endpoint, a canonical provisioning capsule endpoint, and an app resume URL so humans and agents can reopen the same provisioning trail later. The app also keeps a device-local list of recent trails so the operator can continue from the same browser without losing continuity.
Status lookup
Use the intake ID returned by POST /api/intake to reopen the current provisioning state from the live API boundary.
GET /api/intake/{intakeId}
{
"ok": true,
"intakeId": "intake_...",
"lane": "human",
"source": "app_odei_ai",
"receivedAt": "2026-03-18T...",
"consentAt": "2026-03-18T...",
"summary": { ... },
"normalized": { ... },
"provisioningTrail": {
"currentState": "intake_received",
"nextSteps": ["runtime_scoping", "governance_review", "tool_mapping", "first_mission_queue"],
"links": {
"intakeStatus": "https://api.odei.ai/api/intake/intake_...",
"provisioningCapsule": "https://api.odei.ai/api/intake/intake_.../capsule",
"resumeApp": "https://app.odei.ai/?intake=intake_...",
"authState": "https://app.odei.ai/auth-state.json",
"entitlementsState": "https://app.odei.ai/entitlements-state.json",
"activationState": "https://app.odei.ai/activation-state.json",
"activationPackage": "https://app.odei.ai/activation-package.json?profile=founder-operator",
"launchChecklist": "https://app.odei.ai/launch-checklist.json?profile=founder-operator",
"firstMissionPack": "https://app.odei.ai/first-mission-pack.json?profile=founder-operator",
"billingContract": "https://app.odei.ai/billing-contract.json"
}
},
"activationPackage": { ... },
"launchChecklist": { ... },
"activation": {
"reviewState": "pending_founder_cohort_review",
"activationState": "intake_received",
"publicLaunch": "not_yet_public",
"selfServeActivation": "closed"
},
"readiness": {
"auth": {
"state": "operator_identity_captured",
"next": "verify operator details",
"note": "Runtime credentials are issued only after reviewed provisioning."
},
"entitlements": {
"state": "preview_only_until_activation",
"next": "grant founding cohort runtime entitlements",
"note": "Workspace, governance, and receipt surface activate after review."
},
"billing": {
"state": "billing_readiness_captured",
"next": "review setup scope and runtime plan",
"note": "Public self-serve checkout remains closed until launch."
},
"activation": {
"state": "pending_reviewed_provisioning",
"next": "runtime scoping -> governance review -> first mission queue",
"note": "Self-serve activation remains closed until reviewed provisioning completes."
}
}
}
App resume path
The same intake ID can reopen the provisioning capsule directly in app.odei.ai without resubmitting the contract.
https://app.odei.ai/?intake=intake_...
Resume flow:
intake ID
→ GET /api/intake/{intakeId}
→ GET /api/intake/{intakeId}/capsule
→ render provisioning capsule
→ render activation package
→ render launch checklist
→ render readiness states
→ continue runtime scoping
The resume payload now carries explicit readiness lanes for auth, entitlements, billing, and activation so humans and agents can reopen the exact same business boundary.
Launch Status Artifact
Humans and agents should read the same launch boundary. The app preview is live, the founding-cohort intake lane is open, and public self-serve activation is still closed.
What is live now
- app preview
- bootstrap, pricing, provisioning, and activation artifacts
- founding-cohort intake
- deterministic intake envelope
What is intentionally closed
- public self-serve activation
- public billing checkout
- one-click runtime launch from Agent Builder
Canonical read path
Pin the machine-readable launch state together with bootstrap, pricing, and activation artifacts so operators, builders, and agents all reason from the same commercial boundary.
Ready-Made Onboarding Payloads
These presets mirror the preview links in app.odei.ai. Humans can load the shareable app URL; agents can submit the same contract directly to /api/intake.
Founder operator preset
Use this when the first runtime should manage inbox triage, operating briefs, and priority follow-ups.
Preview:
https://app.odei.ai/?profile=founder-operator&model=Claude&governance=Approval-first
curl -X POST https://api.odei.ai/api/intake \
-H "Content-Type: application/json" \
-d '{
"lane": "human",
"consent": true,
"name": "Founder",
"agentName": "Maya",
"role": "Founder",
"workspaceName": "Odei Founder Runtime",
"operatorScope": "Solo operator",
"telegram": "odei_ai",
"modelProvider": "Claude",
"modelAccess": "Bring my API key",
"governanceMode": "Approval-first",
"runtimeProfile": "founder-operator",
"activationPreference": "Review with me first",
"billingReadiness": "Invoice me for founding cohort setup",
"worldSources": ["Email", "Calendar", "Documents"],
"executionSurfaces": ["Draft + send", "Internal reports"],
"firstMission": "Prepare my weekly operating brief",
"useCase": "Prepare my weekly operating brief from email, calendar, and documents while keeping follow-ups governed."
}'
Deal operator preset
Use this when the first runtime should track conversations, silent threads, and governed investor or client follow-ups.
Preview:
https://app.odei.ai/?profile=deal-operator&model=ChatGPT&governance=Hybrid%20autonomy
curl -X POST https://api.odei.ai/api/intake \
-H "Content-Type: application/json" \
-d '{
"lane": "human",
"consent": true,
"name": "Operator",
"agentName": "Atlas",
"role": "Deal operator",
"workspaceName": "Investor Runtime",
"operatorScope": "Solo operator",
"telegram": "odei_ai",
"modelProvider": "ChatGPT",
"modelAccess": "Use ODEI credits",
"governanceMode": "Hybrid autonomy",
"runtimeProfile": "deal-operator",
"activationPreference": "Queue when ready",
"billingReadiness": "Use self-serve billing when live",
"worldSources": ["Email", "Calendar", "CRM"],
"executionSurfaces": ["Draft + send", "CRM updates"],
"firstMission": "Track silent investor threads and draft the next follow-up",
"useCase": "Track silent investor threads, preserve deal context, and draft the next governed follow-up."
}'
Immediate response envelope
The direct API response is deterministic and provisioning-ready. The app preview renders the provisioning capsule after this envelope lands, but the API already returns the boundary humans and agents need.
{
"ok": true,
"id": "intake_...",
"intakeId": "intake_...",
"lane": "human",
"source": "app_odei_ai",
"receivedAt": "2026-03-17T...",
"consentAt": "2026-03-17T...",
"summary": {
"runtimeProfile": "founder-operator",
"modelProvider": "Claude",
"governanceMode": "Approval-first"
},
"normalized": {
"workspaceName": "Odei Founder Runtime",
"operatorScope": "Solo operator"
},
"provisioningTrail": {
"currentState": "intake_received",
"nextSteps": ["runtime_scoping", "governance_review", "tool_mapping", "first_mission_queue"],
"links": {
"intakeStatus": "https://api.odei.ai/api/intake/intake_...",
"resumeApp": "https://app.odei.ai/?intake=intake_...",
"authState": "https://app.odei.ai/auth-state.json",
"entitlementsState": "https://app.odei.ai/entitlements-state.json",
"activationState": "https://app.odei.ai/activation-state.json",
"billingContract": "https://app.odei.ai/billing-contract.json"
}
},
"readiness": {
"auth": { "state": "operator_identity_captured", "next": "verify operator details", "note": "Runtime credentials are issued only after reviewed provisioning." },
"entitlements": { "state": "preview_only_until_activation", "next": "grant founding cohort runtime entitlements", "note": "Workspace, governance, and receipt surface activate after review." },
"billing": { "state": "billing_readiness_captured", "next": "review setup scope and runtime plan", "note": "Public self-serve checkout remains closed until launch." },
"activation": { "state": "pending_reviewed_provisioning", "next": "runtime scoping -> governance review -> first mission queue", "note": "Self-serve activation remains closed until reviewed provisioning completes." }
}
}
API Surface Map
ODEI exposes multiple lanes with different trust, auth, and operational constraints. Build your SDK and monitoring around these lanes so the integration stays clean as the runtime expands.
Auth and Governance Matrix
Every lane has a different operational contract. Treat auth, rate limits, and governance posture as part of the domain model, not as an afterthought in the UI.
| Lane | Auth model | Primary use | Guardrails |
|---|---|---|---|
| Public runtime | None | Health, projection, context, token telemetry | Read routes, server-side sanitization |
| Intake/write | None + explicit consent payload | Onboarding submissions and capsule metadata | 20 writes/min/IP + payload validation |
| Digital World Model API v2 | Bearer JWT or X-Api-Key | Structured graph query and constitutional checks | Auth middleware + daily quota counters |
| x402 contract metadata | Public JSON artifact | Payment capability discovery for clients | Declarative manifest (/.well-known/x402.json) |
Trust, Failure, and Retry Contract
Production clients should treat anonymous reads and signed v2 requests as separate modes. Build around the real response envelopes below, not around optimistic assumptions.
Anonymous health and schema reads are safe entry points.
Humans and agents can start with public runtime reads. These routes are the correct place to confirm liveness, schema shape, and contract reachability before any signed call.
curl -fsS https://api.odei.ai/health
curl -fsS https://api.odei.ai/api/v2/health
curl -fsS https://api.odei.ai/api/v2/schema
Signed v2 routes fail closed with a deterministic 401 envelope.
Unauthenticated calls to governed world-model and guardrail routes return the same explicit unauthorized contract. Handle this as a normal state transition, not as an ambiguous server fault.
{
"ok": false,
"error": "Missing authentication credential",
"code": "UNAUTHORIZED"
}
Recommended order for an agent client.
- Read
/healthand/openapi.json. - Fetch
/api/v2/schemato bind the graph model. - Store auth material outside the anonymous client.
- Use signed requests for
/api/v2/world-model/*and/api/v2/guardrail/check. - Treat
/.well-known/x402.jsonas a published artifact, not as an auth grant.
Activation and Entitlements Contract
Intake is not the end of onboarding. The activation contract defines the exact post-submit states, expected outputs, and entitlements that appear before and after the first personal runtime is activated.
Lifecycle states
Use these states to reason about the business and technical boundary after intake.
preview
→ intake_received
→ runtime_scoping
→ governance_review
→ activation_ready
What the user receives
Every successful cohort submit has explicit outputs instead of ambiguous “we will contact you” behavior. The API response and the app-rendered capsule are separate but aligned artifacts.
Immediate API response: intake_id, lane, source, receivedAt, consentAt, summary, normalized, provisioning_trail
App preview: provisioning_capsule rendered from submitted runtime contract
Operator review: runtime_scope, governance_boundary, tool_map
Activation: agent_runtime, first_mission_queue, receipt_surface
Artifacts
Keep the activation artifact pinned with bootstrap, pricing, the billing contract, provisioning, and the intake template so humans and agents read the same business contract.
Auth, Plans, and Billing Boundary
The founding cohort already has a machine-readable account boundary. Preview access is public, but activation, billing, and entitlements still resolve through reviewed provisioning instead of open self-serve checkout.
Current auth state
Read this as the current commercial boundary for humans and agents that want to bootstrap against ODEI.
preview = public
founding_cohort_intake = open
public_signup = closed
public_billing_checkout = closed
self_serve_activation = closed
Plan shapes
Commercial shape is already fixed even before pricing amounts are public. The app exposes the plan geometry separately from the launch state, and the billing contract fixes the reviewed boundary before self-serve opens.
Personal Runtime
→ setup
→ monthly runtime
→ metered execution
Team Runtime
→ custom setup
→ team runtime
→ metered execution
Artifacts
Pin auth, plans, entitlements, activation, pricing, the billing contract, and the intake template together so every actor reads the same provisioning boundary.
Provisioning Capsule Contract
After a successful founding-cohort onboarding submit, app.odei.ai generates a provisioning capsule. This binds the returned
intake ID to the exact runtime contract that should become the first governed agent runtime.
Capsule role
Use the capsule as the handoff artifact between human onboarding, runtime scoping, and downstream agent/bootstrap tooling. It is generated by the app surface after the intake response lands.
{
"artifact": "odei.agent.provisioning-capsule",
"version": "2026-03-17",
"intake": {
"intakeId": "intake_...",
"status": "intake_received"
},
"runtime": {
"modelProvider": "Claude",
"runtimeProfile": "founder-operator",
"worldSources": ["Email", "Calendar", "Documents"]
}
}
Boundary rule
The provisioning capsule is a handoff contract, not an auth grant and not proof that runtime activation is complete.
Human onboarding submit
→ intake ID returned
→ provisioning capsule generated
→ runtime scoping + governance review
→ first mission queue
Artifacts
Keep bootstrap, pricing, the billing contract, provisioning schema, and the intake template pinned together so humans and agents read the same onboarding boundary.
Endpoint Reference
Search by route, method, lane, auth model, or tag. The catalog below is grouped by trust lane so the reference scales as ODEI adds more public, governed, and machine-contract surfaces.
Reference Flows
Keep these flows in CI smoke tests so contract regressions are detected before deployment.
1) Runtime Smoke
Verify server liveness and public contract endpoint.
curl -fsS https://api.odei.ai/health
curl -fsS https://api.odei.ai/openapi.json
2) Intake Registration
Submit consented lane onboarding payload and capture intake ID.
curl -X POST https://api.odei.ai/api/intake \
-H "Content-Type: application/json" \
-d '{"lane":"human","consent":true,"name":"Operator","role":"PM","telegram":"odei_ops","useCase":"Daily planning with graph context"}'
3) V2 Query/Auth
Execute authenticated graph query on v2 lane.
curl -X POST https://api.odei.ai/api/v2/world-model/query \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
-d '{"search":"guardrail","limit":5}'
Operational Contracts and Policy Links
Production integrations should pin these documents in your build and test pipeline.