Snyk · Agentic Access

Snyk Agentic Access

x-agentic-access generated

Snyk exposes 277 API operations that an AI agent could call, of which 134 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.

By consequence: 143 read, 103 write, 22 physical, and 9 safety-critical.

9 operations are classed safety-critical and should require human-in-the-loop approval at runtime.

Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.

SecurityDevSecOpsVulnerability ManagementApplication SecuritySCASASTContainer SecurityIaC
Operations: 277 Acting: 134 Human-in-the-loop: 9 Method: generated

By consequence

read 143 write 103 physical 22 safety-critical 9

Highest-consequence actions

The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.

MethodPathConsequenceHuman-in-loop
DELETE /groups/{group_id}/apps/installs/{install_id} safety-critical required
DELETE /orgs/{org_id}/app_bots/{bot_id} safety-critical required
DELETE /orgs/{org_id}/apps/installs/{install_id} safety-critical required
PATCH /orgs/{org_id}/settings/sast safety-critical required
DELETE /orgs/{org_id}/slack_app/{bot_id}/projects/{project_id} safety-critical required
POST /orgs/{org_id}/slack_app/{bot_id}/projects/{project_id} safety-critical required
DELETE /self/apps/installs/{install_id} safety-critical required
DELETE /self/apps/{app_id} safety-critical required
DELETE /self/apps/{app_id}/sessions/{session_id} safety-critical required
POST /groups/{group_id}/memberships physical conditional
DELETE /groups/{group_id}/memberships/{membership_id} physical conditional
PATCH /groups/{group_id}/memberships/{membership_id} physical conditional
DELETE /orgs/{org_id}/collections/{collection_id}/relationships/projects physical conditional
POST /orgs/{org_id}/collections/{collection_id}/relationships/projects physical conditional
POST /orgs/{org_id}/memberships physical conditional
DELETE /orgs/{org_id}/memberships/{membership_id} physical conditional
PATCH /orgs/{org_id}/memberships/{membership_id} physical conditional
POST /tenants/{tenant_id}/brokers/installs/{install_id}/deployments physical conditional
DELETE /tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id} physical conditional
PATCH /tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id} physical conditional
DELETE /tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections physical conditional
POST /tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections physical conditional
DELETE /tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections/{connection_id} physical conditional
PATCH /tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections/{connection_id} physical conditional
POST /tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections/{connection_id}/bulk_migration physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-15'
method: generated
source: openapi/snyk-rest-openapi.json
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: 277
  by_action_class:
    connected: 143
    acting: 134
  by_consequence:
    read: 143
    write: 103
    safety-critical: 9
    physical: 22
  human_in_the_loop_required: 9
