{"openapi":"3.1.0","info":{"title":"CAIN Studio Platform Gateway","description":"Subscription-gated reverse proxy in front of the platform's 23 product microservices.","version":"1.0.0"},"paths":{"/audit/journey":{"get":{"tags":["CAIN 5 Journey Audit","customer-journey"],"summary":"Full Journey Audit","description":"Run the complete customer journey audit.","operationId":"full_journey_audit_audit_journey_get","parameters":[{"name":"api_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/audit/journey/{journey}":{"get":{"tags":["CAIN 5 Journey Audit","customer-journey"],"summary":"Journey Audit","description":"Audit a specific journey.","operationId":"journey_audit_audit_journey__journey__get","parameters":[{"name":"journey","in":"path","required":true,"schema":{"type":"string","title":"Journey"}},{"name":"api_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/audit/metrics":{"get":{"tags":["CAIN 5 Journey Audit","customer-journey"],"summary":"Performance Metrics","description":"Get TTTP and TTTTP metrics.","operationId":"performance_metrics_audit_metrics_get","parameters":[{"name":"api_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/scan/tool":{"post":{"tags":["Subdomains & Specialized Engines"],"summary":"Scan Tool Endpoint","description":"Scans an MCP tool definition for prompt injection, leaked credentials, and unconstrained parameters.","operationId":"scan_tool_endpoint_scan_tool_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScanToolRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/scan/tools":{"post":{"tags":["Subdomains & Specialized Engines"],"summary":"Scan Tools Endpoint","description":"Scans a batch of MCP tool definitions.","operationId":"scan_tools_endpoint_scan_tools_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScanListRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/mcpsecurityscanner/health":{"get":{"tags":["Subdomains & Specialized Engines"],"summary":"Mcp Scanner Health","operationId":"mcp_scanner_health_mcpsecurityscanner_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/verify/equivalence":{"post":{"tags":["Subdomains & Specialized Engines"],"summary":"Verify Equivalence","description":"Formally proves whether two pure Python function versions produce identical output for all inputs using Z3 SMT solving.","operationId":"verify_equivalence_v1_verify_equivalence_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EquivalenceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Verify Equivalence V1 Verify Equivalence Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/verify/contract":{"post":{"tags":["Subdomains & Specialized Engines"],"summary":"Verify Contract","description":"Formally proves whether a function satisfies a precondition -> postcondition contract for all inputs using Z3 SMT solving.","operationId":"verify_contract_v1_verify_contract_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContractRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Verify Contract V1 Verify Contract Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/verifygate/health":{"get":{"tags":["Subdomains & Specialized Engines"],"summary":"Verifygate Health","operationId":"verifygate_health_verifygate_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Verifygate Health Verifygate Health Get"}}}}}}},"/collect":{"post":{"tags":["Subdomains & Specialized Engines"],"summary":"Collect Analytics Event","description":"Collects edge privacy-preserving analytics beacons.","operationId":"collect_analytics_event_collect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/event":{"post":{"tags":["Subdomains & Specialized Engines"],"summary":"Collect Analytics Event","description":"Collects edge privacy-preserving analytics beacons.","operationId":"collect_analytics_event_api_event_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/analytics/health":{"get":{"tags":["Subdomains & Specialized Engines"],"summary":"Analytics Health","operationId":"analytics_health_analytics_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/live-cluster/status":{"get":{"tags":["CAIN-42 Live Multi-Region Cluster","CAIN-42 Live Multi-Region Cluster"],"summary":"Live Status","operationId":"live_status_api_v1_live_cluster_status_get","parameters":[{"name":"cluster","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cluster"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/live-cluster/resilience":{"get":{"tags":["CAIN-42 Live Multi-Region Cluster","CAIN-42 Live Multi-Region Cluster"],"summary":"Live Resilience","operationId":"live_resilience_api_v1_live_cluster_resilience_get","parameters":[{"name":"cluster","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cluster"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/live-cluster/health":{"get":{"tags":["CAIN-42 Live Multi-Region Cluster","CAIN-42 Live Multi-Region Cluster"],"summary":"Live Health","operationId":"live_health_api_v1_live_cluster_health_get","parameters":[{"name":"cluster","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cluster"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/live-cluster/membership":{"get":{"tags":["CAIN-42 Live Multi-Region Cluster","CAIN-42 Live Multi-Region Cluster"],"summary":"Live Membership","description":"The exact membership configuration the replicas were started with\n(member ids + Ed25519 public keys), its hash, and whether every reachable\nreplica reports that same hash. Browsers verify certificates against it.","operationId":"live_membership_api_v1_live_cluster_membership_get","parameters":[{"name":"cluster","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cluster"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/live-cluster/qc/{seq}":{"get":{"tags":["CAIN-42 Live Multi-Region Cluster","CAIN-42 Live Multi-Region Cluster"],"summary":"Live Qc","operationId":"live_qc_api_v1_live_cluster_qc__seq__get","parameters":[{"name":"seq","in":"path","required":true,"schema":{"type":"integer","title":"Seq"}},{"name":"node","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node"}},{"name":"cluster","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cluster"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authority/show/{zod_id}":{"get":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority Show","operationId":"authority_show_api_v1_authority_show__zod_id__get","parameters":[{"name":"zod_id","in":"path","required":true,"schema":{"type":"string","title":"Zod Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authority/verify":{"post":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority Verify","operationId":"authority_verify_api_v1_authority_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/routers__authority__VerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authority/history/{zod_id}":{"get":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority History","operationId":"authority_history_api_v1_authority_history__zod_id__get","parameters":[{"name":"zod_id","in":"path","required":true,"schema":{"type":"string","title":"Zod Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authority/diff/{zod_id}":{"get":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority Diff","operationId":"authority_diff_api_v1_authority_diff__zod_id__get","parameters":[{"name":"zod_id","in":"path","required":true,"schema":{"type":"string","title":"Zod Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authority/lineage/{zod_id}":{"get":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority Lineage","operationId":"authority_lineage_api_v1_authority_lineage__zod_id__get","parameters":[{"name":"zod_id","in":"path","required":true,"schema":{"type":"string","title":"Zod Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authority/quorum":{"get":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority Quorum","operationId":"authority_quorum_api_v1_authority_quorum_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/authority/conflicts/{zod_id}":{"get":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority Conflicts","operationId":"authority_conflicts_api_v1_authority_conflicts__zod_id__get","parameters":[{"name":"zod_id","in":"path","required":true,"schema":{"type":"string","title":"Zod Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authority/recovery/{zod_id}":{"get":{"tags":["CAIN-42 Authoritative Control Plane","authority"],"summary":"Authority Recovery","operationId":"authority_recovery_api_v1_authority_recovery__zod_id__get","parameters":[{"name":"zod_id","in":"path","required":true,"schema":{"type":"string","title":"Zod Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/mcp":{"get":{"summary":"Mcp Endpoint","description":"Handle MCP requests - route to MCP server at /mcp/ with proper path.","operationId":"mcp_endpoint_mcp_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"summary":"Mcp Endpoint","description":"Handle MCP requests - route to MCP server at /mcp/ with proper path.","operationId":"mcp_endpoint_mcp_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Mcp Endpoint","description":"Handle MCP requests - route to MCP server at /mcp/ with proper path.","operationId":"mcp_endpoint_mcp_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/mcp/docs":{"get":{"summary":"Mcp Docs","description":"Redirect /mcp/docs to the documentation.","operationId":"mcp_docs_mcp_docs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/lab/save":{"post":{"summary":"Save Session","description":"Saves a Prompt Lab session.\n\n2026-09-27: the id came straight from the request body into the file path, so an anonymous caller could write a\n.json file anywhere the gateway can write (\"../../...\"), including over the signed claims registry. The id is now\na fixed character set, the file is resolved and must stay inside lab_sessions/, and the body is size-capped.","operationId":"save_session_lab_save_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Session"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/lab/load/{session_id}":{"get":{"summary":"Load Session","description":"Loads a Prompt Lab session.","operationId":"load_session_lab_load__session_id__get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/metrics":{"get":{"summary":"Metrics","operationId":"metrics_metrics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/health":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Health","description":"Health check for CAIN Private.","operationId":"api_health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Health","operationId":"health_health_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/services":{"get":{"summary":"List Services","operationId":"list_services_services_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/catalog":{"get":{"summary":"Catalog","operationId":"catalog_catalog_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Catalog","operationId":"catalog_catalog_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/pricing":{"get":{"summary":"Pricing","description":"The actual rate card, publicly readable with no API key. Serves HTML to browsers, JSON to API callers.","operationId":"pricing_pricing_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Pricing","description":"The actual rate card, publicly readable with no API key. Serves HTML to browsers, JSON to API callers.","operationId":"pricing_pricing_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/":{"get":{"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/terms":{"get":{"summary":"Terms","operationId":"terms_terms_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Terms","operationId":"terms_terms_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/privacy":{"get":{"summary":"Privacy","operationId":"privacy_privacy_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Privacy","operationId":"privacy_privacy_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/refund":{"get":{"summary":"Refund","operationId":"refund_refund_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Refund","operationId":"refund_refund_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/downloads/cain_sdk-2.0.0-py3-none-any.whl":{"get":{"summary":"Sdk Wheel","operationId":"sdk_wheel_downloads_cain_sdk_2_0_0_py3_none_any_whl_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Sdk Wheel","operationId":"sdk_wheel_downloads_cain_sdk_2_0_0_py3_none_any_whl_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/login":{"get":{"summary":"Login","operationId":"login_login_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Login","operationId":"login_login_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/signup":{"get":{"summary":"Signup","operationId":"signup_signup_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Signup","operationId":"signup_signup_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/evidence/ingest":{"post":{"summary":"Ingest Evidence","description":"Ingest external evidence into the evidence store and WORM transparency log.\nOperator-only: until 2026-09-23 it was public on cainstudio.online and mcpgate.online,\nso anyone could write entries into the WORM log indistinguishable from real evidence.","operationId":"ingest_evidence_evidence_ingest_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/evidence/list/{tenant_id}":{"get":{"summary":"List Evidence","description":"Secure endpoint for listing ingested evidence.","operationId":"list_evidence_evidence_list__tenant_id__get","parameters":[{"name":"tenant_id","in":"path","required":true,"schema":{"type":"string","title":"Tenant Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/decision":{"post":{"summary":"Make Decision","description":"Canonical CAIN Decision Endpoint.\n\nAGENT PROPOSES ACTION → CAIN DECIDES → ENFORCEMENT → EVIDENCE\n\nThis endpoint demonstrates the full decision-enforcement-evidence loop:\n\n1. Receives a proposed action from an agent\n2. Verifies entitlement via billing service\n3. Queries OPA for authorization decision\n4. Records decision as evidence\n5. Returns decision with enforcement action\n\nReturns ALLOW/DENY decision with enforcement action.","operationId":"make_decision_api_v1_decision_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/main__DecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanonicalDecision"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/decisions":{"get":{"summary":"List Decisions","description":"List recent decisions for debugging/demo.","operationId":"list_decisions_api_v1_decisions_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust":{"get":{"summary":"Trust","operationId":"trust_trust_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"summary":"Trust","operationId":"trust_trust_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric":{"get":{"summary":"Fabric","operationId":"fabric_fabric_head","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}},"head":{"summary":"Fabric","operationId":"fabric_fabric_head","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api/v1/proof/manifest":{"get":{"tags":["proof"],"summary":"Proof Manifest","operationId":"proof_manifest_api_v1_proof_manifest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofManifest"}}}}}}},"/api/v1/proof/capabilities":{"get":{"tags":["proof"],"summary":"Proof Capabilities","operationId":"proof_capabilities_api_v1_proof_capabilities_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofCapabilities"}}}}}}},"/api/v1/proof/version":{"get":{"tags":["proof"],"summary":"Proof Version","operationId":"proof_version_api_v1_proof_version_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofVersion"}}}}}}},"/api/v1/proof/architecture":{"get":{"tags":["proof"],"summary":"Proof Architecture","operationId":"proof_architecture_api_v1_proof_architecture_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofArchitecture"}}}}}}},"/api/v1/verify/clean-room":{"get":{"tags":["proof"],"summary":"Verify Clean Room Endpoint","description":"CAIN 31.0 Phase 2/37 -- Independent Witness Plane.\n\nWires CAIN 17's clean_room_verifier.py (\"Engine B\") into a live endpoint for the\nfirst time. This module has existed since CAIN 17 and was flagged as\nnever-wired-in by five consecutive later sessions (CAIN 24-28); this closes that.\nIt deliberately imports ONLY hashlib/json/sqlite3 -- never the identity/plan/trust\nmodules it checks -- so it independently re-derives every hash from raw DB rows\nrather than trusting the production code's own self-report. Immediately adjacent\nto this is /api/v1/proof/conformance, which returns a HARDCODED passed=15/failed=0\nregardless of actual state -- the exact anti-pattern this endpoint exists to not be.","operationId":"verify_clean_room_endpoint_api_v1_verify_clean_room_get","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/conformance":{"get":{"tags":["proof"],"summary":"Proof Conformance","operationId":"proof_conformance_api_v1_proof_conformance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofConformance"}}}}}}},"/api/v1/proof/benchmarks":{"get":{"tags":["proof"],"summary":"Proof Benchmarks","operationId":"proof_benchmarks_api_v1_proof_benchmarks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofBenchmarks"}}}}}}},"/api/v1/proof/security":{"get":{"tags":["proof"],"summary":"Proof Security","operationId":"proof_security_api_v1_proof_security_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofSecurity"}}}}}}},"/api/v1/proof/services":{"get":{"tags":["proof"],"summary":"Proof Services","operationId":"proof_services_api_v1_proof_services_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofServices"}}}}}}},"/api/v1/proof/health":{"get":{"tags":["proof"],"summary":"Proof Health","operationId":"proof_health_api_v1_proof_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofHealth"}}}}}}},"/api/v1/proof/test":{"post":{"tags":["proof"],"summary":"Proof Run Test","operationId":"proof_run_test_api_v1_proof_test_post","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ProofTestRequest"},{"type":"null"}],"title":"Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofTestResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/public-key":{"get":{"tags":["proof"],"summary":"Proof Public Key","description":"Get the public key for verifying evidence signatures.","operationId":"proof_public_key_api_v1_proof_public_key_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/kms/status":{"get":{"tags":["proof"],"summary":"Proof Kms Status","description":"Get the hardware/KMS root of trust security posture and status.","operationId":"proof_kms_status_api_v1_proof_kms_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/transparency/checkpoint":{"get":{"tags":["proof"],"summary":"Proof Transparency Checkpoint","description":"Produce an RFC 6962 signed checkpoint of the current WORM transparency log.","operationId":"proof_transparency_checkpoint_api_v1_proof_transparency_checkpoint_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/transparency/inclusion-proof":{"post":{"tags":["proof"],"summary":"Proof Transparency Inclusion Proof","description":"Retrieve an RFC 6962 Merkle tree inclusion proof for an evidence record.","operationId":"proof_transparency_inclusion_proof_api_v1_proof_transparency_inclusion_proof_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InclusionProofRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/transparency/verify-inclusion":{"post":{"tags":["proof"],"summary":"Proof Transparency Verify Inclusion","description":"Verify an RFC 6962 Merkle inclusion proof against a specified root hash.","operationId":"proof_transparency_verify_inclusion_api_v1_proof_transparency_verify_inclusion_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyInclusionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/transparency/anchor":{"post":{"tags":["proof"],"summary":"Proof Transparency Anchor","description":"Anchor the current signed checkpoint with a real RFC 3161 timestamp (see cain_transparency).\nOperator-only: it makes an outbound TSA request and appends to the anchor log, so a\npublic caller could use it to spam the TSA and grow the log. verify-anchor stays public.","operationId":"proof_transparency_anchor_api_v1_proof_transparency_anchor_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/AnchorCheckpointRequest"},{"type":"null"}],"title":"Req"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/transparency/verify-anchor":{"post":{"tags":["proof"],"summary":"Proof Transparency Verify Anchor","description":"Verify an anchored checkpoint proof against KMS signature and external notary commitment.","operationId":"proof_transparency_verify_anchor_api_v1_proof_transparency_verify_anchor_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyAnchorRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/verify-signature":{"post":{"tags":["proof"],"summary":"Proof Verify Signature","description":"Verify a signature on evidence content.","operationId":"proof_verify_signature_api_v1_proof_verify_signature_post","parameters":[{"name":"evidence_content","in":"query","required":true,"schema":{"type":"string","title":"Evidence Content"}},{"name":"signature","in":"query","required":true,"schema":{"type":"string","title":"Signature"}},{"name":"key_id","in":"query","required":true,"schema":{"type":"string","title":"Key Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/evidence/":{"get":{"tags":["proof"],"summary":"Proof List Evidence","description":"List recent verifiable evidence records.","operationId":"proof_list_evidence_api_v1_proof_evidence__get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/evidence":{"get":{"tags":["proof"],"summary":"Proof List Evidence","description":"List recent verifiable evidence records.","operationId":"proof_list_evidence_api_v1_proof_evidence_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/evidence/{evidence_id}":{"get":{"tags":["proof"],"summary":"Proof Get Evidence","operationId":"proof_get_evidence_api_v1_proof_evidence__evidence_id__get","parameters":[{"name":"evidence_id","in":"path","required":true,"schema":{"type":"string","title":"Evidence Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofEvidence"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/integrity/":{"get":{"tags":["proof"],"summary":"Proof Latest Integrity","description":"Verify cryptographic chain integrity across stored evidence.","operationId":"proof_latest_integrity_api_v1_proof_integrity__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/integrity":{"get":{"tags":["proof"],"summary":"Proof Latest Integrity","description":"Verify cryptographic chain integrity across stored evidence.","operationId":"proof_latest_integrity_api_v1_proof_integrity_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/integrity/{evidence_id}":{"get":{"tags":["proof"],"summary":"Proof Verify Integrity","operationId":"proof_verify_integrity_api_v1_proof_integrity__evidence_id__get","parameters":[{"name":"evidence_id","in":"path","required":true,"schema":{"type":"string","title":"Evidence Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofIntegrity"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/evidence/{evidence_id}/verify":{"get":{"tags":["proof"],"summary":"Proof Verify Evidence","operationId":"proof_verify_evidence_api_v1_proof_evidence__evidence_id__verify_get","parameters":[{"name":"evidence_id","in":"path","required":true,"schema":{"type":"string","title":"Evidence Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/limitations":{"get":{"tags":["proof"],"summary":"Proof Limitations","operationId":"proof_limitations_api_v1_proof_limitations_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/index":{"get":{"tags":["proof"],"summary":"Proof Index","operationId":"proof_index_api_v1_proof_index_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/provenance":{"get":{"tags":["proof"],"summary":"Proof Provenance","operationId":"proof_provenance_api_v1_proof_provenance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/vectors":{"get":{"tags":["proof"],"summary":"Proof Vectors Index","description":"Get index of all available public test vectors.","operationId":"proof_vectors_index_api_v1_proof_vectors_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/vectors/{vector_name}":{"get":{"tags":["proof"],"summary":"Proof Get Vector","description":"Get a specific public test vector by name.","operationId":"proof_get_vector_api_v1_proof_vectors__vector_name__get","parameters":[{"name":"vector_name","in":"path","required":true,"schema":{"type":"string","title":"Vector Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/proof/registry":{"get":{"tags":["proof"],"summary":"Proof Registry","description":"Get the public proof registry.","operationId":"proof_registry_api_v1_proof_registry_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/proof/trust-state":{"get":{"tags":["proof"],"summary":"Proof Trust State","description":"Get CAIN Trust State from Proof Center.\n\nThis endpoint exposes the canonical trust state computation:\n- WHO is acting (tenant)\n- WHAT subsystems are checked (conformance, attestation, impact, drift)\n- WHAT the trust state is\n- WHY the state was computed (evidence references)","operationId":"proof_trust_state_api_v1_proof_trust_state_get","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"type":"string","default":"cain-studio","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/counterfactual":{"post":{"tags":["counterfactual"],"summary":"Analyze Counterfactual","description":"COUNTERFACTUAL ANALYSIS - Deterministic What-If Analysis\n\nRECONSTRUCT: Given a decision_id or evidence_id, retrieves actual CAIN records\nand reconstructs the observed causal chain from production data.\n\nANALYZE: Applies a counterfactual intervention and computes the predicted\nalternative outcome, risk delta, and impact delta using the reconstructed chain.\n\nOBSERVED CHAIN: INTENT → AUTHORITY → POLICY → RISK → DECISION → TRACE → TRAJECTORY → ACTION → EXECUTION → EFFECT → IMPACT → EVIDENCE\n\nSAFETY: would_execute is ALWAYS False. No real-world action is ever taken.\nAll analysis is simulation-only with no side effects.\n\nInterventions:\n- decision: Change ALLOW ↔ DENY\n- policy_version: Compare against different policy version\n- identity_changed: What-if authority changed\n- tool_changed: What-if different tool used\n- action_removed: What-if action never executed\n- trajectory_step_removed: What-if specific trajectory step removed","operationId":"analyze_counterfactual_api_v1_counterfactual_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_analyze_counterfactual_api_v1_counterfactual_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/counterfactual/{analysis_id}":{"get":{"tags":["counterfactual"],"summary":"Get Counterfactual","description":"Retrieve a counterfactual analysis by ID.\n\nCounterfactual analyses are deterministic - same inputs produce same outputs.","operationId":"get_counterfactual_api_v1_counterfactual__analysis_id__get","parameters":[{"name":"analysis_id","in":"path","required":true,"schema":{"type":"string","title":"Analysis Id"}},{"name":"tenant","in":"query","required":false,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/decision/intelligence":{"post":{"tags":["decision-intelligence"],"summary":"Get Decision Intelligence","description":"DECISION INTELLIGENCE - Complete Analysis of a CAIN Decision\n\nGiven a decision_id or evidence_id, reconstructs the FULL decision context:\n- DECISION: What CAIN decided\n- CONTEXT: Identity, authority, intent, policy, risk factors\n- EVIDENCE: What evidence supported the decision\n- EXPECTED_OUTCOME: What CAIN expected to happen\n- ACTUAL_OUTCOME: What actually happened (if observable)\n- COMPARISON: Did expected match actual?\n- DECISION_QUALITY: Was the decision correct?\n- LESSONS: What should CAIN learn\n\nOBSERVED FACTS vs INFERRED EXPLANATIONS are explicitly labeled.","operationId":"get_decision_intelligence_api_v1_decision_intelligence_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_get_decision_intelligence_api_v1_decision_intelligence_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["decision-intelligence"],"summary":"Get Decision Analytics","description":"DECISION ANALYTICS - Aggregate analysis of CAIN decisions.\n\nReturns statistics derived from real evidence:\n- Decision outcome distribution (ALLOW vs DENY)\n- Decision quality assessment\n- Risk vs outcome correlation\n- Policy effectiveness\n- False allow/deny rates (where determinable)\n- Recurring decision patterns\n\nNOTE: Analytics are limited by lack of execution feedback.\nActual outcome verification requires execution monitoring.","operationId":"get_decision_analytics_api_v1_decision_intelligence_get","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"type":"string","title":"Tenant"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"outcome","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by outcome (ALLOW/DENY)","title":"Outcome"},"description":"Filter by outcome (ALLOW/DENY)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/decision/intelligence/{decision_id}":{"get":{"tags":["decision-intelligence"],"summary":"Get Decision Intelligence By Id","description":"Retrieve Decision Intelligence for a specific decision ID.","operationId":"get_decision_intelligence_by_id_api_v1_decision_intelligence__decision_id__get","parameters":[{"name":"decision_id","in":"path","required":true,"schema":{"type":"string","title":"Decision Id"}},{"name":"tenant","in":"query","required":false,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/studio":{"get":{"summary":"Studio","operationId":"studio_studio_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/demo":{"get":{"summary":"Demo","operationId":"demo_demo_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/subscribe/free/signup":{"post":{"summary":"Proxy Free Signup","operationId":"proxy_free_signup_subscribe_free_signup_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/docs/budget":{"get":{"summary":"Budget Docs Page","description":"CAIN Budget documentation.","operationId":"budget_docs_page_docs_budget_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/docs/governance":{"get":{"summary":"Governance Docs Page","operationId":"governance_docs_page_docs_governance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/docs/memory":{"get":{"summary":"Memory Docs Page","description":"CAIN Memory documentation.","operationId":"memory_docs_page_docs_memory_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/trajectory/dashboard":{"get":{"summary":"Trajectory Dashboard","description":"CAIN Trajectory Dashboard - Visual trajectory monitoring","operationId":"trajectory_dashboard_trajectory_dashboard_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/trajectory/observe":{"get":{"summary":"Trajectory Observe","description":"CAIN Trajectory Observer - Real-time trajectory monitoring","operationId":"trajectory_observe_trajectory_observe_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/agent-security/dashboard":{"get":{"summary":"Agent Security Dashboard","description":"CAIN Agent Security Dashboard - Real-time threat detection","operationId":"agent_security_dashboard_agent_security_dashboard_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/agent-security":{"get":{"summary":"Agent Security Page","description":"CAIN Agent Security - Protect AI agents from the inside out","operationId":"agent_security_page_agent_security_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/trace/dashboard":{"get":{"summary":"Trace Dashboard","description":"CAIN Trace Dashboard - Execution history reconstruction","operationId":"trace_dashboard_trace_dashboard_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/trace":{"get":{"summary":"Trace Page","description":"CAIN Trace - See everything your AI agent did","operationId":"trace_page_trace_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/settings":{"get":{"tags":["Trust Fabric"],"summary":"This tenant's enforcement mode","operationId":"read_settings_fabric_settings_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Trust Fabric"],"summary":"Switch this tenant between shadow and enforce","operationId":"write_settings_fabric_settings_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/hierarchy":{"get":{"tags":["Trust Fabric"],"summary":"The CAIN Trust Fabric product hierarchy","operationId":"fabric_hierarchy_fabric_hierarchy_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployments":{"get":{"tags":["Trust Fabric"],"summary":"Hosted vs self-hosted deployment models","operationId":"fabric_deployments_fabric_deployments_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/domains":{"get":{"tags":["Trust Fabric"],"summary":"The eleven Trust Fabric Services, with live coverage","operationId":"fabric_domains_fabric_domains_get","parameters":[{"name":"deployment","in":"query","required":false,"schema":{"type":"string","default":"studio","title":"Deployment"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/services":{"get":{"tags":["Trust Fabric"],"summary":"Every live service, with its Trust Fabric domain","operationId":"fabric_services_fabric_services_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/catalog":{"get":{"tags":["Trust Fabric"],"summary":"Catalog grouped by Trust Fabric domain (what the homepage renders)","operationId":"fabric_catalog_fabric_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/status":{"get":{"tags":["Trust Fabric"],"summary":"Which Fabric stages are live and enforcing right now","description":"Probes the real dependencies. The point is that nobody has to believe the\narchitecture page: this endpoint says what is actually reachable.","operationId":"fabric_status_fabric_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/identity/whoami":{"get":{"tags":["Trust Fabric"],"summary":"Resolve the calling key to its Fabric principal","operationId":"whoami_fabric_identity_whoami_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/principals":{"post":{"tags":["Trust Fabric"],"summary":"Register a principal","operationId":"create_principal_fabric_identity_principals_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrincipalCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Trust Fabric"],"summary":"List this tenant's principals","operationId":"get_principals_fabric_identity_principals_get","parameters":[{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":200,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/principals/{principal_id}":{"get":{"tags":["Trust Fabric"],"summary":"Fetch one principal","operationId":"read_principal_fabric_identity_principals__principal_id__get","parameters":[{"name":"principal_id","in":"path","required":true,"schema":{"type":"string","title":"Principal Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/principals/{principal_id}/revoke":{"post":{"tags":["Trust Fabric"],"summary":"Revoke a principal","operationId":"revoke_fabric_identity_principals__principal_id__revoke_post","parameters":[{"name":"principal_id","in":"path","required":true,"schema":{"type":"string","title":"Principal Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/principals/{principal_id}/verify":{"post":{"tags":["Trust Fabric"],"summary":"Verify an Ed25519 signature against a registered principal","operationId":"verify_principal_signature_fabric_identity_principals__principal_id__verify_post","parameters":[{"name":"principal_id","in":"path","required":true,"schema":{"type":"string","title":"Principal Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignatureVerify"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/agent-tokens":{"post":{"tags":["Trust Fabric"],"summary":"Mint a short-lived agent delegation token","description":"Delegates to the agent-id service, which owns the signing key. This\nendpoint exists so agent delegation lives in the same Identity namespace as\neverything else, not so the Fabric can re-implement token signing.","operationId":"mint_agent_token_fabric_identity_agent_tokens_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentTokenRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/agent-tokens/verify":{"post":{"tags":["Trust Fabric"],"summary":"Verify an agent delegation token","operationId":"verify_agent_token_fabric_identity_agent_tokens_verify_post","parameters":[{"name":"token","in":"query","required":true,"schema":{"type":"string","title":"Token"}},{"name":"required_scope","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Required Scope"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/decisions":{"post":{"tags":["Trust Fabric"],"summary":"Ask the control plane to decide on a proposed action","operationId":"create_decision_fabric_decisions_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fabric_control_plane__DecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Trust Fabric"],"summary":"List this tenant's recent Fabric decisions","operationId":"read_decisions_fabric_decisions_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/decisions/stream":{"get":{"tags":["Trust Fabric"],"summary":"Live feed of this tenant's decisions (Server-Sent Events)","description":"Pushes each new decision for the caller's tenant as it is recorded.\n\nAuthenticated with the API key, or with a read-scoped session token in\n?session= (a browser EventSource cannot send headers; the token is\nshort-lived and read-only). Only the caller's tenant is ever streamed.\nEnds after STREAM_MAX_SECONDS; clients reconnect with ?after=<last seq>.","operationId":"stream_decisions_fabric_decisions_stream_get","parameters":[{"name":"session","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","default":-1,"title":"After"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/sessions":{"post":{"tags":["Trust Fabric"],"summary":"Exchange an API key for a short-lived browser session","description":"So a browser never has to hold the raw key.\n\nThe workbench used to keep a full-privilege, non-expiring credential in\nlocalStorage. This is read-scoped and expires, so an injected script gets\nsomething far less useful and for far less long.","operationId":"create_session_fabric_identity_sessions_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/sessions/current":{"get":{"tags":["Trust Fabric"],"summary":"Inspect the session token in use","operationId":"current_session_fabric_identity_sessions_current_get","parameters":[{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/decisions/{decision_id}/signature":{"get":{"tags":["Trust Fabric"],"summary":"Tamper-evidence for one decision record","operationId":"decision_signature_fabric_decisions__decision_id__signature_get","parameters":[{"name":"decision_id","in":"path","required":true,"schema":{"type":"string","title":"Decision Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/evidence-access":{"get":{"tags":["Trust Fabric"],"summary":"Who has read this tenant's evidence","description":"An evidence store whose access is not itself audited is a compliance\nfinding waiting to happen.","operationId":"evidence_access_log_fabric_evidence_access_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sandbox-executions":{"get":{"tags":["Trust Fabric"],"summary":"What this tenant has executed in the sandbox","description":"Answers \"what did our agent run last Tuesday\", which a decision record\nalone cannot. Source is identified by digest and never stored -- customer\ncode is not ours to keep.","operationId":"read_sandbox_executions_fabric_sandbox_executions_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories":{"get":{"tags":["Trust Fabric"],"summary":"Recent agent runs for this tenant","operationId":"read_trajectories_fabric_trajectories_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{chain_id}":{"get":{"tags":["Trust Fabric"],"summary":"Reconstruct one agent run, in order","operationId":"read_trajectory_fabric_trajectories__chain_id__get","parameters":[{"name":"chain_id","in":"path","required":true,"schema":{"type":"string","title":"Chain Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{chain_id}/analyse":{"post":{"tags":["Trust Fabric"],"summary":"Grade this run's path and attribute its failure","description":"Hand a real trajectory to the two services that were built to consume one.\n\ntrajectorygate grades the *path* of a run (redundant calls, wasted branches)\nrather than its final answer. multi-agent-failure-tracer attributes a\nterminal failure to the step that caused it, via do-calculus over the\ndependency structure. Both have been live for weeks with no real trajectory\nto consume, because nothing correlated decisions into one.\n\nHonest scope: the dependency structure handed to the tracer is the chain's\nlinear parent/child order, which is what the fabric actually observed. If an\nagent fans out in parallel, the real structure is a DAG the gateway cannot\nsee, and the attribution is correspondingly weaker. Reported, not hidden.","operationId":"analyse_trajectory_fabric_trajectories__chain_id__analyse_post","parameters":[{"name":"chain_id","in":"path","required":true,"schema":{"type":"string","title":"Chain Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/try":{"get":{"tags":["Trust Fabric"],"summary":"What the no-signup demo can show you","operationId":"read_try_scenarios_fabric_try_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["Trust Fabric"],"summary":"See CAIN decide on a real action -- no account needed","description":"The five-minute path: watch the fabric intercept an action, decide, enforce.\n\nUnauthenticated on purpose. An engineer evaluating a trust platform should not\nhave to hand over an email address to find out whether it does anything.\n\nSafety properties, because this is a public endpoint that executes the real\ndecision path:\n  * scenarios are FIXED, so this is not an oracle for probing our screens\n  * it runs against a throwaway tenant, never a customer's\n  * rate limited per IP\n  * the enforcement mode is forced on for the demo, so a visitor sees the\n    control actually blocking rather than shadow-mode observing","operationId":"try_a_decision_fabric_try_post","parameters":[{"name":"scenario","in":"query","required":false,"schema":{"type":"string","default":"safe-read","title":"Scenario"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/proof":{"get":{"tags":["Trust Fabric"],"summary":"The latest proof run: every claim, executed","description":"Public and unauthenticated, deliberately.\n\nThe point of this surface is that a sceptical engineer who has never met us\ncan check it. Putting it behind a credential would defeat the exercise.\n\nNothing here is tenant data: the checks run against synthetic tenants that are\ndeleted afterwards, so publishing the results discloses nothing about anyone.","operationId":"read_proof_fabric_proof_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/proof/history":{"get":{"tags":["Trust Fabric"],"summary":"Every proof run, hash-chained","operationId":"read_proof_history_fabric_proof_history_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/proof/run":{"post":{"tags":["Trust Fabric"],"summary":"Execute every check and publish the result","description":"Authenticated: running the suite costs real work, so it is not an\nanonymous trigger. Reading the result never is.","operationId":"execute_proof_run_fabric_proof_run_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/webhooks":{"get":{"tags":["Trust Fabric"],"summary":"Where this tenant gets notified","operationId":"read_webhooks_fabric_webhooks_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Trust Fabric"],"summary":"Get notified when an action is held, blocked or halted","description":"Register a URL to notify.\n\nThe URL is resolved and every address it answers with is checked before the\nendpoint is accepted, and again before every delivery attempt. A webhook is a\nrequest this server makes on your instruction; an unvalidated one is\nserver-side request forgery with extra steps.","operationId":"create_webhook_fabric_webhooks_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/webhooks/{endpoint_id}":{"delete":{"tags":["Trust Fabric"],"summary":"Stop notifying this endpoint","operationId":"remove_webhook_fabric_webhooks__endpoint_id__delete","parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Endpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/webhooks/deliveries":{"get":{"tags":["Trust Fabric"],"summary":"What was sent, and what failed","description":"Delivery history. A notification system you cannot audit is one you cannot\ntrust to have notified anybody.","operationId":"read_deliveries_fabric_webhooks_deliveries_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/simulate":{"get":{"tags":["Trust Fabric"],"summary":"Replay recorded decisions under proposed settings","description":"Answers \"if I turn this on, what breaks?\" against your own traffic.\n\nRead-only and side-effect free. It recomputes recorded outcomes rather than\nre-running the decision path, so it cannot alter how live traffic is decided\nand cannot create evidence, queue entries or billable usage.","operationId":"simulate_endpoint_fabric_simulate_get","parameters":[{"name":"enforce","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Enforce"}},{"name":"approval_enforce","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Approval Enforce"}},{"name":"verify_enforce","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Verify Enforce"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":200,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/approvals":{"get":{"tags":["Trust Fabric"],"summary":"Actions held for human review","description":"The review queue.\n\nReading is allowed with a session token as well as an API key, because this\nis the one surface a human is expected to sit in front of.","operationId":"read_approvals_fabric_approvals_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/approvals/{approval_id}":{"get":{"tags":["Trust Fabric"],"summary":"One held action","operationId":"read_approval_fabric_approvals__approval_id__get","parameters":[{"name":"approval_id","in":"path","required":true,"schema":{"type":"string","title":"Approval Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/approvals/{approval_id}/approve":{"post":{"tags":["Trust Fabric"],"summary":"Let one held action proceed","description":"Authorises ONE action, once.\n\nNot a standing grant and not a session: the approval is bound to the\nprincipal, service and path it was requested for, expires on its own, and is\nconsumed by the next decision that uses it.","operationId":"approve_approval_fabric_approvals__approval_id__approve_post","parameters":[{"name":"approval_id","in":"path","required":true,"schema":{"type":"string","title":"Approval Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApprovalDecisionRequest"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/approvals/{approval_id}/deny":{"post":{"tags":["Trust Fabric"],"summary":"Refuse one held action","operationId":"deny_approval_fabric_approvals__approval_id__deny_post","parameters":[{"name":"approval_id","in":"path","required":true,"schema":{"type":"string","title":"Approval Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApprovalDecisionRequest"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/kill-switch":{"get":{"tags":["Trust Fabric"],"summary":"Whether this tenant's agents are halted","operationId":"read_kill_switch_fabric_kill_switch_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Trust Fabric"],"summary":"Halt every subsequent action for this tenant","description":"Emergency stop.\n\nDistinct from revoking a principal, which is the surgical tool for one leaked\nkey. This is for the case where something is wrong and you do not yet know\nwhich agent -- you stop everything and read the evidence afterwards. Having\nto enumerate and revoke principals one at a time during an incident is not an\nincident response.\n\nBlocks regardless of whether the Fabric is in enforce or shadow mode: a stop\nbutton that honours an observability setting is not a stop button.","operationId":"engage_kill_switch_endpoint_fabric_kill_switch_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fabric_control_plane__KillSwitchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Trust Fabric"],"summary":"Release the halt and allow actions again","operationId":"release_kill_switch_endpoint_fabric_kill_switch_delete","parameters":[{"name":"note","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/tool-rules":{"get":{"tags":["Trust Fabric"],"summary":"This tenant's tool rules, in evaluation order","operationId":"read_tool_rules_fabric_tool_rules_get","parameters":[{"name":"include_retired","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Retired"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Trust Fabric"],"summary":"Add a tool rule","operationId":"create_tool_rule_fabric_tool_rules_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolRuleRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/tool-rules/{rule_id}":{"put":{"tags":["Trust Fabric"],"summary":"Change a tool rule (its version increments)","operationId":"update_tool_rule_fabric_tool_rules__rule_id__put","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"string","title":"Rule Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolRuleRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Trust Fabric"],"summary":"Retire a tool rule (kept in history, never deleted)","operationId":"retire_tool_rule_fabric_tool_rules__rule_id__delete","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"string","title":"Rule Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/tool-rules-default":{"put":{"tags":["Trust Fabric"],"summary":"What happens when no tool rule matches","operationId":"set_tool_default_fabric_tool_rules_default_put","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolDefaultRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/tool-rules-history":{"get":{"tags":["Trust Fabric"],"summary":"Every change to this tenant's tool rules","operationId":"tool_rules_history_fabric_tool_rules_history_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/tool-rules/test":{"post":{"tags":["Trust Fabric"],"summary":"Which rule would decide this call? (no evidence, no quota)","description":"Evaluates ONLY the tool rules -- not identity, OPA, risk or approvals.\nFor the full chain use POST /fabric/decisions with record=false.","operationId":"test_tool_rules_fabric_tool_rules_test_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolRuleTestRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/tools":{"get":{"tags":["Trust Fabric"],"summary":"Every tool this tenant's agents called, and which rule governs it","operationId":"observed_tools_fabric_tools_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","default":30,"title":"Days"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team":{"get":{"tags":["Trust Fabric"],"summary":"This workspace's members, invites and your role","operationId":"read_team_fabric_team_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/invites":{"post":{"tags":["Trust Fabric"],"summary":"Invite someone by email","operationId":"invite_member_fabric_team_invites_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamInviteRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/invites/{invite_id}":{"delete":{"tags":["Trust Fabric"],"summary":"Withdraw an invite","operationId":"withdraw_invite_fabric_team_invites__invite_id__delete","parameters":[{"name":"invite_id","in":"path","required":true,"schema":{"type":"string","title":"Invite Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/members/{member_id}":{"put":{"tags":["Trust Fabric"],"summary":"Change a member's role","operationId":"change_member_role_fabric_team_members__member_id__put","parameters":[{"name":"member_id","in":"path","required":true,"schema":{"type":"string","title":"Member Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamRoleRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Trust Fabric"],"summary":"Remove a member (or leave, for yourself)","operationId":"remove_team_member_fabric_team_members__member_id__delete","parameters":[{"name":"member_id","in":"path","required":true,"schema":{"type":"string","title":"Member Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/name":{"put":{"tags":["Trust Fabric"],"summary":"Name this workspace","operationId":"name_workspace_fabric_team_name_put","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamNameRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/invite-info":{"get":{"tags":["Trust Fabric"],"summary":"What an invite link is for (no sign-in needed)","operationId":"read_invite_fabric_team_invite_info_get","parameters":[{"name":"invite","in":"query","required":true,"schema":{"type":"string","title":"Invite"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/accept":{"post":{"tags":["Trust Fabric"],"summary":"Join a workspace with an invite (signed-in CAIN account)","operationId":"accept_team_invite_fabric_team_accept_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamAcceptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/memberships":{"get":{"tags":["Trust Fabric"],"summary":"Workspaces your CAIN account belongs to","operationId":"my_memberships_fabric_team_memberships_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/team/session":{"post":{"tags":["Trust Fabric"],"summary":"Open a workspace as a member (returns a short-lived member token)","operationId":"open_member_session_fabric_team_session_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/baseline":{"get":{"tags":["Trust Fabric"],"summary":"What normal looks like for this tenant or agent","operationId":"read_baseline_fabric_baseline_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"window_days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Window Days"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/anomalies":{"get":{"tags":["Trust Fabric"],"summary":"Deviations from this principal's own baseline","operationId":"read_anomalies_fabric_anomalies_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"recent_hours","in":"query","required":false,"schema":{"type":"integer","default":24,"title":"Recent Hours"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trust-score":{"get":{"tags":["Trust Fabric"],"summary":"Heuristic trust score, with its arithmetic shown","operationId":"read_trust_score_fabric_trust_score_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/decision-signing-key":{"get":{"tags":["Trust Fabric"],"summary":"Public key that signs every recorded decision","description":"Public, no account needed: verify record signatures offline with this key.","operationId":"decision_signing_key_fabric_decision_signing_key_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/decisions/{decision_id}/signed-record":{"get":{"tags":["Trust Fabric"],"summary":"Export one decision row exactly as stored and signed; verify offline with verify_decision_record.py --key https://mcpgate.online/fabric/decision-signing-key","operationId":"decision_signed_record_fabric_decisions__decision_id__signed_record_get","parameters":[{"name":"decision_id","in":"path","required":true,"schema":{"type":"string","title":"Decision Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/decisions/{decision_id}/integrity":{"get":{"tags":["Trust Fabric"],"summary":"Check whether a recorded decision has been altered since it was written","description":"Recompute the record's digest and compare it with the stored one.\n\nAnswers three distinct states rather than a boolean, because they mean\ndifferent things to whoever is asking:\n  intact=true      the record is byte-for-byte what was written\n  intact=false     the row has been altered since it was recorded\n  verifiable=false the record predates digests and cannot be checked\n\nTamper-EVIDENT, not tamper-proof: whoever can write the row can recompute the\ndigest. Making that impossible requires a key this process does not hold or\nan append-only log outside this database, and neither exists yet.","operationId":"decision_integrity_fabric_decisions__decision_id__integrity_get","parameters":[{"name":"decision_id","in":"path","required":true,"schema":{"type":"string","title":"Decision Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/decisions/{decision_id}/explain":{"get":{"tags":["Trust Fabric"],"summary":"Why this decision came out the way it did, and which run it belongs to","description":"Every trajectory step and the developer portal have linked here since the\ntrajectory work; until 2026-09-27 the route did not exist and the link 404ed.\n\nBuilt only from the stored record: the stages that denied, held or could not\nanswer, each with the detail it recorded. Nothing is re-evaluated.","operationId":"explain_decision_fabric_decisions__decision_id__explain_get","parameters":[{"name":"decision_id","in":"path","required":true,"schema":{"type":"string","title":"Decision Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-CAIN-Session","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Session"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/decisions/{decision_id}":{"get":{"tags":["Trust Fabric"],"summary":"Retrieve one recorded decision (Evidence)","operationId":"read_decision_fabric_decisions__decision_id__get","parameters":[{"name":"decision_id","in":"path","required":true,"schema":{"type":"string","title":"Decision Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workspaces":{"post":{"tags":["Workspaces"],"summary":"Create a workspace","operationId":"create_workspace_workspaces_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Workspaces"],"summary":"List workspaces you can see","operationId":"list_workspaces_workspaces_get","parameters":[{"name":"environment","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workspaces/{workspace_id}":{"get":{"tags":["Workspaces"],"summary":"One workspace, with members and bound resources","operationId":"get_workspace_workspaces__workspace_id__get","parameters":[{"name":"workspace_id","in":"path","required":true,"schema":{"type":"string","title":"Workspace Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Workspaces"],"summary":"Archive a workspace","operationId":"archive_workspace_workspaces__workspace_id__delete","parameters":[{"name":"workspace_id","in":"path","required":true,"schema":{"type":"string","title":"Workspace Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workspaces/{workspace_id}/members":{"post":{"tags":["Workspaces"],"summary":"Add or update a member","operationId":"add_member_workspaces__workspace_id__members_post","parameters":[{"name":"workspace_id","in":"path","required":true,"schema":{"type":"string","title":"Workspace Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemberAdd"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workspaces/{workspace_id}/members/{principal_id}":{"delete":{"tags":["Workspaces"],"summary":"Remove a member","operationId":"remove_member_workspaces__workspace_id__members__principal_id__delete","parameters":[{"name":"workspace_id","in":"path","required":true,"schema":{"type":"string","title":"Workspace Id"}},{"name":"principal_id","in":"path","required":true,"schema":{"type":"string","title":"Principal Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workspaces/{workspace_id}/resources":{"post":{"tags":["Workspaces"],"summary":"Bind a resource","operationId":"bind_resource_workspaces__workspace_id__resources_post","parameters":[{"name":"workspace_id","in":"path","required":true,"schema":{"type":"string","title":"Workspace Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceBind"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workspaces/{workspace_id}/resources/{kind}/{resource_id}":{"delete":{"tags":["Workspaces"],"summary":"Unbind a resource","operationId":"unbind_resource_workspaces__workspace_id__resources__kind___resource_id__delete","parameters":[{"name":"workspace_id","in":"path","required":true,"schema":{"type":"string","title":"Workspace Id"}},{"name":"kind","in":"path","required":true,"schema":{"type":"string","title":"Kind"}},{"name":"resource_id","in":"path","required":true,"schema":{"type":"string","title":"Resource Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workspaces/{workspace_id}/summary":{"get":{"tags":["Workspaces"],"summary":"AgentOps, scoped to this workspace","description":"The project view: which of this tenant's agents, services and policies\nbelong to this project, and what the fabric has recorded about them.\n\nDeliberately built on the tenant-wide data and then filtered, rather than\non a parallel per-workspace store: two stores would eventually disagree, and\nthe tenant-wide one is what enforcement actually uses.","operationId":"workspace_summary_workspaces__workspace_id__summary_get","parameters":[{"name":"workspace_id","in":"path","required":true,"schema":{"type":"string","title":"Workspace Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/policy/dryrun":{"post":{"tags":["Trust Fabric"],"summary":"What would happen to my recent traffic under different enforcement","description":"Replay this tenant's recorded decisions under candidate enforcement settings.\n\nExact, not simulated: each recorded decision carries what every stage\nactually said, so the outcome under different enforcement flags is a\nrecomputation of stored facts. Stages that did not run are reported as\nunknown rather than assumed.","operationId":"dryrun_fabric_policy_dryrun_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DryRunRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/policy/evaluate":{"post":{"tags":["Trust Fabric"],"summary":"Ask the live policy engine about a hypothetical call","description":"Preview a policy decision without making the call.\n\nSends the same input document shape the gateway's own request path sends --\na preview that asks a differently-shaped question would answer a different\nquestion and be worse than no preview at all.","operationId":"evaluate_fabric_policy_evaluate_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/policy_ops__EvaluateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/policy":{"get":{"tags":["Trust Fabric"],"summary":"The live policy: version, modules, and how it is addressed","operationId":"current_policy_fabric_policy_get","parameters":[{"name":"include_source","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Source"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/agentops/summary":{"get":{"tags":["AgentOps"],"summary":"Everything this tenant's agents are doing, in one call","operationId":"agentops_summary_agentops_summary_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/create":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Create Identity","description":"Create a new cryptographically verifiable identity.\n\nReturns the identity record including a one-time `private_key_b64`\nfield that MUST be securely stored. It is never returned again.","operationId":"create_identity_fabric_identity_create_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentityCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Identity Fabric Identity Create Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/list":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"List Identities","description":"List identities in a tenant.","operationId":"list_identities_fabric_identity_list_get","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Identities Fabric Identity List Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/health":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"Identity Health","description":"Health check for the identity system.","operationId":"identity_health_fabric_identity_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Identity Health Fabric Identity Health Get"}}}}}}},"/fabric/identity/tenant/audit":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"Get Tenant Audit","description":"Retrieve audit log entries for a tenant.","operationId":"get_tenant_audit_fabric_identity_tenant_audit_get","parameters":[{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Tenant Audit Fabric Identity Tenant Audit Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/capability/check":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Check Capability","description":"Check if an identity has a specific capability.","operationId":"check_capability_fabric_identity_capability_check_post","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CapabilityCheckRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Check Capability Fabric Identity Capability Check Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/impersonation/check":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Check Impersonation Endpoint","description":"Check that an identity is not impersonating another.","operationId":"check_impersonation_endpoint_fabric_identity_impersonation_check_post","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImpersonationCheckRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Check Impersonation Endpoint Fabric Identity Impersonation Check Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/delegation/{delegation_id}/revoke":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Revoke Delegation","description":"Revoke a delegation.","operationId":"revoke_delegation_fabric_identity_delegation__delegation_id__revoke_post","parameters":[{"name":"delegation_id","in":"path","required":true,"schema":{"type":"string","title":"Delegation Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Revoke Delegation Fabric Identity Delegation  Delegation Id  Revoke Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/delegation/{delegation_id}/verify":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"Verify Delegation Endpoint","description":"Verify a delegation is valid and active.","operationId":"verify_delegation_endpoint_fabric_identity_delegation__delegation_id__verify_get","parameters":[{"name":"delegation_id","in":"path","required":true,"schema":{"type":"string","title":"Delegation Id"}},{"name":"capability","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Capability"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Verify Delegation Endpoint Fabric Identity Delegation  Delegation Id  Verify Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/revoke":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Revoke Identity","description":"Permanently revoke an identity. Cannot be undone.","operationId":"revoke_identity_fabric_identity__identity_id__revoke_post","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentityRevokeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Revoke Identity Fabric Identity  Identity Id  Revoke Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/rotate":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Rotate Credentials","description":"Rotate an identity's cryptographic credentials.\n\nGenerates a new Ed25519 key pair and returns the new private key.","operationId":"rotate_credentials_fabric_identity__identity_id__rotate_post","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentityRotateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Rotate Credentials Fabric Identity  Identity Id  Rotate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/verify":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Verify Credential","description":"Verify a credential: signature, revocation, expiry, key version.","operationId":"verify_credential_fabric_identity__identity_id__verify_post","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentityVerifyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Verify Credential Fabric Identity  Identity Id  Verify Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/suspend":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Suspend Identity","description":"Suspend an identity. Suspended identities cannot authenticate.","operationId":"suspend_identity_fabric_identity__identity_id__suspend_post","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"reason","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Suspend Identity Fabric Identity  Identity Id  Suspend Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/reactivate":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Reactivate Identity","description":"Reactivate a suspended identity.","operationId":"reactivate_identity_fabric_identity__identity_id__reactivate_post","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Reactivate Identity Fabric Identity  Identity Id  Reactivate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/key-history":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"Get Key History","description":"Retrieve key rotation history for an identity.","operationId":"get_key_history_fabric_identity__identity_id__key_history_get","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Key History Fabric Identity  Identity Id  Key History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/delegate":{"post":{"tags":["CAIN Identity","cain-identity"],"summary":"Create Delegation","description":"Create a scoped delegation from identity_id to delegate_id.","operationId":"create_delegation_fabric_identity__identity_id__delegate_post","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DelegationCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Delegation Fabric Identity  Identity Id  Delegate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/delegations":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"List Delegations","description":"List delegations involving an identity.","operationId":"list_delegations_fabric_identity__identity_id__delegations_get","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"as_delegator","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"As Delegator"}},{"name":"as_delegate","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"As Delegate"}},{"name":"include_expired","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Expired"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Delegations Fabric Identity  Identity Id  Delegations Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}/audit":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"Get Identity Audit","description":"Retrieve audit log entries for an identity.","operationId":"get_identity_audit_fabric_identity__identity_id__audit_get","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Identity Audit Fabric Identity  Identity Id  Audit Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/identity/{identity_id}":{"get":{"tags":["CAIN Identity","cain-identity"],"summary":"Get Identity","description":"Retrieve an identity by ID.","operationId":"get_identity_fabric_identity__identity_id__get","parameters":[{"name":"identity_id","in":"path","required":true,"schema":{"type":"string","title":"Identity Id"}},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Identity Fabric Identity  Identity Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/attestation/attest":{"post":{"tags":["CAIN 14 Attestation","cain-14-attestation"],"summary":"Attest","operationId":"attest_fabric_attestation_attest_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttestRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Attest Fabric Attestation Attest Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/attestation/verify":{"post":{"tags":["CAIN 14 Attestation","cain-14-attestation"],"summary":"Verify","operationId":"verify_fabric_attestation_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/agent_identity_api__VerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Verify Fabric Attestation Verify Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/attestation/{agent_id}":{"get":{"tags":["CAIN 14 Attestation","cain-14-attestation"],"summary":"Get Attestation","operationId":"get_attestation_fabric_attestation__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Attestation Fabric Attestation  Agent Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/attestation/{agent_id}/revoke":{"post":{"tags":["CAIN 14 Attestation","cain-14-attestation"],"summary":"Revoke","operationId":"revoke_fabric_attestation__agent_id__revoke_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"reason","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Revoke Fabric Attestation  Agent Id  Revoke Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plan/commit":{"post":{"tags":["CAIN 15 Plan Integrity","cain-15-plan-integrity"],"summary":"Commit","operationId":"commit_fabric_plan_commit_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommitPlanRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Commit Fabric Plan Commit Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plan/check":{"post":{"tags":["CAIN 15 Plan Integrity","cain-15-plan-integrity"],"summary":"Check","operationId":"check_fabric_plan_check_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Check Fabric Plan Check Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plan/{agent_id}":{"get":{"tags":["CAIN 15 Plan Integrity","cain-15-plan-integrity"],"summary":"Get Active Plan","operationId":"get_active_plan_fabric_plan__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Active Plan Fabric Plan  Agent Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/mcp/enforce":{"post":{"tags":["CAIN 16 MCP Enforcement","cain-16-mcp-enforcement"],"summary":"Enforce","operationId":"enforce_fabric_mcp_enforce_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnforceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Enforce Fabric Mcp Enforce Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/kill-switch":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"Get Kill Switch","description":"Get current kill switch state for tenant.","operationId":"get_kill_switch_fabric_control_kill_switch_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/kill-switch/activate":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Activate Kill Switch","description":"Activate tenant-wide kill switch.","operationId":"activate_kill_switch_fabric_control_kill_switch_activate_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_control_api__KillSwitchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/kill-switch/deactivate":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Deactivate Kill Switch","description":"Deactivate tenant-wide kill switch.","operationId":"deactivate_kill_switch_fabric_control_kill_switch_deactivate_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/agents":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"List Agent Controls","description":"List all agent controls for tenant.","operationId":"list_agent_controls_fabric_control_agents_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/agents/{agent_id}":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"Get Agent Control","description":"Get control state for a specific agent.","operationId":"get_agent_control_fabric_control_agents__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/agents/{agent_id}/pause":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Pause Agent","description":"Pause an agent.","operationId":"pause_agent_fabric_control_agents__agent_id__pause_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_control_api__KillSwitchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/agents/{agent_id}/resume":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Resume Agent","description":"Resume a paused agent.","operationId":"resume_agent_fabric_control_agents__agent_id__resume_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/agents/{agent_id}/kill":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Kill Agent","description":"Permanently kill an agent.","operationId":"kill_agent_fabric_control_agents__agent_id__kill_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_control_api__KillSwitchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/agents/{agent_id}/control":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Create Or Update Agent Control","description":"Create or update agent control settings.","operationId":"create_or_update_agent_control_fabric_control_agents__agent_id__control_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentControlRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/tools":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"List Tool Controls","description":"List all tool controls for tenant.","operationId":"list_tool_controls_fabric_control_tools_get","parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/tools/{tool_name}":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"Get Tool Control","description":"Get control state for a specific tool.","operationId":"get_tool_control_fabric_control_tools__tool_name__get","parameters":[{"name":"tool_name","in":"path","required":true,"schema":{"type":"string","title":"Tool Name"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Create Or Update Tool Control","description":"Create or update tool control settings.","operationId":"create_or_update_tool_control_fabric_control_tools__tool_name__post","parameters":[{"name":"tool_name","in":"path","required":true,"schema":{"type":"string","title":"Tool Name"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolControlRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/tools/{tool_name}/disable":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Disable Tool","description":"Disable a tool.","operationId":"disable_tool_fabric_control_tools__tool_name__disable_post","parameters":[{"name":"tool_name","in":"path","required":true,"schema":{"type":"string","title":"Tool Name"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_control_api__KillSwitchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/tools/{tool_name}/enable":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Enable Tool","description":"Enable a tool.","operationId":"enable_tool_fabric_control_tools__tool_name__enable_post","parameters":[{"name":"tool_name","in":"path","required":true,"schema":{"type":"string","title":"Tool Name"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/policies":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Create Policy","description":"Create a new control policy.","operationId":"create_policy_fabric_control_policies_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Control","CAIN Control"],"summary":"List Policies","description":"List all policies for tenant.","operationId":"list_policies_fabric_control_policies_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/policies/{policy_id}":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"Get Policy","description":"Get a specific policy.","operationId":"get_policy_fabric_control_policies__policy_id__get","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["CAIN Control","CAIN Control"],"summary":"Update Policy","description":"Update a policy (creates new version).","operationId":"update_policy_fabric_control_policies__policy_id__patch","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/policies/{policy_id}/activate":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Activate Policy","description":"Activate a policy.","operationId":"activate_policy_fabric_control_policies__policy_id__activate_post","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/policies/{policy_id}/deactivate":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Deactivate Policy","description":"Deactivate a policy.","operationId":"deactivate_policy_fabric_control_policies__policy_id__deactivate_post","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/policies/{policy_id}/rollback":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Rollback Policy","description":"Rollback a policy to a previous version.","operationId":"rollback_policy_fabric_control_policies__policy_id__rollback_post","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}},{"name":"version","in":"query","required":true,"schema":{"type":"integer","minimum":1,"title":"Version"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/policies/{policy_id}/history":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"Get Policy History","description":"Get version history for a policy.","operationId":"get_policy_history_fabric_control_policies__policy_id__history_get","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/evaluate":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Evaluate Control","description":"Evaluate a control decision (records decision).","operationId":"evaluate_control_fabric_control_evaluate_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ControlEvaluateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/simulate":{"post":{"tags":["CAIN Control","CAIN Control"],"summary":"Simulate Control","description":"Simulate a control decision (does not record or execute).","operationId":"simulate_control_fabric_control_simulate_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ControlEvaluateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/decisions":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"List Control Decisions","description":"List recent control decisions.","operationId":"list_control_decisions_fabric_control_decisions_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/audit":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"Get Control Audit Log","description":"Get control audit log.","operationId":"get_control_audit_log_fabric_control_audit_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/control/health":{"get":{"tags":["CAIN Control","CAIN Control"],"summary":"Control Health","description":"Health check for CAIN Control.","operationId":"control_health_fabric_control_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Control Health Fabric Control Health Get"}}}}}}},"/api/v1/control/blast-radius":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Estimate Blast Radius","description":"Estimate blast radius before execution (Moat #5).","operationId":"estimate_blast_radius_api_v1_control_blast_radius_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlastRadiusRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/counterfactual":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Simulate Counterfactual","description":"Run counterfactual trust simulation (Moat #5).\nEnforces invariant: NEVER modify live authorization from simulations.","operationId":"simulate_counterfactual_api_v1_control_counterfactual_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_control_loop_api__CounterfactualRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/adversarial/run":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Run Adversarial Tests","description":"Execute deterministic adversarial attack test suite (Moat #6).\nEvaluates runtime resilience without LLM opinion.","operationId":"run_adversarial_tests_api_v1_control_adversarial_run_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdversarialRunRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/adversarial/posture/{tenant_id}":{"get":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Get Adversarial Posture","description":"Get live adversarial resilience posture (Moat #6).","operationId":"get_adversarial_posture_api_v1_control_adversarial_posture__tenant_id__get","parameters":[{"name":"tenant_id","in":"path","required":true,"schema":{"type":"string","title":"Tenant Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/adversarial/resilience/{tenant_id}":{"get":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Get Adversarial Resilience Score","description":"Get adversarial resilience score for a tenant (Moat #6 / Moat #7).","operationId":"get_adversarial_resilience_score_api_v1_control_adversarial_resilience__tenant_id__get","parameters":[{"name":"tenant_id","in":"path","required":true,"schema":{"type":"string","title":"Tenant Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/adversarial/worker/status":{"get":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Get Fuzzer Worker Status","description":"Get operational status and stats of the autonomous background fuzzer daemon.","operationId":"get_fuzzer_worker_status_api_v1_control_adversarial_worker_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/control/adversarial/worker/start":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Start Fuzzer Worker","description":"Start the autonomous background fuzzer daemon.","operationId":"start_fuzzer_worker_api_v1_control_adversarial_worker_start_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/adversarial/worker/stop":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Stop Fuzzer Worker","description":"Stop the autonomous background fuzzer daemon.","operationId":"stop_fuzzer_worker_api_v1_control_adversarial_worker_stop_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/adversarial/worker/trigger":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Trigger Fuzzer Cycle","description":"Trigger an immediate adversarial fuzzing cycle and return signed proof.","operationId":"trigger_fuzzer_cycle_api_v1_control_adversarial_worker_trigger_post","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"type":"string","default":"demo","title":"Tenant"}},{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/conformance/certify":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Generate Conformance Certificate","description":"Generate a tamper-evident conformance certification report (Moat #7).\n\nRuns the full 500-test conformance suite and produces a\ncryptographically-signed, tamper-evident PDF or JSON report.","operationId":"generate_conformance_certificate_api_v1_control_conformance_certify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CertifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/expectation":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Create Expectation","description":"Record pre-execution expectation (Moat #7).","operationId":"create_expectation_api_v1_control_expectation_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExpectationCreateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/outcome":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Record Outcome","description":"Record actual execution outcome (Moat #7).","operationId":"record_outcome_api_v1_control_outcome_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OutcomeRecordRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/reconcile":{"post":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Reconcile And Update Trust","description":"Reconcile expectation against outcome, compute deterministic trust delta,\nand monotonically update canonical trust state (Moat #7).","operationId":"reconcile_and_update_trust_api_v1_control_reconcile_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReconcileRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/trust-state/{tenant_id}/{subject_id}":{"get":{"tags":["CAIN Control Loop","CAIN Control Loop"],"summary":"Get Trust State","description":"Retrieve canonical, evidence-backed trust state for a subject (Moat #7).","operationId":"get_trust_state_api_v1_control_trust_state__tenant_id___subject_id__get","parameters":[{"name":"tenant_id","in":"path","required":true,"schema":{"type":"string","title":"Tenant Id"}},{"name":"subject_id","in":"path","required":true,"schema":{"type":"string","title":"Subject Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/sovereign/status":{"get":{"tags":["CAIN Sovereign Kernel","CAIN Sovereign Kernel"],"summary":"Get Sovereign Status","description":"Return Sovereign Kernel Boundary operational status, monitored syscalls, and stats.","operationId":"get_sovereign_status_api_v1_control_sovereign_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/control/sovereign/audit-call":{"post":{"tags":["CAIN Sovereign Kernel","CAIN Sovereign Kernel"],"summary":"Audit Syscall","description":"Audit and evaluate a system call invocation against sovereign security policy.\nFail-closed: Prohibited/unauthorized calls are BLOCKED, signed by KMS,\nappended to the WORM transparency log, and incur a monotonic trust drift penalty.","operationId":"audit_syscall_api_v1_control_sovereign_audit_call_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyscallAuditRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/sovereign/generate-profile":{"post":{"tags":["CAIN Sovereign Kernel","CAIN Sovereign Kernel"],"summary":"Generate Seccomp Profile","description":"Generate a cryptographically signed Linux Seccomp-BPF JSON profile\nfor agent container execution sandboxes.","operationId":"generate_seccomp_profile_api_v1_control_sovereign_generate_profile_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileGenerateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/sovereign/generate-ebpf-spec":{"post":{"tags":["CAIN Sovereign Kernel","CAIN Sovereign Kernel"],"summary":"Generate Ebpf Spec","description":"Generate signed eBPF tracepoint C program specification and map layout.","operationId":"generate_ebpf_spec_api_v1_control_sovereign_generate_ebpf_spec_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileGenerateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/control/sovereign/violations":{"get":{"tags":["CAIN Sovereign Kernel","CAIN Sovereign Kernel"],"summary":"List Sovereign Violations","description":"List recent kernel-level violations with cryptographic signatures, for ONE tenant: the API key's tenant, or the\npublic demo tenant for anonymous callers. It used to return every tenant's records to anyone.","operationId":"list_sovereign_violations_api_v1_control_sovereign_violations_get","parameters":[{"name":"tenant_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Ignored: the tenant comes from the API key (anonymous: demo)","title":"Tenant Id"},"description":"Ignored: the tenant comes from the API key (anonymous: demo)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"description":"Max records to return","default":50,"title":"Limit"},"description":"Max records to return"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/status":{"get":{"tags":["CAIN-42 Fabric Gate"],"summary":"Status","operationId":"status_fabric_gate_status_get","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/snapshot":{"post":{"tags":["CAIN-42 Fabric Gate"],"summary":"Snapshot","operationId":"snapshot_fabric_gate_snapshot_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/evidence":{"get":{"tags":["CAIN-42 Fabric Gate"],"summary":"Evidence","operationId":"evidence_fabric_gate_evidence_get","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/revoke":{"post":{"tags":["CAIN-42 Fabric Gate"],"summary":"Revoke","operationId":"revoke_fabric_gate_revoke_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Revoke"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/observe":{"post":{"tags":["CAIN-42 Fabric Gate"],"summary":"Observe","operationId":"observe_fabric_gate_observe_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"O"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/drift":{"post":{"tags":["CAIN-42 Fabric Gate"],"summary":"Drift","operationId":"drift_fabric_gate_drift_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Drift"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/change/{op}":{"post":{"tags":["CAIN-42 Fabric Gate"],"summary":"Change","operationId":"change_fabric_gate_change__op__post","parameters":[{"name":"op","in":"path","required":true,"schema":{"type":"string","title":"Op"}},{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Change"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/change/{change_id}":{"get":{"tags":["CAIN-42 Fabric Gate"],"summary":"Change Get","operationId":"change_get_fabric_gate_change__change_id__get","parameters":[{"name":"change_id","in":"path","required":true,"schema":{"type":"string","title":"Change Id"}},{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/gate/federation/identity-claim":{"post":{"tags":["CAIN-42 Fabric Gate"],"summary":"Fed Claim","operationId":"fed_claim_fabric_gate_federation_identity_claim_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Claim"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/status":{"get":{"tags":["CAIN-42 Epoch 10"],"summary":"Status","operationId":"status_epoch10_status_get","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/identity":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Register Identity","operationId":"register_identity_epoch10_identity_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentityReq"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/graph/node":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Graph Node","operationId":"graph_node_epoch10_graph_node_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NodeReq"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/graph/edge":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Graph Edge","operationId":"graph_edge_epoch10_graph_edge_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EdgeReq"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/trust-path":{"get":{"tags":["CAIN-42 Epoch 10"],"summary":"Trust Path","operationId":"trust_path_epoch10_trust_path_get","parameters":[{"name":"agent","in":"query","required":true,"schema":{"type":"string","title":"Agent"}},{"name":"resource","in":"query","required":true,"schema":{"type":"string","title":"Resource"}},{"name":"action","in":"query","required":true,"schema":{"type":"string","title":"Action"}},{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/token":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Issue Token","operationId":"issue_token_epoch10_token_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenReq"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/execute":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Execute","operationId":"execute_epoch10_execute_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecReq"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/revoke/agent":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Revoke Agent","operationId":"revoke_agent_epoch10_revoke_agent_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevokeReq"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/revoke/grant":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Revoke Grant","operationId":"revoke_grant_epoch10_revoke_grant_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevokeReq"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/journal":{"get":{"tags":["CAIN-42 Epoch 10"],"summary":"Journal","operationId":"journal_epoch10_journal_get","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/invariants/run":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Run Invariants","operationId":"run_invariants_epoch10_invariants_run_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/verify/proof":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Verify Proof","operationId":"verify_proof_epoch10_verify_proof_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProofVerifyReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/epoch10/verify/journal":{"post":{"tags":["CAIN-42 Epoch 10"],"summary":"Verify Journal","operationId":"verify_journal_epoch10_verify_journal_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JournalVerifyReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/epoch10/manifest.json":{"get":{"tags":["CAIN-42 Epoch 10 public evidence"],"summary":"Manifest","operationId":"manifest_api_v1_epoch10_manifest_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/epoch10/{name}":{"get":{"tags":["CAIN-42 Epoch 10 public evidence"],"summary":"Artifact","operationId":"artifact_api_v1_epoch10__name__get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/epoch10/selftest/run":{"get":{"tags":["CAIN-42 Epoch 10 public evidence"],"summary":"Selftest","operationId":"selftest_api_v1_epoch10_selftest_run_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/epoch10/selftest/bundle.json":{"get":{"tags":["CAIN-42 Epoch 10 public evidence"],"summary":"Selftest Bundle","operationId":"selftest_bundle_api_v1_epoch10_selftest_bundle_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/frontier-trust/manifest":{"get":{"tags":["CAIN-42 frontier trust-engine public evidence"],"summary":"Manifest","operationId":"manifest_api_v1_frontier_trust_manifest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/frontier-trust/{name}":{"get":{"tags":["CAIN-42 frontier trust-engine public evidence"],"summary":"Artifact","operationId":"artifact_api_v1_frontier_trust__name__get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/lab/status":{"get":{"tags":["CAIN-42 public lab"],"summary":"Status","operationId":"status_api_v1_lab_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/lab/live-proofs":{"get":{"tags":["CAIN-42 public lab"],"summary":"Live Proofs","operationId":"live_proofs_api_v1_lab_live_proofs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/lab/authorize":{"post":{"tags":["CAIN-42 public lab"],"summary":"Authorize","operationId":"authorize_api_v1_lab_authorize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizeReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/lab/fault":{"post":{"tags":["CAIN-42 public lab"],"summary":"Fault","operationId":"fault_api_v1_lab_fault_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FaultReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sites":{"get":{"tags":["CAIN-42 Sites"],"summary":"Cain Sites","operationId":"cain_sites_api_v1_sites_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/site-profile":{"get":{"tags":["CAIN-42 Sites"],"summary":"Cain Site Profile","operationId":"cain_site_profile_api_v1_site_profile_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/trajectories/policies":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"List Policies","description":"List all trajectory policies for tenant.","operationId":"list_policies_fabric_trajectories_policies_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response List Policies Fabric Trajectories Policies Get"}}}}}},"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Create Policy","description":"Create a trajectory policy.","operationId":"create_policy_fabric_trajectories_policies_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_create_policy_fabric_trajectories_policies_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Create Policy Fabric Trajectories Policies Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/policies/{policy_id}":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Policy","description":"Get a trajectory policy.","operationId":"get_policy_fabric_trajectories_policies__policy_id__get","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Policy Fabric Trajectories Policies  Policy Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/passport/issue":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Issue Passport","description":"Issue a cryptographically signed Trajectory Passport.","operationId":"issue_passport_fabric_trajectories_passport_issue_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IssuePassportRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Issue Passport Fabric Trajectories Passport Issue Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/passport/verify":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Verify Passport","description":"Independently verify a portable Trajectory Passport.\nAccepts full passport dict or {'passport': {...}}.","operationId":"verify_passport_fabric_trajectories_passport_verify_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Verify Passport Fabric Trajectories Passport Verify Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/passport/{passport_id}":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Passport","description":"Retrieve an issued passport by ID.","operationId":"get_passport_fabric_trajectories_passport__passport_id__get","parameters":[{"name":"passport_id","in":"path","required":true,"schema":{"type":"string","title":"Passport Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Passport Fabric Trajectories Passport  Passport Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/passport/{passport_id}/revoke":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Revoke Passport","description":"Revoke a Trajectory Passport.","operationId":"revoke_passport_fabric_trajectories_passport__passport_id__revoke_post","parameters":[{"name":"passport_id","in":"path","required":true,"schema":{"type":"string","title":"Passport Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Revoke Passport Fabric Trajectories Passport  Passport Id  Revoke Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/state/{agent_id}":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Agent Trust State","description":"Get the current trust state, composite score, and dimensions for an agent.","operationId":"get_agent_trust_state_fabric_trajectories_state__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Agent Trust State Fabric Trajectories State  Agent Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Create Trajectory","description":"Create a new trajectory.","operationId":"create_trajectory_fabric_trajectories__post","parameters":[{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/CreateTrajectoryRequest"},{"type":"null"}],"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Trajectory Fabric Trajectories  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"List Trajectories","description":"List trajectories for the tenant.","operationId":"list_trajectories_fabric_trajectories__get","parameters":[{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"state","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Trajectories Fabric Trajectories  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Trajectory","description":"Get a trajectory by ID.","operationId":"get_trajectory_fabric_trajectories__trajectory_id__get","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Trajectory Fabric Trajectories  Trajectory Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/complete":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Complete Trajectory","description":"Mark a trajectory as completed.","operationId":"complete_trajectory_fabric_trajectories__trajectory_id__complete_post","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Complete Trajectory Fabric Trajectories  Trajectory Id  Complete Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/cancel":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Cancel Trajectory","description":"Cancel a trajectory.","operationId":"cancel_trajectory_fabric_trajectories__trajectory_id__cancel_post","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Cancel Trajectory Fabric Trajectories  Trajectory Id  Cancel Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/events":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Trajectory Events","description":"Get all cryptographically bound events for a trajectory.","operationId":"get_trajectory_events_fabric_trajectories__trajectory_id__events_get","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response Get Trajectory Events Fabric Trajectories  Trajectory Id  Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Record Event To Trajectory","description":"Submit a verified event to the trajectory and seal with Ed25519 node attestation.","operationId":"record_event_to_trajectory_fabric_trajectories__trajectory_id__events_post","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordEventRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Record Event To Trajectory Fabric Trajectories  Trajectory Id  Events Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/verify":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Verify Trajectory Chain","description":"Verify the unbroken causal hash chain and Ed25519 signatures of a trajectory.","operationId":"verify_trajectory_chain_fabric_trajectories__trajectory_id__verify_post","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Verify Trajectory Chain Fabric Trajectories  Trajectory Id  Verify Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/proof":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Trajectory Proof","description":"Get the cryptographic proof bundle for a trajectory.","operationId":"get_trajectory_proof_fabric_trajectories__trajectory_id__proof_get","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Trajectory Proof Fabric Trajectories  Trajectory Id  Proof Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/evaluate":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Evaluate Action","description":"Evaluate whether an action is allowed without recording it.\nSimulation endpoint - does not mutate trajectory state.","operationId":"evaluate_action_fabric_trajectories__trajectory_id__evaluate_post","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}},{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"name":"tool","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"}},{"name":"resource","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"}},{"name":"intent","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intent"}},{"name":"policy_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/EvaluateActionRequest"},{"type":"null"}],"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Evaluate Action Fabric Trajectories  Trajectory Id  Evaluate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/decide":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Make Trajectory Decision","description":"Make a trajectory enforcement decision.\nEvaluates sequence rules, anomalies, records event, and enforces fail-closed semantics.","operationId":"make_trajectory_decision_fabric_trajectories__trajectory_id__decide_post","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}},{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"name":"tool","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"}},{"name":"resource","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"}},{"name":"intent","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intent"}},{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"policy_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/DecideActionRequest"},{"type":"null"}],"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Make Trajectory Decision Fabric Trajectories  Trajectory Id  Decide Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/score":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Trajectory Score","description":"Get the explainable agent trust score derived from this trajectory.","operationId":"get_trajectory_score_fabric_trajectories__trajectory_id__score_get","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Trajectory Score Fabric Trajectories  Trajectory Id  Score Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/counterfactual":{"post":{"tags":["CAIN Trajectory","trajectory"],"summary":"Evaluate Counterfactual","description":"Run counterfactual trust simulation on a trajectory:\n- Omission: What would trust score be if step K never occurred?\n- Minimum evidence: What is required to permit a blocked action?","operationId":"evaluate_counterfactual_fabric_trajectories__trajectory_id__counterfactual_post","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/trajectory_api__CounterfactualRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Evaluate Counterfactual Fabric Trajectories  Trajectory Id  Counterfactual Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/trajectories/{trajectory_id}/evidence":{"get":{"tags":["CAIN Trajectory","trajectory"],"summary":"Get Trajectory Evidence","description":"Export complete trajectory evidence with Ed25519 and HMAC integrity.","operationId":"get_trajectory_evidence_fabric_trajectories__trajectory_id__evidence_get","parameters":[{"name":"trajectory_id","in":"path","required":true,"schema":{"type":"string","title":"Trajectory Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Trajectory Evidence Fabric Trajectories  Trajectory Id  Evidence Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/trajectory/events":{"post":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Post Trajectory Events","description":"Submit a verified event to a trajectory (Phase 8).","operationId":"trust_post_trajectory_events_trust_trajectory_events_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrustTrajectoryEventRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Trust Post Trajectory Events Trust Trajectory Events Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/trajectory/verify":{"post":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Post Trajectory Verify","description":"Verify cryptographic chain integrity of a trajectory (Phase 8).","operationId":"trust_post_trajectory_verify_trust_trajectory_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrustVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Trust Post Trajectory Verify Trust Trajectory Verify Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/trajectory/{id}":{"get":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Get Trajectory","description":"Get trajectory details by ID (Phase 8).","operationId":"trust_get_trajectory_trust_trajectory__id__get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trust Get Trajectory Trust Trajectory  Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/trajectory/{id}/proof":{"get":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Get Trajectory Proof","description":"Get cryptographic proof bundle for a trajectory (Phase 8).","operationId":"trust_get_trajectory_proof_trust_trajectory__id__proof_get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trust Get Trajectory Proof Trust Trajectory  Id  Proof Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/passport/issue":{"post":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Post Passport Issue","description":"Issue a portable Trajectory Passport (Phase 8).","operationId":"trust_post_passport_issue_trust_passport_issue_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IssuePassportRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Trust Post Passport Issue Trust Passport Issue Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/passport/verify":{"post":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Post Passport Verify","description":"Independently verify a Trajectory Passport (Phase 8).","operationId":"trust_post_passport_verify_trust_passport_verify_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Trust Post Passport Verify Trust Passport Verify Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/passport/{id}":{"get":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Get Passport","description":"Retrieve an issued Trajectory Passport (Phase 8).","operationId":"trust_get_passport_trust_passport__id__get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trust Get Passport Trust Passport  Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/state/{agent_id}":{"get":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Get State","description":"Get trust state and composite score for an agent (Phase 8).","operationId":"trust_get_state_trust_state__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trust Get State Trust State  Agent Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/state/evaluate":{"post":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Post State Evaluate","description":"Evaluate trust state transition given historical factors (Phase 8).","operationId":"trust_post_state_evaluate_trust_state_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Trust Post State Evaluate Trust State Evaluate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/action/evaluate":{"post":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Post Action Evaluate","description":"Pre-flight simulation of action safety without recording (Phase 8).","operationId":"trust_post_action_evaluate_trust_action_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrustActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Trust Post Action Evaluate Trust Action Evaluate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/action/enforce":{"post":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Post Action Enforce","description":"Make trajectory enforcement decision and seal in evidence chain (Phase 8).","operationId":"trust_post_action_enforce_trust_action_enforce_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrustActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Trust Post Action Enforce Trust Action Enforce Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust/evidence/{id}":{"get":{"tags":["CAIN Canonical Trust Runtime","CAIN Canonical Trust Runtime"],"summary":"Trust Get Evidence","description":"Retrieve trajectory event evidence by evidence ID (Phase 8).","operationId":"trust_get_evidence_trust_evidence__id__get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trust Get Evidence Trust Evidence  Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/security/health":{"get":{"tags":["CAIN Agent Security","agent-security"],"summary":"Security Health","description":"Check if security engine is healthy.","operationId":"security_health_fabric_security_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/security/evaluate":{"post":{"tags":["CAIN Agent Security","agent-security"],"summary":"Evaluate Security","description":"Evaluate security for an action.\n\nThis endpoint runs the action through all security checks and returns\nthe verdict along with any threat detections.\n\nCAIN 24.0: `identity_active`/`delegation_valid`/`trajectory_safe` are a\nfallback only. Pass `identity_id` (and, if relevant, `delegation_id` /\n`trajectory_id` / `required_capability`) to have this endpoint\nindependently re-derive those facts from identity_engine and\ntrajectory_enforcement rather than trusting the caller's claim -- see\nAgentSecurityEngine.evaluate_security's docstring.","operationId":"evaluate_security_fabric_security_evaluate_post","parameters":[{"name":"action","in":"query","required":true,"schema":{"type":"string","title":"Action"}},{"name":"tool","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"}},{"name":"resource","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"principal_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal Id"}},{"name":"identity_active","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Identity Active"}},{"name":"delegation_valid","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Delegation Valid"}},{"name":"credential_scope_valid","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Credential Scope Valid"}},{"name":"trajectory_safe","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Trajectory Safe"}},{"name":"policy_compliant","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Policy Compliant"}},{"name":"mcp_authorized","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Mcp Authorized"}},{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"delegation_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Delegation Id"}},{"name":"required_capability","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Required Capability"}},{"name":"trajectory_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Previous Actions"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Evaluate Security Fabric Security Evaluate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/security/autonomy-trust/{agent_id}":{"get":{"tags":["CAIN Agent Security","agent-security"],"summary":"Get Autonomy Trust State","description":"CAIN 24.0 Section 1: Autonomous Trust State.\n\nIndependently re-derives identity/capability/trajectory/delegation trust\nfrom the real subsystems of record (never from a caller-supplied claim)\nand combines them with MIN() semantics -- the effective autonomy is\ncapped by the worst dimension, never averaged up by the others. Omitting\n`identity_id`/`trajectory_id`/`delegation_id` does not default that\ndimension to trusted; it is scored as unverified/fail-closed instead (see\n`AgentSecurityEngine.compute_autonomy_trust_state`).","operationId":"get_autonomy_trust_state_fabric_security_autonomy_trust__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"trajectory_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"}},{"name":"delegation_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Delegation Id"}},{"name":"required_capability","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Required Capability"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Autonomy Trust State Fabric Security Autonomy Trust  Agent Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/security/threats":{"get":{"tags":["CAIN Agent Security","agent-security"],"summary":"Get Threats","description":"Get threat events for the tenant.","operationId":"get_threats_fabric_security_threats_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"threat_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Threat Type"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response Get Threats Fabric Security Threats Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/security/posture/{agent_id}":{"get":{"tags":["CAIN Agent Security","agent-security"],"summary":"Get Agent Posture","description":"Get security posture for an agent.","operationId":"get_agent_posture_fabric_security_posture__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Agent Posture Fabric Security Posture  Agent Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/security/posture":{"get":{"tags":["CAIN Agent Security","agent-security"],"summary":"List Postures","description":"List all agent postures for the tenant.","operationId":"list_postures_fabric_security_posture_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Postures Fabric Security Posture Get"}}}}}},"post":{"tags":["CAIN Agent Security","agent-security"],"summary":"Create Or Update Posture","description":"Create or update agent security posture.","operationId":"create_or_update_posture_fabric_security_posture_post","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"identity_owner","in":"query","required":true,"schema":{"type":"string","title":"Identity Owner"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","default":"active","title":"Status"}},{"name":"risk_level","in":"query","required":false,"schema":{"type":"string","default":"low","title":"Risk Level"}},{"name":"trust_level","in":"query","required":false,"schema":{"type":"string","default":"verified","title":"Trust Level"}},{"name":"credential_scope","in":"query","required":false,"schema":{"type":"string","default":"","title":"Credential Scope"}},{"name":"current_trajectory_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Trajectory Id"}},{"name":"current_policy_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Policy Id"}},{"name":"kill_switch_state","in":"query","required":false,"schema":{"type":"string","default":"inactive","title":"Kill Switch State"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_create_or_update_posture_fabric_security_posture_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Or Update Posture Fabric Security Posture Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/security/contain/{agent_id}":{"post":{"tags":["CAIN Agent Security","agent-security"],"summary":"Contain Agent","description":"Contain an agent (emergency stop).","operationId":"contain_agent_fabric_security_contain__agent_id__post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"reason","in":"query","required":false,"schema":{"type":"string","default":"security_incident","title":"Reason"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Contain Agent Fabric Security Contain  Agent Id  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/security/incidents":{"get":{"tags":["CAIN Agent Security","agent-security"],"summary":"Get Incidents","description":"Get security incidents (high severity threats).","operationId":"get_incidents_fabric_security_incidents_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response Get Incidents Fabric Security Incidents Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/health":{"get":{"tags":["CAIN Trace","cain-trace"],"summary":"Trace Health","description":"Check if trace system is healthy.","operationId":"trace_health_fabric_traces_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/traces/":{"post":{"tags":["CAIN Trace","cain-trace"],"summary":"Create Trace","description":"Create a new execution trace.","operationId":"create_trace_fabric_traces__post","parameters":[{"name":"action","in":"query","required":true,"schema":{"type":"string","title":"Action"}},{"name":"tool","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"}},{"name":"resource","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},{"name":"chain_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Chain Id"}},{"name":"parent_trace_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Trace Id"}},{"name":"trace_type","in":"query","required":false,"schema":{"type":"string","default":"action","title":"Trace Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Trace Fabric Traces  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Trace","cain-trace"],"summary":"List Traces","description":"List traces for the tenant.","operationId":"list_traces_fabric_traces__get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"verdict","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verdict"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Traces Fabric Traces  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/{trace_id}":{"get":{"tags":["CAIN Trace","cain-trace"],"summary":"Get Trace Endpoint","description":"Get a trace by ID.","operationId":"get_trace_endpoint_fabric_traces__trace_id__get","parameters":[{"name":"trace_id","in":"path","required":true,"schema":{"type":"string","title":"Trace Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Trace Endpoint Fabric Traces  Trace Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/{trace_id}/events":{"get":{"tags":["CAIN Trace","cain-trace"],"summary":"Get Trace Events","description":"Get all events for a trace.","operationId":"get_trace_events_fabric_traces__trace_id__events_get","parameters":[{"name":"trace_id","in":"path","required":true,"schema":{"type":"string","title":"Trace Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response Get Trace Events Fabric Traces  Trace Id  Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/{trace_id}/graph":{"get":{"tags":["CAIN Trace","cain-trace"],"summary":"Get Trace Graph","description":"Get trace as execution graph.","operationId":"get_trace_graph_fabric_traces__trace_id__graph_get","parameters":[{"name":"trace_id","in":"path","required":true,"schema":{"type":"string","title":"Trace Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Trace Graph Fabric Traces  Trace Id  Graph Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/{trace_id}/evidence":{"get":{"tags":["CAIN Trace","cain-trace"],"summary":"Get Trace Evidence","description":"Get trace evidence.","operationId":"get_trace_evidence_fabric_traces__trace_id__evidence_get","parameters":[{"name":"trace_id","in":"path","required":true,"schema":{"type":"string","title":"Trace Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Trace Evidence Fabric Traces  Trace Id  Evidence Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/{trace_id}/decision":{"post":{"tags":["CAIN Trace","cain-trace"],"summary":"Record Trace Decision","description":"Record a decision for a trace.","operationId":"record_trace_decision_fabric_traces__trace_id__decision_post","parameters":[{"name":"trace_id","in":"path","required":true,"schema":{"type":"string","title":"Trace Id"}},{"name":"verdict","in":"query","required":true,"schema":{"type":"string","title":"Verdict"}},{"name":"policy_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"}},{"name":"risk_score","in":"query","required":false,"schema":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Risk Score"}},{"name":"reason","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Record Trace Decision Fabric Traces  Trace Id  Decision Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/{trace_id}/finalize":{"post":{"tags":["CAIN Trace","cain-trace"],"summary":"Finalize Trace","description":"Finalize a trace.","operationId":"finalize_trace_fabric_traces__trace_id__finalize_post","parameters":[{"name":"trace_id","in":"path","required":true,"schema":{"type":"string","title":"Trace Id"}},{"name":"status","in":"query","required":true,"schema":{"type":"string","title":"Status"}},{"name":"verdict","in":"query","required":true,"schema":{"type":"string","title":"Verdict"}},{"name":"outcome","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Outcome"}},{"name":"duration_ms","in":"query","required":false,"schema":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Duration Ms"}},{"name":"cost_cents","in":"query","required":false,"schema":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Cost Cents"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Finalize Trace Fabric Traces  Trace Id  Finalize Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/search":{"post":{"tags":["CAIN Trace","cain-trace"],"summary":"Search Traces","description":"Search traces with filters.","operationId":"search_traces_fabric_traces_search_post","parameters":[{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"name":"tool","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"}},{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"verdict","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verdict"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"date_from","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date From"}},{"name":"date_to","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date To"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response Search Traces Fabric Traces Search Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/traces/stats/summary":{"get":{"tags":["CAIN Trace","cain-trace"],"summary":"Get Stats","description":"Get trace statistics for tenant.","operationId":"get_stats_fabric_traces_stats_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Stats Fabric Traces Stats Summary Get"}}}}}}},"/fabric/budgets/health":{"get":{"tags":["CAIN Budget","cain-budget"],"summary":"Budget Health","description":"Check if budget system is healthy.","operationId":"budget_health_fabric_budgets_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/budgets":{"get":{"tags":["CAIN Budget","cain-budget"],"summary":"List Budgets","description":"List all budgets for a tenant.","operationId":"list_budgets_fabric_budgets_get","parameters":[{"name":"scope","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"}},{"name":"scope_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Budget","cain-budget"],"summary":"Create Budget","description":"Create a new budget.","operationId":"create_budget_fabric_budgets_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBudgetRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}":{"get":{"tags":["CAIN Budget","cain-budget"],"summary":"Get Budget","description":"Get a specific budget.","operationId":"get_budget_fabric_budgets__budget_id__get","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["CAIN Budget","cain-budget"],"summary":"Update Budget","description":"Update a budget.","operationId":"update_budget_fabric_budgets__budget_id__patch","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateBudgetRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}/freeze":{"post":{"tags":["CAIN Budget","cain-budget"],"summary":"Freeze Budget","description":"Freeze a budget to prevent spending.","operationId":"freeze_budget_fabric_budgets__budget_id__freeze_post","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}/unfreeze":{"post":{"tags":["CAIN Budget","cain-budget"],"summary":"Unfreeze Budget","description":"Unfreeze a budget to allow spending.","operationId":"unfreeze_budget_fabric_budgets__budget_id__unfreeze_post","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}/usage":{"get":{"tags":["CAIN Budget","cain-budget"],"summary":"Get Budget Usage","description":"Get budget usage statistics.","operationId":"get_budget_usage_fabric_budgets__budget_id__usage_get","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}},{"name":"period_start","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Period Start"}},{"name":"period_end","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Period End"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}/transactions":{"get":{"tags":["CAIN Budget","cain-budget"],"summary":"List Transactions","description":"List budget transactions.","operationId":"list_transactions_fabric_budgets__budget_id__transactions_get","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/evaluate":{"post":{"tags":["CAIN Budget","cain-budget"],"summary":"Evaluate Budget","description":"Evaluate if an action is allowed under budget constraints.","operationId":"evaluate_budget_fabric_budgets_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_budget_api__EvaluateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}/reserve":{"post":{"tags":["CAIN Budget","cain-budget"],"summary":"Reserve Budget","description":"Reserve budget for an action.","operationId":"reserve_budget_fabric_budgets__budget_id__reserve_post","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReserveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}/commit/{reservation_id}":{"post":{"tags":["CAIN Budget","cain-budget"],"summary":"Commit Reservation","description":"Commit a budget reservation.","operationId":"commit_reservation_fabric_budgets__budget_id__commit__reservation_id__post","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}},{"name":"reservation_id","in":"path","required":true,"schema":{"type":"string","title":"Reservation Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommitRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/budgets/{budget_id}/release/{reservation_id}":{"post":{"tags":["CAIN Budget","cain-budget"],"summary":"Release Reservation","description":"Release a budget reservation without committing.","operationId":"release_reservation_fabric_budgets__budget_id__release__reservation_id__post","parameters":[{"name":"budget_id","in":"path","required":true,"schema":{"type":"string","title":"Budget Id"}},{"name":"reservation_id","in":"path","required":true,"schema":{"type":"string","title":"Reservation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/agi/sandbox-tools":{"get":{"tags":["CAIN AGI Control Boundary","CAIN AGI Control Boundary"],"summary":"Agi Sandbox Tools","description":"The only action_verbs submit_proposal() can ever actually execute\n(STAGE 10) -- everything else authorizes-then-no-ops with\nno_sandbox_executor_registered, by design.","operationId":"agi_sandbox_tools_fabric_agi_sandbox_tools_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/agi/propose":{"post":{"tags":["CAIN AGI Control Boundary","CAIN AGI Control Boundary"],"summary":"Agi Submit Proposal","description":"Runs a proposal through the real, full ControlBoundary pipeline,\nincluding the last-mile enforcement stage. `agent_id` must already be a\nregistered ACTIVE identity in this tenant (see the CAIN Identity API)\nholding capability `tool:{action_verb}` -- this endpoint grants no\nauthority of its own, it only evaluates what identity_engine already\nsays the caller has.","operationId":"agi_submit_proposal_fabric_agi_propose_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubmitProposalRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/agi/evidence-chain":{"get":{"tags":["CAIN AGI Control Boundary","CAIN AGI Control Boundary"],"summary":"Agi Evidence Chain","description":"Independently reconstructs and verifies this tenant's hash-chained\nevidence log -- does not trust any runtime success flag, re-walks the\nchain from the stored records themselves.","operationId":"agi_evidence_chain_fabric_agi_evidence_chain_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/agi/evidence-chain.cef":{"get":{"tags":["CAIN AGI Control Boundary","CAIN AGI Control Boundary"],"summary":"Agi Evidence Chain Cef","description":"SIEM/SOC integration (Phase 32): this tenant's evidence exported as\nArcSight Common Event Format, one event per line -- a real, widely-\nsupported ingestion format (Splunk/QRadar/Sentinel/ArcSight), not a\nproprietary CAIN-only shape. See cain_siem_export.py. Each line carries\nits own record_hash/prev_hash so a SIEM (or anyone) can cross-check\nagainst /fabric/agi/evidence-chain rather than trusting the export.","operationId":"agi_evidence_chain_cef_fabric_agi_evidence_chain_cef_get","parameters":[{"name":"since_sequence","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Since Sequence"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/health":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Governance Health","operationId":"governance_health_fabric_governance_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/governance/policies":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"List Policies","operationId":"list_policies_fabric_governance_policies_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Create Policy","operationId":"create_policy_fabric_governance_policies_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GovernancePolicyCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/policies/{policy_id}":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Get Policy","operationId":"get_policy_fabric_governance_policies__policy_id__get","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Update Policy","operationId":"update_policy_fabric_governance_policies__policy_id__patch","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GovernancePolicyUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/policies/{policy_id}/activate":{"post":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Activate Policy","operationId":"activate_policy_fabric_governance_policies__policy_id__activate_post","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/policies/{policy_id}/deactivate":{"post":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Deactivate Policy","operationId":"deactivate_policy_fabric_governance_policies__policy_id__deactivate_post","parameters":[{"name":"policy_id","in":"path","required":true,"schema":{"type":"string","title":"Policy Id"}},{"name":"reason","in":"query","required":false,"schema":{"type":"string","default":"","title":"Reason"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/authorities":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"List Authorities","operationId":"list_authorities_fabric_governance_authorities_get","parameters":[{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Create Authority","operationId":"create_authority_fabric_governance_authorities_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorityCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/authorities/{authority_id}":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Get Authority","operationId":"get_authority_fabric_governance_authorities__authority_id__get","parameters":[{"name":"authority_id","in":"path","required":true,"schema":{"type":"string","title":"Authority Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Revoke Authority","operationId":"revoke_authority_fabric_governance_authorities__authority_id__delete","parameters":[{"name":"authority_id","in":"path","required":true,"schema":{"type":"string","title":"Authority Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/approvals":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"List Approvals","operationId":"list_approvals_fabric_governance_approvals_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"authority_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authority Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Create Approval","operationId":"create_approval_fabric_governance_approvals_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApprovalRequestCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/approvals/{approval_id}":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Get Approval","operationId":"get_approval_fabric_governance_approvals__approval_id__get","parameters":[{"name":"approval_id","in":"path","required":true,"schema":{"type":"string","title":"Approval Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/approvals/{approval_id}/decide":{"post":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Decide Approval","operationId":"decide_approval_fabric_governance_approvals__approval_id__decide_post","parameters":[{"name":"approval_id","in":"path","required":true,"schema":{"type":"string","title":"Approval Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApprovalDecision"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/evaluate":{"post":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Evaluate Governance","operationId":"evaluate_governance_fabric_governance_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GovernanceEvaluateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/decisions":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"List Decisions","operationId":"list_decisions_fabric_governance_decisions_get","parameters":[{"name":"governance_policy_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Governance Policy Id"}},{"name":"identity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/audit":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"Get Audit Log","operationId":"get_audit_log_fabric_governance_audit_get","parameters":[{"name":"actor_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor Id"}},{"name":"target_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id"}},{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/governance/delegations":{"get":{"tags":["CAIN Governance","CAIN Governance"],"summary":"List Delegations","operationId":"list_delegations_fabric_governance_delegations_get","parameters":[{"name":"delegate_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Delegate Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/store":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Store Memory","description":"Store a new memory with admission control.","operationId":"api_store_memory_fabric_memory_store_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoreMemoryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/get/{memory_id}":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Get Memory","description":"Retrieve a memory by ID with tenant isolation.","operationId":"api_get_memory_fabric_memory_get__memory_id__get","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/update/{memory_id}":{"patch":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Update Memory","description":"Update a memory entry.","operationId":"api_update_memory_fabric_memory_update__memory_id__patch","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMemoryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/delete/{memory_id}":{"delete":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Delete Memory","description":"Soft-delete a memory.","operationId":"api_delete_memory_fabric_memory_delete__memory_id__delete","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/trust/{memory_id}":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Set Trust Level","description":"Set trust level for a memory.","operationId":"api_set_trust_level_fabric_memory_trust__memory_id__post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTrustLevelRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/query":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Query Memories","description":"Query memories with filters.","operationId":"api_query_memories_fabric_memory_query_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMemoriesRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/stats":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Get Stats","description":"Get memory statistics for tenant.","operationId":"api_get_stats_fabric_memory_stats_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/quarantine/{memory_id}":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Quarantine Memory","description":"Quarantine a memory.","operationId":"api_quarantine_memory_fabric_memory_quarantine__memory_id__post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"reason","in":"query","required":true,"schema":{"type":"string","minLength":1,"title":"Reason"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/operations":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Get Operations","description":"Get memory operations audit log.","operationId":"api_get_operations_fabric_memory_operations_get","parameters":[{"name":"memory_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Memory Id"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/expire":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Expire Memories","description":"Expire all memories past their expiration time.","operationId":"api_expire_memories_fabric_memory_expire_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/validate":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Validate Memory","description":"Validate a memory and potentially promote its trust level.","operationId":"api_validate_memory_fabric_memory__memory_id__validate_post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateMemoryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/revoke":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Revoke Memory","description":"Revoke a memory, marking it as untrusted.","operationId":"api_revoke_memory_fabric_memory__memory_id__revoke_post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevokeMemoryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/promote":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Promote Memory","description":"Promote a memory to a higher trust level.","operationId":"api_promote_memory_fabric_memory__memory_id__promote_post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"target_level","in":"query","required":true,"schema":{"type":"string","pattern":"^(validated|trusted)$","title":"Target Level"}},{"name":"reason","in":"query","required":false,"schema":{"type":"string","default":"","title":"Reason"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/demote":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Demote Memory","description":"Demote a memory by one trust level.","operationId":"api_demote_memory_fabric_memory__memory_id__demote_post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"reason","in":"query","required":false,"schema":{"type":"string","default":"","title":"Reason"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/restore":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Restore Memory","description":"Restore a deleted or revoked memory if not past retention.","operationId":"api_restore_memory_fabric_memory__memory_id__restore_post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/consolidate":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Consolidate Memories","description":"Consolidate multiple memories into one with a summary.","operationId":"api_consolidate_memories_fabric_memory_consolidate_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsolidateMemoriesRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/forget":{"post":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Forget Memory","description":"Permanently forget a memory (with evidence protection).","operationId":"api_forget_memory_fabric_memory__memory_id__forget_post","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForgetMemoryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api List Memories","description":"List memories with optional filters.","operationId":"api_list_memories_fabric_memory__get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"memory_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Memory Type"}},{"name":"trust_level","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trust Level"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/history":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Get Memory History","description":"Get the version history of a memory.","operationId":"api_get_memory_history_fabric_memory__memory_id__history_get","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/provenance":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Get Memory Provenance","description":"Get the provenance chain of a memory.","operationId":"api_get_memory_provenance_fabric_memory__memory_id__provenance_get","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/{memory_id}/usage":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Get Memory Usage","description":"Get usage information for a memory (access count, last accessed, etc).","operationId":"api_get_memory_usage_fabric_memory__memory_id__usage_get","parameters":[{"name":"memory_id","in":"path","required":true,"schema":{"type":"string","title":"Memory Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/memory/health":{"get":{"tags":["CAIN Memory","CAIN Memory"],"summary":"Api Memory Health","description":"Health check for CAIN Memory service.","operationId":"api_memory_health_fabric_memory_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/skills/health":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"Skills Health","description":"Check if skills system is healthy.","operationId":"skills_health_fabric_skills_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/skills":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Create Skill","description":"Create a new skill.","operationId":"create_skill_fabric_skills_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Skills","cain-skills"],"summary":"List Skills","description":"List all skills for a tenant.","operationId":"list_skills_fabric_skills_get","parameters":[{"name":"state","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"}},{"name":"skill_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Skill Type"}},{"name":"namespace","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Namespace"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/stats":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"Get Stats","description":"Get skill statistics for a tenant.","operationId":"get_stats_fabric_skills_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/skills/{skill_id}":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"Get Skill","description":"Get a specific skill.","operationId":"get_skill_fabric_skills__skill_id__get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/state":{"patch":{"tags":["CAIN Skills","cain-skills"],"summary":"Update Skill State","description":"Update skill state (workflow transitions).","operationId":"update_skill_state_fabric_skills__skill_id__state_patch","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSkillStateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/validate":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Validate Skill","description":"Validate a skill (checking description, inputs, outputs schemas).","operationId":"validate_skill_fabric_skills__skill_id__validate_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/security-scan":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Security Scan Skill","description":"Run security scan on a skill.","operationId":"security_scan_skill_fabric_skills__skill_id__security_scan_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/test":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Test Skill","description":"Test a skill.","operationId":"test_skill_fabric_skills__skill_id__test_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/approve":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Approve Skill","description":"Approve a skill.","operationId":"approve_skill_fabric_skills__skill_id__approve_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApproveSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/activate":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Activate Skill","description":"Activate an approved skill.","operationId":"activate_skill_fabric_skills__skill_id__activate_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/execute":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Execute Skill","description":"Execute an active skill.","operationId":"execute_skill_fabric_skills__skill_id__execute_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/suspend":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Suspend Skill","description":"Suspend an active skill.","operationId":"suspend_skill_fabric_skills__skill_id__suspend_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSkillStateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/revoke":{"post":{"tags":["CAIN Skills","cain-skills"],"summary":"Revoke Skill","description":"Revoke a skill.","operationId":"revoke_skill_fabric_skills__skill_id__revoke_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSkillStateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/versions":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"Get Skill Versions","description":"Get all versions of a skill.","operationId":"get_skill_versions_fabric_skills__skill_id__versions_get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/provenance":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"Get Skill Provenance","description":"Get provenance graph for a skill.","operationId":"get_skill_provenance_fabric_skills__skill_id__provenance_get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/{skill_id}/executions":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"Get Skill Executions","description":"Get execution history for a skill.","operationId":"get_skill_executions_fabric_skills__skill_id__executions_get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/skills/types":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"List Skill Types","description":"List all valid skill types.","operationId":"list_skill_types_fabric_skills_types_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/skills/states":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"List Skill States","description":"List all valid skill states.","operationId":"list_skill_states_fabric_skills_states_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/skills/risk-levels":{"get":{"tags":["CAIN Skills","cain-skills"],"summary":"List Risk Levels","description":"List all valid risk levels.","operationId":"list_risk_levels_fabric_skills_risk_levels_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/guard/health":{"get":{"tags":["CAIN Guard","cain-guard"],"summary":"Guard Health","description":"Check if CAIN Guard is healthy.","operationId":"guard_health_fabric_guard_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/guard/hallucination/check":{"post":{"tags":["CAIN Guard","cain-guard"],"summary":"Check Hallucination","description":"Check LLM output self-consistency for hallucination risk.\n\nCall the same prompt N times at temperature>0. Consistent answers = low risk.\nDrifting answers = high risk.","operationId":"check_hallucination_fabric_guard_hallucination_check_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HallucinationCheckRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/action/verify":{"post":{"tags":["CAIN Guard","cain-guard"],"summary":"Verify Action Plan","description":"Verify an action plan against Z3-backed policy rules.\n\nSupports: VALUE_THRESHOLD_APPROVAL, FORBIDDEN_COMBINATION, RATE_LIMIT\nFails-closed: UNDECIDABLE = BLOCK","operationId":"verify_action_plan_fabric_guard_action_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/a2a/register":{"post":{"tags":["CAIN Guard","cain-guard"],"summary":"Register A2A Card","description":"Register and sign an A2A Agent Card with Ed25519.","operationId":"register_a2a_card_fabric_guard_a2a_register_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/A2ARegisterRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/a2a/verify":{"post":{"tags":["CAIN Guard","cain-guard"],"summary":"Verify A2A Card","description":"Verify an A2A Agent Card signature.","operationId":"verify_a2a_card_fabric_guard_a2a_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_guard_api__A2AVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/a2a/observe":{"post":{"tags":["CAIN Guard","cain-guard"],"summary":"Observe Capability","description":"Record a capability an agent actually used for drift detection.","operationId":"observe_capability_fabric_guard_a2a_observe_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/A2AObserveRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/a2a/nonce/check":{"post":{"tags":["CAIN Guard","cain-guard"],"summary":"Check Nonce","description":"Check nonce for replay protection.","operationId":"check_nonce_fabric_guard_a2a_nonce_check_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/A2ANonceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/a2a/drift/{agent_id}":{"get":{"tags":["CAIN Guard","cain-guard"],"summary":"Check Drift","description":"Check for capability drift between claimed and observed capabilities.","operationId":"check_drift_fabric_guard_a2a_drift__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/a2a/revoke/{agent_id}":{"post":{"tags":["CAIN Guard","cain-guard"],"summary":"Revoke Card","description":"Revoke an A2A Agent Card.","operationId":"revoke_card_fabric_guard_a2a_revoke__agent_id__post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/guard/stats":{"get":{"tags":["CAIN Guard","cain-guard"],"summary":"Get Stats","description":"Get CAIN Guard statistics.","operationId":"get_stats_fabric_guard_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/eval/health":{"get":{"tags":["CAIN Eval","cain-eval"],"summary":"Eval Health","description":"Check if CAIN Eval is healthy.","operationId":"eval_health_fabric_eval_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/eval/trajectory/grade":{"post":{"tags":["CAIN Eval","cain-eval"],"summary":"Grade Trajectory","description":"Grade a successful agent trajectory for path quality.\n\nComputes:\n- Redundant calls (exact tool+args repeats)\n- Wasted cost (steps not ancestors of terminal)\n- Risky-then-corrected patterns\n\nReturns 0-1 score where 1 = optimal path.","operationId":"grade_trajectory_fabric_eval_trajectory_grade_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrajectoryGradeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/eval/trajectory/{grading_id}":{"get":{"tags":["CAIN Eval","cain-eval"],"summary":"Get Grading","description":"Get a trajectory grading by ID.","operationId":"get_grading_fabric_eval_trajectory__grading_id__get","parameters":[{"name":"grading_id","in":"path","required":true,"schema":{"type":"string","title":"Grading Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/eval/contamination/scan":{"post":{"tags":["CAIN Eval","cain-eval"],"summary":"Scan Contamination","description":"Scan for benchmark contamination using membership-inference style probing.\n\nCompares benchmark item overlap vs control set overlap.\nHigh z-score = potential contamination.","operationId":"scan_contamination_fabric_eval_contamination_scan_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContaminationScanRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/eval/contamination/{scan_id}":{"get":{"tags":["CAIN Eval","cain-eval"],"summary":"Get Scan","description":"Get a contamination scan by ID.","operationId":"get_scan_fabric_eval_contamination__scan_id__get","parameters":[{"name":"scan_id","in":"path","required":true,"schema":{"type":"string","title":"Scan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/eval/report":{"post":{"tags":["CAIN Eval","cain-eval"],"summary":"Create Report","description":"Create a comprehensive evaluation report for an agent.","operationId":"create_report_fabric_eval_report_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EvalReportRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/eval/stats":{"get":{"tags":["CAIN Eval","cain-eval"],"summary":"Get Stats","description":"Get CAIN Eval statistics.","operationId":"get_stats_fabric_eval_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/context/health":{"get":{"tags":["CAIN Context","cain-context"],"summary":"Context Health","description":"Check if CAIN Context is healthy.","operationId":"context_health_fabric_context_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/context/context/audit":{"post":{"tags":["CAIN Context","cain-context"],"summary":"Audit Context","description":"Audit an agent's live context window for health issues.\n\nChecks:\n- Redundancy: near-duplicate items via TF cosine similarity\n- Staleness: items not referenced in N steps\n- Omission: references not present in context\n\nReturns health score 0-1 and detailed findings.","operationId":"audit_context_fabric_context_context_audit_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextAuditRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/context/memory/ingest":{"post":{"tags":["CAIN Context","cain-context"],"summary":"Ingest Memory","description":"Ingest a memory item and check for contradictions/corroborations.\n\nReturns trust score and any contradiction flags.","operationId":"ingest_memory_fabric_context_memory_ingest_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemoryIngestRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/context/memory/{agent_id}/{item_id}/trust":{"get":{"tags":["CAIN Context","cain-context"],"summary":"Get Memory Trust","description":"Get trust score for a memory item with decay adjustment.","operationId":"get_memory_trust_fabric_context_memory__agent_id___item_id__trust_get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"string","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/context/memory/audit":{"post":{"tags":["CAIN Context","cain-context"],"summary":"Audit Memory Batch","description":"Batch scan a memory dump for contradictions without prior /ingest calls.\n\nUseful for auditing an existing memory store's export in one pass.","operationId":"audit_memory_batch_fabric_context_memory_audit_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemoryBatchAuditRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/context/memory/{agent_id}":{"get":{"tags":["CAIN Context","cain-context"],"summary":"List Memory Items","description":"List all memory items for an agent.","operationId":"list_memory_items_fabric_context_memory__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/context/context/audit/{audit_id}":{"get":{"tags":["CAIN Context","cain-context"],"summary":"Get Context Audit","description":"Get a context audit by ID.","operationId":"get_context_audit_fabric_context_context_audit__audit_id__get","parameters":[{"name":"audit_id","in":"path","required":true,"schema":{"type":"string","title":"Audit Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/context/stats":{"get":{"tags":["CAIN Context","cain-context"],"summary":"Get Stats","description":"Get CAIN Context statistics.","operationId":"get_stats_fabric_context_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/plans":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Create Plan","description":"Create a new plan.","operationId":"create_plan_fabric_plans_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Planner","cain-planner"],"summary":"List Plans","description":"List plans for tenant.","operationId":"list_plans_fabric_plans_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"state","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/stats":{"get":{"tags":["CAIN Planner","cain-planner"],"summary":"Get Planner Stats","description":"Get planner statistics.","operationId":"get_planner_stats_fabric_plans_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/plans/{plan_id}":{"get":{"tags":["CAIN Planner","cain-planner"],"summary":"Get Plan","description":"Get a specific plan.","operationId":"get_plan_fabric_plans__plan_id__get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/validate":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Validate Plan","description":"Validate a plan (DAG, constraints).","operationId":"validate_plan_fabric_plans__plan_id__validate_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/verify":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Verify Plan","description":"Verify a plan with ActionProof.","operationId":"verify_plan_fabric_plans__plan_id__verify_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/approve":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Approve Plan","description":"Approve a plan.","operationId":"approve_plan_fabric_plans__plan_id__approve_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanApproveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/reject":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Reject Plan","description":"Reject a plan.","operationId":"reject_plan_fabric_plans__plan_id__reject_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanRejectRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/execute":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Execute Plan","description":"Execute an approved plan.","operationId":"execute_plan_fabric_plans__plan_id__execute_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/cancel":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Cancel Plan","description":"Cancel a plan.","operationId":"cancel_plan_fabric_plans__plan_id__cancel_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanCancelRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/replan":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Replan","description":"Create a new version of a plan.","operationId":"replan_fabric_plans__plan_id__replan_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanReplanRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/compare":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Compare Plan","description":"Compare two plans.","operationId":"compare_plan_fabric_plans__plan_id__compare_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanCompareRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/versions":{"get":{"tags":["CAIN Planner","cain-planner"],"summary":"Get Plan Versions","description":"Get all versions of a plan.","operationId":"get_plan_versions_fabric_plans__plan_id__versions_get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/provenance":{"get":{"tags":["CAIN Planner","cain-planner"],"summary":"Get Plan Provenance","description":"Get plan provenance (audit trail).","operationId":"get_plan_provenance_fabric_plans__plan_id__provenance_get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/trajectory":{"get":{"tags":["CAIN Planner","cain-planner"],"summary":"Get Plan Trajectory","description":"Get planned vs actual trajectory.","operationId":"get_plan_trajectory_fabric_plans__plan_id__trajectory_get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/evidence":{"get":{"tags":["CAIN Planner","cain-planner"],"summary":"Get Plan Evidence","description":"Get plan evidence.","operationId":"get_plan_evidence_fabric_plans__plan_id__evidence_get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/{plan_id}/revalidate":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Revalidate Plan","description":"Revalidate a plan (check TTL, re-verify).","operationId":"revalidate_plan_fabric_plans__plan_id__revalidate_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/generate":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Generate Plan","description":"Generate a plan (alias for create).","operationId":"generate_plan_fabric_plans_generate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanGenerateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/plans/candidates":{"post":{"tags":["CAIN Planner","cain-planner"],"summary":"Generate Candidates","description":"Generate multiple candidate plans (exploratory mode).","operationId":"generate_candidates_fabric_plans_candidates_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanCandidatesRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/runs":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"List Runs","description":"List agent runs for tenant.","operationId":"list_runs_fabric_observability_runs_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Create Run","description":"Create/start a new agent run (internal use).","operationId":"create_run_fabric_observability_runs_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/observability/runs/{run_id}":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Run","description":"Get a specific agent run.","operationId":"get_run_fabric_observability_runs__run_id__get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/runs/{run_id}/end":{"post":{"tags":["CAIN Observability","CAIN Observability"],"summary":"End Run","description":"End an agent run.","operationId":"end_run_fabric_observability_runs__run_id__end_post","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/runs/{run_id}/events":{"post":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Record Event","description":"Record an event for a run.","operationId":"record_event_fabric_observability_runs__run_id__events_post","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/runs/{run_id}/timeline":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Timeline","description":"Get the chronological timeline of events for a run.","operationId":"get_timeline_fabric_observability_runs__run_id__timeline_get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/runs/{run_id}/graph":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Trajectory Graph","description":"Get the trust graph for a run.","operationId":"get_trajectory_graph_fabric_observability_runs__run_id__graph_get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/runs/{run_id}/trajectory":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Trajectory Analysis","description":"Get trajectory analysis for a run.","operationId":"get_trajectory_analysis_fabric_observability_runs__run_id__trajectory_get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/events":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"List Events","description":"List trust events with filters.","operationId":"list_events_fabric_observability_events_get","parameters":[{"name":"event_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"}},{"name":"stage","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stage"}},{"name":"start_time","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Time"}},{"name":"end_time","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Time"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"default":1000,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/decisions/{decision_id}":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Decision Forensics","description":"Get decision forensics for a specific decision.","operationId":"get_decision_forensics_fabric_observability_decisions__decision_id__get","parameters":[{"name":"decision_id","in":"path","required":true,"schema":{"type":"string","title":"Decision Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/decisions":{"post":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Record Decision","description":"Record a decision (internal use).","operationId":"record_decision_fabric_observability_decisions_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"List Decisions","description":"List all authorization decisions.","operationId":"list_decisions_fabric_observability_decisions_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/agents/{agent_id}/health":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Agent Health","description":"Get health metrics for an agent.","operationId":"get_agent_health_fabric_observability_agents__agent_id__health_get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"period_hours","in":"query","required":false,"schema":{"type":"integer","maximum":720,"minimum":1,"default":24,"title":"Period Hours"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/health":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Trust Health","description":"Get overall trust health score for tenant.","operationId":"get_trust_health_fabric_observability_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/observability/incidents":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"List Incidents","description":"List incidents for tenant.","operationId":"list_incidents_fabric_observability_incidents_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"severity","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Severity"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Create Incident","description":"Create a new incident.","operationId":"create_incident_fabric_observability_incidents_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/observability/incidents/{incident_id}":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Incident","description":"Get a specific incident with its timeline.","operationId":"get_incident_fabric_observability_incidents__incident_id__get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/search":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Search","description":"Search across runs, events, and decisions.","operationId":"search_fabric_observability_search_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"event_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"principal","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal"}},{"name":"run_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Run Id"}},{"name":"decision_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision Id"}},{"name":"evidence_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Id"}},{"name":"verdict","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verdict"}},{"name":"start_time","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Time"}},{"name":"end_time","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Time"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/stream":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Event Stream","description":"Real-time event stream via SSE (Server-Sent Events).\n\nSTATUS: PLANNED - Currently uses in-memory queue (asyncio.Queue).\nDoes NOT work with --workers > 1 (multiple uvicorn processes).\nRequires Redis pub/sub for production multi-worker deployment.\n\nAuth: Requires X-Tenant-ID header.","operationId":"event_stream_fabric_observability_stream_get","parameters":[{"name":"mode","in":"query","required":false,"schema":{"$ref":"#/components/schemas/EventStreamMode","default":"sse"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/causal/{run_id}":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Causal View","description":"Get causal execution chain view for a run.\nShows: INTENT -> DECISION -> ACTION -> ENFORCEMENT -> EXECUTION -> RESULT -> EVIDENCE","operationId":"get_causal_view_fabric_observability_causal__run_id__get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/memory/influence/{run_id}":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Memory Influence","description":"Get memory entries and events that influenced a run.","operationId":"get_memory_influence_fabric_observability_memory_influence__run_id__get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/security/events":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Security Events","description":"Get security-related events for tenant from CAIN Guard and Observability.","operationId":"get_security_events_fabric_observability_security_events_get","parameters":[{"name":"start_time","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Time"}},{"name":"end_time","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Time"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/sync/runtime":{"post":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Sync Runtime Events","description":"Sync runtime events from runtime.db to observability.\n\nMaps runtime events to canonical observability event types:\n- session.created -> agent.started\n- session.completed -> agent.completed\n- step.executed -> tool.executed\n- task.created -> intent.created\n- task.completed -> execution.completed\n- checkpoint.saved -> evidence.created\n\nThis enables full run reconstruction from runtime.db data.","operationId":"sync_runtime_events_fabric_observability_sync_runtime_post","parameters":[{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"default":1000,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/changelog":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Changelog","description":"Get changelog entries for the past N days.","operationId":"get_changelog_fabric_observability_changelog_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":30,"minimum":1,"default":7,"title":"Days"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Add Changelog Entry","description":"Add a new changelog entry.","operationId":"add_changelog_entry_fabric_observability_changelog_post","parameters":[{"name":"category","in":"query","required":true,"schema":{"type":"string","title":"Category"}},{"name":"title","in":"query","required":true,"schema":{"type":"string","title":"Title"}},{"name":"description","in":"query","required":false,"schema":{"type":"string","default":"","title":"Description"}},{"name":"component","in":"query","required":false,"schema":{"type":"string","default":"platform","title":"Component"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/changelog/html":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Changelog Html","description":"Get changelog as HTML for embedding.","operationId":"get_changelog_html_fabric_observability_changelog_html_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":30,"minimum":1,"default":7,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/changelog/snapshot":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Platform Snapshot","description":"Get current platform snapshot for changelog.","operationId":"get_platform_snapshot_fabric_observability_changelog_snapshot_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/observability/changelog/daily-summary":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Daily Summary","description":"Get daily summary statistics.","operationId":"get_daily_summary_fabric_observability_changelog_daily_summary_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":30,"minimum":1,"default":7,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/status":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Observability Status","description":"Get service status for observability stack.","operationId":"get_observability_status_fabric_observability_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/observability/stats":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Observability Stats","description":"Get aggregate statistics for the observability stack.","operationId":"get_observability_stats_fabric_observability_stats_get","parameters":[{"name":"period_hours","in":"query","required":false,"schema":{"type":"integer","maximum":720,"minimum":1,"default":24,"title":"Period Hours"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/events/{event_id}":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Event","description":"Get a specific trust event by ID.","operationId":"get_event_fabric_observability_events__event_id__get","parameters":[{"name":"event_id","in":"path","required":true,"schema":{"type":"string","title":"Event Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/timeline":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"Get Global Timeline","description":"Get global chronological timeline of all events.","operationId":"get_global_timeline_fabric_observability_timeline_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"default":1000,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/agents":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"List Agents","description":"List all agents with activity for tenant.","operationId":"list_agents_fabric_observability_agents_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/tools":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"List Tool Invocations","description":"List all tool invocations.","operationId":"list_tool_invocations_fabric_observability_tools_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/observability/evidence":{"get":{"tags":["CAIN Observability","CAIN Observability"],"summary":"List Evidence Records","description":"List all evidence records.","operationId":"list_evidence_records_fabric_observability_evidence_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/frameworks":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Create Framework","description":"Create a compliance framework with requirements.","operationId":"create_framework_fabric_compliance_frameworks_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FrameworkCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Framework Fabric Compliance Frameworks Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Frameworks","description":"List compliance frameworks for tenant.","operationId":"list_frameworks_fabric_compliance_frameworks_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Frameworks Fabric Compliance Frameworks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/frameworks/preset/{preset}":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Load Preset Framework","description":"Load a preset framework (EU_AI_ACT, NIST_AI_RMF, ISO_42001).","operationId":"load_preset_framework_fabric_compliance_frameworks_preset__preset__post","parameters":[{"name":"preset","in":"path","required":true,"schema":{"type":"string","title":"Preset"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Load Preset Framework Fabric Compliance Frameworks Preset  Preset  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/frameworks/{framework_id}":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Framework","description":"Get framework details with requirements.","operationId":"get_framework_fabric_compliance_frameworks__framework_id__get","parameters":[{"name":"framework_id","in":"path","required":true,"schema":{"type":"string","title":"Framework Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Framework Fabric Compliance Frameworks  Framework Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/controls":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Define Control","description":"Define a new machine-readable control.","operationId":"define_control_fabric_compliance_controls_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ControlDefine"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Define Control Fabric Compliance Controls Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Controls","description":"List control definitions.","operationId":"list_controls_fabric_compliance_controls_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Controls Fabric Compliance Controls Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/controls/preset":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Load Preset Controls","description":"Load preset control library.","operationId":"load_preset_controls_fabric_compliance_controls_preset_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Load Preset Controls Fabric Compliance Controls Preset Post"}}}}}}},"/fabric/compliance/controls/{control_id}":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Control","description":"Get control definition.","operationId":"get_control_fabric_compliance_controls__control_id__get","parameters":[{"name":"control_id","in":"path","required":true,"schema":{"type":"string","title":"Control Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Control Fabric Compliance Controls  Control Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/controls/evaluate":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Evaluate Control","description":"Evaluate a control against provided inputs.\n\nCRITICAL: Returns TECHNICAL CONTROL VERIFIED only.\nLegal assertions require additional legal mapping.","operationId":"evaluate_control_fabric_compliance_controls_evaluate_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ControlEvaluationRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Evaluate Control Fabric Compliance Controls Evaluate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/controls/{control_id}/evaluations":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Control Evaluations","description":"List evaluation history for a control.","operationId":"list_control_evaluations_fabric_compliance_controls__control_id__evaluations_get","parameters":[{"name":"control_id","in":"path","required":true,"schema":{"type":"string","title":"Control Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Control Evaluations Fabric Compliance Controls  Control Id  Evaluations Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/evaluations":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Evaluations","description":"List all control evaluations.","operationId":"list_evaluations_fabric_compliance_evaluations_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"control_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Control Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Evaluations Fabric Compliance Evaluations Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/monitor":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Configure Monitor","description":"Configure continuous compliance monitoring.","operationId":"configure_monitor_fabric_compliance_monitor_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"name","in":"query","required":true,"schema":{"type":"string","title":"Name"}},{"name":"monitor_type","in":"query","required":true,"schema":{"type":"string","title":"Monitor Type"}},{"name":"monitor_entity","in":"query","required":true,"schema":{"type":"string","title":"Monitor Entity"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_configure_monitor_fabric_compliance_monitor_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Configure Monitor Fabric Compliance Monitor Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/drift/detect":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Detect Drift","description":"Detect compliance drift for an entity.","operationId":"detect_drift_fabric_compliance_drift_detect_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"entity_type","in":"query","required":true,"schema":{"type":"string","title":"Entity Type"}},{"name":"entity_id","in":"query","required":true,"schema":{"type":"string","title":"Entity Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Detect Drift Fabric Compliance Drift Detect Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/drift/snapshot":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Capture Snapshot","description":"Capture entity state for drift detection.","operationId":"capture_snapshot_fabric_compliance_drift_snapshot_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"entity_type","in":"query","required":true,"schema":{"type":"string","title":"Entity Type"}},{"name":"entity_id","in":"query","required":true,"schema":{"type":"string","title":"Entity Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capture Snapshot Fabric Compliance Drift Snapshot Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/drift":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Drift","description":"List compliance drift events.","operationId":"list_drift_fabric_compliance_drift_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Drift Fabric Compliance Drift Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/findings":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Create Finding","description":"Create a compliance finding with full audit trail.","operationId":"create_finding_fabric_compliance_findings_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FindingCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Finding Fabric Compliance Findings Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Findings","description":"List compliance findings with filtering.","operationId":"list_findings_fabric_compliance_findings_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"severity","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Severity"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Findings Fabric Compliance Findings Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/findings/{finding_id}":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Finding","description":"Get finding details with full audit trail.","operationId":"get_finding_fabric_compliance_findings__finding_id__get","parameters":[{"name":"finding_id","in":"path","required":true,"schema":{"type":"string","title":"Finding Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Finding Fabric Compliance Findings  Finding Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Update Finding","description":"Update finding status with full audit trail.","operationId":"update_finding_fabric_compliance_findings__finding_id__patch","parameters":[{"name":"finding_id","in":"path","required":true,"schema":{"type":"string","title":"Finding Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FindingUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Finding Fabric Compliance Findings  Finding Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/findings/summary":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Findings Summary","description":"Get findings summary with severity breakdown.","operationId":"get_findings_summary_fabric_compliance_findings_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Findings Summary Fabric Compliance Findings Summary Get"}}}}}}},"/fabric/compliance/remediations":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Create Remediation","description":"Create remediation for a finding.\n\nCRITICAL: Consequential remediation must pass through CAIN decision path.","operationId":"create_remediation_fabric_compliance_remediations_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemediationCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Remediation Fabric Compliance Remediations Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Remediations","description":"List remediations.","operationId":"list_remediations_fabric_compliance_remediations_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"finding_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Finding Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Remediations Fabric Compliance Remediations Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/remediations/{remediation_id}":{"patch":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Update Remediation","description":"Update remediation with full audit trail.","operationId":"update_remediation_fabric_compliance_remediations__remediation_id__patch","parameters":[{"name":"remediation_id","in":"path","required":true,"schema":{"type":"string","title":"Remediation Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemediationUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Remediation Fabric Compliance Remediations  Remediation Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/audit-packages/generate":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Generate Audit Package","description":"Generate an audit package with full evidence chain.","operationId":"generate_audit_package_fabric_compliance_audit_packages_generate_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditPackageGenerate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Generate Audit Package Fabric Compliance Audit Packages Generate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/audit-packages":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Audit Packages","description":"List audit packages.","operationId":"list_audit_packages_fabric_compliance_audit_packages_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"framework_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Framework Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Audit Packages Fabric Compliance Audit Packages Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/audit-packages/{package_id}":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Audit Package","description":"Get audit package with full evidence chain.","operationId":"get_audit_package_fabric_compliance_audit_packages__package_id__get","parameters":[{"name":"package_id","in":"path","required":true,"schema":{"type":"string","title":"Package Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Audit Package Fabric Compliance Audit Packages  Package Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/audit-packages/{package_id}/export":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Export Audit Package","description":"Export audit package in machine-readable format.","operationId":"export_audit_package_fabric_compliance_audit_packages__package_id__export_get","parameters":[{"name":"package_id","in":"path","required":true,"schema":{"type":"string","title":"Package Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","default":"json","title":"Format"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Export Audit Package Fabric Compliance Audit Packages  Package Id  Export Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/evidence/record":{"post":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Record Evidence","description":"Record evidence artifact with integrity chain.","operationId":"record_evidence_fabric_compliance_evidence_record_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"evidence_type","in":"query","required":true,"schema":{"type":"string","title":"Evidence Type"}},{"name":"source_system","in":"query","required":true,"schema":{"type":"string","title":"Source System"}},{"name":"source_id","in":"query","required":true,"schema":{"type":"string","title":"Source Id"}},{"name":"content_hash","in":"query","required":true,"schema":{"type":"string","title":"Content Hash"}},{"name":"content_type","in":"query","required":true,"schema":{"type":"string","title":"Content Type"}},{"name":"decision_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision Id"}},{"name":"policy_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"principal_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal Id"}},{"name":"run_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Run Id"}},{"name":"event_timestamp","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Timestamp"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Record Evidence Fabric Compliance Evidence Record Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/evidence":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"List Evidence","description":"List evidence artifacts.","operationId":"list_evidence_fabric_compliance_evidence_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"evidence_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Type"}},{"name":"source_system","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source System"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Evidence Fabric Compliance Evidence Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/evidence/{evidence_id}":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Evidence","description":"Get evidence artifact with integrity verification.","operationId":"get_evidence_fabric_compliance_evidence__evidence_id__get","parameters":[{"name":"evidence_id","in":"path","required":true,"schema":{"type":"string","title":"Evidence Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Evidence Fabric Compliance Evidence  Evidence Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/summary":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Compliance Summary","description":"Get compliance summary with assertion level clearly stated.","operationId":"get_compliance_summary_fabric_compliance_summary_get","parameters":[{"name":"framework_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Framework Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Compliance Summary Fabric Compliance Summary Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/health":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Compliance Health","description":"Get compliance service health status.","operationId":"get_compliance_health_fabric_compliance_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Compliance Health Fabric Compliance Health Get"}}}}}}},"/fabric/compliance/posture":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Compliance Posture","description":"Get compliance posture summary for tenant.\n\nReturns posture calculation based on:\n- Number of controls\n- Evaluation status (current/stale/failed/unknown)\n- Open findings by severity\n- Evidence freshness","operationId":"get_compliance_posture_fabric_compliance_posture_get","parameters":[{"name":"framework_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Framework Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Compliance Posture Fabric Compliance Posture Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/compliance/controls/status":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Get Controls Status","description":"Get control status summary showing staleness.\n\nReturns:\n- CURRENT: Recently evaluated, evaluation fresh\n- STALE: Evaluation older than threshold or evidence expired\n- UNKNOWN: No evaluation ever performed\n- FAILED: Last evaluation failed","operationId":"get_controls_status_fabric_compliance_controls_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Controls Status Fabric Compliance Controls Status Get"}}}}}}},"/fabric/compliance/isolation/verify":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Verify Tenant Isolation","description":"Verify tenant isolation is enforced.\n\nTests that Tenant A cannot access Tenant B resources.","operationId":"verify_tenant_isolation_fabric_compliance_isolation_verify_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Verify Tenant Isolation Fabric Compliance Isolation Verify Get"}}}}}}},"/fabric/drift/health":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Health","description":"Drift service health check.","operationId":"health_fabric_drift_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_drift_api__HealthResponse"}}}}}}},"/fabric/drift/status":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Status","description":"Get overall drift status for tenant.","operationId":"status_fabric_drift_status_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/stats":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Stats","description":"Get drift statistics for tenant.","operationId":"stats_fabric_drift_stats_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/baselines":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Create Baseline","description":"Create a new drift baseline.","operationId":"create_baseline_fabric_drift_baselines_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaselineCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"List Baselines","description":"List baselines for tenant.","operationId":"list_baselines_fabric_drift_baselines_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"entity_type","in":"query","required":false,"schema":{"type":"string","title":"Entity Type"}},{"name":"drift_class","in":"query","required":false,"schema":{"type":"string","title":"Drift Class"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/baselines/{baseline_id}":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Get Baseline","description":"Get a specific baseline.","operationId":"get_baseline_fabric_drift_baselines__baseline_id__get","parameters":[{"name":"baseline_id","in":"path","required":true,"schema":{"type":"string","title":"Baseline Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/observe":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Observe","description":"Observe current state and detect drift.\nCompares against stored baseline if exists.\nProduces drift events through Observability.","operationId":"observe_fabric_drift_observe_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftObserveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/compare":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Compare","description":"Explicitly compare current state against baseline.\nReturns structured diff.","operationId":"compare_fabric_drift_compare_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftCompareRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"List Findings","description":"List drift findings with filters.","operationId":"list_findings_fabric_drift_findings_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"drift_class","in":"query","required":false,"schema":{"type":"string","title":"Drift Class"}},{"name":"severity","in":"query","required":false,"schema":{"type":"string","title":"Severity"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","title":"Status"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","title":"Since"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DriftFindingResponse"},"title":"Response List Findings Fabric Drift Findings Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings/{drift_id}":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Get Finding","description":"Get a specific drift finding.","operationId":"get_finding_fabric_drift_findings__drift_id__get","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftFindingResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings/{drift_id}/acknowledge":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Acknowledge Finding","description":"Acknowledge a drift finding.\nTransitions: detected -> acknowledged","operationId":"acknowledge_finding_fabric_drift_findings__drift_id__acknowledge_post","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"cain_drift","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftAcknowledgeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings/{drift_id}/investigate":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Investigate Finding","description":"Mark drift finding as under investigation.\nTransitions: acknowledged -> investigating","operationId":"investigate_finding_fabric_drift_findings__drift_id__investigate_post","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"cain_drift","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftStatusChangeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings/{drift_id}/resolve":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Resolve Finding","description":"Resolve a drift finding (remediated).\nTransitions: investigating -> resolved","operationId":"resolve_finding_fabric_drift_findings__drift_id__resolve_post","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"cain_drift","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftStatusChangeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings/{drift_id}/accept":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Accept Finding","description":"Accept a drift finding (acceptable risk).\nTransitions: detected/acknowledged/investigating -> accepted","operationId":"accept_finding_fabric_drift_findings__drift_id__accept_post","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"cain_drift","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftStatusChangeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings/{drift_id}/false_positive":{"post":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Mark False Positive","description":"Mark a drift finding as false positive.\nTransitions: detected/acknowledged/investigating -> false_positive","operationId":"mark_false_positive_fabric_drift_findings__drift_id__false_positive_post","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"cain_drift","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriftStatusChangeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/agents/{agent_id}":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Get Agent Drift Status","description":"Get drift status for a specific agent.","operationId":"get_agent_drift_status_fabric_drift_agents__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/impact/{drift_id}":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Get Drift Impact","description":"Get impact assessment for a drift finding.\nDetermines what CAIN systems are affected and what responses are recommended.","operationId":"get_drift_impact_fabric_drift_impact__drift_id__get","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/drift/findings/{drift_id}/history":{"get":{"tags":["CAIN Drift","CAIN Drift"],"summary":"Get Finding History","description":"Get status transition history for a drift finding.\nReturns all state transitions with timestamps and actors.","operationId":"get_finding_history_fabric_drift_findings__drift_id__history_get","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/health":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Health","description":"Service health check.","operationId":"health_fabric_impact_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_impact_api__HealthResponse"}}}}}}},"/fabric/impact/status":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Status","description":"Impact service status.","operationId":"status_fabric_impact_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatusResponse"}}}}}}},"/fabric/impact/analyze":{"post":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Analyze Impact","description":"Analyze impact of a change.\n\nTransforms drift events into causal impact model.","operationId":"analyze_impact_fabric_impact_analyze_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"drift_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Drift Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImpactAnalyzeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/analyze/drift/{drift_id}":{"post":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Analyze From Drift","description":"Analyze impact from an existing drift incident.\n\nLinks to CAIN Drift.","operationId":"analyze_from_drift_fabric_impact_analyze_drift__drift_id__post","parameters":[{"name":"drift_id","in":"path","required":true,"schema":{"type":"string","title":"Drift Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/incidents":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"List Incidents","description":"List impact incidents.","operationId":"list_incidents_fabric_impact_incidents_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/incidents/{incident_id}":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Incident","description":"Get specific impact incident.","operationId":"get_incident_fabric_impact_incidents__incident_id__get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/incidents/{incident_id}/graph":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Incident Graph","description":"Get causal graph for incident.","operationId":"get_incident_graph_fabric_impact_incidents__incident_id__graph_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/incidents/{incident_id}/blast-radius":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Incident Blast Radius","description":"Get blast radius for incident.","operationId":"get_incident_blast_radius_fabric_impact_incidents__incident_id__blast_radius_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/incidents/{incident_id}/authority":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Incident Authority","description":"Get authority exposure for incident.","operationId":"get_incident_authority_fabric_impact_incidents__incident_id__authority_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/incidents/{incident_id}/trajectories":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Incident Trajectories","description":"Get trajectory impact for incident.","operationId":"get_incident_trajectories_fabric_impact_incidents__incident_id__trajectories_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/incidents/{incident_id}/evidence":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Incident Evidence","description":"Get evidence impact for incident.","operationId":"get_incident_evidence_fabric_impact_incidents__incident_id__evidence_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/simulate":{"post":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Simulate Whatif","description":"What-if counterfactual simulation.\n\nOperates against actual CAIN graph.","operationId":"simulate_whatif_fabric_impact_simulate_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImpactSimulateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/compare":{"post":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Compare Impacts","description":"Compare impacts: BASELINE vs CURRENT or VERSION A vs VERSION B.","operationId":"compare_impacts_fabric_impact_compare_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImpactCompareRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/entities/{entity_id}":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Entity Impact","description":"Get all impacts for an entity.","operationId":"get_entity_impact_fabric_impact_entities__entity_id__get","parameters":[{"name":"entity_id","in":"path","required":true,"schema":{"type":"string","title":"Entity Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/dependencies/{entity_id}":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Entity Dependencies","description":"Get dependency information for an entity.","operationId":"get_entity_dependencies_fabric_impact_dependencies__entity_id__get","parameters":[{"name":"entity_id","in":"path","required":true,"schema":{"type":"string","title":"Entity Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/impact/graph":{"get":{"tags":["CAIN Impact","CAIN Impact"],"summary":"Get Causal Graph","description":"Get the full causal graph.","operationId":"get_causal_graph_fabric_impact_graph_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/health":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Sentinel Health","operationId":"sentinel_health_fabric_sentinel_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/sentinel/status":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Sentinel Status","operationId":"sentinel_status_fabric_sentinel_status_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/evaluate":{"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Evaluate Trust","description":"Evaluate trust state by consuming CAIN Impact output.\n\nComplete loop: DRIFT → IMPACT → SENTINEL\n\nReturns trust determination with:\n- current trust state\n- previous trust state\n- triggering event\n- impact assessment\n- evidence\n- confidence\n- recommended response\n- required authorization\n- execution status","operationId":"evaluate_trust_fabric_sentinel_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_sentinel_api__EvaluateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/simulate":{"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Simulate Response","description":"Simulate what Sentinel would do.\n\nDoes NOT modify production state.\n\nReturns:\n- proposed response\n- affected entities\n- state transition\n- required authorization\n- expected impact reduction\n- confidence\n- evidence\n- unknowns","operationId":"simulate_response_fabric_sentinel_simulate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_sentinel_api__SimulateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"List Incidents","description":"List Sentinel incidents.","operationId":"list_incidents_fabric_sentinel_incidents_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Get Incident","description":"Get incident details.","operationId":"get_incident_fabric_sentinel_incidents__incident_id__get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/impact":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Get Incident Impact","description":"Get impact data for incident.","operationId":"get_incident_impact_fabric_sentinel_incidents__incident_id__impact_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/timeline":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Get Incident Timeline","description":"Get incident timeline.","operationId":"get_incident_timeline_fabric_sentinel_incidents__incident_id__timeline_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/contain":{"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Contain Incident","description":"Contain incident - isolate affected entities.\n\nCAIN Control: IS THAT RESPONSE AUTHORIZED?","operationId":"contain_incident_fabric_sentinel_incidents__incident_id__contain_post","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContainRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/recover":{"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Recover Incident","description":"Recover incident - execute governed recovery.\n\nRecovery lifecycle: DETECTED → CONTAINED → ROOT CAUSE → PLAN → AUTHORIZATION → EXECUTION → TEST → REVERIFY → RESTORE","operationId":"recover_incident_fabric_sentinel_incidents__incident_id__recover_post","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecoverRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/reverify":{"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Reverify Incident","description":"Re-verify incident - run trust verification.\n\nVerification checks: identity, permissions, dependencies, behavior, evidence","operationId":"reverify_incident_fabric_sentinel_incidents__incident_id__reverify_post","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReverifyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/restore":{"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Restore Incident","description":"Restore incident - restore trust after verification.\n\nFAIL-CLOSED: Verification must pass. If verification returns UNKNOWN: DO NOT RESTORE.","operationId":"restore_incident_fabric_sentinel_incidents__incident_id__restore_post","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestoreRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/close":{"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Close Incident","description":"Close incident with final disposition.","operationId":"close_incident_fabric_sentinel_incidents__incident_id__close_post","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloseRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/incidents/{incident_id}/evidence":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Get Incident Evidence","description":"Get evidence for incident.","operationId":"get_incident_evidence_fabric_sentinel_incidents__incident_id__evidence_get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/policies":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"List Policies","description":"List response policies.","operationId":"list_policies_fabric_sentinel_policies_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Create Policy","description":"Create response policy - loaded from CAIN Policy.","operationId":"create_policy_fabric_sentinel_policies_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Policy Data"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/trust-state":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Get Trust State","description":"Get current trust state computed from real CAIN subsystems.\n\nFAIL-CLOSED: UNKNOWN cannot become TRUSTED.\n\nConsumes:\n- Conformance status\n- Attestation status\n- Impact status\n- Drift status\n\nReturns deterministic trust state with evidence.","operationId":"get_trust_state_fabric_sentinel_trust_state_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/transitions":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Get Transitions","description":"Get trust state transition history.","operationId":"get_transitions_fabric_sentinel_transitions_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/sentinel/dashboard":{"get":{"tags":["CAIN Sentinel","CAIN Sentinel"],"summary":"Sentinel Dashboard","description":"Get Sentinel dashboard data.","operationId":"sentinel_dashboard_fabric_sentinel_dashboard_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/health":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Resilience Health","description":"CAIN Resilience health check.","operationId":"resilience_health_fabric_resilience_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/resilience/status":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Resilience Status","description":"Get resilience status including active recovery plans.","operationId":"resilience_status_fabric_resilience_status_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plan":{"post":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Plan Recovery","description":"Create a governed recovery plan.\n\nNOT automatic. Creates plan for review and authorization.\n\nRecovery plan includes:\n- Root cause analysis\n- Step-by-step recovery\n- Verification at each step\n- Trust restoration criteria\n- Evidence requirements","operationId":"plan_recovery_fabric_resilience_plan_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanRecoveryRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plans":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"List Plans","description":"List all recovery plans for tenant.","operationId":"list_plans_fabric_resilience_plans_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plans/{plan_id}":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Get Plan","description":"Get detailed recovery plan.","operationId":"get_plan_fabric_resilience_plans__plan_id__get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plans/{plan_id}/authorize":{"post":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Authorize Plan","description":"Authorize a recovery plan via CAIN Control.\n\nReturns error if plan not found or already authorized/denied.","operationId":"authorize_plan_fabric_resilience_plans__plan_id__authorize_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizePlanRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plans/{plan_id}/deny":{"post":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Deny Plan","description":"Deny a recovery plan.","operationId":"deny_plan_fabric_resilience_plans__plan_id__deny_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"reason","in":"query","required":true,"schema":{"type":"string","title":"Reason"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plans/{plan_id}/execute":{"post":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Execute Recovery","description":"Execute an authorized recovery plan.\n\nExecutes steps in order, verifying at each step.\n\nIMPORTANT: \n- Trust is NOT restored if ANY verification fails\n- Trust is NOT restored if ANY criteria returns UNKNOWN\n- Only TrustRestorationCriteria.all_passed() allows trust restoration","operationId":"execute_recovery_fabric_resilience_plans__plan_id__execute_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteRecoveryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plans/{plan_id}/cancel":{"post":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Cancel Recovery","description":"Cancel a recovery.","operationId":"cancel_recovery_fabric_resilience_plans__plan_id__cancel_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"reason","in":"query","required":true,"schema":{"type":"string","title":"Reason"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/plans/{plan_id}/verify":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Verify Recovery Criteria","description":"Verify trust restoration criteria for a plan.\n\nReturns current status of all criteria.\nALL must pass. If ANY return UNKNOWN: DO NOT RESTORE.","operationId":"verify_recovery_criteria_fabric_resilience_plans__plan_id__verify_get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/checkpoints":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"List Checkpoints","description":"List recovery checkpoints.","operationId":"list_checkpoints_fabric_resilience_checkpoints_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"entity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entity Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/checkpoints/{checkpoint_id}":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Get Checkpoint","description":"Get checkpoint details.","operationId":"get_checkpoint_fabric_resilience_checkpoints__checkpoint_id__get","parameters":[{"name":"checkpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Checkpoint Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/targets":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"List Recovery Targets","description":"List valid recovery targets for an entity.\n\nNOT just \"latest\" - deterministically evaluated candidates.\n\nEach target includes:\n- version\n- age\n- integrity score\n- provenance\n- dependency compatibility\n- policy compatibility\n- identity compatibility\n- security state\n- evaluation results\n- evidence integrity","operationId":"list_recovery_targets_fabric_resilience_targets_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"entity_id","in":"query","required":true,"schema":{"type":"string","title":"Entity Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/dashboard":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Resilience Dashboard","description":"Get resilience dashboard data.","operationId":"resilience_dashboard_fabric_resilience_dashboard_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/evidence/{plan_id}":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Get Recovery Evidence","description":"Get evidence for a recovery operation.\n\nEvidence chain includes:\n- Root cause identification\n- Plan creation\n- Authorization\n- Step execution\n- Verification results\n- Trust restoration decision","operationId":"get_recovery_evidence_fabric_resilience_evidence__plan_id__get","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/states":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"List Recovery States","description":"List recovery states for entities.","operationId":"list_recovery_states_fabric_resilience_states_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/snapshots/{snapshot_id}":{"get":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Get Snapshot","description":"Get snapshot details.","operationId":"get_snapshot_fabric_resilience_snapshots__snapshot_id__get","parameters":[{"name":"snapshot_id","in":"path","required":true,"schema":{"type":"string","title":"Snapshot Id"}},{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/simulate":{"post":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Simulate Recovery","description":"Simulate recovery without mutating production.\n\nReturns:\n- Recommended recovery strategy\n- Recovery target candidates\n- Affected components\n- Required authorization\n- Expected verification requirements\n- Risk assessment\n- Rollback possibility","operationId":"simulate_recovery_fabric_resilience_simulate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_resilience_api__SimulateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/resilience/analyze":{"post":{"tags":["CAIN Resilience","CAIN Resilience"],"summary":"Analyze Recovery","description":"Analyze recovery requirements without creating a plan.\n\nReturns analysis of:\n- Root cause\n- Affected scope\n- Required verifications\n- Recommended mode\n- Risk level","operationId":"analyze_recovery_fabric_resilience_analyze_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"incident_id","in":"query","required":true,"schema":{"type":"string","title":"Incident Id"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_analyze_recovery_fabric_resilience_analyze_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/conformance/health":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Health","description":"Health check.","operationId":"health_fabric_conformance_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/status":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Status","description":"Get conformance status summary.","operationId":"status_fabric_conformance_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/suites":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"List Suites","description":"List available conformance suites.","operationId":"list_suites_fabric_conformance_suites_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/run":{"post":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Run","description":"Run conformance suite and return signed report.","operationId":"run_fabric_conformance_run_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/conformance/report":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Get Report","description":"Get machine-readable conformance report.","operationId":"get_report_fabric_conformance_report_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/results/latest":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Latest Result","description":"Get latest conformance result.","operationId":"latest_result_fabric_conformance_results_latest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/results/{result_id}":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Get Result","description":"Get specific conformance result.","operationId":"get_result_fabric_conformance_results__result_id__get","parameters":[{"name":"result_id","in":"path","required":true,"schema":{"type":"string","title":"Result Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/conformance/results":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"List Results","description":"List conformance results history.","operationId":"list_results_fabric_conformance_results_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/conformance/verify":{"post":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Verify Signature","description":"Verify report integrity.","operationId":"verify_signature_fabric_conformance_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifySignatureRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/conformance/v4/run":{"post":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Run V4 Conformance Suite","description":"Executes the full 26-suite Conformance Protocol 4.0 across all 14 Maturity Domains.\nReturns the cryptographically signed ConformanceCertificateV4.","operationId":"run_v4_conformance_suite_fabric_conformance_v4_run_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/v4/latest":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Get Latest V4 Conformance","description":"Returns the most recent V4 Conformance Certificate.","operationId":"get_latest_v4_conformance_fabric_conformance_v4_latest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/v4/domains":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Get V4 Conformance Domains","description":"Returns the 14 Canonical Maturity Domains evaluated in CAIN 4.0.","operationId":"get_v4_conformance_domains_fabric_conformance_v4_domains_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/conformance/v4/badge":{"get":{"tags":["CAIN Conformance","CAIN Conformance"],"summary":"Get V4 Conformance Badge","description":"Returns machine-readable badge data for CI/CD pipelines and README badges.","operationId":"get_v4_conformance_badge_fabric_conformance_v4_badge_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/health":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Health","description":"Health check.","operationId":"health_fabric_deployment_attestation_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/status":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Status","description":"Get attestation service status.","operationId":"status_fabric_deployment_attestation_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/keys":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Get Verification Keys","description":"Get public verification keys for external attestation verification.\n\nExternal parties can use these keys to verify attestations without\ntrusting the CAIN application database.","operationId":"get_verification_keys_fabric_deployment_attestation_keys_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/create":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Create Attestation","description":"Create a new attestation.\n\nReturns machine-verifiable attestation with claims, evidence refs, and signature.","operationId":"create_attestation_fabric_deployment_attestation_create_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAttestationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/create/deployment-identity":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Create Deployment Identity","description":"Create a deployment identity attestation.","operationId":"create_deployment_identity_fabric_deployment_attestation_create_deployment_identity_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/create/conformance":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Create Conformance Attestation","description":"Create attestation from current conformance report.","operationId":"create_conformance_attestation_fabric_deployment_attestation_create_conformance_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/create/trust-state":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Create Trust State Attestation","description":"Create attestation from current trust state.","operationId":"create_trust_state_attestation_fabric_deployment_attestation_create_trust_state_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/create/security-posture":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Create Security Posture Attestation","description":"Create security posture attestation.","operationId":"create_security_posture_attestation_fabric_deployment_attestation_create_security_posture_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/create/bundle":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Create Bundle","description":"Create attestation bundle.","operationId":"create_bundle_fabric_deployment_attestation_create_bundle_post","parameters":[{"name":"name","in":"query","required":true,"schema":{"type":"string","title":"Name"}},{"name":"description","in":"query","required":true,"schema":{"type":"string","title":"Description"}},{"name":"attestation_ids","in":"query","required":true,"schema":{"type":"array","items":{"type":"string"},"title":"Attestation Ids"}},{"name":"ttl_seconds","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ttl Seconds"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/attestation/{attestation_id}":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Get Attestation","description":"Retrieve an attestation by ID.","operationId":"get_attestation_fabric_deployment_attestation_attestation__attestation_id__get","parameters":[{"name":"attestation_id","in":"path","required":true,"schema":{"type":"string","title":"Attestation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/bundle/{bundle_id}":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Get Bundle","description":"Retrieve an attestation bundle by ID.","operationId":"get_bundle_fabric_deployment_attestation_bundle__bundle_id__get","parameters":[{"name":"bundle_id","in":"path","required":true,"schema":{"type":"string","title":"Bundle Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/list":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"List Attestations","description":"List all attestations.","operationId":"list_attestations_fabric_deployment_attestation_list_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/history/{subject_id}":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Get Attestation History","description":"Get attestation history for a subject.","operationId":"get_attestation_history_fabric_deployment_attestation_history__subject_id__get","parameters":[{"name":"subject_id","in":"path","required":true,"schema":{"type":"string","title":"Subject Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/verify":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Verify Attestation","description":"Verify an attestation signature and validity.","operationId":"verify_attestation_fabric_deployment_attestation_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyAttestationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/verify/evidence":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Verify Evidence","description":"Verify evidence referenced by an attestation.","operationId":"verify_evidence_fabric_deployment_attestation_verify_evidence_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyEvidenceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/revoke/{attestation_id}":{"post":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Revoke Attestation","description":"Revoke an attestation.","operationId":"revoke_attestation_fabric_deployment_attestation_revoke__attestation_id__post","parameters":[{"name":"attestation_id","in":"path","required":true,"schema":{"type":"string","title":"Attestation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/deployment/attestation/report":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Get Attestation Report","description":"Generate comprehensive attestation report.","operationId":"get_attestation_report_fabric_deployment_attestation_report_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/deployment/attestation/prove":{"get":{"tags":["CAIN Attestation","CAIN Attestation"],"summary":"Get Proof Bundle","description":"Get comprehensive proof bundle for external verification.\n\nIncludes deployment identity, conformance, trust state, and security posture\nattestations in a single verifiable bundle.","operationId":"get_proof_bundle_fabric_deployment_attestation_prove_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/health":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Health","description":"Health check.","operationId":"health_conformance_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/status":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Status","description":"Get conformance status summary.","operationId":"status_conformance_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/suites":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"List Suites","description":"List available conformance suites.","operationId":"list_suites_conformance_suites_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/run":{"post":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Run","description":"Run conformance suite and return signed report.","operationId":"run_conformance_run_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/conformance/report":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Get Report","description":"Get machine-readable conformance report.","operationId":"get_report_conformance_report_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/results/latest":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Latest Result","description":"Get latest conformance result.","operationId":"latest_result_conformance_results_latest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/results/{result_id}":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Get Result","description":"Get specific conformance result.","operationId":"get_result_conformance_results__result_id__get","parameters":[{"name":"result_id","in":"path","required":true,"schema":{"type":"string","title":"Result Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/conformance/results":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"List Results","description":"List conformance results history.","operationId":"list_results_conformance_results_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/conformance/verify":{"post":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Verify Signature","description":"Verify report integrity.","operationId":"verify_signature_conformance_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifySignatureRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/conformance/v4/run":{"post":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Run V4 Conformance Suite","description":"Executes the full 26-suite Conformance Protocol 4.0 across all 14 Maturity Domains.\nReturns the cryptographically signed ConformanceCertificateV4.","operationId":"run_v4_conformance_suite_conformance_v4_run_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/v4/latest":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Get Latest V4 Conformance","description":"Returns the most recent V4 Conformance Certificate.","operationId":"get_latest_v4_conformance_conformance_v4_latest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/v4/domains":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Get V4 Conformance Domains","description":"Returns the 14 Canonical Maturity Domains evaluated in CAIN 4.0.","operationId":"get_v4_conformance_domains_conformance_v4_domains_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/conformance/v4/badge":{"get":{"tags":["CAIN Conformance V4","CAIN Conformance"],"summary":"Get V4 Conformance Badge","description":"Returns machine-readable badge data for CI/CD pipelines and README badges.","operationId":"get_v4_conformance_badge_conformance_v4_badge_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/observatory/status":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"Observatory Status","description":"Public status of the Evidence Observatory.","operationId":"observatory_status_observatory_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/observatory/evidence":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"List Evidence","description":"List public evidence entries from persistent storage.","operationId":"list_evidence_observatory_evidence_get","parameters":[{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/observatory/evidence/{entry_id}":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"Get Evidence","description":"Get a specific evidence entry from persistent storage.","operationId":"get_evidence_observatory_evidence__entry_id__get","parameters":[{"name":"entry_id","in":"path","required":true,"schema":{"type":"string","title":"Entry Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/observatory/chain":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"Evidence Chain","description":"Verify the evidence chain integrity.","operationId":"evidence_chain_observatory_chain_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/observatory/categories":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"Evidence Categories","description":"List all evidence categories and their checks.","operationId":"evidence_categories_observatory_categories_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/observatory/categories/{category}":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"Evidence Category","description":"Get details for a specific evidence category.","operationId":"evidence_category_observatory_categories__category__get","parameters":[{"name":"category","in":"path","required":true,"schema":{"type":"string","title":"Category"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/observatory/claims":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"Public Claims","description":"All public claims mapped to evidence.","operationId":"public_claims_observatory_claims_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/observatory/html":{"get":{"tags":["CAIN 5 Observatory","evidence-observatory"],"summary":"Observatory Html","description":"Public HTML page for the Evidence Observatory.","operationId":"observatory_html_observatory_html_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/protect":{"get":{"tags":["CAIN 5 Onboarding","onboarding"],"summary":"Protect Page","description":"PROTECT MY AI -- one-command AI safety setup.","operationId":"protect_page_protect_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/build":{"get":{"tags":["CAIN 5 Onboarding","onboarding"],"summary":"Build Page","description":"BUILD WITH CAIN -- SDK/CLI developer onboarding.","operationId":"build_page_build_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/break":{"get":{"tags":["CAIN 5 Onboarding","onboarding"],"summary":"Break Page","description":"BREAK CAIN -- security researcher path.","operationId":"break_page_break_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api/v4/kernel/health":{"get":{"tags":["CAIN Trust Kernel 4.0","CAIN Trust Kernel 4.0"],"summary":"Kernel Health","description":"Health and status of the CAIN Trust Runtime Kernel 4.0 Substrate.","operationId":"kernel_health_api_v4_kernel_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v4/kernel/evaluate":{"post":{"tags":["CAIN Trust Kernel 4.0","CAIN Trust Kernel 4.0"],"summary":"Kernel Evaluate Action","description":"Full 16-stage causal execution and capability token issuance.","operationId":"kernel_evaluate_action_api_v4_kernel_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v4/kernel/dual-custody/register-root-key":{"post":{"tags":["CAIN Trust Kernel 4.0","CAIN Trust Kernel 4.0"],"summary":"Kernel Register Dual Custody Root Key","description":"CAIN 27.0: the live provisioning path CAIN 26.0's report disclosed as missing.\nGated by real, independently-verified identity_engine state -- see\n`CainTrustRuntimeKernel.register_dual_custody_root_key`'s docstring for the honest\ndisclosure of this bootstrap's residual single-signer limitation.","operationId":"kernel_register_dual_custody_root_key_api_v4_kernel_dual_custody_register_root_key_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v4/kernel/dual-custody/revoke-root-key":{"post":{"tags":["CAIN Trust Kernel 4.0","CAIN Trust Kernel 4.0"],"summary":"Kernel Revoke Dual Custody Root Key","description":"Same independent-verification gate as registration.","operationId":"kernel_revoke_dual_custody_root_key_api_v4_kernel_dual_custody_revoke_root_key_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v4/kernel/primitives/{name}":{"post":{"tags":["CAIN Trust Kernel 4.0","CAIN Trust Kernel 4.0"],"summary":"Execute Primitive","description":"Directly invokes any of the 14 Canonical Trust Primitives.","operationId":"execute_primitive_api_v4_kernel_primitives__name__post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/status":{"get":{"tags":["CAIN Cluster"],"summary":"Get Cluster Status","description":"Get current cluster status and trust state.","operationId":"get_cluster_status_api_v1_cluster_status_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClusterStatusResponse"}}}}}},"head":{"tags":["CAIN Cluster"],"summary":"Get Cluster Status","description":"Get current cluster status and trust state.","operationId":"get_cluster_status_api_v1_cluster_status_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClusterStatusResponse"}}}}}}},"/api/v1/cluster/health":{"get":{"tags":["CAIN Cluster"],"summary":"Cluster Health","description":"Check cluster health and quorum availability.","operationId":"cluster_health_api_v1_cluster_health_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"tags":["CAIN Cluster"],"summary":"Cluster Health","description":"Check cluster health and quorum availability.","operationId":"cluster_health_api_v1_cluster_health_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/nodes":{"get":{"tags":["CAIN Cluster"],"summary":"Get Cluster Nodes","description":"Get all nodes in the cluster with trust states.","operationId":"get_cluster_nodes_api_v1_cluster_nodes_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/nodes/register":{"post":{"tags":["CAIN Cluster"],"summary":"Register Cluster Node","description":"Dynamically register a new node in the cluster topology.","operationId":"register_cluster_node_api_v1_cluster_nodes_register_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}},{"name":"X-CAIN-Secret","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Cain-Secret"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NodeRegisterRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/identity":{"get":{"tags":["CAIN Cluster"],"summary":"Get Node Identity","description":"Export cryptographically verifiable identity of this node.","operationId":"get_node_identity_api_v1_cluster_identity_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/attestation":{"get":{"tags":["CAIN Cluster"],"summary":"Get Node Attestation","description":"Export full cryptographically signed self-attestation statement (Requirement 1).","operationId":"get_node_attestation_api_v1_cluster_attestation_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/invariants":{"get":{"tags":["CAIN Cluster"],"summary":"Get Observable Invariants","description":"Export status of all 10 Observable Trust Invariants (Requirement 14).","operationId":"get_observable_invariants_api_v1_cluster_invariants_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/doctor":{"get":{"tags":["CAIN Cluster"],"summary":"Get Doctor Diagnostics","description":"Run infrastructure integrity diagnostic (Requirement 15).","operationId":"get_doctor_diagnostics_api_v1_cluster_doctor_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/health-score":{"get":{"tags":["CAIN Cluster"],"summary":"Get Health Score","description":"Export deterministic infrastructure integrity score (Requirement 9).","operationId":"get_health_score_api_v1_cluster_health_score_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/gossip":{"post":{"tags":["CAIN Cluster"],"summary":"Receive Gossip","description":"Receive gossip from another node.\nSupports both legacy v1.0 and canonical v2.0 signed envelopes.\nFail-closed validation with tamper evidence.","operationId":"receive_gossip_api_v1_cluster_gossip_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/envelope":{"post":{"tags":["CAIN Cluster"],"summary":"Receive Envelope","description":"Dedicated v2.0 Canonical Signed Message Envelope endpoint.\nPerforms full 7-stage verification pipeline.","operationId":"receive_envelope_api_v1_cluster_envelope_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Envelope Data"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/quarantine":{"post":{"tags":["CAIN Cluster"],"summary":"Quarantine Node","description":"Administrative or automated node quarantine action.\n\nCAIN23-VULN-002 fix: this endpoint previously called\nquarantine_manager.quarantine_node() directly -- no authentication, no\nconsensus, no propagation. Any unauthenticated HTTP caller could\nunilaterally quarantine any node in the cluster. Now proposes the\naction and requires a real quorum of signed peer votes (propose_quarantine)\nbefore any state changes or gossip commit occurs.","operationId":"quarantine_node_api_v1_cluster_quarantine_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuarantineRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/quarantined":{"get":{"tags":["CAIN Cluster"],"summary":"List Quarantined Nodes","description":"List all currently quarantined nodes with reasons and evidence.","operationId":"list_quarantined_nodes_api_v1_cluster_quarantined_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/restore":{"post":{"tags":["CAIN Cluster"],"summary":"Restore Node","description":"Restore a quarantined node after attestation & verification.\n\nCAIN23-VULN-002 fix: previously called transition_recovery() directly,\nbypassing both consensus and the attestation check that the separate\nattempt_recovery() helper enforces elsewhere. Now requires the same\nquorum of signed peer votes as quarantine, and a RESTORED transition\nspecifically requires a verified attestation (evaluate_cluster_vote's\n\"restore\" branch denies it otherwise).","operationId":"restore_node_api_v1_cluster_restore_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestorationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/self-verify":{"get":{"tags":["CAIN Cluster"],"summary":"Self Verify Cluster","description":"Run multi-dimensional cluster self-verification.\nReturns CAIN_CLUSTER_TRUST_STATE.","operationId":"self_verify_cluster_api_v1_cluster_self_verify_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/self-aware-state":{"get":{"tags":["CAIN Cluster"],"summary":"Self Aware Cluster State","description":"CAIN 29.0 Phase 41 -- CAIN_CLUSTER_STATE: real-time aggregation of\nHEALTH/TRUST/SECURITY/CAPACITY/PERFORMANCE/TOPOLOGY/CONSENSUS/EVIDENCE/TELEMETRY/RISK,\neach with its own freshness/confidence/status so dimensions with no real data source\nthis session (PERFORMANCE, TELEMETRY) are reported as NOT_IMPLEMENTED, not fabricated.","operationId":"self_aware_cluster_state_api_v1_cluster_self_aware_state_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/security-properties":{"get":{"tags":["CAIN Cluster"],"summary":"Cluster Security Properties","description":"CAIN 29.0 Phase 47 -- runs the CLUSTER-001..010 formal property catalog live\nagainst this node's real membership/quarantine/identity state.","operationId":"cluster_security_properties_api_v1_cluster_security_properties_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/hardware":{"get":{"tags":["CAIN Cluster"],"summary":"Cluster Hardware Identity","description":"CAIN 29.0 Phase 1 -- real hardware/container identity for THIS node only (see\nscope_note in the response: no mechanism exists yet to safely enumerate a peer's\nhardware remotely).","operationId":"cluster_hardware_identity_api_v1_cluster_hardware_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/hardware/attestation":{"get":{"tags":["CAIN Cluster"],"summary":"Cluster Hardware Attestation","description":"CAIN 29.0 Phase 2 -- runs every registered attestation adapter (TPM/SecureBoot/\nTEE/GPU/NIC/software) and reports ATTESTED vs HARDWARE_ATTESTATION_UNAVAILABLE\nhonestly per adapter.","operationId":"cluster_hardware_attestation_api_v1_cluster_hardware_attestation_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/control/run-cycle":{"post":{"tags":["CAIN Cluster"],"summary":"Control Plane Run Cycle","description":"Runs exactly one real OBSERVATION -> ANALYSIS -> PROPOSED ACTION ->\nAUTHORIZATION -> EXECUTION -> VERIFICATION -> EVIDENCE cycle. The only action this\nimplementation can propose is a stale-node quarantine (LEVEL 3), and execution\nstill requires REAL quorum ALLOW votes via propose_quarantine() -- this endpoint\ncannot self-authorize anything. LEVEL 4/5 actions always fail closed.","operationId":"control_plane_run_cycle_api_v1_cluster_control_run_cycle_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/control/evidence-chain":{"get":{"tags":["CAIN Cluster"],"summary":"Control Plane Evidence Chain","description":"Every DecisionProof this process has produced, plus a hash-chain integrity\ncheck (same prev_hash/record_hash discipline as CAIN 23's immune ledger).","operationId":"control_plane_evidence_chain_api_v1_cluster_control_evidence_chain_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/vote":{"post":{"tags":["CAIN Cluster"],"summary":"Receive Vote","description":"Receive a vote request from a peer node.\n\nCAIN23-BUG-02 fix: fail closed on missing/invalid/stale HMAC\nauthentication instead of silently evaluating an unauthenticated\nrequest as a real peer vote. Uses the same evaluate_cluster_vote\npolicy the local node applies to its own vote (no double standard).","operationId":"receive_vote_api_v1_cluster_vote_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/decision":{"post":{"tags":["CAIN Cluster"],"summary":"Make Cluster Decision","description":"Execute a distributed decision with quorum and predictive risk.","operationId":"make_cluster_decision_api_v1_cluster_decision_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Decision Data"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/message":{"post":{"tags":["CAIN Cluster"],"summary":"Receive Pbft Message","description":"Receives and dispatches PBFT consensus messages (Pre-Prepare, Prepare, Commit, View-Change, New-View).","operationId":"receive_pbft_message_api_v1_cluster_pbft_message_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/verdicts":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Verdicts","description":"Observable accept/reject verdict for each recent consensus message.","operationId":"get_pbft_verdicts_api_v1_cluster_pbft_verdicts_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/equivocation-proofs":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Equivocation Proofs","description":"Non-repudiable equivocation proofs derived from conflicting signatures.","operationId":"get_pbft_equivocation_proofs_api_v1_cluster_pbft_equivocation_proofs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/evidence":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Byzantine Evidence","description":"Durable hash-chained Byzantine evidence log, with this node's own chain\nverification. Callers should re-verify the chain themselves (see\nscripts/cain42_bft/verify_byzantine_evidence.py) rather than trust\n`chain_valid`.","operationId":"get_pbft_byzantine_evidence_api_v1_cluster_pbft_evidence_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/evidence/submit":{"post":{"tags":["CAIN Cluster"],"summary":"Submit Pbft Byzantine Evidence","description":"Receive a Byzantine proof from a peer. Unauthenticated by design: the\nproof is self-certifying and is adopted only if it verifies against this\nnode's pinned membership keys; an accusation alone changes nothing.","operationId":"submit_pbft_byzantine_evidence_api_v1_cluster_pbft_evidence_submit_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Body"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/checkpoints":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Checkpoints","description":"Latest stable checkpoint certificate (2f+1 signed application-state\nhashes) and recent checkpoint votes. Re-verify with\nscripts/cain42_bft/verify_byzantine_evidence.py rather than trusting it.","operationId":"get_pbft_checkpoints_api_v1_cluster_pbft_checkpoints_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/deviation-proofs":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Deviation Proofs","description":"Non-repudiable deviation proofs: a validly-signed vote contradicting the\nprimary's independently verified signed PRE_PREPARE.","operationId":"get_pbft_deviation_proofs_api_v1_cluster_pbft_deviation_proofs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/verify-message":{"post":{"tags":["CAIN Cluster"],"summary":"Verify Pbft Message Probe","description":"Out-of-band verdict for a consensus message without consuming its nonce\nor mutating consensus state (used by the BFT certification harness).","operationId":"verify_pbft_message_probe_api_v1_cluster_pbft_verify_message_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Msg Data"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/restore":{"post":{"tags":["CAIN Cluster"],"summary":"Restore Pbft Node","description":"Governed re-entry of a quarantined node after revalidation.","operationId":"restore_pbft_node_api_v1_cluster_pbft_restore_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/byzantine-mode":{"post":{"tags":["CAIN Cluster"],"summary":"Set Pbft Byzantine Mode","description":"TEST-ONLY fault-injection control for disposable certification clusters.\n\nDisabled unless CAIN_BYZANTINE_ALLOW=1, which is set only on throwaway\nclusters the certification harness deploys. Production clusters never set\nit, so this endpoint returns 403 there.","operationId":"set_pbft_byzantine_mode_api_v1_cluster_pbft_byzantine_mode_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/request":{"post":{"tags":["CAIN Cluster"],"summary":"Receive Pbft Request","description":"Receives forwarded client request from replica to primary.","operationId":"receive_pbft_request_api_v1_cluster_pbft_request_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req Data"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/status":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Status","description":"Observability and status of the PBFT engine.","operationId":"get_pbft_status_api_v1_cluster_pbft_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/state-proof":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft State Proof","description":"Returns cryptographic state root proof.","operationId":"get_pbft_state_proof_api_v1_cluster_pbft_state_proof_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/qc/{sequence}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Qc","description":"PBFT Evolution 2: the quorum certificate this node holds for a committed\nsequence, built from the signed consensus votes. The caller must verify it\n(cain_pbft_qc.verify_qc / `cain pbft qc verify`); serving it proves nothing.","operationId":"get_pbft_qc_api_v1_cluster_pbft_qc__sequence__get","parameters":[{"name":"sequence","in":"path","required":true,"schema":{"type":"integer","title":"Sequence"}},{"name":"type","in":"query","required":false,"schema":{"type":"string","default":"commit","title":"Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/checkpoint-qc":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Checkpoint Qc","operationId":"get_pbft_checkpoint_qc_api_v1_cluster_pbft_checkpoint_qc_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/view-change-qc/{view}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft View Change Qc","operationId":"get_pbft_view_change_qc_api_v1_cluster_pbft_view_change_qc__view__get","parameters":[{"name":"view","in":"path","required":true,"schema":{"type":"integer","title":"View"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/decision-chain":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Decision Chain","operationId":"get_pbft_decision_chain_api_v1_cluster_pbft_decision_chain_get","parameters":[{"name":"since","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Since"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":500,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/proof-chain/{sequence}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Proof Chain","operationId":"get_pbft_proof_chain_api_v1_cluster_pbft_proof_chain__sequence__get","parameters":[{"name":"sequence","in":"path","required":true,"schema":{"type":"integer","title":"Sequence"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/prepared-cert/{sequence}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Prepared Cert","description":"A prepared certificate by (sequence, view, digest), for a peer that\nreceived only its hash in a COMMIT. Untrusted transport: the requester\nchecks the hash and verifies every signature.","operationId":"get_pbft_prepared_cert_api_v1_cluster_pbft_prepared_cert__sequence__get","parameters":[{"name":"sequence","in":"path","required":true,"schema":{"type":"integer","title":"Sequence"}},{"name":"view","in":"query","required":true,"schema":{"type":"integer","title":"View"}},{"name":"digest","in":"query","required":true,"schema":{"type":"string","title":"Digest"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/authorization-certificate/{sequence}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Authorization Certificate","description":"Evolution 2 consensus -> enforcement bridge: an AuthorizationCertificate\nderived from this node's COMMIT_QC for a committed sequence. 409 if the\ncommitted request's binding does not hold (no authorization exists).","operationId":"get_pbft_authorization_certificate_api_v1_cluster_pbft_authorization_certificate__sequence__get","parameters":[{"name":"sequence","in":"path","required":true,"schema":{"type":"integer","title":"Sequence"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/verify-authorization-certificate":{"post":{"tags":["CAIN Cluster"],"summary":"Post Pbft Verify Authorization Certificate","description":"Verifies with THIS node's membership keys; callers holding their own\nkeys should verify locally (cain_pbft_authorization.AuthorizationCertificate.verify).","operationId":"post_pbft_verify_authorization_certificate_api_v1_cluster_pbft_verify_authorization_certificate_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Cert"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/dag/vertex":{"post":{"tags":["CAIN Cluster"],"summary":"Post Dag Vertex","description":"A member's vertex + batch. Returns this node's signed availability\nattestation, PENDING (missing parents) or a rejection with the reason.","operationId":"post_dag_vertex_api_v1_cluster_dag_vertex_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/dag/certificate":{"post":{"tags":["CAIN Cluster"],"summary":"Post Dag Certificate","operationId":"post_dag_certificate_api_v1_cluster_dag_certificate_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/dag/submit":{"post":{"tags":["CAIN Cluster"],"summary":"Post Dag Submit","description":"Queue a client request for this node's next vertex (backpressure: 429 when full).","operationId":"post_dag_submit_api_v1_cluster_dag_submit_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/dag/payload/{payload_digest}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Dag Payload","operationId":"get_dag_payload_api_v1_cluster_dag_payload__payload_digest__get","parameters":[{"name":"payload_digest","in":"path","required":true,"schema":{"type":"string","title":"Payload Digest"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/dag/certificates":{"get":{"tags":["CAIN Cluster"],"summary":"Get Dag Certificates","description":"For VerifiedDAGStateSync: certificates (+ batches) from a round on. The\nrequester re-verifies every one; serving them proves nothing.","operationId":"get_dag_certificates_api_v1_cluster_dag_certificates_get","parameters":[{"name":"since_round","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Since Round"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/dag/status":{"get":{"tags":["CAIN Cluster"],"summary":"Get Dag Status","operationId":"get_dag_status_api_v1_cluster_dag_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/dag/frontier":{"get":{"tags":["CAIN Cluster"],"summary":"Get Dag Frontier","operationId":"get_dag_frontier_api_v1_cluster_dag_frontier_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/dag/vertex/{vertex_digest}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Dag Vertex","operationId":"get_dag_vertex_api_v1_cluster_dag_vertex__vertex_digest__get","parameters":[{"name":"vertex_digest","in":"path","required":true,"schema":{"type":"string","title":"Vertex Digest"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/dag/causal-proof/{vertex_digest}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Dag Causal Proof","operationId":"get_dag_causal_proof_api_v1_cluster_dag_causal_proof__vertex_digest__get","parameters":[{"name":"vertex_digest","in":"path","required":true,"schema":{"type":"string","title":"Vertex Digest"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/dag/order":{"get":{"tags":["CAIN Cluster"],"summary":"Get Dag Order","operationId":"get_dag_order_api_v1_cluster_dag_order_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/byzantine/graph":{"get":{"tags":["CAIN Cluster"],"summary":"Get Byzantine Graph","description":"Byzantine evidence as a graph: node -> evidence -> objects. PBFT proofs\nare attributable signed evidence; DAG withholding entries are local\nobservations and are labelled as such.","operationId":"get_byzantine_graph_api_v1_cluster_byzantine_graph_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/locks":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Locks","operationId":"get_pbft_locks_api_v1_cluster_pbft_locks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/state-transfer":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft State Transfer","description":"Serves this node's own WAL-persisted PreparedCertificates for\nreconciliation. This node is an untrusted transport: the requester\nre-verifies every certificate's signatures and quorum math itself before\napplying anything (see HardenedPBFTEngine.apply_state_transfer_entries).","operationId":"get_pbft_state_transfer_api_v1_cluster_pbft_state_transfer_get","parameters":[{"name":"since_sequence","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Since Sequence"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/catch-up":{"post":{"tags":["CAIN Cluster"],"summary":"Trigger Pbft Catch Up","description":"Manually triggers reconciliation from peers (the same routine that\nruns automatically on node startup).","operationId":"trigger_pbft_catch_up_api_v1_cluster_pbft_catch_up_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/view-change":{"post":{"tags":["CAIN Cluster"],"summary":"Trigger Pbft View Change","description":"Triggers view change protocol.","operationId":"trigger_pbft_view_change_api_v1_cluster_pbft_view_change_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/compare-state":{"get":{"tags":["CAIN Cluster"],"summary":"Compare Cluster State","description":"Phase 8: State root comparison across cluster replicas.","operationId":"compare_cluster_state_api_v1_cluster_pbft_compare_state_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cluster/pbft/authorization-proof/{auth_id}":{"get":{"tags":["CAIN Cluster"],"summary":"Get Pbft Authorization Proof","description":"Fetches full machine-checkable AuthorizationProofObject by ID.","operationId":"get_pbft_authorization_proof_api_v1_cluster_pbft_authorization_proof__auth_id__get","parameters":[{"name":"auth_id","in":"path","required":true,"schema":{"type":"string","title":"Auth Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/authorization-proof":{"get":{"tags":["CAIN Cluster"],"summary":"Get Latest Pbft Authorization Proof","description":"Fetches latest AuthorizationProofObject or by request_id.","operationId":"get_latest_pbft_authorization_proof_api_v1_cluster_pbft_authorization_proof_get","parameters":[{"name":"request_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Request Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/attest-qc":{"post":{"tags":["CAIN Cluster"],"summary":"Attest Qc Statement Endpoint","description":"CAIN 35.0 Phase 3 -- a peer's fail-closed attestation of a QuorumCertificate\nstatement. Only signs statements this node independently recorded itself via\nthe real PBFT protocol; never blind-signs a caller-supplied claim.","operationId":"attest_qc_statement_endpoint_api_v1_cluster_pbft_attest_qc_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Statement"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/verify-proof":{"post":{"tags":["CAIN Cluster"],"summary":"Verify Pbft Proof","description":"Genuinely independent (Phase 10) verification of an AuthorizationProofObject:\ncain_35_independent_verifier.py never imports cain_proof_carrying_fabric, so a bug\nin the production QuorumCertificate/AuthorizationProofObject classes is not\nsilently inherited here. (cain_proof_carrying_fabric.CleanRoomVerifier still\nexists but is NOT independent -- it imports and calls the production classes --\nand is kept only as an in-process consistency self-check, never cited as the\nPhase 10 independent verifier.)","operationId":"verify_pbft_proof_api_v1_cluster_pbft_verify_proof_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/action-proof":{"post":{"tags":["CAIN Cluster"],"summary":"Create Action Proof Endpoint","description":"Generates an ActionProof for MCPGate boundary enforcement.","operationId":"create_action_proof_endpoint_api_v1_cluster_pbft_action_proof_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/verify-action-proof":{"post":{"tags":["CAIN Cluster"],"summary":"Verify Action Proof Endpoint","description":"MCPGate boundary verification: rejects invalid or unauthenticated action proofs fail-closed.","operationId":"verify_action_proof_endpoint_api_v1_cluster_pbft_verify_action_proof_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/decision-replay":{"post":{"tags":["CAIN Cluster"],"summary":"Replay Decision Endpoint","description":"Replays the complete decision path and detects non-determinism.","operationId":"replay_decision_endpoint_api_v1_cluster_pbft_decision_replay_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/decision-simulate":{"post":{"tags":["CAIN Cluster"],"summary":"Simulate Decision Endpoint","description":"Counterfactual decision simulation without mutating production state.","operationId":"simulate_decision_endpoint_api_v1_cluster_pbft_decision_simulate_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/outcome-verify":{"post":{"tags":["CAIN Cluster"],"summary":"Outcome Verify Endpoint","description":"Compares expected vs observed execution outcome.","operationId":"outcome_verify_endpoint_api_v1_cluster_pbft_outcome_verify_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/pbft/revoke":{"post":{"tags":["CAIN Cluster"],"summary":"Revoke Authorization Endpoint","description":"Revokes authorization token or nonce fail-closed across cluster.","operationId":"revoke_authorization_endpoint_api_v1_cluster_pbft_revoke_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Req"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cluster/metrics":{"get":{"tags":["CAIN Cluster"],"summary":"Get Metrics","description":"Prometheus-compatible plain text metrics with zero secret exposure.","operationId":"get_metrics_api_v1_cluster_metrics_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"head":{"tags":["CAIN Cluster"],"summary":"Get Metrics","description":"Prometheus-compatible plain text metrics with zero secret exposure.","operationId":"get_metrics_api_v1_cluster_metrics_head","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/evidence":{"get":{"tags":["CAIN 37 Evidence Fabric"],"summary":"List Evidence","operationId":"list_evidence_api_v1_evidence_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/evidence/{evidence_id}":{"get":{"tags":["CAIN 37 Evidence Fabric"],"summary":"Get Evidence","operationId":"get_evidence_api_v1_evidence__evidence_id__get","parameters":[{"name":"evidence_id","in":"path","required":true,"schema":{"type":"string","title":"Evidence Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/evidence/{evidence_id}/proof":{"get":{"tags":["CAIN 37 Evidence Fabric"],"summary":"Get Evidence Proof","description":"Returns everything an independent verifier needs to check this one\nevidence object: the record itself, its position, and (if sealed) its\nMerkle inclusion proof against the checkpoint that covers it.","operationId":"get_evidence_proof_api_v1_evidence__evidence_id__proof_get","parameters":[{"name":"evidence_id","in":"path","required":true,"schema":{"type":"string","title":"Evidence Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/evidence/chain/root":{"get":{"tags":["CAIN 37 Evidence Fabric"],"summary":"Get Chain Root","operationId":"get_chain_root_api_v1_evidence_chain_root_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/economic-evidence":{"get":{"tags":["CAIN 38 Economic Evidence Fabric"],"summary":"List Economic Evidence","operationId":"list_economic_evidence_api_v1_economic_evidence_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/economic-evidence/{evidence_id}":{"get":{"tags":["CAIN 38 Economic Evidence Fabric"],"summary":"Get Economic Evidence","operationId":"get_economic_evidence_api_v1_economic_evidence__evidence_id__get","parameters":[{"name":"evidence_id","in":"path","required":true,"schema":{"type":"string","title":"Evidence Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/escrow/{escrow_id}":{"get":{"tags":["CAIN 39 Escrow / Conditional Settlement"],"summary":"Get Escrow","operationId":"get_escrow_api_v1_escrow__escrow_id__get","parameters":[{"name":"escrow_id","in":"path","required":true,"schema":{"type":"string","title":"Escrow Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/escrow/{escrow_id}/replay":{"get":{"tags":["CAIN 39 Escrow / Conditional Settlement"],"summary":"Replay Escrow","operationId":"replay_escrow_api_v1_escrow__escrow_id__replay_get","parameters":[{"name":"escrow_id","in":"path","required":true,"schema":{"type":"string","title":"Escrow Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/organizations/{organization_id}":{"get":{"tags":["CAIN 40 Agent Organizations"],"summary":"Get Organization","operationId":"get_organization_api_v1_organizations__organization_id__get","parameters":[{"name":"organization_id","in":"path","required":true,"schema":{"type":"string","title":"Organization Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/organizations/{organization_id}/replay":{"get":{"tags":["CAIN 40 Agent Organizations"],"summary":"Replay Organization","operationId":"replay_organization_api_v1_organizations__organization_id__replay_get","parameters":[{"name":"organization_id","in":"path","required":true,"schema":{"type":"string","title":"Organization Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/universal-proof/{proof_id}":{"get":{"tags":["CAIN 41 Universal Agent Proof"],"summary":"Get Proof","operationId":"get_proof_api_v1_universal_proof__proof_id__get","parameters":[{"name":"proof_id","in":"path","required":true,"schema":{"type":"string","title":"Proof Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/universal-proof/{proof_id}/verify":{"get":{"tags":["CAIN 41 Universal Agent Proof"],"summary":"Verify Proof By Id","operationId":"verify_proof_by_id_api_v1_universal_proof__proof_id__verify_get","parameters":[{"name":"proof_id","in":"path","required":true,"schema":{"type":"string","title":"Proof Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/universal-proof/verify":{"post":{"tags":["CAIN 41 Universal Agent Proof"],"summary":"Verify Submitted Proof","description":"Phase 34's public verifier: accepts an externally-submitted proof\nobject and independently verifies it against this server's own chain\nfiles. Never returns VALID merely because the submitter claims it.","operationId":"verify_submitted_proof_api_v1_universal_proof_verify_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Proof"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/interop-evidence/{protocol}":{"get":{"tags":["CAIN 42 MCP/A2A Interop Evidence"],"summary":"List Interop Evidence","operationId":"list_interop_evidence_api_v1_interop_evidence__protocol__get","parameters":[{"name":"protocol","in":"path","required":true,"schema":{"type":"string","title":"Protocol"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/session":{"post":{"tags":["frontier-lab"],"summary":"Create","operationId":"create_api_v1_frontier_lab_session_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/frontier-lab/mint":{"post":{"tags":["frontier-lab"],"summary":"Mint","operationId":"mint_api_v1_frontier_lab_mint_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MintReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/delegate":{"post":{"tags":["frontier-lab"],"summary":"Delegate","operationId":"delegate_api_v1_frontier_lab_delegate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DelegateReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/sign-invocation":{"post":{"tags":["frontier-lab"],"summary":"Sign Inv","operationId":"sign_inv_api_v1_frontier_lab_sign_invocation_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/evaluate":{"post":{"tags":["frontier-lab"],"summary":"Evaluate","operationId":"evaluate_api_v1_frontier_lab_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EvalReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/world-model":{"post":{"tags":["frontier-lab"],"summary":"World Model","operationId":"world_model_api_v1_frontier_lab_world_model_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssessReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/policy":{"post":{"tags":["frontier-lab"],"summary":"Policy","operationId":"policy_api_v1_frontier_lab_policy_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/memory":{"post":{"tags":["frontier-lab"],"summary":"Memory Add","operationId":"memory_add_api_v1_frontier_lab_memory_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemReq"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/memory/merge":{"post":{"tags":["frontier-lab"],"summary":"Memory Merge","operationId":"memory_merge_api_v1_frontier_lab_memory_merge_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemIds"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/memory/revoke":{"post":{"tags":["frontier-lab"],"summary":"Memory Revoke","operationId":"memory_revoke_api_v1_frontier_lab_memory_revoke_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemIds"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/log/{token}":{"get":{"tags":["frontier-lab"],"summary":"Log","operationId":"log_api_v1_frontier_lab_log__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/scenario/{name}":{"post":{"tags":["frontier-lab"],"summary":"Scenario","operationId":"scenario_api_v1_frontier_lab_scenario__name__post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Token"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frontier-lab/index.json":{"get":{"tags":["frontier-lab"],"summary":"Index","description":"Machine-readable description for AI agents and scripts.","operationId":"index_api_v1_frontier_lab_index_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/authorize":{"post":{"tags":["frontier"],"summary":"Authorize","operationId":"authorize_frontier_authorize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/frontier/world-model/assess":{"post":{"tags":["frontier"],"summary":"Assess","description":"Informational only: a prediction never grants authority (grants_authority is always false).","operationId":"assess_frontier_world_model_assess_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssessRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/frontier/status":{"get":{"tags":["frontier"],"summary":"Status","operationId":"status_frontier_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/discovery":{"get":{"tags":["frontier"],"summary":"Discovery","description":"Measured inventory of agents/services/containers on this host (secrets never included). Unlisted-in-inventory means UNMANAGED.","operationId":"discovery_frontier_discovery_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/epistemic":{"get":{"tags":["frontier"],"summary":"Epistemic","description":"Measured validator diversity of the running cluster (docker inspect). Consensus is evidence, not truth.","operationId":"epistemic_frontier_epistemic_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/trust-bom":{"get":{"tags":["frontier"],"summary":"Trust Bom","operationId":"trust_bom_frontier_trust_bom_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/a2a/verify":{"post":{"tags":["frontier"],"summary":"A2A Verify","description":"Verifies a signed cross-protocol envelope. The transport peer is the ACTUAL client address, mapped to a server name via operator-managed servers.json - never caller-declared.","operationId":"a2a_verify_frontier_a2a_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cain_frontier_api__A2AVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/frontier/adapters/webhook":{"post":{"tags":["frontier"],"summary":"Webhook","description":"Signed-webhook adapter: external systems propose actions; the response is a DECISION only.","operationId":"webhook_frontier_adapters_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/studio":{"get":{"tags":["frontier"],"summary":"Studio","operationId":"studio_frontier_studio_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/frontier/enforcement":{"get":{"tags":["frontier"],"summary":"Enforcement","description":"Read-only: the effective staged-enforcement policy, its hash, and any rejected edit (last-known-good stays active). Only the operator CLI can change it.","operationId":"enforcement_frontier_enforcement_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/shadow-report":{"get":{"tags":["frontier"],"summary":"Shadow Report","description":"What the gate would block, per tool and category, from the real decision log: the evidence for choosing what to enforce first.","operationId":"shadow_report_frontier_shadow_report_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/frontier/decisions/verify":{"get":{"tags":["frontier"],"summary":"Verify Log","operationId":"verify_log_frontier_decisions_verify_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/trust-center":{"get":{"tags":["frontier-evidence"],"summary":"Trust Center","operationId":"trust_center_trust_center_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/evidence/daily/latest.json":{"get":{"tags":["frontier-evidence"],"summary":"Daily Latest","operationId":"daily_latest_evidence_daily_latest_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/evidence/daily/{date}/{name}":{"get":{"tags":["frontier-evidence"],"summary":"Daily File","operationId":"daily_file_evidence_daily__date___name__get","parameters":[{"name":"date","in":"path","required":true,"schema":{"type":"string","title":"Date"}},{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/evidence/frontier/{name}":{"get":{"tags":["frontier-evidence"],"summary":"Frontier Bundle File","operationId":"frontier_bundle_file_evidence_frontier__name__get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/evidence":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Evidence","operationId":"get_evidence_evidence_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/verify":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Verify","operationId":"get_verify_verify_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/claims":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Claims","operationId":"get_claims_claims_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/evolution":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Evolution","operationId":"get_evolution_evolution_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cluster":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cluster","operationId":"get_cluster_cluster_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/consensus":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Consensus","operationId":"get_consensus_consensus_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/byzantine":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Byzantine","operationId":"get_byzantine_byzantine_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/view-change":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get View Change","operationId":"get_view_change_view_change_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/state":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get State","operationId":"get_state_state_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/state-sync":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get State Sync","operationId":"get_state_sync_state_sync_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/witnesses":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Witnesses","operationId":"get_witnesses_witnesses_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/provenance":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Provenance","operationId":"get_provenance_provenance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/identity":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Identity","operationId":"get_identity_identity_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/capabilities":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Capabilities","operationId":"get_capabilities_capabilities_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/delegation":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Delegation","operationId":"get_delegation_delegation_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/trajectory":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Trajectory","operationId":"get_trajectory_trajectory_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/economic":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Economic","operationId":"get_economic_economic_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/organization":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Organization","operationId":"get_organization_organization_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/outcomes":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Outcomes","operationId":"get_outcomes_outcomes_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/replay":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Replay","operationId":"get_replay_replay_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/red-team":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Red Team","operationId":"get_red_team_red_team_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/constitution":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Constitution","operationId":"get_constitution_constitution_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/benchmarks":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Benchmarks","operationId":"get_benchmarks_benchmarks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/incidents":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Incidents","operationId":"get_incidents_incidents_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/transparency":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Transparency","operationId":"get_transparency_transparency_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/.well-known/cain42-evidence.json":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Well Known Evidence","operationId":"get_well_known_evidence__well_known_cain42_evidence_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/.well-known/cain42-identity.json":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Well Known Identity","operationId":"get_well_known_identity__well_known_cain42_identity_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/.well-known/cain-42.json":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Well Known Cain 42","operationId":"get_well_known_cain_42__well_known_cain_42_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/.well-known/cain-keys.json":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Well Known Cain Keys","description":"Public Ed25519 node verification keys, read live from the BFT cluster.","operationId":"get_well_known_cain_keys__well_known_cain_keys_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/status":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Status","operationId":"get_cain_42_status_cain_42_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/identity":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Identity","operationId":"get_cain_42_identity_cain_42_identity_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/constitution":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Constitution Endpoint","operationId":"get_cain_42_constitution_endpoint_cain_42_constitution_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/invariants":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Invariants Endpoint","operationId":"get_cain_42_invariants_endpoint_cain_42_invariants_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/cluster":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Cluster Endpoint","operationId":"get_cain_42_cluster_endpoint_cain_42_cluster_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/quorum":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Quorum Endpoint","operationId":"get_cain_42_quorum_endpoint_cain_42_quorum_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/evidence":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Evidence Endpoint","operationId":"get_cain_42_evidence_endpoint_cain_42_evidence_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/evolution":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Evolution Endpoint","operationId":"get_cain_42_evolution_endpoint_cain_42_evolution_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/conformance":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Conformance Endpoint","operationId":"get_cain_42_conformance_endpoint_cain_42_conformance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/redteam":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Redteam Endpoint","operationId":"get_cain_42_redteam_endpoint_cain_42_redteam_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/benchmarks":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Benchmarks Endpoint","operationId":"get_cain_42_benchmarks_endpoint_cain_42_benchmarks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/limitations":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Limitations Endpoint","operationId":"get_cain_42_limitations_endpoint_cain_42_limitations_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cain-42/verify":{"get":{"tags":["CAIN-42 Public Evidence Fabric"],"summary":"Get Cain 42 Verify Endpoint","operationId":"get_cain_42_verify_endpoint_cain_42_verify_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/":{"get":{"tags":["CAIN Console"],"summary":"Console Home","description":"Unified console home - all 7 moats overview.","operationId":"console_home_console__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console":{"get":{"tags":["CAIN Console"],"summary":"Console Home","description":"Unified console home - all 7 moats overview.","operationId":"console_home_console_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/trust-state":{"get":{"tags":["CAIN Console"],"summary":"Trust State Info","description":"Trust State (Moat #1) - WHO DO WE TRUST RIGHT NOW?","operationId":"trust_state_info_console_trust_state_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/security-context":{"get":{"tags":["CAIN Console"],"summary":"Security Context Info","description":"Security-Context Continuity (Moat #2) - DOES AUTHORITY SURVIVE EVERY BOUNDARY?","operationId":"security_context_info_console_security_context_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/trust-graph":{"get":{"tags":["CAIN Console"],"summary":"Trust Graph Info","description":"Trust Graph (Moat #3) - HOW IS EVERYTHING CONNECTED?","operationId":"trust_graph_info_console_trust_graph_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/provenance":{"get":{"tags":["CAIN Console"],"summary":"Provenance Info","description":"Execution Provenance + Attestation (Moat #4) - CAN WE PROVE WHAT ACTUALLY HAPPENED?","operationId":"provenance_info_console_provenance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/predictive":{"get":{"tags":["CAIN Console"],"summary":"Predictive Info","description":"Predictive Trust + Blast Radius (Moat #5) - WHAT COULD HAPPEN BEFORE WE LET IT HAPPEN?","operationId":"predictive_info_console_predictive_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/adversarial":{"get":{"tags":["CAIN Console"],"summary":"Adversarial Info","description":"Adversarial Trust Engine (Moat #6) - CAN CAIN BREAK ITS OWN TRUST GUARANTEES?","operationId":"adversarial_info_console_adversarial_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/sentinel":{"get":{"tags":["CAIN Console"],"summary":"Sentinel Info","description":"Autonomous Trust Control Loop (Moat #7) - CAN VERIFIED EXPERIENCE CHANGE FUTURE TRUST?","operationId":"sentinel_info_console_sentinel_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/trust-loop":{"get":{"tags":["CAIN Console"],"summary":"Trust Loop Info","description":"The Canonical CAIN Trust Loop.","operationId":"trust_loop_info_console_trust_loop_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/conformance":{"get":{"tags":["CAIN Console"],"summary":"Conformance Info","description":"CAIN Conformance Engine - LIVE status.","operationId":"conformance_info_console_conformance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/evidence":{"get":{"tags":["CAIN Console"],"summary":"Evidence Info","description":"CAIN Evidence - VERIFIED status.","operationId":"evidence_info_console_evidence_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/trace":{"get":{"tags":["CAIN Console"],"summary":"Trace Info","description":"CAIN Trace - VERIFIED status.","operationId":"trace_info_console_trace_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/decisions":{"get":{"tags":["CAIN Console"],"summary":"Decisions Info","description":"CAIN Trust Decisions - VERIFIED status.","operationId":"decisions_info_console_decisions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/runtime/status":{"get":{"tags":["CAIN Console"],"summary":"Runtime Status","description":"CAIN Runtime Status - AI INFRASTRUCTURE VALIDATED TRUST RUNTIME\n\nReturns the current status of the validated trust runtime.","operationId":"runtime_status_console_runtime_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/console/runtime/inspect":{"get":{"tags":["CAIN Console"],"summary":"Runtime Inspect","description":"CAIN Runtime Inspect - Inspect validated runtime state.\n\nReturns the current validated trust runtime for a principal.","operationId":"runtime_inspect_console_runtime_inspect_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/trust":{"get":{"tags":["CAIN Console"],"summary":"Runtime Trust","description":"CAIN Runtime Trust - Show trust state.\n\nReturns the current trust state and history for a principal.","operationId":"runtime_trust_console_runtime_trust_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/validate":{"get":{"tags":["CAIN Console"],"summary":"Runtime Validate","description":"CAIN Runtime Validate - Run validation checks.\n\nReturns validation results for:\n- valid state: VALIDATED\n- mutated state: INVALID\n- expired state: STALE\n- unknown dependency: UNKNOWN\n- cross-tenant state: FAIL\n- replayed certificate: FAIL\n- changed policy: REVALIDATE\n- changed authority: REVALIDATE\n- trust degradation: REVALIDATE\n- tool substitution: FAIL\n- MCP substitution: FAIL\n- memory poisoning: REVALIDATE\n- trajectory violation: FAIL/REVIEW","operationId":"runtime_validate_console_runtime_validate_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/certificate":{"get":{"tags":["CAIN Console"],"summary":"Runtime Certificate","description":"CAIN Runtime Certificate - Show validation certificate.\n\nReturns the validation certificate for a runtime.","operationId":"runtime_certificate_console_runtime_certificate_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/explain":{"get":{"tags":["CAIN Console"],"summary":"Runtime Explain","description":"CAIN Runtime Explain - Explain trust decision.\n\nReturns the reasoning behind a trust decision.","operationId":"runtime_explain_console_runtime_explain_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/evidence":{"get":{"tags":["CAIN Console"],"summary":"Runtime Evidence","description":"CAIN Runtime Evidence - Show evidence chain.\n\nReturns the evidence records for a tenant.","operationId":"runtime_evidence_console_runtime_evidence_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/revalidate":{"get":{"tags":["CAIN Console"],"summary":"Runtime Revalidate","description":"CAIN Runtime Revalidate - Trigger revalidation.\n\nTriggers revalidation after security-relevant events.","operationId":"runtime_revalidate_console_runtime_revalidate_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/diff":{"get":{"tags":["CAIN Console"],"summary":"Runtime Diff","description":"CAIN Runtime Diff - Show trust state changes.\n\nReturns the differential trust state for a principal.","operationId":"runtime_diff_console_runtime_diff_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/permit/verify":{"post":{"tags":["CAIN Console"],"summary":"Permit Verify","description":"CAIN Runtime Permit Verify - Verify an execution permit.\n\nReturns verification result for a permit.","operationId":"permit_verify_console_runtime_permit_verify_post","parameters":[{"name":"permit_id","in":"query","required":true,"schema":{"type":"string","title":"Permit Id"}},{"name":"certificate_id","in":"query","required":true,"schema":{"type":"string","title":"Certificate Id"}},{"name":"principal","in":"query","required":true,"schema":{"type":"string","title":"Principal"}},{"name":"action","in":"query","required":true,"schema":{"type":"string","title":"Action"}},{"name":"resource","in":"query","required":true,"schema":{"type":"string","title":"Resource"}},{"name":"nonce","in":"query","required":true,"schema":{"type":"string","title":"Nonce"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/effect/verify":{"post":{"tags":["CAIN Console"],"summary":"Effect Verify","description":"CAIN Runtime Effect Verify - Verify execution effect.\n\nReturns verification result for an effect.","operationId":"effect_verify_console_runtime_effect_verify_post","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}},{"name":"expected_effect","in":"query","required":true,"schema":{"type":"string","title":"Expected Effect"}},{"name":"actual_effect","in":"query","required":true,"schema":{"type":"string","title":"Actual Effect"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/runtime/history":{"get":{"tags":["CAIN Console"],"summary":"Runtime History","description":"CAIN Runtime History - Show trust history.\n\nReturns the trust history for a principal.","operationId":"runtime_history_console_runtime_history_get","parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","title":"Tenant"}},{"name":"principal_id","in":"query","required":true,"schema":{"type":"string","title":"Principal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/status":{"get":{"tags":["CAIN Console"],"summary":"Global Status","description":"Global status of all CAIN services with verification status.","operationId":"global_status_console_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/marketplace/payouts/status":{"get":{"summary":"Marketplace Payouts Status","operationId":"marketplace_payouts_status_marketplace_payouts_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/fabric/events":{"get":{"summary":"Fabric Events Endpoint","description":"This tenant's replicated evidence events, as JSON or an event stream.\n\nUntil 2026-09-27 this was unauthenticated and unfiltered: a plain GET\nreturned every column (payload included) of every tenant's evidence rows,\nwith no cap on ?replay. It now requires the API key or a read-scoped\nsession token and only ever returns the caller's own tenant.","operationId":"fabric_events_endpoint_fabric_events_get","parameters":[{"name":"replay","in":"query","required":false,"schema":{"type":"integer","default":5,"title":"Replay"}},{"name":"session","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/security/report":{"post":{"summary":"Security Report Submit","operationId":"security_report_submit_security_report_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecurityReportPayload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/script.js":{"get":{"summary":"Analytics Script Endpoint","operationId":"analytics_script_endpoint_script_js_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/telemetry/beacon":{"post":{"summary":"Telemetry Beacon Endpoint","operationId":"telemetry_beacon_endpoint_api_v1_telemetry_beacon_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/sandbox/simulate":{"post":{"summary":"Sandbox Simulate","description":"Simulates an agent tool execution through the live CAIN Trust Control Plane.\nReturns:\n- Blast radius & fail-closed verdict (ALLOW, REQUIRE_APPROVAL, DENIED)\n- Industry standard SIEM telemetry (CEF for Splunk/Cortex, LEEF 2.0 for IBM QRadar, Signed JSON)\n- WORM causal evidence digest & Merkle inclusion notary proof\n- Court-admissible compliance affidavit (EU AI Act Art. 72 & ISO 42001)","operationId":"sandbox_simulate_api_v1_sandbox_simulate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SandboxSimulateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sandbox/memory/sanitize":{"post":{"summary":"Sandbox Memory Sanitize","description":"Demonstrates Channel 11: Governed Agent Memory & Vector Sanitization Service.\nScreens text against indirect prompt injection, jailbreaks, and memory backdoors.","operationId":"sandbox_memory_sanitize_api_v1_sandbox_memory_sanitize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SandboxMemorySanitizeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sandbox/passport/issue":{"post":{"summary":"Sandbox Passport Issue","description":"Demonstrates Channel 10: Inter-Enterprise Trajectory Passport Clearinghouse.\nIssues a cryptographically signed passport with 5-layer fact segregation and executes B2B settlement.","operationId":"sandbox_passport_issue_api_v1_sandbox_passport_issue_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SandboxPassportIssueRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sandbox/enclave/attest":{"post":{"summary":"Sandbox Enclave Attest","description":"Demonstrates Channel 9: Confidential Computing Hardware Enclave Remote Attestation Notary.\nGenerates an enclave quote binding node signing key inside 64-byte report_data.","operationId":"sandbox_enclave_attest_api_v1_sandbox_enclave_attest_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SandboxEnclaveAttestRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sandbox/sovereign/certify":{"post":{"summary":"Sandbox Sovereign Certify","description":"Demonstrates Channel 12: Strategic Sovereign AI Defense Turnkey Implementations.\nAudits network egress against zero-WAN requirements and produces PQC hybrid notarization.","operationId":"sandbox_sovereign_certify_api_v1_sandbox_sovereign_certify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SandboxSovereignCertifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sandbox/telemetry/recent":{"get":{"summary":"Sandbox Telemetry Recent","description":"Returns the most recent execution telemetry packets generated by sandboxes.","operationId":"sandbox_telemetry_recent_api_v1_sandbox_telemetry_recent_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sandbox/telemetry/stream":{"get":{"summary":"Sandbox Telemetry Stream","description":"Real-time Server-Sent Events (SSE) telemetry stream for active developer sandboxes.\nStreams live execution packets and keepalives with automatic client reconnect.","operationId":"sandbox_telemetry_stream_api_v1_sandbox_telemetry_stream_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/compliance/audit/eu-ai-act":{"post":{"summary":"Audit Eu Ai Act","description":"EU AI Act Article 14 (Human Oversight) & Article 72 (Event Recording) Audit.","operationId":"audit_eu_ai_act_api_v1_compliance_audit_eu_ai_act_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComplianceAuditRequest","default":{"tenant_id":"tenant-default","time_window_hours":24}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/compliance/audit/iso-42001":{"post":{"summary":"Audit Iso 42001","description":"ISO/IEC 42001:2023 Information Security in AI Management Scorecard.","operationId":"audit_iso_42001_api_v1_compliance_audit_iso_42001_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComplianceAuditRequest","default":{"tenant_id":"tenant-default","time_window_hours":24}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/compliance/worm/export":{"post":{"summary":"Export Worm Evidence","description":"Exports a court-admissible WORM Merkle evidence package with legal affidavit.","operationId":"export_worm_evidence_api_v1_compliance_worm_export_post","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WORMExportRequest","default":{"tenant_id":"tenant-default","format":"json"}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/compliance/worm/verify":{"post":{"summary":"Verify Worm Evidence","description":"Cryptographically verifies Merkle root, record hashes, and node signature.","operationId":"verify_worm_evidence_api_v1_compliance_worm_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WORMVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/compliance/bundle.zip":{"get":{"summary":"Download Worm Evidence Bundle","description":"Downloads a court-admissible WORM Merkle evidence bundle in ZIP format,\ncomplete with signed affidavit, Merkle tree inclusion proofs, JSONL ledger, and offline verifier.","operationId":"download_worm_evidence_bundle_compliance_bundle_zip_get","parameters":[{"name":"tenant_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"tenant-default","title":"Tenant Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/compliance/worm/bundle.zip":{"post":{"summary":"Download Worm Evidence Bundle","description":"Downloads a court-admissible WORM Merkle evidence bundle in ZIP format,\ncomplete with signed affidavit, Merkle tree inclusion proofs, JSONL ledger, and offline verifier.","operationId":"download_worm_evidence_bundle_api_v1_compliance_worm_bundle_zip_post","parameters":[{"name":"tenant_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"tenant-default","title":"Tenant Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"Download Worm Evidence Bundle","description":"Downloads a court-admissible WORM Merkle evidence bundle in ZIP format,\ncomplete with signed affidavit, Merkle tree inclusion proofs, JSONL ledger, and offline verifier.","operationId":"download_worm_evidence_bundle_api_v1_compliance_worm_bundle_zip_post","parameters":[{"name":"tenant_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"tenant-default","title":"Tenant Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/compliance/eu-ai-act/portal":{"get":{"summary":"Get Eu Ai Act Portal Scorecard","description":"Returns live EU AI Act pre-conformity scorecard and statutory mitigation metrics\nfor Regulation (EU) 2024/1689 compliance discovery.","operationId":"get_eu_ai_act_portal_scorecard_api_v1_compliance_eu_ai_act_portal_get","parameters":[{"name":"tenant_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"tenant-default","title":"Tenant Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/insurance/assess":{"post":{"summary":"Assess Cyber Insurance","description":"Actuarially evaluates agent fleet evidence to calculate:\n- Agent Volatility Index (AVI)\n- Maximum Probable Loss (MPL)\n- Underwriting Credit Score (0-1000)\n- Approved Insurance Discount Tier","operationId":"assess_cyber_insurance_api_v1_insurance_assess_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsuranceAssessRequest","default":{"tenant_id":"tenant-default","fleet_id":"fleet-default","baseline_annual_premium_usd":250000.0}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/insurance/certificate":{"post":{"summary":"Issue Insurance Certificate","description":"Issues a court-admissible Actuarial Underwriting Certificate with digital signature.","operationId":"issue_insurance_certificate_api_v1_insurance_certificate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsuranceAssessRequest","default":{"tenant_id":"tenant-default","fleet_id":"fleet-default","baseline_annual_premium_usd":250000.0}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/insurance/verify":{"post":{"summary":"Verify Cyber Insurance Certificate","description":"Cryptographically verifies an Actuarial Underwriting Certificate.","operationId":"verify_cyber_insurance_certificate_api_v1_insurance_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsuranceVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/insurance/consortium/syndicates":{"get":{"summary":"List Insurance Syndicates","description":"Returns global insurance syndicates participating in the CAIN underwriting consortium.","operationId":"list_insurance_syndicates_api_v1_insurance_consortium_syndicates_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/insurance/consortium/assess":{"post":{"summary":"Assess Insurance Consortium","description":"Generates an Underwriting Data Room with multi-syndicate quotes (Lloyd's, Munich Re, Swiss Re, Beazley),\nactuarial risk profile (AVI/MPL/Credit Score), signed certificate, and court affidavit.","operationId":"assess_insurance_consortium_api_v1_insurance_consortium_assess_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsuranceAssessRequest","default":{"tenant_id":"tenant-default","fleet_id":"fleet-default","baseline_annual_premium_usd":250000.0}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/insurance/consortium/verify":{"post":{"summary":"Verify Consortium Data Room","description":"Cryptographically verifies a Consortium Underwriting Data Room.","operationId":"verify_consortium_data_room_api_v1_insurance_consortium_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsortiumVerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/quarantine/agent":{"post":{"summary":"Quarantine Agent Endpoint","description":"Isolates a rogue agent, revoking credentials and invalidating cache in <10ms.","operationId":"quarantine_agent_endpoint_api_v1_quarantine_agent_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuarantineAgentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/quarantine/swarm":{"post":{"summary":"Quarantine Swarm Endpoint","description":"Isolates an entire autonomous multi-agent swarm fleet.","operationId":"quarantine_swarm_endpoint_api_v1_quarantine_swarm_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuarantineSwarmRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/quarantine/trajectory-anomaly":{"post":{"summary":"Handle Trajectory Anomaly Endpoint","description":"Directly isolates an agent exhibiting critical trajectory drift, evaluates swarm contagion,\nand escalates to swarm fleet quarantine if threshold is breached.","operationId":"handle_trajectory_anomaly_endpoint_api_v1_quarantine_trajectory_anomaly_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrajectoryAnomalyQuarantineRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/quarantine/halt":{"post":{"summary":"Emergency Halt Endpoint","description":"Global cluster-wide emergency kill-switch (<50ms halt).","operationId":"emergency_halt_endpoint_api_v1_quarantine_halt_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmergencyHaltRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/quarantine/lift":{"post":{"summary":"Lift Quarantine Endpoint","description":"Lifts a quarantine following verified security remediation.","operationId":"lift_quarantine_endpoint_api_v1_quarantine_lift_post","parameters":[{"name":"X-Gateway-Admin-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Gateway-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LiftQuarantineRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/quarantine/status":{"get":{"summary":"Quarantine Status Endpoint","description":"Returns cluster emergency halt status and active quarantines.","operationId":"quarantine_status_endpoint_api_v1_quarantine_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/marketplace/packs":{"get":{"summary":"List Marketplace Packs","description":"Returns commercial vertical Rego compliance packs catalog.","operationId":"list_marketplace_packs_api_v1_marketplace_packs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/marketplace/evaluate":{"post":{"summary":"Evaluate Marketplace Pack","description":"Evaluates an action against a commercial vertical compliance pack.","operationId":"evaluate_marketplace_pack_api_v1_marketplace_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketplaceEvaluateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/{slug}/{path}":{"post":{"summary":"Proxy","operationId":"proxy__slug___path__post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"Proxy","operationId":"proxy__slug___path__post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"summary":"Proxy","operationId":"proxy__slug___path__post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Proxy","operationId":"proxy__slug___path__post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Proxy","operationId":"proxy__slug___path__post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/create-agent":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Create Agent","description":"Create a new private agent.","operationId":"api_create_agent_create_agent_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAgentRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/list-agents":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api List Agents","description":"List all agents for the tenant.","operationId":"api_list_agents_list_agents_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/get-agent":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Get Agent","description":"Get agent details by ID.","operationId":"api_get_agent_get_agent_get","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/update-agent":{"patch":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Update Agent","description":"Update agent configuration.","operationId":"api_update_agent_update_agent_patch","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAgentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/delete-agent":{"delete":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Delete Agent","description":"Delete an agent.","operationId":"api_delete_agent_delete_agent_delete","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/set-memory":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Set Memory","description":"Set a memory value for an agent.","operationId":"api_set_memory_set_memory_post","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetMemoryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/get-memory":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Get Memory","description":"Get memory for an agent.","operationId":"api_get_memory_get_memory_get","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"memory_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Memory Type"}},{"name":"key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/add-tool":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Add Tool","description":"Add a tool to an agent.","operationId":"api_add_tool_add_tool_post","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddToolRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/list-tools":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api List Tools","description":"List tools for an agent.","operationId":"api_list_tools_list_tools_get","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/set-credential":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Set Credential","description":"Store a credential for an agent.","operationId":"api_set_credential_set_credential_post","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetCredentialRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/list-credentials":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api List Credentials","description":"List credentials for an agent.","operationId":"api_list_credentials_list_credentials_get","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/execute":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Execute","description":"Execute an action on an agent with CAIN enforcement.","operationId":"api_execute_execute_post","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/list-decisions":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api List Decisions","description":"List recent decisions.","operationId":"api_list_decisions_list_decisions_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/list-approvals":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api List Approvals","description":"List pending approvals.","operationId":"api_list_approvals_list_approvals_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/resolve-approval":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Resolve Approval","description":"Resolve a pending approval.","operationId":"api_resolve_approval_resolve_approval_post","parameters":[{"name":"approval_id","in":"query","required":true,"schema":{"type":"string","title":"Approval Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolveApprovalRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/automations":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Create Automation","description":"Create an automation job for an agent.","operationId":"api_create_automation_automations_post","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAutomationRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api List Automations","description":"List automations for an agent.","operationId":"api_list_automations_automations_get","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/verify-signature":{"get":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Verify Signature","description":"Verify the signature on a CAIN decision.","operationId":"api_verify_signature_verify_signature_get","parameters":[{"name":"decision_id","in":"query","required":true,"schema":{"type":"string","title":"Decision Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/trust-dynamics/enforce":{"post":{"tags":["CAIN Private","CAIN Private"],"summary":"Api Trust Dynamics Enforce","description":"HTTP enforcement endpoint using real TrustDynamicsRuntime.\n\nCanonical causal path:\nHTTP REQUEST → IDENTITY → TRUST CONTEXT → TRUST GRAPH →\nPOLICY → RISK → BUDGET → BLAST RADIUS → EXPECTATION →\nDECISION → ENFORCEMENT → REAL TOOL/ACTION → RESPONSE-SIDE DEFENSE →\nOUTCOME → RECONCILIATION → TRUST DELTA → TRUST STATE →\nAUTHORITY → EVIDENCE → NEXT-ACTION GOVERNANCE\n\nONLY ALLOW may execute consequential action.\nUNKNOWN/ERROR fail closed.","operationId":"api_trust_dynamics_enforce_trust_dynamics_enforce_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrustDynamicsEnforceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/test-cain-private":{"get":{"summary":"Test Cain Private","operationId":"test_cain_private_test_cain_private_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/architecture":{"get":{"summary":"Architecture","operationId":"architecture_architecture_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/budget":{"get":{"summary":"Budget Page","operationId":"budget_page_budget_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/governance":{"get":{"summary":"Governance Page","operationId":"governance_page_governance_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"A2ANonceRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"nonce":{"type":"string","title":"Nonce"},"timestamp":{"type":"number","title":"Timestamp"}},"type":"object","required":["agent_id","nonce","timestamp"],"title":"A2ANonceRequest"},"A2AObserveRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"capability":{"type":"string","title":"Capability"}},"type":"object","required":["agent_id","capability"],"title":"A2AObserveRequest"},"A2ARegisterRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"capabilities":{"items":{"type":"string"},"type":"array","minItems":1,"title":"Capabilities"},"endpoint_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endpoint Url"}},"type":"object","required":["agent_id","capabilities"],"title":"A2ARegisterRequest"},"ActionRule":{"properties":{"id":{"type":"string","title":"Id"},"type":{"type":"string","title":"Type"},"action":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"},"threshold":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Threshold"},"approval_action":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Approval Action"},"min_distinct_approvers":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Min Distinct Approvers"},"max_calls":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Calls"},"actions":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Actions"}},"type":"object","required":["id","type"],"title":"ActionRule"},"ActionStep":{"properties":{"index":{"type":"integer","title":"Index"},"action":{"type":"string","title":"Action"},"target":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target"},"value":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Value"},"approver":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Approver"}},"type":"object","required":["index","action"],"title":"ActionStep"},"ActionVerifyRequest":{"properties":{"plan":{"items":{"$ref":"#/components/schemas/ActionStep"},"type":"array","title":"Plan"},"rules":{"items":{"$ref":"#/components/schemas/ActionRule"},"type":"array","title":"Rules"},"agent_id":{"type":"string","title":"Agent Id","default":"computer-use-agent"}},"type":"object","required":["plan","rules"],"title":"ActionVerifyRequest"},"AddToolRequest":{"properties":{"tool_name":{"type":"string","title":"Tool Name"},"risk_level":{"type":"string","title":"Risk Level","default":"low"},"description":{"type":"string","title":"Description","default":""}},"type":"object","required":["tool_name"],"title":"AddToolRequest"},"AdversarialRunRequest":{"properties":{"tenant":{"type":"string","title":"Tenant","default":"demo"},"principal_id":{"type":"string","title":"Principal Id","default":"agent-redteam-probe"},"categories":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Categories"}},"type":"object","title":"AdversarialRunRequest"},"AgentControlRequest":{"properties":{"max_actions_per_hour":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Actions Per Hour"},"max_concurrent_actions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Concurrent Actions"}},"type":"object","title":"AgentControlRequest"},"AgentTokenRequest":{"properties":{"agent_id":{"type":"string","maxLength":255,"minLength":1,"title":"Agent Id"},"scopes":{"items":{"type":"string"},"type":"array","minItems":1,"title":"Scopes"},"ttl_seconds":{"type":"integer","maximum":3600.0,"minimum":1.0,"title":"Ttl Seconds","default":900},"chain":{"items":{"type":"string"},"type":"array","title":"Chain"}},"type":"object","required":["agent_id","scopes"],"title":"AgentTokenRequest"},"AnchorCheckpointRequest":{"properties":{"anchor_type":{"type":"string","title":"Anchor Type","default":"AUTO"},"extra_config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extra Config"}},"type":"object","title":"AnchorCheckpointRequest"},"ApprovalDecision":{"properties":{"approved":{"type":"boolean","title":"Approved"},"reason":{"type":"string","title":"Reason","default":""}},"type":"object","required":["approved"],"title":"ApprovalDecision"},"ApprovalDecisionRequest":{"properties":{"note":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"Note","description":"why you approved or denied it -- read by whoever audits this later"}},"type":"object","title":"ApprovalDecisionRequest"},"ApprovalRequestCreate":{"properties":{"requester_id":{"type":"string","minLength":1,"title":"Requester Id"},"requester_identity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Requester Identity"},"action":{"type":"string","minLength":1,"title":"Action"},"resource":{"type":"string","title":"Resource","default":""},"justification":{"type":"string","title":"Justification","default":""},"governance_policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Governance Policy Id"},"linked_budget_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linked Budget Id"},"linked_policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linked Policy Id"},"linked_control_policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linked Control Policy Id"},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"},"ttl_seconds":{"type":"integer","maximum":86400.0,"minimum":60.0,"title":"Ttl Seconds","default":3600}},"type":"object","required":["requester_id","action"],"title":"ApprovalRequestCreate"},"ApproveSkillRequest":{"properties":{"reason":{"type":"string","title":"Reason","default":""}},"type":"object","title":"ApproveSkillRequest"},"AssessReq":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"action":{"type":"string","maxLength":120,"title":"Action"},"resource":{"type":"string","maxLength":120,"title":"Resource","default":"r"}},"type":"object","required":["token","action"],"title":"AssessReq"},"AssessRequest":{"properties":{"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"}},"type":"object","required":["action","resource"],"title":"AssessRequest"},"AttestRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"tenant":{"type":"string","title":"Tenant"},"runtime_digest":{"type":"string","title":"Runtime Digest","description":"Digest identifying the running model/binary"},"container_id":{"type":"string","title":"Container Id"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities"},"skills":{"items":{"type":"string"},"type":"array","title":"Skills"}},"type":"object","required":["agent_id","tenant","runtime_digest","container_id"],"title":"AttestRequest"},"AuditPackageGenerate":{"properties":{"framework_id":{"type":"string","title":"Framework Id"},"period_start":{"type":"string","title":"Period Start"},"period_end":{"type":"string","title":"Period End"},"include_evidence":{"type":"boolean","title":"Include Evidence","default":true},"prepared_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prepared By"}},"type":"object","required":["framework_id","period_start","period_end"],"title":"AuditPackageGenerate"},"AuthorityCreate":{"properties":{"identity_id":{"type":"string","minLength":1,"title":"Identity Id"},"role":{"type":"string","minLength":1,"title":"Role"},"identity_type":{"type":"string","title":"Identity Type","default":"user"},"scope":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Scope"},"can_approve":{"type":"boolean","title":"Can Approve","default":true},"can_delegate":{"type":"boolean","title":"Can Delegate","default":false},"can_override":{"type":"boolean","title":"Can Override","default":false},"max_approval_amount_cents":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Max Approval Amount Cents"},"max_budget_cents":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Max Budget Cents"},"budget_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Budget Id"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["identity_id","role"],"title":"AuthorityCreate"},"AuthorizePlanRequest":{"properties":{"authorized_by":{"type":"string","title":"Authorized By"},"comments":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comments"}},"type":"object","required":["authorized_by"],"title":"AuthorizePlanRequest"},"AuthorizeReq":{"properties":{"client_id":{"type":"string","maxLength":64,"title":"Client Id","default":"visitor"},"tool":{"type":"string","maxLength":64,"title":"Tool","default":"demo_tool"},"action":{"type":"string","maxLength":64,"title":"Action"},"resource":{"type":"string","maxLength":128,"title":"Resource"},"requested_authority":{"type":"string","enum":["standard","elevated"],"title":"Requested Authority","default":"standard"}},"type":"object","required":["action","resource"],"title":"AuthorizeReq"},"AuthorizeRequest":{"properties":{"agent":{"type":"string","title":"Agent"},"tool":{"type":"string","title":"Tool"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"session":{"type":"string","title":"Session"},"tenant":{"type":"string","title":"Tenant"},"args":{"title":"Args"},"chain":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Chain"},"pop":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Pop"}},"type":"object","required":["agent","tool","action","resource","session","tenant"],"title":"AuthorizeRequest"},"BaselineCreate":{"properties":{"entity_id":{"type":"string","title":"Entity Id"},"entity_type":{"type":"string","title":"Entity Type"},"drift_class":{"type":"string","title":"Drift Class"},"baseline":{"additionalProperties":true,"type":"object","title":"Baseline"}},"type":"object","required":["entity_id","entity_type","drift_class","baseline"],"title":"BaselineCreate"},"BenchmarkItem":{"properties":{"prompt_prefix":{"type":"string","title":"Prompt Prefix"},"canonical_continuation":{"type":"string","title":"Canonical Continuation"}},"type":"object","required":["prompt_prefix","canonical_continuation"],"title":"BenchmarkItem"},"BlastRadiusRequest":{"properties":{"tenant":{"type":"string","title":"Tenant","default":"demo"},"decision_id":{"type":"string","title":"Decision Id"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"tool_state":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Tool State"},"identity_impacts":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Identity Impacts"}},"type":"object","required":["decision_id","action","resource"],"title":"BlastRadiusRequest"},"Body_analyze_counterfactual_api_v1_counterfactual_post":{"properties":{"original_decision_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Original Decision Id","description":"Original decision ID to analyze"},"original_evidence_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Original Evidence Id","description":"Evidence ID for original decision"},"original_chain_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Original Chain Id","description":"Chain/trajectory ID to reconstruct"},"tenant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"},"intervention_type":{"type":"string","title":"Intervention Type","description":"Type of intervention"},"intervention_detail":{"additionalProperties":true,"type":"object","title":"Intervention Detail","description":"Intervention parameters"}},"type":"object","required":["intervention_type"],"title":"Body_analyze_counterfactual_api_v1_counterfactual_post"},"Body_analyze_recovery_fabric_resilience_analyze_post":{"properties":{"sentinel_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Sentinel Data"},"impact_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Impact Data"},"drift_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Drift Data"}},"type":"object","title":"Body_analyze_recovery_fabric_resilience_analyze_post"},"Body_configure_monitor_fabric_compliance_monitor_post":{"properties":{"control_ids":{"items":{"type":"string"},"type":"array","title":"Control Ids"},"filters":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Filters"}},"type":"object","required":["control_ids"],"title":"Body_configure_monitor_fabric_compliance_monitor_post"},"Body_create_or_update_posture_fabric_security_posture_post":{"properties":{"allowed_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Allowed Tools"},"denied_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Denied Tools"}},"type":"object","title":"Body_create_or_update_posture_fabric_security_posture_post"},"Body_create_policy_fabric_trajectories_policies_post":{"properties":{"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description","default":""},"rules":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Rules"}},"type":"object","required":["name"],"title":"Body_create_policy_fabric_trajectories_policies_post"},"Body_get_decision_intelligence_api_v1_decision_intelligence_post":{"properties":{"decision_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision Id","description":"Decision ID to analyze"},"evidence_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Id","description":"Evidence ID for the decision"},"tenant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"}},"type":"object","title":"Body_get_decision_intelligence_api_v1_decision_intelligence_post"},"CanonicalDecision":{"properties":{"decision_id":{"type":"string","title":"Decision Id"},"tenant_id":{"type":"string","title":"Tenant Id"},"principal":{"type":"string","title":"Principal"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id","default":"cain.authz"},"policy_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Version","default":"1.0"},"identity_result":{"type":"string","title":"Identity Result","default":"verified"},"authorization_result":{"type":"string","title":"Authorization Result"},"risk_result":{"type":"string","title":"Risk Result","default":"low"},"verification_result":{"type":"string","title":"Verification Result","default":"passed"},"decision":{"type":"string","title":"Decision"},"enforcement":{"type":"string","title":"Enforcement"},"execution_result":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Execution Result"},"outcome":{"type":"string","title":"Outcome"},"evidence_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Id"},"evidence_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Hash"},"timestamp":{"type":"string","title":"Timestamp"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature"}},"type":"object","required":["decision_id","tenant_id","principal","agent_id","action","resource","authorization_result","decision","enforcement","outcome","timestamp"],"title":"CanonicalDecision"},"CapabilityCheckRequest":{"properties":{"identity_id":{"type":"string","title":"Identity Id"},"capability":{"type":"string","title":"Capability"}},"type":"object","required":["identity_id","capability"],"title":"CapabilityCheckRequest"},"CertifyRequest":{"properties":{"tenant":{"type":"string","title":"Tenant","default":"demo"},"format":{"type":"string","title":"Format","default":"pdf"},"category_filter":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Filter"},"include_advisory":{"type":"boolean","title":"Include Advisory","default":false}},"type":"object","title":"CertifyRequest"},"Change":{"properties":{"change_id":{"type":"string","title":"Change Id"},"ctype":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ctype"},"artifact":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Artifact"},"proposer":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proposer"},"description":{"type":"string","title":"Description","default":""},"stage":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stage"},"evidence":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence"},"passed":{"type":"boolean","title":"Passed","default":true},"approver":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Approver"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature"},"observed_artifact":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Observed Artifact"}},"type":"object","required":["change_id"],"title":"Change"},"CheckActionRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"tenant":{"type":"string","title":"Tenant"},"action_type":{"type":"string","title":"Action Type"},"target_resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Resource"}},"type":"object","required":["agent_id","tenant","action_type"],"title":"CheckActionRequest"},"Claim":{"properties":{"claim":{"additionalProperties":true,"type":"object","title":"Claim"},"purpose":{"type":"string","title":"Purpose"}},"type":"object","required":["claim","purpose"],"title":"Claim"},"CloseRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"reason":{"type":"string","title":"Reason"},"final_disposition":{"type":"string","title":"Final Disposition"}},"type":"object","required":["tenant","reason","final_disposition"],"title":"CloseRequest"},"ClusterStatusResponse":{"properties":{"node_id":{"type":"string","title":"Node Id"},"cluster_id":{"type":"string","title":"Cluster Id"},"node_count":{"type":"integer","title":"Node Count"},"healthy_nodes":{"type":"integer","title":"Healthy Nodes"},"quorum":{"type":"integer","title":"Quorum"},"is_quorum":{"type":"boolean","title":"Is Quorum"},"can_tolerate_byzantine":{"type":"boolean","title":"Can Tolerate Byzantine"},"byzantine_f1_readiness":{"type":"string","title":"Byzantine F1 Readiness"},"byzantine_f1_readiness_basis":{"type":"string","title":"Byzantine F1 Readiness Basis","default":"membership_count_only: N>=4 and >=4 trusted members. This is a topology check, not a fault-tolerance test; see the independent prober in /proof/bundle/byzantine-cluster-2026-09-21/"},"quarantined_nodes":{"items":{"type":"string"},"type":"array","title":"Quarantined Nodes"},"node_identity":{"additionalProperties":true,"type":"object","title":"Node Identity"},"membership":{"additionalProperties":true,"type":"object","title":"Membership"},"running":{"type":"boolean","title":"Running"},"pbft_engine_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pbft Engine Version","default":"33.4-production-hardened"},"pbft_view":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pbft View","default":0},"pbft_sequence":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pbft Sequence","default":0},"state_root":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State Root","default":""}},"type":"object","required":["node_id","cluster_id","node_count","healthy_nodes","quorum","is_quorum","can_tolerate_byzantine","byzantine_f1_readiness","quarantined_nodes","node_identity","membership","running"],"title":"ClusterStatusResponse"},"CommitPlanRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"tenant":{"type":"string","title":"Tenant"},"goal":{"type":"string","title":"Goal"},"steps":{"items":{"$ref":"#/components/schemas/PlanStep"},"type":"array","title":"Steps"},"max_cumulative_risk_budget":{"type":"number","minimum":0.0,"title":"Max Cumulative Risk Budget"},"authorized_authority_ceiling":{"type":"string","title":"Authorized Authority Ceiling"}},"type":"object","required":["agent_id","tenant","goal","steps","max_cumulative_risk_budget","authorized_authority_ceiling"],"title":"CommitPlanRequest"},"CommitRequest":{"properties":{"actual_cost_cents":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Actual Cost Cents"}},"type":"object","title":"CommitRequest"},"ComplianceAuditRequest":{"properties":{"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Tenant scope to audit","default":"tenant-default"},"time_window_hours":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Time Window Hours","description":"Audit time window in hours","default":24}},"type":"object","title":"ComplianceAuditRequest"},"ConsolidateMemoriesRequest":{"properties":{"memory_ids":{"items":{"type":"string"},"type":"array","maxItems":50,"minItems":2,"title":"Memory Ids"},"summary":{"type":"string","maxLength":65536,"minLength":1,"title":"Summary"}},"type":"object","required":["memory_ids","summary"],"title":"ConsolidateMemoriesRequest"},"ConsortiumVerifyRequest":{"properties":{"data_room":{"additionalProperties":true,"type":"object","title":"Data Room","description":"Consortium Data Room bundle to verify"}},"type":"object","required":["data_room"],"title":"ConsortiumVerifyRequest"},"ContainRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"action":{"type":"string","title":"Action","default":"contain"}},"type":"object","required":["tenant"],"title":"ContainRequest"},"ContaminationScanRequest":{"properties":{"model_endpoint":{"type":"string","title":"Model Endpoint"},"benchmark_items":{"items":{"$ref":"#/components/schemas/BenchmarkItem"},"type":"array","title":"Benchmark Items"},"control_items":{"items":{"$ref":"#/components/schemas/BenchmarkItem"},"type":"array","title":"Control Items"},"timeout_seconds":{"type":"integer","maximum":60.0,"minimum":1.0,"title":"Timeout Seconds","default":30}},"type":"object","required":["model_endpoint","benchmark_items","control_items"],"title":"ContaminationScanRequest"},"ContextAuditRequest":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ContextItem"},"type":"array","maxItems":500,"minItems":1,"title":"Items"},"current_step":{"type":"integer","title":"Current Step","default":0},"references":{"items":{"type":"string"},"type":"array","title":"References"},"staleness_threshold_steps":{"type":"integer","minimum":1.0,"title":"Staleness Threshold Steps","default":20}},"type":"object","required":["items"],"title":"ContextAuditRequest"},"ContextItem":{"properties":{"id":{"type":"string","title":"Id"},"text":{"type":"string","title":"Text"},"category":{"type":"string","title":"Category","default":"uncategorized"},"added_at_step":{"type":"integer","title":"Added At Step","default":0},"last_referenced_step":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Last Referenced Step"}},"type":"object","required":["id","text"],"title":"ContextItem"},"ContractRequest":{"properties":{"source":{"type":"string","title":"Source"},"precondition":{"type":"string","title":"Precondition","description":"Boolean expression over function parameters"},"postcondition":{"type":"string","title":"Postcondition","description":"Boolean expression over parameters plus 'result'"}},"type":"object","required":["source","precondition","postcondition"],"title":"ContractRequest"},"ControlDefine":{"properties":{"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"category":{"type":"string","title":"Category"},"assertion_level":{"type":"string","title":"Assertion Level","default":"technical_control_verified"},"control_logic":{"type":"string","title":"Control Logic"},"inputs_required":{"items":{"type":"string"},"type":"array","title":"Inputs Required","default":[]},"evaluation_method":{"type":"string","title":"Evaluation Method"},"frameworks":{"items":{"type":"string"},"type":"array","title":"Frameworks","default":[]},"requirement_ids":{"items":{"type":"string"},"type":"array","title":"Requirement Ids","default":[]},"version":{"type":"string","title":"Version","default":"1.0"},"requires_legal_mapping":{"type":"boolean","title":"Requires Legal Mapping","default":false}},"type":"object","required":["name","description","category","control_logic","evaluation_method"],"title":"ControlDefine"},"ControlEvaluateRequest":{"properties":{"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource","default":""},"tool":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"}},"type":"object","required":["action"],"title":"ControlEvaluateRequest"},"ControlEvaluationRequest":{"properties":{"control_id":{"type":"string","title":"Control Id"},"inputs":{"additionalProperties":true,"type":"object","title":"Inputs"},"context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Context"}},"type":"object","required":["control_id","inputs"],"title":"ControlEvaluationRequest"},"CreateAgentRequest":{"properties":{"name":{"type":"string","maxLength":255,"minLength":1,"title":"Name"},"description":{"type":"string","title":"Description","default":""},"system_instruction":{"type":"string","title":"System Instruction","default":""},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"}},"type":"object","required":["name"],"title":"CreateAgentRequest"},"CreateAttestationRequest":{"properties":{"attestation_type":{"type":"string","title":"Attestation Type"},"subject_type":{"type":"string","title":"Subject Type","default":"deployment"},"subject_id":{"type":"string","title":"Subject Id"},"subject_name":{"type":"string","title":"Subject Name"},"claims":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Claims","default":[]},"security_level":{"type":"string","title":"Security Level","default":"unknown"},"ttl_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ttl Seconds"}},"type":"object","required":["attestation_type","subject_id","subject_name"],"title":"CreateAttestationRequest"},"CreateAutomationRequest":{"properties":{"name":{"type":"string","maxLength":255,"minLength":1,"title":"Name"},"trigger_type":{"type":"string","pattern":"^(schedule|event|manual)$","title":"Trigger Type"},"trigger_config":{"additionalProperties":true,"type":"object","title":"Trigger Config"},"action_config":{"additionalProperties":true,"type":"object","title":"Action Config"}},"type":"object","required":["name","trigger_type"],"title":"CreateAutomationRequest"},"CreateBudgetRequest":{"properties":{"name":{"type":"string","maxLength":255,"minLength":1,"title":"Name"},"description":{"type":"string","title":"Description","default":""},"scope":{"type":"string","title":"Scope","default":"tenant"},"scope_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope Id"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Id"},"limit_cents":{"type":"number","exclusiveMinimum":0.0,"title":"Limit Cents"},"period":{"type":"string","title":"Period","default":"monthly"},"hard_limit":{"type":"boolean","title":"Hard Limit","default":true},"soft_limit_pct":{"type":"number","maximum":100.0,"minimum":0.0,"title":"Soft Limit Pct","default":80.0},"alert_threshold_pct":{"type":"number","maximum":100.0,"minimum":0.0,"title":"Alert Threshold Pct","default":50.0},"currency":{"type":"string","title":"Currency","default":"USD"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["name","limit_cents"],"title":"CreateBudgetRequest"},"CreateSkillRequest":{"properties":{"namespace":{"type":"string","maxLength":64,"minLength":2,"title":"Namespace"},"name":{"type":"string","maxLength":255,"minLength":1,"title":"Name"},"skill_type":{"type":"string","title":"Skill Type","description":"procedural, tool_skill, workflow_skill, reasoning_skill, domain_skill, learned_skill, composite_skill, human_authored"},"description":{"type":"string","title":"Description","default":""},"content":{"type":"string","minLength":1,"title":"Content"},"inputs":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Inputs","default":{}},"outputs":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Outputs","default":{}},"required_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Required Tools","default":[]},"required_actions":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Required Actions","default":[]},"required_resources":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Required Resources","default":[]},"required_identities":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Required Identities","default":[]},"risk_level":{"type":"string","title":"Risk Level","default":"medium"},"test_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Test Code"},"dependencies":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Dependencies","default":[]},"provenance":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Provenance"},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"},"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"}},"type":"object","required":["namespace","name","skill_type","content"],"title":"CreateSkillRequest"},"CreateTrajectoryRequest":{"properties":{"identity_id":{"type":"string","title":"Identity Id"},"agent_id":{"type":"string","title":"Agent Id"}},"type":"object","required":["identity_id","agent_id"],"title":"CreateTrajectoryRequest"},"DecideActionRequest":{"properties":{"action":{"type":"string","title":"Action"},"tool":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"},"resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"},"intent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intent"},"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"}},"type":"object","required":["action"],"title":"DecideActionRequest"},"DelegateReq":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"chain":{"items":{"additionalProperties":true,"type":"object"},"type":"array","maxItems":8,"minItems":1,"title":"Chain"},"holder":{"type":"string","maxLength":16,"title":"Holder","default":"agent"},"subject":{"type":"string","maxLength":16,"title":"Subject","default":"sub"},"resource":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Resource"},"actions":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":8},{"type":"null"}],"title":"Actions"},"ttl":{"anyOf":[{"type":"integer","maximum":900.0,"minimum":1.0},{"type":"null"}],"title":"Ttl"},"audience":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Audience"},"single_use":{"type":"boolean","title":"Single Use","default":false},"pop":{"type":"boolean","title":"Pop","default":false}},"type":"object","required":["token","chain"],"title":"DelegateReq"},"DelegationCreateRequest":{"properties":{"delegate_id":{"type":"string","title":"Delegate Id","description":"Identity ID of the delegate"},"capabilities":{"items":{"type":"string"},"type":"array","minItems":1,"title":"Capabilities","description":"Capabilities to delegate"},"constraints":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Constraints"},"ttl_seconds":{"type":"integer","title":"Ttl Seconds","description":"Delegation TTL in seconds","default":3600},"max_depth":{"type":"integer","title":"Max Depth","description":"Maximum delegation chain depth","default":3}},"type":"object","required":["delegate_id","capabilities"],"title":"DelegationCreateRequest"},"Drift":{"properties":{"subject":{"type":"string","title":"Subject"},"fingerprint":{"type":"string","title":"Fingerprint"}},"type":"object","required":["subject","fingerprint"],"title":"Drift"},"DriftAcknowledgeRequest":{"properties":{"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"}},"type":"object","title":"DriftAcknowledgeRequest"},"DriftCompareRequest":{"properties":{"entity_id":{"type":"string","title":"Entity Id"},"entity_type":{"type":"string","title":"Entity Type"},"drift_class":{"type":"string","title":"Drift Class"},"current_state":{"additionalProperties":true,"type":"object","title":"Current State"}},"type":"object","required":["entity_id","entity_type","drift_class","current_state"],"title":"DriftCompareRequest"},"DriftFindingResponse":{"properties":{"drift_id":{"type":"string","title":"Drift Id"},"drift_class":{"type":"string","title":"Drift Class"},"tenant":{"type":"string","title":"Tenant"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"timestamp":{"type":"string","title":"Timestamp"},"metric":{"type":"string","title":"Metric"},"baseline_value":{"type":"number","title":"Baseline Value"},"current_value":{"type":"number","title":"Current Value"},"delta":{"type":"number","title":"Delta"},"delta_percent":{"type":"number","title":"Delta Percent"},"threshold":{"type":"number","title":"Threshold"},"confidence":{"type":"number","title":"Confidence"},"sample_size":{"type":"integer","title":"Sample Size"},"method":{"type":"string","title":"Method"},"severity":{"type":"string","title":"Severity"},"verdict":{"type":"string","title":"Verdict"},"explanation":{"type":"string","title":"Explanation"},"policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"},"evidence_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Id"},"correlation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Correlation Id"},"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"},"trust_impact":{"type":"boolean","title":"Trust Impact","default":false},"compliance_impact":{"type":"boolean","title":"Compliance Impact","default":false},"recommended_action":{"type":"string","title":"Recommended Action"},"affected_systems":{"items":{"type":"string"},"type":"array","title":"Affected Systems"},"status":{"type":"string","title":"Status","default":"detected"}},"type":"object","required":["drift_id","drift_class","tenant","timestamp","metric","baseline_value","current_value","delta","delta_percent","threshold","confidence","sample_size","method","severity","verdict","explanation","recommended_action"],"title":"DriftFindingResponse"},"DriftObserveRequest":{"properties":{"entity_id":{"type":"string","title":"Entity Id"},"entity_type":{"type":"string","title":"Entity Type"},"resource_type":{"type":"string","title":"Resource Type"},"current_state":{"additionalProperties":true,"type":"object","title":"Current State"}},"type":"object","required":["entity_id","entity_type","resource_type","current_state"],"title":"DriftObserveRequest"},"DriftStatusChangeRequest":{"properties":{"reason":{"type":"string","title":"Reason"}},"type":"object","required":["reason"],"title":"DriftStatusChangeRequest"},"DryRunRequest":{"properties":{"limit":{"type":"integer","maximum":1000.0,"minimum":1.0,"title":"Limit","description":"how many recent decisions to replay","default":200},"fabric_enforce":{"type":"boolean","title":"Fabric Enforce","description":"master switch to simulate","default":true},"enforce_stages":{"items":{"type":"string"},"type":"array","title":"Enforce Stages","description":"which stages are enforcing in the simulation"}},"type":"object","title":"DryRunRequest"},"EdgeReq":{"properties":{"source":{"type":"string","title":"Source"},"target":{"type":"string","title":"Target"},"relation":{"type":"string","title":"Relation"},"evidence_ref":{"type":"string","title":"Evidence Ref"},"allowed_actions":{"items":{"type":"string"},"type":"array","title":"Allowed Actions"},"expires_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["source","target","relation","evidence_ref","allowed_actions"],"title":"EdgeReq"},"EmergencyHaltRequest":{"properties":{"reason":{"type":"string","title":"Reason","description":"Emergency halt justification"},"operator_id":{"type":"string","title":"Operator Id","description":"Authorized operator ID"},"confirmation_token":{"type":"string","title":"Confirmation Token","description":"Quorum authorization token"}},"type":"object","required":["reason","operator_id","confirmation_token"],"title":"EmergencyHaltRequest"},"EnforceRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"agent_id":{"type":"string","title":"Agent Id"},"tool_name":{"type":"string","title":"Tool Name"},"runtime_digest":{"type":"string","title":"Runtime Digest"},"container_id":{"type":"string","title":"Container Id"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities"},"skills":{"items":{"type":"string"},"type":"array","title":"Skills"},"arguments":{"additionalProperties":true,"type":"object","title":"Arguments"}},"type":"object","required":["tenant","agent_id","tool_name","runtime_digest","container_id"],"title":"EnforceRequest"},"EquivalenceRequest":{"properties":{"old_source":{"type":"string","title":"Old Source"},"new_source":{"type":"string","title":"New Source"}},"type":"object","required":["old_source","new_source"],"title":"EquivalenceRequest"},"EvalReportRequest":{"properties":{"grading_ids":{"items":{"type":"string"},"type":"array","title":"Grading Ids"},"contamination_scan_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Contamination Scan Ids"}},"type":"object","required":["grading_ids"],"title":"EvalReportRequest"},"EvalReq":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"chain":{"items":{"additionalProperties":true,"type":"object"},"type":"array","maxItems":8,"title":"Chain"},"agent":{"type":"string","maxLength":64,"title":"Agent","default":"agent"},"tool":{"type":"string","maxLength":120,"title":"Tool"},"action":{"type":"string","maxLength":120,"title":"Action"},"resource":{"type":"string","maxLength":120,"title":"Resource"},"session":{"type":"string","maxLength":64,"title":"Session","default":"S1"},"tenant":{"type":"string","maxLength":64,"title":"Tenant","default":"t1"},"args":{"title":"Args"},"pop":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Pop"},"memory_ids":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":8},{"type":"null"}],"title":"Memory Ids"}},"type":"object","required":["token","tool","action","resource"],"title":"EvalReq"},"EvaluateActionRequest":{"properties":{"action":{"type":"string","title":"Action"},"tool":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"},"resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"},"intent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intent"},"policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"}},"type":"object","required":["action"],"title":"EvaluateActionRequest"},"EventStreamMode":{"type":"string","enum":["sse","polling"],"title":"EventStreamMode"},"ExecReq":{"properties":{"token":{"type":"string","title":"Token"},"caller_agent_id":{"type":"string","title":"Caller Agent Id"},"caller_tenant":{"type":"string","title":"Caller Tenant"},"tool":{"type":"string","title":"Tool"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"arguments":{"additionalProperties":true,"type":"object","title":"Arguments","default":{}},"context":{"additionalProperties":true,"type":"object","title":"Context","default":{}}},"type":"object","required":["token","caller_agent_id","caller_tenant","tool","action","resource"],"title":"ExecReq"},"ExecuteRecoveryRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"}},"type":"object","required":["tenant"],"title":"ExecuteRecoveryRequest"},"ExecuteRequest":{"properties":{"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource","default":""},"parameters":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Parameters"},"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"required_capability":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Required Capability"}},"type":"object","required":["action"],"title":"ExecuteRequest"},"ExecuteSkillRequest":{"properties":{"inputs":{"additionalProperties":true,"type":"object","title":"Inputs","default":{}},"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"},"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"}},"type":"object","title":"ExecuteSkillRequest"},"ExpectationCreateRequest":{"properties":{"tenant":{"type":"string","title":"Tenant","default":"demo"},"decision_id":{"type":"string","title":"Decision Id"},"identity_id":{"type":"string","title":"Identity Id"},"agent_id":{"type":"string","title":"Agent Id"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"expected_outcome":{"type":"string","title":"Expected Outcome","default":"success"},"expected_outcome_confidence":{"type":"number","title":"Expected Outcome Confidence","default":0.95},"expected_risk_score":{"type":"number","title":"Expected Risk Score","default":0.1},"expected_risk_factors":{"items":{"type":"string"},"type":"array","title":"Expected Risk Factors","default":[]},"expected_resource_impact":{"additionalProperties":true,"type":"object","title":"Expected Resource Impact","default":{}},"expected_trajectory_steps":{"type":"integer","title":"Expected Trajectory Steps","default":1},"expected_trajectory_transitions":{"items":{"type":"string"},"type":"array","title":"Expected Trajectory Transitions","default":[]},"expected_authorization_state":{"type":"string","title":"Expected Authorization State","default":"ALLOW"},"expected_side_effects":{"items":{"type":"string"},"type":"array","title":"Expected Side Effects","default":[]},"expected_duration_ms":{"type":"number","title":"Expected Duration Ms","default":50.0},"expected_cost_cents":{"type":"number","title":"Expected Cost Cents","default":0.01},"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"}},"type":"object","required":["decision_id","identity_id","agent_id","action","resource"],"title":"ExpectationCreateRequest"},"FaultReq":{"properties":{"action":{"type":"string","enum":["crash","restore"],"title":"Action"},"node":{"anyOf":[{"type":"integer","maximum":4.0,"minimum":1.0},{"type":"null"}],"title":"Node"}},"type":"object","required":["action"],"title":"FaultReq"},"FindingCreate":{"properties":{"finding_id":{"type":"string","title":"Finding Id"},"severity":{"type":"string","title":"Severity"},"title":{"type":"string","title":"Title"},"description":{"type":"string","title":"Description"},"requirement_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Requirement Id"},"control_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Control Id"},"evidence_ids":{"items":{"type":"string"},"type":"array","title":"Evidence Ids","default":[]},"affected_asset":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Affected Asset"}},"type":"object","required":["finding_id","severity","title","description"],"title":"FindingCreate"},"FindingUpdate":{"properties":{"status":{"type":"string","title":"Status"},"resolution_note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resolution Note"}},"type":"object","required":["status"],"title":"FindingUpdate"},"ForgetMemoryRequest":{"properties":{"reason":{"type":"string","minLength":1,"title":"Reason"}},"type":"object","required":["reason"],"title":"ForgetMemoryRequest"},"FrameworkCreate":{"properties":{"name":{"type":"string","title":"Name"},"version":{"type":"string","title":"Version"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"description":{"type":"string","title":"Description"},"framework_type":{"type":"string","title":"Framework Type","default":"custom"},"requirements":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Requirements"}},"type":"object","required":["name","version","jurisdiction","description"],"title":"FrameworkCreate"},"GovernanceEvaluateRequest":{"properties":{"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"action":{"type":"string","minLength":1,"title":"Action"},"resource":{"type":"string","title":"Resource","default":""},"scope":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Scope"},"linked_budget_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linked Budget Id"},"linked_policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linked Policy Id"},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"}},"type":"object","required":["action"],"title":"GovernanceEvaluateRequest"},"GovernancePolicyCreate":{"properties":{"name":{"type":"string","maxLength":255,"minLength":1,"title":"Name"},"description":{"type":"string","title":"Description","default":""},"scope":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Scope"},"constraints":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Constraints"},"exceptions":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Exceptions"},"parent_policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Policy Id"},"linked_policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linked Policy Id"},"priority":{"type":"integer","maximum":1000.0,"minimum":1.0,"title":"Priority","default":100}},"type":"object","required":["name"],"title":"GovernancePolicyCreate"},"GovernancePolicyUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"scope":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Scope"},"constraints":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Constraints"},"exceptions":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Exceptions"},"priority":{"anyOf":[{"type":"integer","maximum":1000.0,"minimum":1.0},{"type":"null"}],"title":"Priority"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},"type":"object","title":"GovernancePolicyUpdate"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HallucinationCheckRequest":{"properties":{"samples":{"items":{"type":"string"},"type":"array","maxItems":50,"minItems":2,"title":"Samples"},"prompt_id":{"type":"string","title":"Prompt Id","default":""},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"max_disagreement":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"Max Disagreement"}},"type":"object","required":["samples"],"title":"HallucinationCheckRequest"},"IdentityCreateRequest":{"properties":{"kind":{"type":"string","title":"Kind","description":"Identity kind: agent, human, service, mcp_server, tool, sub_agent"},"display_name":{"type":"string","maxLength":255,"minLength":1,"title":"Display Name"},"tenant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant","description":"Tenant ID (resolved from API key if omitted)"},"capabilities":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Capabilities","description":"Capabilities to grant"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Id","description":"Parent identity for delegation"},"ttl_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ttl Seconds","description":"Credential TTL in seconds","default":86400}},"type":"object","required":["kind","display_name"],"title":"IdentityCreateRequest"},"IdentityReq":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_public_key":{"type":"string","title":"Agent Public Key"},"organization":{"type":"string","title":"Organization"},"tenant":{"type":"string","title":"Tenant"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities","default":[]},"authority_scope":{"additionalProperties":true,"type":"object","title":"Authority Scope","default":{}},"ttl_seconds":{"type":"number","title":"Ttl Seconds","default":3600.0}},"type":"object","required":["agent_id","agent_public_key","organization","tenant"],"title":"IdentityReq"},"IdentityRevokeRequest":{"properties":{"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"}},"type":"object","title":"IdentityRevokeRequest"},"IdentityRotateRequest":{"properties":{"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"ttl_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ttl Seconds","default":86400}},"type":"object","title":"IdentityRotateRequest"},"IdentityVerifyRequest":{"properties":{"public_key":{"type":"string","title":"Public Key","description":"Base64url-encoded Ed25519 public key"},"challenge":{"type":"string","title":"Challenge","description":"Base64url-encoded challenge data"},"signature":{"type":"string","title":"Signature","description":"Base64url-encoded Ed25519 signature"}},"type":"object","required":["public_key","challenge","signature"],"title":"IdentityVerifyRequest"},"ImpactAnalyzeRequest":{"properties":{"entity_id":{"type":"string","title":"Entity Id"},"entity_type":{"type":"string","title":"Entity Type"},"change_type":{"type":"string","title":"Change Type"},"change_details":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Change Details"},"evidence_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Evidence Ids"}},"type":"object","required":["entity_id","entity_type","change_type"],"title":"ImpactAnalyzeRequest"},"ImpactCompareRequest":{"properties":{"baseline":{"additionalProperties":true,"type":"object","title":"Baseline"},"current":{"additionalProperties":true,"type":"object","title":"Current"},"comparison_type":{"type":"string","title":"Comparison Type","default":"baseline_current"}},"type":"object","required":["baseline","current"],"title":"ImpactCompareRequest"},"ImpactSimulateRequest":{"properties":{"scenario":{"type":"string","title":"Scenario"},"entity":{"type":"string","title":"Entity"},"entity_type":{"type":"string","title":"Entity Type"},"parameters":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Parameters"}},"type":"object","required":["scenario","entity","entity_type"],"title":"ImpactSimulateRequest"},"ImpersonationCheckRequest":{"properties":{"claiming_identity":{"type":"string","title":"Claiming Identity"},"actual_identity":{"type":"string","title":"Actual Identity"}},"type":"object","required":["claiming_identity","actual_identity"],"title":"ImpersonationCheckRequest"},"InclusionProofRequest":{"properties":{"evidence_id":{"type":"string","title":"Evidence Id"}},"type":"object","required":["evidence_id"],"title":"InclusionProofRequest"},"InsuranceAssessRequest":{"properties":{"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Tenant scope","default":"tenant-default"},"fleet_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Fleet Id","description":"Fleet identifier","default":"fleet-default"},"baseline_annual_premium_usd":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Baseline Annual Premium Usd","description":"Baseline cyber premium ($)","default":250000.0}},"type":"object","title":"InsuranceAssessRequest"},"InsuranceVerifyRequest":{"properties":{"certificate":{"additionalProperties":true,"type":"object","title":"Certificate","description":"Actuarial Underwriting Certificate"},"trusted_public_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trusted Public Key","description":"Optional trusted public key (b64)"}},"type":"object","required":["certificate"],"title":"InsuranceVerifyRequest"},"IssuePassportRequest":{"properties":{"trajectory_id":{"type":"string","title":"Trajectory Id"},"validity_hours":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Validity Hours","default":24}},"type":"object","required":["trajectory_id"],"title":"IssuePassportRequest"},"JournalVerifyReq":{"properties":{"journal":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Journal"},"fabric_public_key":{"type":"string","title":"Fabric Public Key"},"expected_head":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Expected Head"}},"type":"object","required":["journal","fabric_public_key"],"title":"JournalVerifyReq"},"LiftQuarantineRequest":{"properties":{"quarantine_id":{"type":"string","title":"Quarantine Id","description":"Quarantine ID to lift"},"justification":{"type":"string","title":"Justification","description":"Verification and remediation justification"},"approver_id":{"type":"string","title":"Approver Id","description":"Authorized security approver ID"}},"type":"object","required":["quarantine_id","justification","approver_id"],"title":"LiftQuarantineRequest"},"MarketplaceEvaluateRequest":{"properties":{"pack_id":{"type":"string","title":"Pack Id","description":"Vertical policy pack ID (e.g. FIN-REG, HEALTH-REG, FED-REG)"},"action":{"type":"string","title":"Action","description":"Proposed agent action"},"resource":{"type":"string","title":"Resource","description":"Target resource URI"},"principal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal","description":"Agent principal","default":"agent-01"},"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Tenant identity","default":"tenant-default"},"trust_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Trust Score","description":"Current agent trust score","default":0.85},"context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Context","description":"Custom contextual parameters"}},"type":"object","required":["pack_id","action","resource"],"title":"MarketplaceEvaluateRequest"},"MemIds":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"ids":{"items":{"type":"string"},"type":"array","maxItems":8,"minItems":1,"title":"Ids"}},"type":"object","required":["token","ids"],"title":"MemIds"},"MemReq":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"authority_level":{"type":"integer","maximum":3.0,"minimum":0.0,"title":"Authority Level","default":1},"scopes":{"items":{"type":"string"},"type":"array","maxItems":8,"title":"Scopes"},"tenant":{"type":"string","maxLength":64,"title":"Tenant","default":"t1"},"confidence":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Confidence","default":0.5},"content":{"type":"string","maxLength":200,"title":"Content","default":"note"}},"type":"object","required":["token"],"title":"MemReq"},"MemberAdd":{"properties":{"principal_id":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Principal Id","description":"an existing principal in this tenant"},"email":{"anyOf":[{"type":"string","maxLength":254},{"type":"null"}],"title":"Email","description":"invite by email; creates a pending human principal"},"display_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Display Name"},"role":{"type":"string","title":"Role","default":"member"}},"type":"object","title":"MemberAdd"},"MemoryAuditItem":{"properties":{"item_id":{"type":"string","title":"Item Id"},"text":{"type":"string","title":"Text"}},"type":"object","required":["item_id","text"],"title":"MemoryAuditItem"},"MemoryBatchAuditRequest":{"properties":{"items":{"items":{"$ref":"#/components/schemas/MemoryAuditItem"},"type":"array","maxItems":200,"minItems":2,"title":"Items"},"similarity_threshold":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Similarity Threshold","default":0.6}},"type":"object","required":["items"],"title":"MemoryBatchAuditRequest"},"MemoryIngestRequest":{"properties":{"item_id":{"type":"string","title":"Item Id"},"text":{"type":"string","minLength":1,"title":"Text"},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"},"similarity_threshold":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Similarity Threshold","default":0.6}},"type":"object","required":["item_id","text"],"title":"MemoryIngestRequest"},"MintReq":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"subject":{"type":"string","maxLength":16,"title":"Subject","default":"agent"},"audience":{"type":"string","maxLength":120,"title":"Audience"},"resource":{"type":"string","maxLength":120,"title":"Resource"},"actions":{"items":{"type":"string"},"type":"array","maxItems":8,"minItems":1,"title":"Actions"},"ttl":{"type":"integer","maximum":900.0,"minimum":1.0,"title":"Ttl","default":300},"session":{"type":"string","maxLength":64,"title":"Session","default":"S1"},"tenant":{"type":"string","maxLength":64,"title":"Tenant","default":"t1"},"single_use":{"type":"boolean","title":"Single Use","default":false},"pop":{"type":"boolean","title":"Pop","default":false},"args_hash":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Args Hash"}},"type":"object","required":["token","audience","resource","actions"],"title":"MintReq"},"NodeRegisterRequest":{"properties":{"node_id":{"type":"string","title":"Node Id"},"endpoint":{"type":"string","title":"Endpoint"},"public_key_b64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Public Key B64","default":""}},"type":"object","required":["node_id","endpoint"],"title":"NodeRegisterRequest"},"NodeReq":{"properties":{"node_id":{"type":"string","title":"Node Id"},"kind":{"type":"string","title":"Kind"}},"type":"object","required":["node_id","kind"],"title":"NodeReq"},"OutcomeRecordRequest":{"properties":{"tenant":{"type":"string","title":"Tenant","default":"demo"},"expectation_id":{"type":"string","title":"Expectation Id"},"decision_id":{"type":"string","title":"Decision Id"},"execution_id":{"type":"string","title":"Execution Id"},"actual_outcome":{"type":"string","title":"Actual Outcome","default":"success"},"actual_risk_score":{"type":"number","title":"Actual Risk Score","default":0.1},"actual_resource_impact":{"additionalProperties":true,"type":"object","title":"Actual Resource Impact","default":{}},"actual_trajectory_steps":{"type":"integer","title":"Actual Trajectory Steps","default":1},"actual_trajectory_transitions":{"items":{"type":"string"},"type":"array","title":"Actual Trajectory Transitions","default":[]},"actual_authorization_state":{"type":"string","title":"Actual Authorization State","default":"ALLOW"},"actual_side_effects":{"items":{"type":"string"},"type":"array","title":"Actual Side Effects","default":[]},"actual_duration_ms":{"type":"number","title":"Actual Duration Ms","default":48.0},"actual_cost_cents":{"type":"number","title":"Actual Cost Cents","default":0.01},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"},"evidence_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Evidence Ids"},"observed_facts":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Observed Facts"},"inferred_explanations":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Inferred Explanations"}},"type":"object","required":["expectation_id","decision_id","execution_id"],"title":"OutcomeRecordRequest"},"PlanApproveRequest":{"properties":{"approver":{"type":"string","title":"Approver","default":"system"}},"type":"object","title":"PlanApproveRequest"},"PlanCancelRequest":{"properties":{"reason":{"type":"string","title":"Reason","default":""}},"type":"object","title":"PlanCancelRequest"},"PlanCandidatesRequest":{"properties":{"goal":{"type":"string","title":"Goal"},"intent":{"type":"string","title":"Intent"},"mode":{"type":"string","title":"Mode","default":"EXPLORATORY"},"available_skills":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Available Skills","default":[]},"relevant_memories":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Relevant Memories","default":[]},"available_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Available Tools","default":[]},"constraints":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Constraints","default":[]},"optimization":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}],"title":"Optimization","default":{}}},"type":"object","required":["goal","intent"],"title":"PlanCandidatesRequest"},"PlanCompareRequest":{"properties":{"plan_id_2":{"type":"string","title":"Plan Id 2"}},"type":"object","required":["plan_id_2"],"title":"PlanCompareRequest"},"PlanCreateRequest":{"properties":{"goal":{"type":"string","title":"Goal"},"intent":{"type":"string","title":"Intent"},"principal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"mode":{"type":"string","title":"Mode","default":"BALANCED"},"available_skills":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Available Skills","default":[]},"relevant_memories":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Relevant Memories","default":[]},"available_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Available Tools","default":[]},"available_resources":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Available Resources","default":[]},"policy_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Policy Context","default":{}},"governance_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Governance Context","default":{}},"budget":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Budget","default":{}},"risk_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Risk Context","default":{}},"constraints":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Constraints","default":[]},"deadlines":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Deadlines","default":{}},"approval_requirements":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Approval Requirements","default":[]},"trajectory_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trajectory Context","default":{}},"previous_failed_plans":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Previous Failed Plans","default":[]},"previous_successful_plans":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Previous Successful Plans","default":[]},"optimization":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}],"title":"Optimization","default":{}},"ttl_seconds":{"type":"integer","title":"Ttl Seconds","default":3600}},"type":"object","required":["goal","intent"],"title":"PlanCreateRequest"},"PlanGenerateRequest":{"properties":{"goal":{"type":"string","title":"Goal"},"intent":{"type":"string","title":"Intent"},"principal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"mode":{"type":"string","title":"Mode","default":"BALANCED"},"available_skills":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Available Skills","default":[]},"relevant_memories":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Relevant Memories","default":[]},"available_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Available Tools","default":[]},"available_resources":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Available Resources","default":[]},"policy_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Policy Context","default":{}},"governance_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Governance Context","default":{}},"budget":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Budget","default":{}},"risk_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Risk Context","default":{}},"constraints":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Constraints","default":[]},"deadlines":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Deadlines","default":{}},"approval_requirements":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Approval Requirements","default":[]},"trajectory_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trajectory Context","default":{}},"optimization":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}],"title":"Optimization","default":{}},"ttl_seconds":{"type":"integer","title":"Ttl Seconds","default":3600}},"type":"object","required":["goal","intent"],"title":"PlanGenerateRequest"},"PlanRecoveryRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"incident_id":{"type":"string","title":"Incident Id"},"drift_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Drift Data"},"impact_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Impact Data"},"sentinel_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Sentinel Data"}},"type":"object","required":["tenant","incident_id"],"title":"PlanRecoveryRequest"},"PlanRejectRequest":{"properties":{"rejector":{"type":"string","title":"Rejector","default":"system"},"reason":{"type":"string","title":"Reason","default":""}},"type":"object","title":"PlanRejectRequest"},"PlanReplanRequest":{"properties":{"trigger":{"type":"string","title":"Trigger"},"reason":{"type":"string","title":"Reason"},"new_context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"New Context","default":{}}},"type":"object","required":["trigger","reason"],"title":"PlanReplanRequest"},"PlanStep":{"properties":{"step_number":{"type":"integer","title":"Step Number"},"action_type":{"type":"string","title":"Action Type"},"target_resource":{"type":"string","title":"Target Resource"},"is_irreversible":{"type":"boolean","title":"Is Irreversible","default":false},"estimated_risk":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Estimated Risk"},"required_authority":{"type":"string","title":"Required Authority"},"expected_outcome":{"type":"string","title":"Expected Outcome"}},"type":"object","required":["step_number","action_type","target_resource","estimated_risk","required_authority","expected_outcome"],"title":"PlanStep"},"PolicyCreateRequest":{"properties":{"name":{"type":"string","maxLength":255,"minLength":1,"title":"Name"},"description":{"type":"string","title":"Description","default":""},"rules":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Rules"}},"type":"object","required":["name"],"title":"PolicyCreateRequest"},"PolicyReq":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"mode":{"type":"string","maxLength":8,"title":"Mode","default":"shadow"},"policy":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Policy"}},"type":"object","required":["token"],"title":"PolicyReq"},"PolicyUpdateRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"rules":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Rules"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"}},"type":"object","title":"PolicyUpdateRequest"},"PrincipalCreate":{"properties":{"kind":{"type":"string","title":"Kind","description":"agent | human | service"},"display_name":{"type":"string","maxLength":200,"minLength":1,"title":"Display Name"},"public_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Public Key","description":"base64 Ed25519 public key (32 bytes)"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"type":"object","required":["kind","display_name"],"title":"PrincipalCreate"},"ProfileGenerateRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"demo"},"agent_id":{"type":"string","title":"Agent Id","description":"Target agent container identifier"},"restricted_mode":{"type":"boolean","title":"Restricted Mode","description":"Strict fail-closed blocking of binary spawning","default":true}},"type":"object","required":["agent_id"],"title":"ProfileGenerateRequest"},"ProofArchitecture":{"properties":{"domains":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Domains"},"flow":{"items":{"type":"string"},"type":"array","title":"Flow"},"components":{"additionalProperties":true,"type":"object","title":"Components"},"relationships":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","title":"Relationships"},"timestamp":{"type":"string","title":"Timestamp"}},"type":"object","required":["domains","flow","components","relationships","timestamp"],"title":"ProofArchitecture"},"ProofBenchmarks":{"properties":{"decision_latency_p50_ms":{"type":"number","title":"Decision Latency P50 Ms"},"decision_latency_p95_ms":{"type":"number","title":"Decision Latency P95 Ms"},"decision_latency_p99_ms":{"type":"number","title":"Decision Latency P99 Ms"},"enforcement_latency_ms":{"type":"number","title":"Enforcement Latency Ms"},"evidence_generation_ms":{"type":"number","title":"Evidence Generation Ms"},"sample_size":{"type":"integer","title":"Sample Size"},"methodology":{"type":"string","title":"Methodology"},"test_version":{"type":"string","title":"Test Version"},"timestamp":{"type":"string","title":"Timestamp"},"environment":{"type":"string","title":"Environment"},"limitations":{"type":"string","title":"Limitations"}},"type":"object","required":["decision_latency_p50_ms","decision_latency_p95_ms","decision_latency_p99_ms","enforcement_latency_ms","evidence_generation_ms","sample_size","methodology","test_version","timestamp","environment","limitations"],"title":"ProofBenchmarks"},"ProofCapabilities":{"properties":{"capabilities":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Capabilities"},"timestamp":{"type":"string","title":"Timestamp"}},"type":"object","required":["capabilities","timestamp"],"title":"ProofCapabilities"},"ProofConformance":{"properties":{"suite_version":{"type":"string","title":"Suite Version"},"test_count":{"type":"integer","title":"Test Count"},"passed":{"type":"integer","title":"Passed"},"failed":{"type":"integer","title":"Failed"},"skipped":{"type":"integer","title":"Skipped"},"categories":{"additionalProperties":true,"type":"object","title":"Categories"},"timestamp":{"type":"string","title":"Timestamp"},"environment":{"type":"string","title":"Environment"},"commit":{"type":"string","title":"Commit"}},"type":"object","required":["suite_version","test_count","passed","failed","skipped","categories","timestamp","environment","commit"],"title":"ProofConformance"},"ProofEvidence":{"properties":{"evidence_id":{"type":"string","title":"Evidence Id"},"test_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Test Id"},"timestamp":{"type":"string","title":"Timestamp"},"agent":{"type":"string","title":"Agent"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"decision":{"type":"string","title":"Decision"},"policy":{"type":"string","title":"Policy"},"policy_version":{"type":"string","title":"Policy Version"},"risk":{"type":"string","title":"Risk"},"verification":{"type":"string","title":"Verification"},"enforcement":{"type":"string","title":"Enforcement"},"execution":{"type":"string","title":"Execution"},"outcome":{"type":"string","title":"Outcome"},"evidence_hash":{"type":"string","title":"Evidence Hash"},"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id"},"principal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal"},"correlation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Correlation Id"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature"},"signing_key_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signing Key Id"},"schema_version":{"type":"string","title":"Schema Version","default":"2.0"}},"type":"object","required":["evidence_id","test_id","timestamp","agent","action","resource","decision","policy","policy_version","risk","verification","enforcement","execution","outcome","evidence_hash"],"title":"ProofEvidence"},"ProofHealth":{"properties":{"status":{"type":"string","title":"Status"},"decision":{"type":"string","title":"Decision"},"enforcement":{"type":"string","title":"Enforcement"},"evidence":{"type":"string","title":"Evidence"},"mcp":{"type":"string","title":"Mcp"},"timestamp":{"type":"string","title":"Timestamp"},"pbft_engine_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pbft Engine Version","default":"33.4-production-hardened"}},"type":"object","required":["status","decision","enforcement","evidence","mcp","timestamp"],"title":"ProofHealth"},"ProofIntegrity":{"properties":{"evidence_id":{"type":"string","title":"Evidence Id"},"hash_algorithm":{"type":"string","title":"Hash Algorithm","default":"SHA-256"},"evidence_hash":{"type":"string","title":"Evidence Hash"},"canonical_serialized":{"type":"string","title":"Canonical Serialized"},"signature_algorithm":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature Algorithm"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature"},"verification_result":{"type":"string","title":"Verification Result"},"schema_version":{"type":"string","title":"Schema Version","default":"1.0"}},"type":"object","required":["evidence_id","evidence_hash","canonical_serialized","verification_result"],"title":"ProofIntegrity"},"ProofManifest":{"properties":{"product":{"type":"string","title":"Product","default":"CAIN Trust Fabric"},"role":{"type":"string","title":"Role","default":"autonomous-action-enforcement-and-evidence-layer"},"version":{"type":"string","title":"Version"},"api_version":{"type":"string","title":"Api Version","default":"1.0"},"proof_version":{"type":"string","title":"Proof Version","default":"1.0"},"schema_version":{"type":"string","title":"Schema Version","default":"1.0"},"release":{"type":"string","title":"Release"},"build_id":{"type":"string","title":"Build Id"},"environment":{"type":"string","title":"Environment","default":"production"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities"},"protocols":{"items":{"type":"string"},"type":"array","title":"Protocols"},"services":{"additionalProperties":true,"type":"object","title":"Services"},"conformance":{"additionalProperties":true,"type":"object","title":"Conformance"},"benchmarks":{"additionalProperties":true,"type":"object","title":"Benchmarks"},"security":{"additionalProperties":true,"type":"object","title":"Security"},"evidence":{"additionalProperties":true,"type":"object","title":"Evidence"},"verification":{"additionalProperties":true,"type":"object","title":"Verification"},"links":{"additionalProperties":{"type":"string"},"type":"object","title":"Links"},"timestamp":{"type":"string","title":"Timestamp"},"provenance_status":{"type":"string","title":"Provenance Status","default":"SAFE_SUMMARY"},"ip_status":{"type":"string","title":"Ip Status","default":"PROTECTED"}},"type":"object","required":["version","release","build_id","capabilities","protocols","services","conformance","benchmarks","security","evidence","verification","links","timestamp"],"title":"ProofManifest"},"ProofSecurity":{"properties":{"controls":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Controls"},"last_verification":{"type":"string","title":"Last Verification"},"known_limitations":{"items":{"type":"string"},"type":"array","title":"Known Limitations"},"timestamp":{"type":"string","title":"Timestamp"}},"type":"object","required":["controls","last_verification","known_limitations","timestamp"],"title":"ProofSecurity"},"ProofServices":{"properties":{"services":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Services"},"total":{"type":"integer","title":"Total"},"timestamp":{"type":"string","title":"Timestamp"}},"type":"object","required":["services","total","timestamp"],"title":"ProofServices"},"ProofTestRequest":{"properties":{"action":{"type":"string","title":"Action","default":"proof.synthetic_action"},"resource":{"type":"string","title":"Resource","default":"proof://public/synthetic"},"mode":{"type":"string","title":"Mode","default":"allow"}},"type":"object","title":"ProofTestRequest"},"ProofTestResponse":{"properties":{"test_id":{"type":"string","title":"Test Id"},"decision":{"type":"string","title":"Decision"},"enforcement":{"type":"string","title":"Enforcement"},"executed":{"type":"boolean","title":"Executed"},"evidence_id":{"type":"string","title":"Evidence Id"},"evidence_hash":{"type":"string","title":"Evidence Hash"},"timestamp":{"type":"string","title":"Timestamp"},"policy_id":{"type":"string","title":"Policy Id","default":"cain.authz"},"policy_version":{"type":"string","title":"Policy Version","default":"1.0"},"schema_version":{"type":"string","title":"Schema Version","default":"1.0"},"decision_state":{"type":"string","title":"Decision State","default":"DECISION_STATE"},"execution_allowed":{"type":"boolean","title":"Execution Allowed","default":false},"signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature"},"signing_key_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signing Key Id"}},"type":"object","required":["test_id","decision","enforcement","executed","evidence_id","evidence_hash","timestamp"],"title":"ProofTestResponse"},"ProofVerifyReq":{"properties":{"proof":{"additionalProperties":true,"type":"object","title":"Proof"},"fabric_public_key":{"type":"string","title":"Fabric Public Key"}},"type":"object","required":["proof","fabric_public_key"],"title":"ProofVerifyReq"},"ProofVersion":{"properties":{"cain_version":{"type":"string","title":"Cain Version"},"api_version":{"type":"string","title":"Api Version"},"release_id":{"type":"string","title":"Release Id"},"build_id":{"type":"string","title":"Build Id"},"source_revision":{"type":"string","title":"Source Revision"},"build_timestamp":{"type":"string","title":"Build Timestamp"},"deployment_timestamp":{"type":"string","title":"Deployment Timestamp"},"components":{"additionalProperties":{"type":"string"},"type":"object","title":"Components"},"timestamp":{"type":"string","title":"Timestamp"}},"type":"object","required":["cain_version","api_version","release_id","build_id","source_revision","build_timestamp","deployment_timestamp","components","timestamp"],"title":"ProofVersion"},"QuarantineAgentRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id","description":"Target agent identity"},"reason":{"type":"string","title":"Reason","description":"Containment justification"},"operator_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Operator Id","description":"Operator / sentinel ID","default":"cain-sentinel-auto"}},"type":"object","required":["agent_id","reason"],"title":"QuarantineAgentRequest"},"QuarantineRequest":{"properties":{"node_id":{"type":"string","title":"Node Id"},"reason":{"type":"string","title":"Reason"},"violation_detail":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Violation Detail"}},"type":"object","required":["node_id","reason"],"title":"QuarantineRequest"},"QuarantineSwarmRequest":{"properties":{"swarm_id":{"type":"string","title":"Swarm Id","description":"Target swarm fleet ID"},"reason":{"type":"string","title":"Reason","description":"Containment justification"},"operator_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Operator Id","description":"Operator ID","default":"cain-sentinel-auto"},"member_agents":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Member Agents","description":"Explicit swarm member agent IDs"}},"type":"object","required":["swarm_id","reason"],"title":"QuarantineSwarmRequest"},"QueryMemoriesRequest":{"properties":{"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"memory_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Memory Type"},"trust_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trust Level"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"query_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Query Text"},"min_confidence":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Min Confidence","default":0.0},"min_trust_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Min Trust Level"},"limit":{"type":"integer","maximum":500.0,"minimum":1.0,"title":"Limit","default":50}},"type":"object","title":"QueryMemoriesRequest"},"ReconcileRequest":{"properties":{"tenant":{"type":"string","title":"Tenant","default":"demo"},"expectation_id":{"type":"string","title":"Expectation Id"},"outcome_id":{"type":"string","title":"Outcome Id"},"subject":{"type":"string","title":"Subject"},"subject_type":{"type":"string","title":"Subject Type","default":"agent"}},"type":"object","required":["expectation_id","outcome_id","subject"],"title":"ReconcileRequest"},"RecordEventRequest":{"properties":{"action":{"type":"string","title":"Action"},"resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"},"tool":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"},"intent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intent"},"decision":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision","default":"allow"},"risk_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Risk Score","default":0.1},"execution_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Execution Status","default":"executed"}},"type":"object","required":["action"],"title":"RecordEventRequest"},"RecoverRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"rollback_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rollback Version"}},"type":"object","required":["tenant"],"title":"RecoverRequest"},"RemediationCreate":{"properties":{"finding_id":{"type":"string","title":"Finding Id"},"title":{"type":"string","title":"Title"},"description":{"type":"string","title":"Description"},"remediation_type":{"type":"string","title":"Remediation Type"},"planned_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Planned At"},"implementation_details":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Implementation Details"}},"type":"object","required":["finding_id","title","description","remediation_type"],"title":"RemediationCreate"},"RemediationUpdate":{"properties":{"status":{"type":"string","title":"Status"},"started_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Started At"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"},"verified_effectiveness":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Verified Effectiveness"},"verified_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verified By"}},"type":"object","required":["status"],"title":"RemediationUpdate"},"ReserveRequest":{"properties":{"amount_cents":{"type":"number","exclusiveMinimum":0.0,"title":"Amount Cents"},"action":{"type":"string","minLength":1,"title":"Action"},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"},"decision_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision Id"},"ttl_seconds":{"type":"integer","maximum":3600.0,"minimum":1.0,"title":"Ttl Seconds","default":300},"idempotency_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency Key"}},"type":"object","required":["amount_cents","action"],"title":"ReserveRequest"},"ResolveApprovalRequest":{"properties":{"approved":{"type":"boolean","title":"Approved"},"reason":{"type":"string","title":"Reason","default":""}},"type":"object","required":["approved"],"title":"ResolveApprovalRequest"},"ResourceBind":{"properties":{"kind":{"type":"string","title":"Kind","description":"agent_key | policy_profile | service | benchmark_suite"},"resource_id":{"type":"string","maxLength":200,"minLength":1,"title":"Resource Id"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"type":"object","required":["kind","resource_id"],"title":"ResourceBind"},"RestorationRequest":{"properties":{"node_id":{"type":"string","title":"Node Id"},"target_state":{"type":"string","title":"Target State","default":"restored"},"attestation":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Attestation"}},"type":"object","required":["node_id"],"title":"RestorationRequest"},"RestoreRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"verification_passed":{"type":"boolean","title":"Verification Passed"}},"type":"object","required":["tenant","verification_passed"],"title":"RestoreRequest"},"ReverifyRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"checks":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Checks"}},"type":"object","required":["tenant"],"title":"ReverifyRequest"},"Revoke":{"properties":{"grant_id":{"type":"string","title":"Grant Id"},"reason":{"type":"string","title":"Reason","default":"admin"}},"type":"object","required":["grant_id"],"title":"Revoke"},"RevokeMemoryRequest":{"properties":{"reason":{"type":"string","minLength":1,"title":"Reason"}},"type":"object","required":["reason"],"title":"RevokeMemoryRequest"},"RevokeReq":{"properties":{"id":{"type":"string","title":"Id"},"reason":{"type":"string","title":"Reason","default":"admin"}},"type":"object","required":["id"],"title":"RevokeReq"},"RunRequest":{"properties":{"suite":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Suite"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"},"negative_only":{"type":"boolean","title":"Negative Only","default":false}},"type":"object","title":"RunRequest"},"SandboxEnclaveAttestRequest":{"properties":{"node_pubkey_b64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Pubkey B64","description":"Ed25519 node public key to seal in enclave"},"enclave_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Enclave Type","description":"Hardware enclave boundary","default":"INTEL_SGX"}},"type":"object","title":"SandboxEnclaveAttestRequest"},"SandboxMemorySanitizeRequest":{"properties":{"text":{"type":"string","title":"Text","description":"Raw text or prompt to screen for memory poisoning and indirect prompt injection"},"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Tenant scope","default":"sandbox-tenant"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id","description":"Agent scope","default":"sandbox-agent"}},"type":"object","required":["text"],"title":"SandboxMemorySanitizeRequest"},"SandboxPassportIssueRequest":{"properties":{"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Issuing tenant","default":"tenant-enterprise-a"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id","description":"Subject agent","default":"agent-autonomous-01"},"target_tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Tenant Id","description":"Recipient tenant for settlement","default":"tenant-enterprise-b"},"actions":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Actions","description":"Consequential trajectory actions"}},"type":"object","title":"SandboxPassportIssueRequest"},"SandboxSimulateRequest":{"properties":{"action":{"type":"string","title":"Action","description":"Action to evaluate (e.g. read, query, delete, escalate_trust)"},"resource":{"type":"string","title":"Resource","description":"Target resource path (e.g. /health, /database/users)"},"principal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal","description":"Agent principal identity","default":"agent-developer-01"},"trust_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Trust Score","description":"Current agent trust score in range [0.0, 1.0]","default":0.85},"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Tenant isolation scope","default":"default"}},"type":"object","required":["action","resource"],"title":"SandboxSimulateRequest"},"SandboxSovereignCertifyRequest":{"properties":{"node_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Id","description":"Sovereign node ID","default":"sovereign-node-01"},"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Defense tenant ID","default":"defense-command"},"classification":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Classification","description":"Classification level","default":"SOVEREIGN_GOV"},"network_egress_rules":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Network Egress Rules","description":"Network egress firewall rules"}},"type":"object","title":"SandboxSovereignCertifyRequest"},"ScanListRequest":{"properties":{"tools":{"items":{"$ref":"#/components/schemas/ToolDef"},"type":"array","minItems":1,"title":"Tools"}},"type":"object","required":["tools"],"title":"ScanListRequest"},"ScanToolRequest":{"properties":{"tool":{"$ref":"#/components/schemas/ToolDef"}},"type":"object","required":["tool"],"title":"ScanToolRequest"},"SecurityReportPayload":{"properties":{"contact":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Contact"},"summary":{"type":"string","title":"Summary","default":""},"severity":{"type":"string","title":"Severity","default":"medium"},"details":{"type":"string","title":"Details","default":""}},"type":"object","title":"SecurityReportPayload"},"SetCredentialRequest":{"properties":{"name":{"type":"string","title":"Name"},"credential_type":{"type":"string","title":"Credential Type"},"encrypted_value":{"type":"string","title":"Encrypted Value"}},"type":"object","required":["name","credential_type","encrypted_value"],"title":"SetCredentialRequest"},"SetMemoryRequest":{"properties":{"memory_type":{"type":"string","pattern":"^(agent|user|workspace)$","title":"Memory Type"},"key":{"type":"string","maxLength":255,"minLength":1,"title":"Key"},"value":{"type":"string","title":"Value","default":""},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["memory_type","key"],"title":"SetMemoryRequest"},"SetTrustLevelRequest":{"properties":{"trust_level":{"type":"string","pattern":"^(unverified|observed|validated|trusted|revoked)$","title":"Trust Level"},"reason":{"type":"string","title":"Reason","default":""}},"type":"object","required":["trust_level"],"title":"SetTrustLevelRequest"},"SettingsRequest":{"properties":{"mode":{"type":"string","title":"Mode","description":"enforce (default, every tier: denials block) or shadow (opt-out: record verdicts, block nothing)"}},"type":"object","required":["mode"],"title":"SettingsRequest"},"SignReq":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"},"holder":{"type":"string","maxLength":16,"title":"Holder","default":"agent"},"agent":{"type":"string","maxLength":64,"title":"Agent"},"tool":{"type":"string","maxLength":120,"title":"Tool"},"action":{"type":"string","maxLength":120,"title":"Action"},"resource":{"type":"string","maxLength":120,"title":"Resource"},"session":{"type":"string","maxLength":64,"title":"Session","default":"S1"},"tenant":{"type":"string","maxLength":64,"title":"Tenant","default":"t1"},"args":{"title":"Args"}},"type":"object","required":["token","agent","tool","action","resource"],"title":"SignReq"},"SignatureVerify":{"properties":{"message":{"type":"string","maxLength":8192,"minLength":1,"title":"Message"},"signature":{"type":"string","minLength":1,"title":"Signature","description":"base64 Ed25519 signature over message bytes"}},"type":"object","required":["message","signature"],"title":"SignatureVerify"},"StatsResponse":{"properties":{"total_findings":{"type":"integer","title":"Total Findings"},"by_severity":{"additionalProperties":{"type":"integer"},"type":"object","title":"By Severity"},"by_class":{"additionalProperties":{"type":"integer"},"type":"object","title":"By Class"},"by_status":{"additionalProperties":{"type":"integer"},"type":"object","title":"By Status"},"avg_confidence":{"type":"number","title":"Avg Confidence"},"avg_delta":{"type":"number","title":"Avg Delta"}},"type":"object","required":["total_findings","by_severity","by_class","by_status","avg_confidence","avg_delta"],"title":"StatsResponse"},"StatusResponse":{"properties":{"status":{"type":"string","title":"Status"},"timestamp":{"type":"string","title":"Timestamp"},"incidents_open":{"type":"integer","title":"Incidents Open"},"incidents_resolved":{"type":"integer","title":"Incidents Resolved"},"total_impacts_analyzed":{"type":"integer","title":"Total Impacts Analyzed"}},"type":"object","required":["status","timestamp","incidents_open","incidents_resolved","total_impacts_analyzed"],"title":"StatusResponse"},"StoreMemoryRequest":{"properties":{"agent_id":{"type":"string","maxLength":255,"minLength":1,"title":"Agent Id"},"memory_type":{"type":"string","pattern":"^(episodic|semantic|procedural|preference|task|working|factual|experience|instruction|observation)$","title":"Memory Type"},"content":{"type":"string","maxLength":65536,"minLength":1,"title":"Content"},"source":{"type":"string","pattern":"^(agent|tool|human|delegated|system)$","title":"Source","default":"agent"},"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"source_type":{"type":"string","title":"Source Type","default":"agent"},"source_reference":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Reference"},"confidence":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Confidence","default":0.5},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"},"provenance":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Provenance"},"evidence_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Id"},"decision_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision Id"},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"},"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"},"sensitivity":{"type":"string","pattern":"^(internal|confidential|restricted|public)$","title":"Sensitivity","default":"internal"}},"type":"object","required":["agent_id","memory_type","content"],"title":"StoreMemoryRequest"},"SubmitProposalRequest":{"properties":{"agent_id":{"type":"string","minLength":1,"title":"Agent Id"},"action_verb":{"type":"string","maxLength":255,"minLength":1,"title":"Action Verb"},"target_resource":{"type":"string","maxLength":2048,"minLength":1,"title":"Target Resource"},"arguments":{"additionalProperties":true,"type":"object","title":"Arguments"},"intent":{"type":"string","maxLength":4096,"minLength":1,"title":"Intent"},"confidence":{"type":"number","title":"Confidence","default":1.0},"memory_refs":{"items":{"type":"string"},"type":"array","title":"Memory Refs"},"claims":{"additionalProperties":true,"type":"object","title":"Claims"},"plan_id":{"type":"string","title":"Plan Id","default":""},"step_index":{"type":"integer","title":"Step Index","default":0},"signature_b64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature B64"},"public_key_b64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Public Key B64"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},"type":"object","required":["agent_id","action_verb","target_resource","intent"],"title":"SubmitProposalRequest"},"SyscallAuditRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","description":"Tenant identifier","default":"demo"},"subject_id":{"type":"string","title":"Subject Id","description":"Subject / Agent / Process identifier"},"syscall":{"type":"string","title":"Syscall","description":"Name of the system call (e.g. execve, connect, ptrace)"},"target":{"type":"string","title":"Target","description":"Target path, destination address, or resource","default":""},"args":{"items":{"type":"string"},"type":"array","title":"Args","description":"Syscall arguments or flags"},"authorized_capabilities":{"items":{"type":"string"},"type":"array","title":"Authorized Capabilities","description":"Granted capabilities"}},"type":"object","required":["subject_id","syscall"],"title":"SyscallAuditRequest"},"TeamAcceptRequest":{"properties":{"invite":{"type":"string","title":"Invite"}},"type":"object","required":["invite"],"title":"TeamAcceptRequest"},"TeamInviteRequest":{"properties":{"email":{"type":"string","title":"Email"},"role":{"type":"string","title":"Role","description":"viewer | member | admin","default":"member"}},"type":"object","required":["email"],"title":"TeamInviteRequest"},"TeamNameRequest":{"properties":{"name":{"type":"string","title":"Name"}},"type":"object","required":["name"],"title":"TeamNameRequest"},"TeamRoleRequest":{"properties":{"role":{"type":"string","title":"Role"}},"type":"object","required":["role"],"title":"TeamRoleRequest"},"TeamSessionRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"}},"type":"object","required":["tenant"],"title":"TeamSessionRequest"},"Token":{"properties":{"token":{"type":"string","maxLength":64,"title":"Token"}},"type":"object","required":["token"],"title":"Token"},"TokenReq":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"tenant":{"type":"string","title":"Tenant"},"grant_id":{"type":"string","title":"Grant Id"},"intent":{"additionalProperties":true,"type":"object","title":"Intent"},"tool":{"type":"string","title":"Tool"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"arguments":{"additionalProperties":true,"type":"object","title":"Arguments","default":{}},"context":{"additionalProperties":true,"type":"object","title":"Context","default":{}},"ttl_seconds":{"type":"number","title":"Ttl Seconds","default":30.0}},"type":"object","required":["agent_id","tenant","grant_id","intent","tool","action","resource"],"title":"TokenReq"},"ToolControlRequest":{"properties":{"risk_level":{"type":"string","title":"Risk Level","default":"medium"},"requires_approval":{"type":"boolean","title":"Requires Approval","default":false},"policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"},"allowed_agents":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Allowed Agents"},"allowed_identities":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Allowed Identities"}},"type":"object","title":"ToolControlRequest"},"ToolDef":{"properties":{"name":{"type":"string","title":"Name","default":""},"description":{"type":"string","title":"Description","default":""},"input_schema":{"additionalProperties":true,"type":"object","title":"Input Schema"},"examples":{"items":{},"type":"array","title":"Examples"}},"type":"object","title":"ToolDef"},"ToolDefaultRequest":{"properties":{"default_effect":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Effect","description":"allow | deny | require_approval, or null for no default"}},"type":"object","title":"ToolDefaultRequest"},"ToolRuleCondition":{"properties":{"field":{"type":"string","title":"Field","description":"dotted path into the payload, e.g. amount_usd or query"},"op":{"type":"string","title":"Op","description":"eq neq gt gte lt lte contains not_contains matches exists"},"value":{"anyOf":[{},{"type":"null"}],"title":"Value"}},"type":"object","required":["field","op"],"title":"ToolRuleCondition"},"ToolRuleRequest":{"properties":{"name":{"type":"string","title":"Name"},"effect":{"type":"string","title":"Effect","description":"allow | deny | require_approval"},"priority":{"type":"integer","title":"Priority","description":"lower runs first; first match wins","default":100},"match_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Match Path","description":"glob, e.g. /tools/payments/*"},"match_service":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Match Service"},"match_agent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Match Agent","description":"glob over agent_id"},"conditions":{"items":{"$ref":"#/components/schemas/ToolRuleCondition"},"type":"array","title":"Conditions"}},"type":"object","required":["name","effect"],"title":"ToolRuleRequest"},"ToolRuleTestRequest":{"properties":{"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"},"service":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"payload":{"additionalProperties":true,"type":"object","title":"Payload"},"rules":{"anyOf":[{"items":{"$ref":"#/components/schemas/ToolRuleRequest"},"type":"array"},{"type":"null"}],"title":"Rules"},"default_effect":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Effect"}},"type":"object","title":"ToolRuleTestRequest"},"TrajectoryAnomalyQuarantineRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id","description":"Target rogue agent identity"},"threat_category":{"type":"string","title":"Threat Category","description":"Trajectory anomaly threat category"},"reason":{"type":"string","title":"Reason","description":"Explainable anomaly detection justification"},"swarm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Swarm Id","description":"Optional swarm fleet ID for contagion tracking"},"operator_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Operator Id","description":"Sentinel or operator ID","default":"cain-trajectory-sentinel"},"force_swarm_escalation":{"type":"boolean","title":"Force Swarm Escalation","description":"Whether to immediately force swarm fleet isolation","default":false}},"type":"object","required":["agent_id","threat_category","reason"],"title":"TrajectoryAnomalyQuarantineRequest"},"TrajectoryGradeRequest":{"properties":{"steps":{"items":{"$ref":"#/components/schemas/TrajectoryStep"},"type":"array","title":"Steps"},"terminal_step":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminal Step"},"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"}},"type":"object","required":["steps"],"title":"TrajectoryGradeRequest"},"TrajectoryStep":{"properties":{"index":{"type":"integer","title":"Index"},"tool":{"type":"string","title":"Tool"},"args":{"additionalProperties":true,"type":"object","title":"Args"},"cost":{"type":"number","title":"Cost","default":0.0},"risk_tier":{"type":"string","title":"Risk Tier","default":"low"},"resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"},"depends_on":{"items":{"type":"integer"},"type":"array","title":"Depends On"}},"type":"object","required":["index","tool"],"title":"TrajectoryStep"},"TrustActionRequest":{"properties":{"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"action":{"type":"string","title":"Action"},"resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"},"tool":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"},"intent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intent"},"policy_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Policy Id"},"risk_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Risk Score","default":0.1},"cost_cents":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cost Cents","default":0}},"type":"object","required":["action"],"title":"TrustActionRequest"},"TrustDynamicsEnforceRequest":{"properties":{"principal_id":{"type":"string","title":"Principal Id"},"identity_id":{"type":"string","title":"Identity Id"},"agent_id":{"type":"string","title":"Agent Id"},"session_id":{"type":"string","title":"Session Id"},"action":{"type":"string","title":"Action"},"resource":{"type":"string","title":"Resource"},"tool_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool Name"},"expected_risk_score":{"type":"number","title":"Expected Risk Score","default":0.3},"expected_outcome":{"type":"string","title":"Expected Outcome","default":"success"},"memory_context":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Memory Context"},"budget_factor":{"type":"number","title":"Budget Factor","default":1.0},"correlation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Correlation Id"}},"type":"object","required":["principal_id","identity_id","agent_id","session_id","action","resource"],"title":"TrustDynamicsEnforceRequest","description":"Request for Trust Dynamics enforcement endpoint."},"TrustTrajectoryEventRequest":{"properties":{"trajectory_id":{"type":"string","title":"Trajectory Id"},"action":{"type":"string","title":"Action"},"resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource"},"tool":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool"},"intent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intent"},"decision":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision","default":"allow"},"execution_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Execution Status","default":"executed"}},"type":"object","required":["trajectory_id","action"],"title":"TrustTrajectoryEventRequest"},"TrustVerifyRequest":{"properties":{"trajectory_id":{"type":"string","title":"Trajectory Id"}},"type":"object","required":["trajectory_id"],"title":"TrustVerifyRequest"},"UpdateAgentRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"system_instruction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Instruction"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"allowed_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Allowed Tools"},"blocked_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Blocked Tools"},"state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"}},"type":"object","title":"UpdateAgentRequest"},"UpdateBudgetRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"limit_cents":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Limit Cents"},"hard_limit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Hard Limit"},"soft_limit_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Soft Limit Pct"},"alert_threshold_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Alert Threshold Pct"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},"type":"object","title":"UpdateBudgetRequest"},"UpdateMemoryRequest":{"properties":{"content":{"anyOf":[{"type":"string","maxLength":65536,"minLength":1},{"type":"null"}],"title":"Content"},"confidence":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"Confidence"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","title":"UpdateMemoryRequest"},"UpdateSkillStateRequest":{"properties":{"state":{"type":"string","title":"State"},"reason":{"type":"string","title":"Reason","default":""}},"type":"object","required":["state"],"title":"UpdateSkillStateRequest"},"ValidateMemoryRequest":{"properties":{"validation_type":{"type":"string","pattern":"^(cross_reference|evidence|human|policy)$","title":"Validation Type","default":"cross_reference"},"reason":{"type":"string","title":"Reason","default":""}},"type":"object","title":"ValidateMemoryRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerifyAnchorRequest":{"properties":{"checkpoint_proof":{"additionalProperties":true,"type":"object","title":"Checkpoint Proof"}},"type":"object","required":["checkpoint_proof"],"title":"VerifyAnchorRequest"},"VerifyAttestationRequest":{"properties":{"attestation_id":{"type":"string","title":"Attestation Id"}},"type":"object","required":["attestation_id"],"title":"VerifyAttestationRequest"},"VerifyEvidenceRequest":{"properties":{"evidence_ids":{"items":{"type":"string"},"type":"array","title":"Evidence Ids"}},"type":"object","required":["evidence_ids"],"title":"VerifyEvidenceRequest"},"VerifyInclusionRequest":{"properties":{"leaf_hash":{"type":"string","title":"Leaf Hash"},"leaf_index":{"type":"integer","title":"Leaf Index"},"audit_path":{"items":{"additionalProperties":{"type":"string"},"type":"object"},"type":"array","title":"Audit Path"},"root_hash":{"type":"string","title":"Root Hash"}},"type":"object","required":["leaf_hash","leaf_index","audit_path","root_hash"],"title":"VerifyInclusionRequest"},"VerifySignatureRequest":{"properties":{"report_id":{"type":"string","title":"Report Id"},"signature":{"type":"string","title":"Signature"}},"type":"object","required":["report_id","signature"],"title":"VerifySignatureRequest"},"VoteRequest":{"properties":{"decision_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Decision Data"},"sender_node_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sender Node Id"},"timestamp":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Timestamp"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature"}},"type":"object","title":"VoteRequest"},"WORMExportRequest":{"properties":{"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","description":"Tenant scope","default":"tenant-default"},"format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Format","description":"Export format (json or affidavit)","default":"json"}},"type":"object","title":"WORMExportRequest"},"WORMVerifyRequest":{"properties":{"package":{"additionalProperties":true,"type":"object","title":"Package","description":"WORM package dictionary to verify"}},"type":"object","required":["package"],"title":"WORMVerifyRequest"},"WebhookRequest":{"properties":{"url":{"type":"string","maxLength":2000,"minLength":8,"title":"Url"},"events":{"items":{"type":"string"},"type":"array","title":"Events"},"description":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Description"},"format":{"type":"string","title":"Format","description":"cain (signed JSON envelope), splunk_hec or xsiam","default":"cain"},"auth_token":{"anyOf":[{"type":"string","maxLength":512},{"type":"null"}],"title":"Auth Token","description":"the SIEM collector's token (splunk_hec, xsiam); stored, never returned"}},"type":"object","required":["url"],"title":"WebhookRequest"},"WorkspaceCreate":{"properties":{"name":{"type":"string","maxLength":100,"minLength":1,"title":"Name"},"environment":{"type":"string","title":"Environment","default":"dev"},"description":{"type":"string","maxLength":1000,"title":"Description","default":""}},"type":"object","required":["name"],"title":"WorkspaceCreate"},"agent_identity_api__VerifyRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"tenant":{"type":"string","title":"Tenant"},"observed_digest":{"type":"string","title":"Observed Digest"},"observed_container_id":{"type":"string","title":"Observed Container Id"},"observed_capabilities":{"items":{"type":"string"},"type":"array","title":"Observed Capabilities"},"observed_skills":{"items":{"type":"string"},"type":"array","title":"Observed Skills"}},"type":"object","required":["agent_id","tenant","observed_digest","observed_container_id"],"title":"VerifyRequest"},"cain_budget_api__EvaluateRequest":{"properties":{"amount_cents":{"type":"number","exclusiveMinimum":0.0,"title":"Amount Cents"},"action":{"type":"string","minLength":1,"title":"Action"},"scope":{"type":"string","title":"Scope","default":"tenant"},"scope_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope Id"},"trajectory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trajectory Id"},"identity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Id"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"trace_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trace Id"}},"type":"object","required":["amount_cents","action"],"title":"EvaluateRequest"},"cain_control_api__KillSwitchRequest":{"properties":{"reason":{"type":"string","title":"Reason","default":""}},"type":"object","title":"KillSwitchRequest"},"cain_control_loop_api__CounterfactualRequest":{"properties":{"tenant":{"type":"string","title":"Tenant","default":"demo"},"agent":{"type":"string","title":"Agent"},"action":{"type":"string","title":"Action"},"hypothetical_repeats":{"type":"integer","maximum":1000.0,"minimum":1.0,"title":"Hypothetical Repeats","default":1}},"type":"object","required":["agent","action"],"title":"CounterfactualRequest"},"cain_drift_api__HealthResponse":{"properties":{"status":{"type":"string","title":"Status"},"timestamp":{"type":"string","title":"Timestamp"},"detectors":{"additionalProperties":{"type":"boolean"},"type":"object","title":"Detectors"},"db_path":{"type":"string","title":"Db Path"},"version":{"type":"string","title":"Version"}},"type":"object","required":["status","timestamp","detectors","db_path","version"],"title":"HealthResponse"},"cain_frontier_api__A2AVerifyRequest":{"properties":{"envelope":{"additionalProperties":true,"type":"object","title":"Envelope"},"expect_session":{"type":"string","title":"Expect Session"},"expect_chain_digest":{"type":"string","title":"Expect Chain Digest"}},"type":"object","required":["envelope","expect_session","expect_chain_digest"],"title":"A2AVerifyRequest"},"cain_guard_api__A2AVerifyRequest":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities"},"signature":{"type":"string","title":"Signature"},"endpoint_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endpoint Url"},"signer_public_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signer Public Key"}},"type":"object","required":["agent_id","capabilities","signature"],"title":"A2AVerifyRequest"},"cain_impact_api__HealthResponse":{"properties":{"status":{"type":"string","title":"Status"},"timestamp":{"type":"string","title":"Timestamp"},"version":{"type":"string","title":"Version"}},"type":"object","required":["status","timestamp","version"],"title":"HealthResponse"},"cain_resilience_api__SimulateRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"incident_id":{"type":"string","title":"Incident Id"},"sentinel_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Sentinel Data"},"impact_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Impact Data"},"drift_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Drift Data"}},"type":"object","required":["tenant","incident_id"],"title":"SimulateRequest"},"cain_sentinel_api__EvaluateRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"impact_data":{"additionalProperties":true,"type":"object","title":"Impact Data"},"drift_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Drift Data"},"authority_exposure":{"type":"number","title":"Authority Exposure","default":0.0},"evidence_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Evidence Ids"}},"type":"object","required":["tenant","impact_data"],"title":"EvaluateRequest"},"cain_sentinel_api__SimulateRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"entity_id":{"type":"string","title":"Entity Id"},"entity_type":{"type":"string","title":"Entity Type"},"target_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target State"},"rollback_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rollback Version"}},"type":"object","required":["tenant","entity_id","entity_type"],"title":"SimulateRequest"},"fabric_control_plane__DecisionRequest":{"properties":{"service":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service","description":"catalog slug this call targets"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path","description":"upstream path this call targets"},"payload":{"additionalProperties":true,"type":"object","title":"Payload","description":"the request body the agent intends to send"},"plan":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Plan","description":"ordered [{tool, args}] plan for ActionProof"},"agent_id":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Agent Id"},"chain_id":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9._:-]{1,128}$"},{"type":"null"}],"title":"Chain Id","description":"your run id: every decision sharing it forms one trace"},"record":{"type":"boolean","title":"Record","description":"set false to evaluate without writing an evidence record","default":true}},"type":"object","title":"DecisionRequest"},"fabric_control_plane__KillSwitchRequest":{"properties":{"reason":{"type":"string","maxLength":500,"minLength":3,"title":"Reason","description":"why the halt was engaged -- read by whoever finds it later, so it is mandatory"}},"type":"object","required":["reason"],"title":"KillSwitchRequest"},"main__DecisionRequest":{"properties":{"action":{"type":"string","minLength":1,"title":"Action"},"resource":{"type":"string","minLength":1,"title":"Resource"},"principal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Principal","default":"anonymous"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"tenant_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant Id","default":"demo"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata","default":{}}},"type":"object","required":["action","resource"],"title":"DecisionRequest"},"policy_ops__EvaluateRequest":{"properties":{"service":{"type":"string","maxLength":128,"minLength":1,"title":"Service"},"path":{"type":"string","maxLength":512,"title":"Path","default":"/"},"method":{"type":"string","maxLength":10,"title":"Method","default":"POST"},"tier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tier"},"entitled":{"type":"boolean","title":"Entitled","default":true}},"type":"object","required":["service"],"title":"EvaluateRequest"},"routers__authority__VerifyRequest":{"properties":{"certificate":{"additionalProperties":true,"type":"object","title":"Certificate"},"expected_cluster_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expected Cluster Id"}},"type":"object","required":["certificate"],"title":"VerifyRequest"},"trajectory_api__CounterfactualRequest":{"properties":{"omitted_step":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Omitted Step"},"proposed_action":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proposed Action"},"proposed_resource":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proposed Resource"},"proposed_risk":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Proposed Risk","default":0.1}},"type":"object","title":"CounterfactualRequest"}}}}