Zendesk · Agentic Access

Zendesk Agentic Access

x-agentic-access generated

Zendesk exposes 595 API operations that an AI agent could call, of which 294 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: 301 read, 257 write, 26 physical, and 11 safety-critical.

11 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.

ChatCRMHelp CenterSellSupportT1TalkTicketingTickets
Operations: 595 Acting: 294 Human-in-the-loop: 11 Method: generated

By consequence

read 301 write 257 physical 26 safety-critical 11

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 /api/v2/oauth/tokens/{oauth_token_id} safety-critical required
POST /api/v2/routing/agents/instance_values/job safety-critical required
POST /api/v2/routing/agents/{user_id}/instance_values safety-critical required
POST /api/v2/routing/attributes safety-critical required
PUT /api/v2/routing/attributes/{attribute_id} safety-critical required
DELETE /api/v2/routing/attributes/{attribute_id} safety-critical required
POST /api/v2/routing/attributes/{attribute_id}/values safety-critical required
PATCH /api/v2/routing/attributes/{attribute_id}/values/{attribute_value_id} safety-critical required
DELETE /api/v2/routing/attributes/{attribute_id}/values/{attribute_value_id} safety-critical required
POST /api/v2/routing/tickets/{ticket_id}/instance_values safety-critical required
POST /api/v2/routing/tickets/{ticket_id}/instance_values safety-critical required
PUT /api/v2/custom_objects/{custom_object_key}/fields/reorder physical conditional
POST /api/v2/group_memberships physical conditional
POST /api/v2/group_memberships/create_many physical conditional
DELETE /api/v2/group_memberships/destroy_many physical conditional
DELETE /api/v2/group_memberships/{group_membership_id} physical conditional
PUT /api/v2/group_slas/policies/reorder physical conditional
PUT /api/v2/organization_fields/reorder physical conditional
POST /api/v2/organization_memberships physical conditional
POST /api/v2/organization_memberships/create_many physical conditional
DELETE /api/v2/organization_memberships/destroy_many physical conditional
DELETE /api/v2/organization_memberships/{organization_membership_id} physical conditional
PATCH /api/v2/queues/order physical conditional
PUT /api/v2/slas/policies/reorder physical conditional
PUT /api/v2/ticket_fields/reorder physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-15'
method: generated
source: openapi/account-openapi-original.yml, openapi/accounts-openapi-original.yml, openapi/activities-openapi-original.yml,
  openapi/any-channel-openapi-original.yml, openapi/approval-workflow-instances-openapi-original.yml,
  openapi/assignables-openapi-original.yml, openapi/attachments-openapi-original.yml, openapi/audit-logs-openapi-original.yml,
  openapi/autocomplete-openapi-original.yml, openapi/automations-openapi-original.yml, openapi/bookmarks-openapi-original.yml,
  openapi/brand-agents-openapi-original.yml, openapi/brands-openapi-original.yml, openapi/channels-openapi-original.yml,
  openapi/chat-file-redactions-openapi-original.yml, openapi/chat-redactions-openapi-original.yml,
  openapi/comment-redactions-openapi-original.yml, openapi/custom-objects-openapi-original.yml,
  openapi/custom-roles-openapi-original.yml, openapi/custom-status-openapi-original.yml, openapi/custom-statuses-openapi-original.yml,
  openapi/deleted-tickets-openapi-original.yml, openapi/deleted-users-openapi-original.yml,
  openapi/deletion-schedules-openapi-original.yml, openapi/dynamic-content-openapi-original.yml,
  openapi/email-notifications-openapi-original.yml, openapi/group-memberships-openapi-original.yml,
  openapi/group-slas-openapi-original.yml, openapi/groups-openapi-original.yml, openapi/imports-openapi-original.yml,
  openapi/incremental-openapi-original.yml, openapi/job-statuses-openapi-original.yml, openapi/locales-openapi-original.yml,
  openapi/macros-openapi-original.yml, openapi/oauth-openapi-original.yml, openapi/object-layouts-openapi-original.yml,
  openapi/organization-fields-openapi-original.yml, openapi/organization-memberships-openapi-original.yml,
  openapi/organization-merges-openapi-original.yml, openapi/organization-subscriptions-openapi-original.yml,
  openapi/organizations-openapi-original.yml, openapi/problems-openapi-original.yml, openapi/push-notification-devices-openapi-original.yml,
  openapi/queues-openapi-original.yml, openapi/recipient-addresses-openapi-original.yml, openapi/relationships-openapi-original.yml,
  openapi/requests-openapi-original.yml, openapi/resource-collections-openapi-original.yml,
  openapi/routing-openapi-original.yml, openapi/satisfaction-ratings-openapi-original.yml, openapi/satisfaction-reasons-openapi-original.yml,
  openapi/search-openapi-original.yml, openapi/sessions-openapi-original.yml, openapi/sharing-agreements-openapi-original.yml,
  openapi/skips-openapi-original.yml, openapi/slas-openapi-original.yml, openapi/suspended-tickets-openapi-original.yml,
  openapi/tags-openapi-original.yml, openapi/target-failures-openapi-original.yml, openapi/target-type-openapi-original.yml,
  openapi/targets-openapi-original.yml, openapi/ticket-audits-openapi-original.yml, openapi/ticket-content-pins-openapi-original.yml,
  openapi/ticket-fields-openapi-original.yml, openapi/ticket-form-statuses-openapi-original.yml,
  openapi/ticket-forms-openapi-original.yml, openapi/ticket-metrics-openapi-original.yml, openapi/tickets-openapi-original.yml,
  openapi/trigger-categories-openapi-original.yml, openapi/triggers-openapi-original.yml, openapi/uploads-openapi-original.yml,
  openapi/user-fields-openapi-original.yml, openapi/users-openapi-original.yml, openapi/views-openapi-original.yml,
  openapi/workspaces-openapi-original.yml, openapi/zendesk-support-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: 595
  by_action_class:
    connected: 301
    acting: 294
  by_consequence:
    read: 301
    write: 257
    physical: 26
    safety-critical: 11
  human_in_the_loop_required: 11
