generated: '2026-07-15' method: generated source: openapi/port-openapi.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: 110 by_action_class: connected: 39 acting: 71 by_consequence: read: 39 write: 71 human_in_the_loop_required: 0 operations: - path: /v1/blueprints/{blueprint_identifier}/permissions method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:blueprints token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/permissions method: patch 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/blueprints/{blueprint_identifier}/permissions/simulate method: post 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/pages/{page_identifier}/permissions method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/pages/{page_identifier}/permissions method: patch 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/auth/access_token method: post 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/blueprints/{blueprint_identifier}/entities method: post 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/blueprints/{blueprint_identifier}/entities method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:entities token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/entities/bulk method: post 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/blueprints/{blueprint_identifier}/entities/{entity_identifier} method: patch 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/blueprints/{blueprint_identifier}/entities/{entity_identifier} method: put 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/blueprints/{blueprint_identifier}/entities/{entity_identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:entities token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/entities/{entity_identifier} method: delete 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/blueprints/{blueprint_identifier}/entities-count method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/all-entities method: delete 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/blueprints/{blueprint_identifier}/bulk/entities/delete method: post 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/entities/search method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - read:entities audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints/{blueprint_identifier}/entities/search method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - read:entities audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/entities/aggregate method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - read:entities audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/entities/aggregate-over-time method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - read:entities audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/entities/properties-history method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - read:entities audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:blueprints token: max-ttl: 3600 audit: none - path: /v1/blueprints method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:blueprints audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints/{identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:blueprints token: max-ttl: 3600 audit: none - path: /v1/blueprints/{identifier} method: put 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/blueprints/{identifier} method: patch 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/blueprints/{identifier} method: delete 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/blueprints/{blueprint_identifier}/properties/{property_identifier}/rename method: patch 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/blueprints/{blueprint_identifier}/mirror/{property_identifier}/rename method: patch 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/blueprints/{blueprint_identifier}/relations/{relation_identifier}/rename method: patch 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/actions method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:actions audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/actions method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:actions token: max-ttl: 3600 audit: none - path: /v1/actions/{action_identifier} method: put x-agentic-access: action-class: acting consequence: write subject: required scope: - update:actions audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/actions/{action_identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:actions token: max-ttl: 3600 audit: none - path: /v1/actions/{action_identifier} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:actions audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints/{blueprint_identifier}/actions method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:actions audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints/{blueprint_identifier}/actions method: put x-agentic-access: action-class: acting consequence: write subject: required scope: - update:actions audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints/{blueprint_identifier}/actions method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:actions token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/actions/{action_identifier} method: put x-agentic-access: action-class: acting consequence: write subject: required scope: - update:actions audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints/{blueprint_identifier}/actions/{action_identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:actions token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/actions/{action_identifier} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:actions audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/actions/{action_identifier}/runs method: post 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/actions/runs/{run_id} method: patch 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/actions/runs/{run_id} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:runs token: max-ttl: 3600 audit: none - path: /v1/actions/runs/{run_id}/approval method: patch 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/actions/runs method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:runs token: max-ttl: 3600 audit: none - path: /v1/actions/runs/{run_id}/logs method: post 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/actions/runs/{run_id}/logs method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/actions/runs/{run_id}/approvers method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:runs token: max-ttl: 3600 audit: none - path: /v1/pages method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/pages method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:pages audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/pages/{identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/pages/{identifier} method: patch 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/pages/{identifier} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:pages audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/pages/{identifier}/duplicate method: post 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/pages/{page_identifier}/widgets method: post 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/pages/{page_identifier}/widgets/{widget_id} method: patch 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/pages/{page_identifier}/widgets/{widget_id} method: delete 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/organization method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/organization method: put x-agentic-access: action-class: acting consequence: write subject: required scope: - update:organization audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/organization method: patch x-agentic-access: action-class: acting consequence: write subject: required scope: - update:organization audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/organization/secrets method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:secrets token: max-ttl: 3600 audit: none - path: /v1/organization/secrets method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:secrets audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/organization/secrets/{secret_name} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:secrets token: max-ttl: 3600 audit: none - path: /v1/organization/secrets/{secret_name} method: patch x-agentic-access: action-class: acting consequence: write subject: required scope: - update:secrets audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/organization/secrets/{secret_name} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:secrets audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/integration/metadata method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:integrations:basic token: max-ttl: 3600 audit: none - path: /v1/integration method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:integrations token: max-ttl: 3600 audit: none - path: /v1/integration/{identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:integrations token: max-ttl: 3600 audit: none - path: /v1/integration/{identifier} method: patch x-agentic-access: action-class: acting consequence: write subject: required scope: - update:integrations audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/integration/{identifier} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:integrations audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/integration/{identifier}/logs method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:integrations token: max-ttl: 3600 audit: none - path: /v1/integration/{identifier}/config method: patch x-agentic-access: action-class: acting consequence: write subject: required scope: - update:integrations audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/webhooks method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:integrations audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/webhooks method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:integrations token: max-ttl: 3600 audit: none - path: /v1/webhooks/{identifier} method: patch x-agentic-access: action-class: acting consequence: write subject: required scope: - update:integrations audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/webhooks/{identifier} method: put x-agentic-access: action-class: acting consequence: write subject: required scope: - update:integrations audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/webhooks/{identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:integrations token: max-ttl: 3600 audit: none - path: /v1/webhooks/{identifier} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:integrations audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/webhooks/metadata method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:integrations:basic token: max-ttl: 3600 audit: none - path: /v1/audit-log method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:audit-log token: max-ttl: 3600 audit: none - path: /v1/teams method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:teams token: max-ttl: 3600 audit: none - path: /v1/teams method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:teams audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/teams/{name} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:teams token: max-ttl: 3600 audit: none - path: /v1/teams/{name} method: patch x-agentic-access: action-class: acting consequence: write subject: required scope: - update:teams audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/teams/{name} method: put x-agentic-access: action-class: acting consequence: write subject: required scope: - update:teams audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/teams/{name} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:teams audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/users method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:users token: max-ttl: 3600 audit: none - path: /v1/users/invite method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - create:users audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/users/{user_email} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:users token: max-ttl: 3600 audit: none - path: /v1/users/{user_email} method: patch x-agentic-access: action-class: acting consequence: write subject: required scope: - update:users audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/users/{user_email} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - delete:users audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/apps method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:apps token: max-ttl: 3600 audit: none - path: /v1/apps/{id}/rotate-secret method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - update:apps audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/apps/{id} method: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - update:apps audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/apps/{id} method: put x-agentic-access: action-class: acting consequence: write subject: required scope: - update:apps audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/rotate-credentials/{user_email} method: post x-agentic-access: action-class: acting consequence: write subject: required scope: - update:users audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/blueprints/{blueprint_identifier}/scorecards method: post 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/blueprints/{blueprint_identifier}/scorecards method: put 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/blueprints/{blueprint_identifier}/scorecards method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:scorecards token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/scorecards/{scorecard_identifier} method: put 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/blueprints/{blueprint_identifier}/scorecards/{scorecard_identifier} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:scorecards token: max-ttl: 3600 audit: none - path: /v1/blueprints/{blueprint_identifier}/scorecards/{scorecard_identifier} method: delete 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/scorecards method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:scorecards token: max-ttl: 3600 audit: none - path: /v1/migrations method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:blueprints token: max-ttl: 3600 audit: none - path: /v1/migrations method: post 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/migrations/{migration_id} method: get x-agentic-access: action-class: connected consequence: read subject: optional scope: - read:blueprints token: max-ttl: 3600 audit: none - path: /v1/migrations/{migration_id}/cancel method: post 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/actions/{action_identifier}/permissions method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/actions/{action_identifier}/permissions method: patch 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