generated: '2026-07-17' method: generated source: openapi/accept-midas-openapi-original.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 83 by_action_class: connected: 64 acting: 19 by_consequence: read: 64 write: 2 safety-critical: 17 human_in_the_loop_required: 17 operations: - path: /healthz method: get operationId: getHealth x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /readyz method: get operationId: getReadiness x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/evaluate method: post operationId: evaluate x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/reviews method: post operationId: createReview x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/envelopes method: get operationId: listEnvelopes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/envelopes/{id} method: get operationId: getEnvelope x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/escalations method: get operationId: listEscalations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/decisions/request/{requestId} method: get operationId: getDecisionByRequestId x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/evidence/envelopes/{id}/audit-events method: get operationId: getEvidenceEnvelopeAuditEvents x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/evidence/envelopes/{id}/integrity method: get operationId: getEvidenceEnvelopeIntegrity x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/evidence/envelopes/{id}/packet method: get operationId: getEvidenceEnvelopePacket x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/evidence/audit-events method: get operationId: searchEvidenceAuditEvents x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/controlplane/apply method: post operationId: applyBundle x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/plan method: post operationId: planBundle x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/audit method: get operationId: listControlAudit x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/coverage method: get operationId: listGovernanceCoverage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/controlplane/surfaces/{id}/approve method: post operationId: approveSurface x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/surfaces/{id}/deprecate method: post operationId: deprecateSurface x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/profiles/{id}/approve method: post operationId: approveProfile x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/expectations/{id}/approve method: post operationId: approveGovernanceExpectation x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/profiles/{id}/deprecate method: post operationId: deprecateProfile x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/fail_mode_policies/{id}/approve method: post operationId: approveFailModePolicy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/fail_mode_policies/{id}/deprecate method: post operationId: deprecateFailModePolicy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/drift_definitions/{id}/submit method: post operationId: submitDriftDefinition x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/drift_definitions/{id}/approve method: post operationId: approveDriftDefinition x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/drift_definitions/{id}/reject method: post operationId: rejectDriftDefinition x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/drift_definitions/{id}/deprecate method: post operationId: deprecateDriftDefinition x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/drift_definitions/{id}/retire method: post operationId: retireDriftDefinition x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/grants/{id}/suspend method: post operationId: suspendGrant x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/grants/{id}/revoke method: post operationId: revokeGrant x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/controlplane/grants/{id}/reinstate method: post operationId: reinstateGrant x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/surfaces/{id} method: get operationId: getSurface x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/profiles method: get operationId: listProfiles x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/profiles/{id} method: get operationId: getProfile x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/agents/{id} method: get operationId: getAgent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/grants method: get operationId: listGrants x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/grants/{id} method: get operationId: getGrant x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/surfaces/{id}/versions method: get operationId: listSurfaceVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/surfaces/{id}/impact method: get operationId: getSurfaceImpact x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/surfaces/{id}/recovery method: get operationId: getSurfaceRecovery x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/profiles/{id}/versions method: get operationId: listProfileVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/profiles/{id}/recovery method: get operationId: getProfileRecovery x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/capabilities method: get operationId: listCapabilities x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/capabilities/{id} method: get operationId: getCapabilityById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/capabilities/{id}/children method: get operationId: listCapabilityChildren x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/capabilities/{id}/businessservices method: get operationId: listCapabilityBusinessServices x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/capabilities/{id}/ai-bindings method: get operationId: listCapabilityAIBindings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/processes method: get operationId: listProcesses x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/processes/{id} method: get operationId: getProcessById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/processes/{id}/surfaces method: get operationId: listSurfacesByProcess x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/businessservices method: get operationId: listBusinessServices x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/businessservices/{id} method: get operationId: getBusinessServiceById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/businessservices/{id}/relationships method: get operationId: listBusinessServiceRelationships x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/aisystems method: get operationId: listAISystems x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/aisystems/{id} method: get operationId: getAISystem x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/aisystems/{id}/versions method: get operationId: listAISystemVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/aisystems/{id}/versions/{version} method: get operationId: getAISystemVersion x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/aisystems/{id}/bindings method: get operationId: listAISystemBindings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/graphs/context method: get operationId: getContextGraph x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/graphs/authority method: get operationId: getAuthorityGraph x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/platform/admin-audit method: get operationId: listAdminAudit x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/analytics method: get operationId: getDriftAnalytics x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/definitions/{id} method: get operationId: getDriftDefinition x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/definitions/{id}/versions method: get operationId: listDriftDefinitionVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/definitions/{id}/versions/{version} method: get operationId: getDriftDefinitionVersion x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/definitions/{id}/series method: get operationId: listDriftSeriesByDefinition x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/definitions/{id}/observations method: get operationId: listDriftObservationsByDefinition x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/series/{id} method: get operationId: getDriftSeries x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/series/{id}/points method: get operationId: listDriftSeriesPoints x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/series/{id}/observations method: get operationId: listDriftObservationsBySeries x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/series/{id}/annotations method: get operationId: listDriftAnnotationsBySeries x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/series-points/{id} method: get operationId: getDriftSeriesPoint x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/observations/{id} method: get operationId: getDriftObservation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/observations/{id}/annotations method: get operationId: listDriftAnnotationsByObservation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/annotations/{id} method: get operationId: getDriftAnnotation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/drift/entities/{kind}/{entity_id}/observations method: get operationId: listDriftObservationsByEntity x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/fail_mode_policies/{id} method: get operationId: getFailModePolicy x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/fail_mode_policies/{id}/versions method: get operationId: listFailModePolicyVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/fail_mode_policies/{id}/versions/{version} method: get operationId: getFailModePolicyVersion x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/escalation_targets method: get operationId: listEscalationTargets x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/escalation_targets/{id} method: get operationId: getEscalationTarget x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/escalation_targets/{id}/versions method: get operationId: listEscalationTargetVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/escalation_targets/{id}/versions/{version} method: get operationId: getEscalationTargetVersion x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none