operations:
- path: /api/v2/account/settings
  method: get
  operationId: ShowAccountSettings
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/account/settings
  method: put
  operationId: UpdateAccountSettings
  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: /api/v2/accounts
  method: post
  operationId: CreateTrialAccount
  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: /api/v2/accounts/available
  method: get
  operationId: VerifySubdomainAvailability
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts
  method: post
  operationId: CreateTrialAccount
  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: /api/v2/accounts/available
  method: get
  operationId: VerifySubdomainAvailability
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/activities
  method: get
  operationId: ListActivities
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/activities/{activity_id}
  method: get
  operationId: ShowActivity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/activities/count
  method: get
  operationId: CountActivities
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/any_channel/channelback/report_error
  method: post
  operationId: ReportChannelbackError
  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: /api/v2/any_channel/push
  method: post
  operationId: PushContentToSupport
  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: /api/v2/any_channel/validate_token
  method: post
  operationId: ValidateToken
  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: /api/v2/approval_workflow_instances/{approval_workflow_instance_id}/approval_requests/{approval_request_id}
  method: get
  operationId: ShowApprovalRequest
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/approval_workflow_instances/{approval_workflow_instance_id}/approval_requests/{approval_request_id}/decision
  method: patch
  operationId: UpdateDecisionApprovalRequest
  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: /api/v2/approval_workflow_instances/{approval_workflow_instance_id}/approval_requests/search
  method: post
  operationId: SearchApprovals
  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: /api/lotus/assignables/autocomplete.json
  method: get
  operationId: ListAssigneeFieldAssignableGroupsAndAgentsSearch
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/lotus/assignables/groups.json
  method: get
  operationId: ListAssigneeFieldAssignableGroups
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/lotus/assignables/groups/{group_id}/agents.json
  method: get
  operationId: ListAssigneeFieldAssignableGroupAgents
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/attachments/{attachment_id}
  method: get
  operationId: ShowAttachment
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/attachments/{attachment_id}
  method: put
  operationId: UpdateAttachment
  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: /api/v2/macros/{macro_id}/attachments
  method: get
  operationId: ListMacroAttachments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/macros/{macro_id}/attachments
  method: post
  operationId: CreateAssociatedMacroAttachment
  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: /api/v2/macros/attachments
  method: post
  operationId: CreateMacroAttachment
  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: /api/v2/macros/attachments/{attachment_id}
  method: get
  operationId: ShowMacroAttachment
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/suspended_tickets/attachments
  method: post
  operationId: SuspendedTicketsAttachments
  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: /api/v2/tickets/{ticket_id}/comments/{comment_id}/attachments/{attachment_id}/redact
  method: put
  operationId: RedactCommentAttachment
  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: /api/v2/audit_logs
  method: get
  operationId: ListAuditLogs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/audit_logs/{audit_log_id}
  method: get
  operationId: ShowAuditLog
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/audit_logs/export
  method: post
  operationId: ExportAuditLogs
  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: /api/lotus/assignables/autocomplete.json
  method: get
  operationId: ListAssigneeFieldAssignableGroupsAndAgentsSearch
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/autocomplete/tags
  method: get
  operationId: AutocompleteTags
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/records/autocomplete
  method: get
  operationId: AutocompleteCustomObjectRecordSearch
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/organizations/autocomplete
  method: get
  operationId: AutocompleteOrganizations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/problems/autocomplete
  method: post
  operationId: AutocompleteProblems
  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: /api/v2/users/autocomplete
  method: get
  operationId: AutocompleteUsers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/automations
  method: get
  operationId: ListAutomations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/automations
  method: post
  operationId: CreateAutomation
  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: /api/v2/automations/{automation_id}
  method: get
  operationId: ShowAutomation
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/automations/{automation_id}
  method: put
  operationId: UpdateAutomation
  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: /api/v2/automations/{automation_id}
  method: delete
  operationId: DeleteAutomation
  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: /api/v2/automations/active
  method: get
  operationId: ListActiveAutomations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/automations/destroy_many
  method: delete
  operationId: BulkDeleteAutomations
  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: /api/v2/automations/search
  method: get
  operationId: SearchAutomations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/automations/update_many
  method: put
  operationId: UpdateManyAutomations
  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: /api/v2/bookmarks
  method: get
  operationId: ListBookmarks
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/bookmarks
  method: post
  operationId: CreateBookmark
  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: /api/v2/bookmarks/{bookmark_id}
  method: delete
  operationId: DeleteBookmark
  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: /api/v2/brand_agents
  method: get
  operationId: ListBrandAgents
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/brand_agents/{brand_agent_id}
  method: get
  operationId: ShowBrandAgentById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/brands
  method: get
  operationId: ListBrands
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/brands
  method: post
  operationId: CreateBrand
  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: /api/v2/brands/{brand_id}
  method: get
  operationId: ShowBrand
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/brands/{brand_id}
  method: put
  operationId: UpdateBrand
  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: /api/v2/brands/{brand_id}
  method: delete
  operationId: DeleteBrand
  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: /api/v2/brands/{brand_id}/check_host_mapping
  method: get
  operationId: CheckHostMappingValidityForExistingBrand
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/brands/check_host_mapping
  method: get
  operationId: CheckHostMappingValidity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/channels/twitter/monitored_twitter_handles
  method: get
  operationId: ListMonitoredTwitterHandles
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/channels/twitter/monitored_twitter_handles/{monitored_twitter_handle_id}
  method: get
  operationId: ShowMonitoredTwitterHandle
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/channels/twitter/tickets
  method: post
  operationId: CreateTicketFromTweet
  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: /api/v2/channels/twitter/tickets/{comment_id}/statuses
  method: get
  operationId: GettingTwicketStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/channels/voice/agents/{agent_id}/tickets/{ticket_id}/display
  method: post
  operationId: OpenTicketInAgentBrowser
  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: /api/v2/channels/voice/agents/{agent_id}/users/{user_id}/display
  method: post
  operationId: OpenUsersProfileInAgentBrowser
  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: /api/v2/channels/voice/tickets
  method: post
  operationId: CreateTicketOrVoicemailTicket
  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: /api/v2/chat_file_redactions/{ticket_id}
  method: put
  operationId: RedactChatCommentAttachment
  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: /api/v2/chat_redactions/{ticket_id}
  method: put
  operationId: RedactChatComment
  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: /api/v2/comment_redactions/{ticket_comment_id}
  method: put
  operationId: RedactTicketCommentInAgentWorkspace
  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: /api/v2/custom_objects
  method: get
  operationId: ListCustomObjects
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects
  method: post
  operationId: CreateCustomObject
  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: /api/v2/custom_objects/{custom_object_key}
  method: get
  operationId: ShowCustomObject
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}
  method: patch
  operationId: UpdateCustomObject
  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: /api/v2/custom_objects/{custom_object_key}
  method: delete
  operationId: DeleteCustomObject
  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: /api/v2/custom_objects/{custom_object_key}/fields
  method: get
  operationId: ListCustomObjectFields
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/fields
  method: post
  operationId: CreateCustomObjectField
  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: /api/v2/custom_objects/{custom_object_key}/fields/{custom_object_field_key_or_id}
  method: get
  operationId: ShowCustomObjectField
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/fields/{custom_object_field_key_or_id}
  method: patch
  operationId: UpdateCustomObjectField
  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: /api/v2/custom_objects/{custom_object_key}/fields/{custom_object_field_key_or_id}
  method: delete
  operationId: DeleteCustomObjectField
  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: /api/v2/custom_objects/{custom_object_key}/fields/reorder
  method: put
  operationId: ReorderCustomObjectFields
  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: /api/v2/custom_objects/{custom_object_key}/jobs
  method: post
  operationId: CustomObjectRecordBulkJobs
  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: /api/v2/custom_objects/{custom_object_key}/limits/field_limit
  method: get
  operationId: CustomObjectFieldsLimit
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/records
  method: get
  operationId: ListCustomObjectRecords
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/records
  method: post
  operationId: CreateCustomObjectRecord
  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: /api/v2/custom_objects/{custom_object_key}/records
  method: patch
  operationId: UpsertCustomObjectRecordByExternalIdOrName
  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: /api/v2/custom_objects/{custom_object_key}/records
  method: delete
  operationId: DeleteCustomObjectRecordByExternalIdOrName
  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: /api/v2/custom_objects/{custom_object_key}/records/{custom_object_record_id}
  method: get
  operationId: ShowCustomObjectRecord
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/records/{custom_object_record_id}
  method: patch
  operationId: UpdateCustomObjectRecord
  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: /api/v2/custom_objects/{custom_object_key}/records/{custom_object_record_id}
  method: delete
  operationId: DeleteCustomObjectRecord
  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: /api/v2/custom_objects/{custom_object_key}/records/autocomplete
  method: get
  operationId: AutocompleteCustomObjectRecordSearch
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/records/count
  method: get
  operationId: CountCustomObjectRecords
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/records/search
  method: get
  operationId: SearchCustomObjectRecords
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/records/search
  method: post
  operationId: FilteredSearchCustomObjectRecords
  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: /api/v2/custom_objects/{custom_object_key}/triggers
  method: get
  operationId: ListObjectTriggers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/triggers
  method: post
  operationId: CreateObjectTrigger
  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: /api/v2/custom_objects/{custom_object_key}/triggers/{trigger_id}
  method: get
  operationId: GetObjectTrigger
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/custom_objects/{custom_object_key}/triggers/{trigger_id}
  method: put
  operationId: UpdateObjectTrigger
  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: requir

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