{"openapi":"3.1.0","info":{"title":"CAIN Studio customer API","description":"The /fabric product API. Authenticate every call with your API key in the X-API-Key header (get one at https://cainstudio.online/signup).","version":"1.0.0"},"components":{"schemas":{"A2AAuthorityRequest":{"properties":{"root":{"additionalProperties":true,"type":"object","title":"Root","description":"{subject, ceiling, capabilities, expires_at}"},"delegatee":{"type":"string","title":"Delegatee","description":"Subject receiving delegated authority"},"requested_ceiling":{"type":"string","title":"Requested Ceiling","description":"NONE|READ|WRITE|EXECUTE|ADMIN"},"requested_capabilities":{"items":{"type":"string"},"type":"array","title":"Requested Capabilities"},"authorized_delegators":{"items":{"type":"string"},"type":"array","title":"Authorized Delegators","description":"Explicit list; '*' is refused"},"expires_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["root","delegatee","requested_ceiling","authorized_delegators"],"title":"A2AAuthorityRequest","description":"Authority-preserving delegation using ordered levels (Phase 9). Unlike /a2a/verify (cards),\nthis models *magnitude*: a child ceiling may never exceed its parent's, capabilities are the\nintersection down the chain, and revocation cascades."},"A2ADelegationRequest":{"properties":{"delegator_card":{"additionalProperties":true,"type":"object","title":"Delegator Card","description":"Agent Card of delegating agent"},"delegatee_card":{"additionalProperties":true,"type":"object","title":"Delegatee Card","description":"Agent Card of delegatee agent"},"requested_task":{"type":"string","title":"Requested Task","description":"Task to be performed"},"requested_capabilities":{"items":{"type":"string"},"type":"array","title":"Requested Capabilities","description":"Capabilities requested for execution"}},"type":"object","required":["delegator_card","delegatee_card","requested_task","requested_capabilities"],"title":"A2ADelegationRequest"},"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"},"A2ARevokeRequest":{"properties":{"subject":{"type":"string","title":"Subject"},"root":{"additionalProperties":true,"type":"object","title":"Root"}},"type":"object","required":["subject","root"],"title":"A2ARevokeRequest"},"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"},"AgentKeyRequest":{"properties":{"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name"},"budget_usd":{"anyOf":[{"type":"number","exclusiveMinimum":0.0},{"type":"null"}],"title":"Budget Usd"}},"type":"object","required":["name"],"title":"AgentKeyRequest"},"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"},"Approval":{"properties":{"approver_key_id":{"type":"string","title":"Approver Key Id"},"signature_b64":{"type":"string","maxLength":200,"title":"Signature B64"}},"type":"object","required":["approver_key_id","signature_b64"],"title":"Approval"},"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"},"ArtifactPinRequest":{"properties":{"artifact_id":{"type":"string","maxLength":128,"title":"Artifact Id"},"kind":{"type":"string","maxLength":32,"title":"Kind","default":"TOOL"},"version":{"type":"string","maxLength":64,"title":"Version"},"content_sha256":{"type":"string","maxLength":64,"minLength":64,"title":"Content Sha256"},"publisher_id":{"type":"string","maxLength":128,"title":"Publisher Id"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities"},"tools":{"items":{"type":"string"},"type":"array","title":"Tools"},"issued_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Issued At"},"expires_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Expires At"},"signature_b64":{"type":"string","minLength":1,"title":"Signature B64"}},"type":"object","required":["artifact_id","version","content_sha256","publisher_id","signature_b64"],"title":"ArtifactPinRequest"},"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":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorized By"},"comments":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comments"}},"type":"object","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"},"CallRequest":{"properties":{"credential":{"type":"string","maxLength":63,"minLength":1,"title":"Credential"},"method":{"type":"string","title":"Method","default":"GET"},"url":{"type":"string","maxLength":4000,"minLength":8,"title":"Url"},"headers":{"additionalProperties":{"type":"string"},"type":"object","title":"Headers"},"json":{"anyOf":[{},{"type":"null"}],"title":"Json"},"body":{"anyOf":[{"type":"string","maxLength":1000000},{"type":"null"}],"title":"Body"},"agent_id":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Agent Id"}},"type":"object","required":["credential","url"],"title":"CallRequest"},"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"},"CompositionEvaluateRequest":{"properties":{"active":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Active"}},"type":"object","required":["active"],"title":"CompositionEvaluateRequest"},"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"},"CredentialRequest":{"properties":{"name":{"type":"string","maxLength":63,"minLength":1,"title":"Name"},"kind":{"type":"string","title":"Kind","description":"bearer, header, basic (user:password) or query","default":"bearer"},"secret":{"type":"string","maxLength":8192,"minLength":1,"title":"Secret"},"allowed_hosts":{"items":{"type":"string"},"type":"array","maxItems":20,"minItems":1,"title":"Allowed Hosts"},"allowed_methods":{"items":{"type":"string"},"type":"array","title":"Allowed Methods"},"header_name":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Header Name"},"description":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Description"}},"type":"object","required":["name","secret","allowed_hosts"],"title":"CredentialRequest"},"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"},"DeployBody":{"properties":{"proposal_id":{"type":"string","title":"Proposal Id"},"approvals":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Approvals"}},"type":"object","required":["proposal_id"],"title":"DeployBody"},"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"},"EgressRuleRequest":{"properties":{"target":{"type":"string","maxLength":253,"title":"Target"},"ports":{"items":{"type":"integer"},"type":"array","title":"Ports"},"schemes":{"items":{"type":"string"},"type":"array","title":"Schemes"}},"type":"object","required":["target"],"title":"EgressRuleRequest"},"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"},"caller_assertion":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Caller Assertion"},"system_request":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"System Request"}},"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"},"FastPathGrantRequest":{"properties":{"tools":{"items":{"type":"string"},"type":"array","maxItems":64,"minItems":1,"title":"Tools","description":"Paths the agent calls, e.g. /tools/read_file. A trailing / covers that subtree. No wildcards."},"service":{"anyOf":[{"type":"string","maxLength":256},{"type":"null"}],"title":"Service","description":"Leave empty for your own tools (calls that name no service)."},"ttl_s":{"type":"integer","maximum":900.0,"minimum":5.0,"title":"Ttl S","description":"Snapshot lifetime; the cluster re-commits it at half-life while the grant lasts.","default":120}},"type":"object","required":["tools"],"title":"FastPathGrantRequest"},"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"},"L5AuthorizeRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"agent_id":{"type":"string","title":"Agent Id"},"tool_name":{"type":"string","title":"Tool Name"},"arguments":{"additionalProperties":true,"type":"object","title":"Arguments"},"caller_assertion":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Caller Assertion"}},"type":"object","required":["tenant","agent_id","tool_name"],"title":"L5AuthorizeRequest"},"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"},"MemorySanitizationRequest":{"properties":{"raw_memory_text":{"type":"string","title":"Raw Memory Text","description":"Unsanitized memory string from agent session or tool output"},"source_session":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Session","default":"session_default"}},"type":"object","required":["raw_memory_text"],"title":"MemorySanitizationRequest"},"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"},"PRMEvaluationRequest":{"properties":{"trajectory_id":{"type":"string","title":"Trajectory Id","description":"Unique ID for the agent trajectory"},"steps":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Steps","description":"List of plan steps to evaluate"}},"type":"object","required":["trajectory_id","steps"],"title":"PRMEvaluationRequest"},"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"},"ProposeBody":{"properties":{"proposal":{"additionalProperties":true,"type":"object","title":"Proposal"},"evaluation_report":{"additionalProperties":true,"type":"object","title":"Evaluation Report"}},"type":"object","required":["proposal"],"title":"ProposeBody"},"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"},"RecoverBody":{"properties":{"emergency_id":{"type":"string","title":"Emergency Id"},"orders":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Orders"}},"type":"object","required":["emergency_id"],"title":"RecoverBody"},"RecoverRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"rollback_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rollback Version"}},"type":"object","required":["tenant"],"title":"RecoverRequest"},"RegisterBody":{"properties":{"spec":{"additionalProperties":true,"type":"object","title":"Spec"},"initial_state":{"additionalProperties":true,"type":"object","title":"Initial State"}},"type":"object","required":["spec","initial_state"],"title":"RegisterBody"},"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"},"Review":{"properties":{"reviewer_identity":{"type":"string","maxLength":256,"minLength":1,"title":"Reviewer Identity"},"verdict":{"type":"string","title":"Verdict"},"notes":{"type":"string","maxLength":4000,"title":"Notes","default":""}},"type":"object","required":["reviewer_identity","verdict"],"title":"Review"},"Revocation":{"properties":{"revoked_by":{"type":"string","maxLength":256,"minLength":1,"title":"Revoked By"},"reason":{"type":"string","maxLength":2000,"minLength":1,"title":"Reason"}},"type":"object","required":["revoked_by","reason"],"title":"Revocation"},"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"},"RevokeRequest":{"properties":{"tenant":{"type":"string","title":"Tenant"},"principal_id":{"type":"string","title":"Principal Id"},"agent_id":{"type":"string","title":"Agent Id"}},"type":"object","required":["tenant","principal_id","agent_id"],"title":"RevokeRequest"},"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"},"SSOConfig":{"properties":{"issuer":{"type":"string","maxLength":500,"minLength":8,"title":"Issuer"},"client_id":{"type":"string","maxLength":500,"minLength":1,"title":"Client Id"},"client_secret":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Client Secret","description":"required the first time; omit to keep the stored one"},"default_role":{"type":"string","title":"Default Role","description":"viewer or member, for just-in-time joining and SCIM","default":"viewer"},"jit":{"type":"boolean","title":"Jit","description":"let verified people from allowed_domains join on first sign-in","default":false},"allowed_domains":{"items":{"type":"string"},"type":"array","maxItems":50,"title":"Allowed Domains"},"email_claim":{"type":"string","title":"Email Claim","description":"email, upn or preferred_username","default":"email"}},"type":"object","required":["issuer","client_id"],"title":"SSOConfig"},"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"},"StateBody":{"properties":{"updates":{"additionalProperties":true,"type":"object","title":"Updates"}},"type":"object","required":["updates"],"title":"StateBody"},"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"},"tenant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tenant"},"incidents_open":{"type":"integer","title":"Incidents Open"},"incidents_resolved":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Incidents Resolved"},"total_impacts_analyzed":{"type":"integer","title":"Total Impacts Analyzed"},"basis":{"type":"string","title":"Basis"}},"type":"object","required":["status","timestamp","incidents_open","total_impacts_analyzed","basis"],"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"},"ToolParamSpec":{"properties":{"name":{"type":"string","maxLength":128,"title":"Name"},"type":{"type":"string","title":"Type","default":"string"},"required":{"type":"boolean","title":"Required","default":true},"format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Format"},"grounded_in":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Grounded In"}},"type":"object","required":["name"],"title":"ToolParamSpec"},"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"},"ToolSchemaRequest":{"properties":{"tool":{"type":"string","maxLength":128,"title":"Tool"},"params":{"items":{"$ref":"#/components/schemas/ToolParamSpec"},"type":"array","title":"Params"},"closed":{"type":"boolean","title":"Closed","default":true}},"type":"object","required":["tool"],"title":"ToolSchemaRequest"},"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"},"TriCEGARVerificationRequest":{"properties":{"trace_id":{"type":"string","title":"Trace Id","description":"Unique ID for the telemetry execution trace"},"execution_log":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Execution Log","description":"Chronological list of executed actions"},"max_allowed_depth":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Allowed Depth","default":5}},"type":"object","required":["trace_id","execution_log"],"title":"TriCEGARVerificationRequest"},"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"},"TrustedPublisherRequest":{"properties":{"publisher_id":{"type":"string","maxLength":128,"title":"Publisher Id"},"public_key_b64":{"type":"string","maxLength":128,"title":"Public Key B64"}},"type":"object","required":["publisher_id","public_key_b64"],"title":"TrustedPublisherRequest"},"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":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Db Path"},"version":{"type":"string","title":"Version"}},"type":"object","required":["status","timestamp","detectors","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"},"governance_runtime__GrantRequest":{"properties":{"tenant":{"type":"string","maxLength":256,"title":"Tenant"},"principal_id":{"type":"string","maxLength":256,"title":"Principal Id"},"agent_id":{"type":"string","maxLength":256,"title":"Agent Id"},"capabilities":{"items":{"items":{"type":"string"},"type":"array"},"type":"array","maxItems":256,"title":"Capabilities"},"ttl_s":{"type":"integer","title":"Ttl S","default":120}},"type":"object","required":["tenant","principal_id","agent_id","capabilities"],"title":"GrantRequest"},"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"},"routers__break_glass__GrantRequest":{"properties":{"tenant":{"type":"string","maxLength":128,"minLength":1,"title":"Tenant"},"requested_by":{"type":"string","maxLength":256,"minLength":1,"title":"Requested By"},"reason":{"type":"string","maxLength":2000,"minLength":10,"title":"Reason"},"scope":{"items":{"type":"string"},"type":"array","maxItems":50,"minItems":1,"title":"Scope"},"ttl_seconds":{"type":"number","exclusiveMinimum":0.0,"title":"Ttl Seconds","default":900.0},"initiator_key_id":{"type":"string","title":"Initiator Key Id"}},"type":"object","required":["tenant","requested_by","reason","scope","initiator_key_id"],"title":"GrantRequest"},"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"}},"securitySchemes":{"ApiKey":{"type":"apiKey","in":"header","name":"X-API-Key"}}},"paths":{"/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/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/egress/rules":{"get":{"tags":["Trust Fabric"],"summary":"This tenant's action-tool allowlist (destinations)","operationId":"get_egress_rules_fabric_egress_rules_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":"Add a destination allow rule (enables egress enforcement)","operationId":"add_egress_rule_fabric_egress_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/EgressRuleRequest"}}}},"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 destination allow rule","operationId":"delete_egress_rule_fabric_egress_rules_delete","parameters":[{"name":"target","in":"query","required":true,"schema":{"type":"string","title":"Target"}},{"name":"ports","in":"query","required":false,"schema":{"type":"string","default":"","title":"Ports"}},{"name":"schemes","in":"query","required":false,"schema":{"type":"string","default":"","title":"Schemes"}},{"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/toolargs/schemas":{"get":{"tags":["Trust Fabric"],"summary":"Registered tool schemas for argument validation","operationId":"list_tool_schemas_fabric_toolargs_schemas_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"put":{"tags":["Trust Fabric"],"summary":"Register or replace a tool schema (operator-admin)","description":"Admin-gated, because a wrong schema can deny good calls (or a too-loose one can permit bad\nones). Writing a schema turns the toolargs stage from observe to enforcing for that tool.","operationId":"put_tool_schema_fabric_toolargs_schemas_put","parameters":[{"name":"x-admin-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Admin-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolSchemaRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/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/agent-keys":{"post":{"tags":["Trust Fabric"],"summary":"Create an agent key (a separate principal for one agent)","operationId":"create_agent_key_fabric_agent_keys_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/AgentKeyRequest"}}}},"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 account's agent keys (secrets are never shown again)","operationId":"list_agent_keys_fabric_agent_keys_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/agent-keys/{agent_key_id}/revoke":{"post":{"tags":["Trust Fabric"],"summary":"Revoke one agent key immediately","operationId":"revoke_agent_key_fabric_agent_keys__agent_key_id__revoke_post","parameters":[{"name":"agent_key_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Key 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/agent-keys/{agent_key_id}/fast-path":{"post":{"tags":["Trust Fabric"],"summary":"Let one agent's already-allowed calls to these tools skip the per-call consensus round","operationId":"grant_fast_path_fabric_agent_keys__agent_key_id__fast_path_post","parameters":[{"name":"agent_key_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Key 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/FastPathGrantRequest"}}}},"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 an agent's fast-path grant immediately","operationId":"revoke_fast_path_fabric_agent_keys__agent_key_id__fast_path_delete","parameters":[{"name":"agent_key_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Key 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/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/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/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/{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"}}}}}}},"/fabric/sso":{"put":{"tags":["Enterprise sign-in (SSO, SCIM)"],"summary":"Register this workspace's OpenID Connect identity provider","operationId":"put_sso_fabric_sso_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/SSOConfig"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Enterprise sign-in (SSO, SCIM)"],"summary":"This workspace's single sign-on connection","operationId":"get_sso_fabric_sso_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"}}}}}},"delete":{"tags":["Enterprise sign-in (SSO, SCIM)"],"summary":"Remove single sign-on (members keep their memberships)","operationId":"delete_sso_fabric_sso_delete","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/sso/scim-token":{"post":{"tags":["Enterprise sign-in (SSO, SCIM)"],"summary":"Mint the SCIM provisioning token (shown once)","operationId":"post_scim_token_fabric_sso_scim_token_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"}}}}}},"delete":{"tags":["Enterprise sign-in (SSO, SCIM)"],"summary":"Revoke the SCIM provisioning token","operationId":"delete_scim_token_fabric_sso_scim_token_delete","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/broker/credentials":{"post":{"tags":["Credential broker"],"summary":"Store a credential agents can use without seeing it","operationId":"create_credential_fabric_broker_credentials_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/CredentialRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Credential broker"],"summary":"Brokered credentials (the secrets are never returned)","operationId":"list_credentials_fabric_broker_credentials_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/broker/credentials/{name}":{"delete":{"tags":["Credential broker"],"summary":"Revoke a brokered credential","operationId":"revoke_credential_fabric_broker_credentials__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"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/broker/call":{"post":{"tags":["Credential broker"],"summary":"CAIN decides on the call, then makes it with the stored credential","operationId":"brokered_call_fabric_broker_call_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/CallRequest"}}}},"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"}}}}}}},"/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/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/mcp/l5/authorize":{"post":{"tags":["CAIN 16 MCP Enforcement","cain-16-mcp-enforcement"],"summary":"L5 Authorize","description":"Authorize a tool call through the L5 identity + dynamic authority fabric (Prompt 2).","operationId":"l5_authorize_fabric_mcp_l5_authorize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/L5AuthorizeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response L5 Authorize Fabric Mcp L5 Authorize Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/mcp/system/{tenant}/evolution/propose":{"post":{"tags":["CAG-L5 System Governor"],"summary":"Evolution Propose","description":"Agent-signed EvolutionProposal (MODEL | TOOL_CONFIGURATION). Unsigned -> 401, nothing recorded.","operationId":"evolution_propose_fabric_mcp_system__tenant__evolution_propose_post","parameters":[{"name":"tenant","in":"path","required":true,"schema":{"type":"string","title":"Tenant"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProposeBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Evolution Propose Fabric Mcp System  Tenant  Evolution Propose Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fabric/mcp/system/key":{"get":{"tags":["CAG-L5 System Governor"],"summary":"Governance Key","operationId":"governance_key_fabric_mcp_system_key_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Governance Key Fabric Mcp System Key Get"}}}}}}},"/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"}}}}}}},"/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"}},{"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/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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"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/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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"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/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"}},{"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/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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"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/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"}},{"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/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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"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/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"}},{"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/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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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.\n\n`versions` is the supersession chain (one row per supersede, oldest first);\n`operations` is the per-row operation log, which records in-place updates.","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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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"}},{"name":"X-Tenant-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Tenant-Id"}}],"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/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/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/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/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/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/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/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/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/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/isolation/verify":{"get":{"tags":["CAIN Compliance","CAIN Compliance"],"summary":"Verify Tenant Isolation","description":"What this tenant's compliance store holds, and how it is kept separate.\n\nReports the caller's own rows only. Until 2026-10-01 this answered \"isolated\": True for six areas without testing\nanything (and counted DISTINCT tenants across every customer, then crashed on an undefined name). A single tenant\ncannot prove isolation from the inside, so this states the enforcement basis instead of claiming a verdict.","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 status for the caller's tenant (the gateway's tenant gate binds `tenant` to the key).\n\nincidents_open counts this tenant's recorded high/critical impact analyses. There is no\nincident-resolution workflow in this service, so incidents_resolved is null, not 0.","operationId":"status_fabric_impact_status_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":{"$ref":"#/components/schemas/StatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/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 the caller's tenant trust state, computed from that tenant's own evidence\n(drift, impact) plus attestation-service availability. The platform conformance\nsuite is reported alongside as `platform_conformance` but does not set a\ntenant's state: it tests the platform, not the tenant.\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","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/PlanRecoveryRequest"}}}},"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"}},{"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/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/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"}}}}}}}},"servers":[{"url":"https://cainstudio.online"}],"security":[{"ApiKey":[]}]}