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.
generated: '2026-07-15'
method: generated
source: openapi/atlassian-admin-api-openapi.yml, openapi/atlassian-atlassian-connect-1-app-module--openapi-original.yml,
openapi/atlassian-bitbucket-addon-api-openapi.yml, openapi/atlassian-bitbucket-hook-events-api-openapi.yml,
openapi/atlassian-bitbucket-pull-requests-api-openapi.yml, openapi/atlassian-bitbucket-repositories-api-openapi.yml,
openapi/atlassian-bitbucket-snippets-api-openapi.yml, openapi/atlassian-bitbucket-teams-api-openapi.yml,
openapi/atlassian-bitbucket-user-api-openapi.yml, openapi/atlassian-bitbucket-workspaces-api-openapi.yml,
openapi/atlassian-confluence-analytics-api-openapi.yml, openapi/atlassian-confluence-audit-api-openapi.yml,
openapi/atlassian-confluence-connect-app-module-api-openapi.yml, openapi/atlassian-confluence-content-api-openapi.yml,
openapi/atlassian-confluence-content-body-api-openapi.yml, openapi/atlassian-confluence-content-states-api-openapi.yml,
openapi/atlassian-confluence-group-api-openapi.yml, openapi/atlassian-confluence-inline-tasks-api-openapi.yml,
openapi/atlassian-confluence-longtask-api-openapi.yml, openapi/atlassian-confluence-relation-api-openapi.yml,
openapi/atlassian-confluence-search-api-openapi.yml, openapi/atlassian-confluence-settings-api-openapi.yml,
openapi/atlassian-confluence-space-api-openapi.yml, openapi/atlassian-confluence-template-api-openapi.yml,
openapi/atlassian-confluence-user-api-openapi.yml, openapi/atlassian-hook-events--openapi-original.yml,
openapi/atlassian-pullrequests-selected-user--openapi-original.yml, openapi/atlassian-repositories--openapi-original.yml,
openapi/atlassian-rest-api-3-announcementbanner--openapi-original.yml, openapi/atlassian-rest-api-3-app--openapi-original.yml,
openapi/atlassian-rest-api-3-application-properties--openapi-original.yml, openapi/atlassian-rest-api-3-applicationrole--openapi-original.yml,
openapi/atlassian-rest-api-3-attachment--openapi-original.yml, openapi/atlassian-rest-api-3-auditing--openapi-original.yml,
openapi/atlassian-rest-api-3-avatar--openapi-original.yml, openapi/atlassian-rest-api-3-comment--openapi-original.yml,
openapi/atlassian-rest-api-3-component--openapi-original.yml, openapi/atlassian-rest-api-3-configuration--openapi-original.yml,
openapi/atlassian-rest-api-3-customfieldoption--openapi-original.yml, openapi/atlassian-rest-api-3-dashboard--openapi-original.yml,
openapi/atlassian-rest-api-3-data-policy--openapi-original.yml, openapi/atlassian-rest-api-3-expression--openapi-original.yml,
openapi/atlassian-rest-api-3-field--openapi-original.yml, openapi/atlassian-rest-api-3-fieldconfiguration--openapi-original.yml,
openapi/atlassian-rest-api-3-fieldconfigurationscheme--openapi-original.yml, openapi/atlassian-rest-api-3-filter--openapi-original.yml,
openapi/atlassian-rest-api-3-group--openapi-original.yml, openapi/atlassian-rest-api-3-groups--openapi-original.yml,
openapi/atlassian-rest-api-3-instance--openapi-original.yml, openapi/atlassian-rest-api-3-issue--openapi-original.yml,
openapi/atlassian-rest-api-3-issuelink--openapi-original.yml, openapi/atlassian-rest-api-3-issuelinktype--openapi-original.yml,
openapi/atlassian-rest-api-3-issues--openapi-original.yml, openapi/atlassian-rest-api-3-issuesecurityschemes--openapi-original.yml,
openapi/atlassian-rest-api-3-issuetype--openapi-original.yml, openapi/atlassian-rest-api-3-issuetypescheme--openapi-original.yml,
openapi/atlassian-rest-api-3-issuetypescreenscheme--openapi-original.yml, openapi/atlassian-rest-api-3-jql--openapi-original.yml,
openapi/atlassian-rest-api-3-license--openapi-original.yml, openapi/atlassian-rest-api-3-mypreferences--openapi-original.yml,
openapi/atlassian-rest-api-3-notificationscheme--openapi-original.yml, openapi/atlassian-rest-api-3-permissions--openapi-original.yml,
openapi/atlassian-rest-api-3-permissionscheme--openapi-original.yml, openapi/atlassian-rest-api-3-priority--openapi-original.yml,
openapi/atlassian-rest-api-3-project--openapi-original.yml, openapi/atlassian-rest-api-3-projectcategory--openapi-original.yml,
openapi/atlassian-rest-api-3-projectvalidate--openapi-original.yml, openapi/atlassian-rest-api-3-resolution--openapi-original.yml,
openapi/atlassian-rest-api-3-role--openapi-original.yml, openapi/atlassian-rest-api-3-screens--openapi-original.yml,
openapi/atlassian-rest-api-3-screenscheme--openapi-original.yml, openapi/atlassian-rest-api-3-search--openapi-original.yml,
openapi/atlassian-rest-api-3-securitylevel--openapi-original.yml, openapi/atlassian-rest-api-3-settings--openapi-original.yml,
openapi/atlassian-rest-api-3-status--openapi-original.yml, openapi/atlassian-rest-api-3-statuscategory--openapi-original.yml,
openapi/atlassian-rest-api-3-statuses--openapi-original.yml, openapi/atlassian-rest-api-3-task--openapi-original.yml,
openapi/atlassian-rest-api-3-uimodifications--openapi-original.yml, openapi/atlassian-rest-api-3-universal-avatar--openapi-original.yml,
openapi/atlassian-rest-api-3-user--openapi-original.yml, openapi/atlassian-rest-api-3-users--openapi-original.yml,
openapi/atlassian-rest-api-3-version--openapi-original.yml, openapi/atlassian-rest-api-3-webhook--openapi-original.yml,
openapi/atlassian-rest-api-3-workflow--openapi-original.yml, openapi/atlassian-rest-api-3-workflows--openapi-original.yml,
openapi/atlassian-rest-api-3-workflowscheme--openapi-original.yml, openapi/atlassian-rest-api-3-worklog--openapi-original.yml,
openapi/atlassian-rest-atlassian-connect-1-addons--openapi-original.yml, openapi/atlassian-rest-atlassian-connect-1-app--openapi-original.yml,
openapi/atlassian-rest-atlassian-connect-1-migration--openapi-original.yml, openapi/atlassian-rest-forge-1-app--openapi-original.yml,
openapi/atlassian-snippets--openapi-original.yml, openapi/atlassian-teams--openapi-original.yml,
openapi/atlassian-user-openapi-original.yml, openapi/atlassian-wiki-rest-api-analytics--openapi-original.yml,
openapi/atlassian-wiki-rest-api-audit--openapi-original.yml, openapi/atlassian-wiki-rest-api-content--openapi-original.yml,
openapi/atlassian-wiki-rest-api-content-states--openapi-original.yml, openapi/atlassian-wiki-rest-api-contentbody--openapi-original.yml,
openapi/atlassian-wiki-rest-api-group--openapi-original.yml, openapi/atlassian-wiki-rest-api-inlinetasks--openapi-original.yml,
openapi/atlassian-wiki-rest-api-longtask--openapi-original.yml, openapi/atlassian-wiki-rest-api-relation--openapi-original.yml,
openapi/atlassian-wiki-rest-api-search--openapi-original.yml, openapi/atlassian-wiki-rest-api-settings--openapi-original.yml,
openapi/atlassian-wiki-rest-api-space--openapi-original.yml, openapi/atlassian-wiki-rest-api-template--openapi-original.yml,
openapi/atlassian-wiki-rest-api-user--openapi-original.yml, openapi/atlassian-workspaces--openapi-original.yml,
openapi/bitbucket-openapi-original.yml, openapi/confluence-openapi-original.yml, openapi/jira-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: 2550
by_action_class:
connected: 1260
acting: 1290
by_consequence:
read: 1260
write: 1218
safety-critical: 26
physical: 46
human_in_the_loop_required: 26
operations:
- path: /v1/orgs
method: get
operationId: getOrganizations
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}
method: get
operationId: getOrganizationById
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/users
method: get
operationId: getOrganizationUsers
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v2/orgs/{orgId}/directories/{directoryId}/users
method: get
operationId: getDirectoryUsers
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}
method: get
operationId: getDirectoryUser
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}
method: delete
operationId: removeDirectoryUser
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: /v2/orgs/{orgId}/directories/{directoryId}/users/count
method: get
operationId: getDirectoryUserCount
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v2/orgs/{orgId}/users/invite
method: post
operationId: inviteUsers
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: /v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}/suspend
method: post
operationId: suspendUser
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: /v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}/restore
method: post
operationId: restoreUser
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/orgs/{orgId}/users/{userId}/roles/assign
method: post
operationId: grantUserAccess
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/orgs/{orgId}/users/{userId}/roles/revoke
method: post
operationId: revokeUserAccess
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: /v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}/role-assignments
method: get
operationId: getUserRoleAssignments
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/users/{userId}/role-assignments/assign
method: post
operationId: assignOrganizationRole
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/orgs/{orgId}/users/{userId}/role-assignments/revoke
method: post
operationId: revokeOrganizationRole
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/orgs/{orgId}/domains
method: get
operationId: getOrganizationDomains
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/domains/{domainId}
method: get
operationId: getDomainById
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/policies
method: get
operationId: getOrganizationPolicies
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/policies/{policyId}
method: get
operationId: getPolicyById
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/policies/{policyId}
method: put
operationId: updatePolicy
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/orgs/{orgId}/events
method: get
operationId: getOrganizationEvents
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/events/{eventId}
method: get
operationId: getEventById
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/orgs/{orgId}/groups
method: get
operationId: getOrganizationGroups
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /atlassian-connect/1/app/module/dynamic
method: get
operationId: atlassianGetmodules
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /atlassian-connect/1/app/module/dynamic
method: post
operationId: atlassianRegistermodules
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: /atlassian-connect/1/app/module/dynamic
method: delete
operationId: atlassianRemovemodules
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: /addon/linkers
method: get
operationId: getAddonLinkers
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /addon/linkers/{linker_key}
method: get
operationId: getAddonLinkersLinkerKey
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /addon/linkers/{linker_key}/values
method: delete
operationId: deleteAddonLinkersLinkerKeyValues
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: /addon/linkers/{linker_key}/values
method: get
operationId: getAddonLinkersLinkerKeyValues
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /addon/linkers/{linker_key}/values
method: post
operationId: postAddonLinkersLinkerKeyValues
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: /addon/linkers/{linker_key}/values
method: put
operationId: putAddonLinkersLinkerKeyValues
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: /addon/linkers/{linker_key}/values/{value_id}
method: delete
operationId: deleteAddonLinkersLinkerKeyValuesValueId
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: /addon/linkers/{linker_key}/values/{value_id}
method: get
operationId: getAddonLinkersLinkerKeyValuesValueId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /hook_events/{subject_type}
method: get
operationId: getHookEvents
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /pullrequests/{selected_user}
method: get
operationId: listPullRequestsForUser
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests
method: get
operationId: listPullRequests
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests
method: post
operationId: createPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/activity
method: get
operationId: listPullRequestActivityLog
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}
method: get
operationId: getPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}
method: put
operationId: updatePullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/activity
method: get
operationId: listPullRequestActivityLog
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/approve
method: delete
operationId: unapprovePullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/approve
method: post
operationId: approvePullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments
method: get
operationId: listCommentsOnPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments
method: post
operationId: createCommentOnPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}
method: delete
operationId: deleteCommentOnPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}
method: get
operationId: getCommentOnPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}
method: put
operationId: updateCommentOnPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}/resolve
method: delete
operationId: reopenCommentThread
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}/resolve
method: post
operationId: resolveCommentThread
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/commits
method: get
operationId: listCommitsOnPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/decline
method: post
operationId: declinePullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diff
method: get
operationId: listChangesInPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diffstat
method: get
operationId: getTheDiffStatForPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge
method: post
operationId: mergePullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge/task-status/{task_id}
method: get
operationId: getTheMergeTaskStatusForPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/patch
method: get
operationId: getThePatchForPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/request-changes
method: delete
operationId: removeChangeRequestForPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/request-changes
method: post
operationId: requestChangesForPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest:write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/statuses
method: get
operationId: listCommitStatusesForPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/tasks
method: get
operationId: listTasksOnPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/tasks
method: post
operationId: createTaskOnPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/tasks/{task_id}
method: delete
operationId: deleteTaskOnPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/tasks/{task_id}
method: get
operationId: getTaskOnPullRequest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- pullrequest
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/tasks/{task_id}
method: put
operationId: updateTaskOnPullRequest
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- pullrequest
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/properties/{app_key}/{property_name}
method: put
operationId: updatePullRequestApplicationProperty
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: /repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/properties/{app_key}/{property_name}
method: delete
operationId: deletePullRequestApplicationProperty
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: /repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/properties/{app_key}/{property_name}
method: get
operationId: getPullRequestApplicationProperty
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}
method: get
operationId: listRepositoriesInWorkspace
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- repository
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}
method: delete
operationId: deleteRepository
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- repository:delete
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}
method: get
operationId: getRepository
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- repository
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}
method: post
operationId: createRepository
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- repository:admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}
method: put
operationId: updateRepository
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- repository:admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /repositories/{workspace}/{repo_slug}/branch-restrictions
method: get
operationId: listBranchRestrictions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- repository:admin
token:
max-ttl: 3600
audit: none
- path: /repositories/{workspace}/{repo_slug}/branch-restrictions
method: post
operationId: createBranchRestrictionRule
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- repository:admin
audience: null
# --- truncated at 32 KB (892 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/agentic-access/atlassian-agentic-access.yml
Every access contract here is available over the APIs.io API and to AI agents over MCP. Agentic Access is not yet its own endpoint on the v1 API. Reach it through catalog search and the tag graph, or the MCP server.