operations:
- path: /custom_base_images
  method: get
  operationId: getCustomBaseImages
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /custom_base_images
  method: post
  operationId: createCustomBaseImage
  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: /custom_base_images/{custombaseimage_id}
  method: delete
  operationId: deleteCustomBaseImage
  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: /custom_base_images/{custombaseimage_id}
  method: get
  operationId: getCustomBaseImage
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /custom_base_images/{custombaseimage_id}
  method: patch
  operationId: updateCustomBaseImage
  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: /groups
  method: get
  operationId: listGroups
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}
  method: get
  operationId: getGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/apps/installs
  method: get
  operationId: getAppInstallsForGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/apps/installs
  method: post
  operationId: createGroupAppInstall
  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: /groups/{group_id}/apps/installs/{install_id}
  method: delete
  operationId: deleteGroupAppInstallById
  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: /groups/{group_id}/apps/installs/{install_id}/secrets
  method: post
  operationId: updateGroupAppInstallSecret
  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: /groups/{group_id}/assets/repository/aliases
  method: delete
  operationId: deleteAliasesInGroup
  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: /groups/{group_id}/assets/repository/aliases
  method: get
  operationId: listRepositoryAliasesInGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/assets/repository/aliases
  method: post
  operationId: createAliasInGroup
  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: /groups/{group_id}/assets/search
  method: post
  operationId: listAssets
  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: /groups/{group_id}/assets/{asset_id}
  method: get
  operationId: getAsset
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/assets/{asset_id}
  method: patch
  operationId: updateAsset
  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: /groups/{group_id}/assets/{asset_id}/relationships/assets
  method: get
  operationId: listRelatedAssets
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/assets/{asset_id}/relationships/projects
  method: get
  operationId: listAssetProjects
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/audit_logs/search
  method: get
  operationId: listGroupAuditLogs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/export
  method: post
  operationId: createGroupExport
  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: /groups/{group_id}/export/{export_id}
  method: get
  operationId: getGroupExport
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets
  method: get
  operationId: listAssetsGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets
  method: patch
  operationId: updateAssetsBulkGroup
  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: /groups/{group_id}/inventory/assets/filters
  method: get
  operationId: getFilterFieldsGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets/filters/{filter_id}/values
  method: get
  operationId: getFilterValuesGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets/groups
  method: get
  operationId: getGroupFieldsGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets/groups/{group_field_id}/values
  method: get
  operationId: getGroupValuesGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets/searches
  method: post
  operationId: createAssetSearchGroup
  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: /groups/{group_id}/inventory/assets/searches/{search_id}/results
  method: get
  operationId: getAssetSearchResultsGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets/{asset_id}
  method: get
  operationId: getAssetGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets/{asset_id}
  method: patch
  operationId: updateAssetGroup
  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: /groups/{group_id}/inventory/assets/{asset_id}/relationships/projects
  method: get
  operationId: listAssetProjectsGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/inventory/assets/{asset_id}/relationships/targets
  method: get
  operationId: listAssetTargetsGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/issues
  method: get
  operationId: listGroupIssues
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/issues/{issue_id}
  method: get
  operationId: getGroupIssueByIssueID
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/jobs/export/{export_id}
  method: get
  operationId: getGroupExportJobStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/memberships
  method: get
  operationId: listGroupMemberships
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/memberships
  method: post
  operationId: createGroupMembership
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /groups/{group_id}/memberships/{membership_id}
  method: delete
  operationId: deleteGroupMembership
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /groups/{group_id}/memberships/{membership_id}
  method: patch
  operationId: updateGroupUserMembership
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /groups/{group_id}/org_memberships
  method: get
  operationId: listGroupUserOrgMemberships
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/orgs
  method: get
  operationId: listOrgsInGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/policies
  method: get
  operationId: listGroupPolicies
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/policies
  method: post
  operationId: createGroupPolicy
  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: /groups/{group_id}/policies/{policy_id}
  method: delete
  operationId: deleteGroupPolicy
  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: /groups/{group_id}/policies/{policy_id}
  method: patch
  operationId: updateGroupPolicy
  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: /groups/{group_id}/service_accounts
  method: get
  operationId: getManyGroupServiceAccount
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/service_accounts
  method: post
  operationId: createGroupServiceAccount
  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: /groups/{group_id}/service_accounts/{serviceaccount_id}
  method: delete
  operationId: deleteOneGroupServiceAccount
  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: /groups/{group_id}/service_accounts/{serviceaccount_id}
  method: get
  operationId: getOneGroupServiceAccount
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/service_accounts/{serviceaccount_id}
  method: patch
  operationId: updateGroupServiceAccount
  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: /groups/{group_id}/service_accounts/{serviceaccount_id}/secrets
  method: post
  operationId: updateServiceAccountSecret
  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: /groups/{group_id}/settings/iac
  method: get
  operationId: getIacSettingsForGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/settings/iac
  method: patch
  operationId: updateIacSettingsForGroup
  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: /groups/{group_id}/settings/opensource/broker
  method: delete
  operationId: deleteOpensourceBrokerSettingForGroup
  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: /groups/{group_id}/settings/opensource/broker
  method: get
  operationId: getOpensourceBrokerSettingForGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/settings/opensource/broker
  method: post
  operationId: enableOpensourceBrokerForGroup
  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: /groups/{group_id}/settings/pull_request_template
  method: delete
  operationId: deletePullRequestTemplate
  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: /groups/{group_id}/settings/pull_request_template
  method: get
  operationId: getPullRequestTemplate
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/settings/pull_request_template
  method: post
  operationId: createOrUpdatePullRequestTemplate
  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: /groups/{group_id}/sso_connections
  method: get
  operationId: listGroupSsoConnections
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/sso_connections/{sso_id}/users
  method: get
  operationId: listGroupSsoConnectionUsers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /groups/{group_id}/sso_connections/{sso_id}/users/{user_id}
  method: delete
  operationId: deleteUser
  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: /groups/{group_id}/users/{id}
  method: patch
  operationId: updateUser
  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: /learn/catalog
  method: get
  operationId: listLearnCatalog
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /openapi
  method: get
  operationId: listAPIVersions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /openapi/{version}
  method: get
  operationId: getAPIVersion
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs
  method: get
  operationId: listOrgs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}
  method: get
  operationId: getOrg
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}
  method: patch
  operationId: updateOrg
  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: /orgs/{org_id}/ai_bom_jobs/{job_id}
  method: get
  operationId: getAiBomJob
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/ai_boms
  method: post
  operationId: createAiBom
  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: /orgs/{org_id}/ai_boms/upload
  method: post
  operationId: createAndUploadAiBom
  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: /orgs/{org_id}/ai_boms/{ai_bom_id}
  method: get
  operationId: getAiBom
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/app_bots
  method: get
  operationId: getAppBots
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/app_bots/{bot_id}
  method: delete
  operationId: deleteAppBot
  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: /orgs/{org_id}/apps
  method: get
  operationId: getApps
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/apps
  method: post
  operationId: createApp
  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: /orgs/{org_id}/apps/creations
  method: get
  operationId: getOrgApps
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/apps/creations
  method: post
  operationId: createOrgApp
  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: /orgs/{org_id}/apps/creations/{app_id}
  method: delete
  operationId: deleteAppByID
  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: /orgs/{org_id}/apps/creations/{app_id}
  method: get
  operationId: getAppByID
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/apps/creations/{app_id}
  method: patch
  operationId: updateAppCreationByID
  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: /orgs/{org_id}/apps/creations/{app_id}/secrets
  method: post
  operationId: manageAppCreationSecret
  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: /orgs/{org_id}/apps/installs
  method: get
  operationId: getAppInstallsForOrg
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/apps/installs
  method: post
  operationId: createOrgAppInstall
  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: /orgs/{org_id}/apps/installs/{install_id}
  method: delete
  operationId: deleteAppOrgInstallById
  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: /orgs/{org_id}/apps/installs/{install_id}/secrets
  method: post
  operationId: updateOrgAppInstallSecret
  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: /orgs/{org_id}/apps/{client_id}
  method: delete
  operationId: deleteApp
  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: /orgs/{org_id}/apps/{client_id}
  method: get
  operationId: getApp
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/apps/{client_id}
  method: patch
  operationId: updateApp
  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: /orgs/{org_id}/apps/{client_id}/secrets
  method: post
  operationId: manageSecrets
  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: /orgs/{org_id}/assets/repository/aliases
  method: delete
  operationId: deleteAliasesInOrg
  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: /orgs/{org_id}/assets/repository/aliases
  method: get
  operationId: listRepositoryAliasesInOrg
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/assets/repository/aliases
  method: post
  operationId: createAliasInOrg
  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: /orgs/{org_id}/audit_logs/search
  method: get
  operationId: listOrgAuditLogs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/brokers/connections
  method: get
  operationId: listBrokerConnectionsForOrg
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/cloud/environments
  method: get
  operationId: listEnvironments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/cloud/environments
  method: post
  operationId: createEnvironment
  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: /orgs/{org_id}/cloud/environments/{environment_id}
  method: delete
  operationId: deleteEnvironment
  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: /orgs/{org_id}/cloud/environments/{environment_id}
  method: patch
  operationId: updateEnvironment
  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: /orgs/{org_id}/cloud/permissions
  method: post
  operationId: getPermissions
  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: /orgs/{org_id}/cloud/resources
  method: get
  operationId: listResources
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/cloud/scans
  method: get
  operationId: listScan
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/cloud/scans
  method: post
  operationId: createScan
  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: /orgs/{org_id}/cloud/scans/{scan_id}
  method: get
  operationId: getScan
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/collections
  method: get
  operationId: getCollections
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /orgs/{org_id}/collections
  method: post
  operationId: createCollectio

# --- truncated at 32 KB (83 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/snyk/refs/heads/main/agentic-access/snyk-agentic-access.yml