generated: '2026-10-04' method: generated source: openapi/zoho-account-api-openapi.yml, openapi/zoho-accountattachment-api-openapi.yml, openapi/zoho-accountcomments-api-openapi.yml, openapi/zoho-accountcontactmappinginfo-api-openapi.yml, openapi/zoho-accountdeduplication-api-openapi.yml, openapi/zoho-accountfollowers-api-openapi.yml, openapi/zoho-accountsla-api-openapi.yml, openapi/zoho-accounttimeentry-api-openapi.yml, openapi/zoho-actions-api-openapi.yml, openapi/zoho-activity-api-openapi.yml, openapi/zoho-agent-api-openapi.yml, openapi/zoho-agentpresence-api-openapi.yml, openapi/zoho-agentsignatures-api-openapi.yml, openapi/zoho-agenttimeentry-api-openapi.yml, openapi/zoho-apis-api-openapi.yml, openapi/zoho-appointments-s-api-openapi.yml, openapi/zoho-article-api-openapi.yml, openapi/zoho-articleattachment-api-openapi.yml, openapi/zoho-articlecomment-api-openapi.yml, openapi/zoho-articlefeedback-api-openapi.yml, openapi/zoho-articletranslation-api-openapi.yml, openapi/zoho-attachments-api-openapi.yml, openapi/zoho-automationengine-api-openapi.yml, openapi/zoho-automationfeaturecount-api-openapi.yml, openapi/zoho-backup-api-openapi.yml, openapi/zoho-badge-api-openapi.yml, openapi/zoho-blueprints-api-openapi.yml, openapi/zoho-blueprinttransitions-api-openapi.yml, openapi/zoho-buginteg-api-openapi.yml, openapi/zoho-bulk-export-asynchronous-api-openapi.yml, openapi/zoho-bulk-export-synchronous-api-openapi.yml, openapi/zoho-bulk-import-api-openapi.yml, openapi/zoho-bulk-import-asynchronous-api-openapi.yml, openapi/zoho-bulk-import-batch-api-openapi.yml, openapi/zoho-bulk-import-synchronous-api-openapi.yml, openapi/zoho-business-hour-api-openapi.yml, openapi/zoho-call-api-openapi.yml, openapi/zoho-callcomments-api-openapi.yml, openapi/zoho-channel-api-openapi.yml, openapi/zoho-community-api-openapi.yml, openapi/zoho-communityattachment-api-openapi.yml, openapi/zoho-communitycategory-api-openapi.yml, openapi/zoho-communitycomment-api-openapi.yml, openapi/zoho-communitypreferences-api-openapi.yml, openapi/zoho-communitytopic-api-openapi.yml, openapi/zoho-communityuser-api-openapi.yml, openapi/zoho-composite-requests-api-openapi.yml, openapi/zoho-contact-api-openapi.yml, openapi/zoho-contact-roles-api-openapi.yml, openapi/zoho-contactattachment-api-openapi.yml, openapi/zoho-contactcomments-api-openapi.yml, openapi/zoho-contactdeduplication-api-openapi.yml, openapi/zoho-contactfollowers-api-openapi.yml, openapi/zoho-contactprofile-api-openapi.yml, openapi/zoho-contacts-api-openapi.yml, openapi/zoho-contacttimeentry-api-openapi.yml, openapi/zoho-contract-api-openapi.yml, openapi/zoho-coql-api-openapi.yml, openapi/zoho-countriesandlanguages-api-openapi.yml, openapi/zoho-customerhappiness-api-openapi.yml, openapi/zoho-customview-api-openapi.yml, openapi/zoho-dashboardmetrics-api-openapi.yml, openapi/zoho-dashboards-api-openapi.yml, openapi/zoho-data-apis-api-openapi.yml, openapi/zoho-deleted-api-openapi.yml, openapi/zoho-department-api-openapi.yml, openapi/zoho-dependencymappings-api-openapi.yml, openapi/zoho-displayentity-api-openapi.yml, openapi/zoho-domainmapping-api-openapi.yml, openapi/zoho-email-drafts-api-openapi.yml, openapi/zoho-email-templates-api-openapi.yml, openapi/zoho-emailfailurealert-api-openapi.yml, openapi/zoho-emails-api-openapi.yml, openapi/zoho-emails-sharing-details-api-openapi.yml, openapi/zoho-embed-apis-api-openapi.yml, openapi/zoho-entityblueprints-api-openapi.yml, openapi/zoho-event-api-openapi.yml, openapi/zoho-eventcomments-api-openapi.yml, openapi/zoho-events-api-openapi.yml, openapi/zoho-features-api-openapi.yml, openapi/zoho-field-api-openapi.yml, openapi/zoho-files-api-openapi.yml, openapi/zoho-finance-api-openapi.yml, openapi/zoho-followers-api-openapi.yml, openapi/zoho-genericaction-api-openapi.yml, openapi/zoho-global-picklists-api-openapi.yml, openapi/zoho-help-center-api-openapi.yml, openapi/zoho-helpcentergroups-api-openapi.yml, openapi/zoho-holiday-list-api-openapi.yml, openapi/zoho-holidays-api-openapi.yml, openapi/zoho-im-channel-api-openapi.yml, openapi/zoho-im-message-api-openapi.yml, openapi/zoho-im-metrics-api-openapi.yml, openapi/zoho-im-session-api-openapi.yml, openapi/zoho-imcannedmessage-api-openapi.yml, openapi/zoho-import-api-openapi.yml, openapi/zoho-kbcategory-api-openapi.yml, openapi/zoho-kbcategorylogo-api-openapi.yml, openapi/zoho-kbrootcategory-api-openapi.yml, openapi/zoho-kbsection-api-openapi.yml, openapi/zoho-label-api-openapi.yml, openapi/zoho-layout-api-openapi.yml, openapi/zoho-layoutrulecriteria-api-openapi.yml, openapi/zoho-layoutrules-api-openapi.yml, openapi/zoho-layouts-api-openapi.yml, openapi/zoho-leads-api-openapi.yml, openapi/zoho-license-api-openapi.yml, openapi/zoho-locking-information-s-api-openapi.yml, openapi/zoho-mailreplyaddress-api-openapi.yml, openapi/zoho-metadata-apis-api-openapi.yml, openapi/zoho-modeling-apis-api-openapi.yml, openapi/zoho-module-api-openapi.yml, openapi/zoho-newtickethistory-api-openapi.yml, openapi/zoho-notes-api-openapi.yml, openapi/zoho-org-api-openapi.yml, openapi/zoho-organization-api-openapi.yml, openapi/zoho-pendingapproval-api-openapi.yml, openapi/zoho-permalink-api-openapi.yml, openapi/zoho-photo-api-openapi.yml, openapi/zoho-pinnedconversation-api-openapi.yml, openapi/zoho-product-api-openapi.yml, openapi/zoho-productattachment-api-openapi.yml, openapi/zoho-profile-api-openapi.yml, openapi/zoho-read-api-openapi.yml, openapi/zoho-records-api-openapi.yml, openapi/zoho-recycle-bin-api-openapi.yml, openapi/zoho-reports-api-openapi.yml, openapi/zoho-role-api-openapi.yml, openapi/zoho-routingpreference-api-openapi.yml, openapi/zoho-rulegroup-api-openapi.yml, openapi/zoho-search-api-openapi.yml, openapi/zoho-services-s-api-openapi.yml, openapi/zoho-settings-api-openapi.yml, openapi/zoho-sharing-collaboration-apis-api-openapi.yml, openapi/zoho-sharingrule-api-openapi.yml, openapi/zoho-skill-api-openapi.yml, openapi/zoho-skillconfiguration-api-openapi.yml, openapi/zoho-skilltype-api-openapi.yml, openapi/zoho-subjectaccessrequest-api-openapi.yml, openapi/zoho-supportemaildomain-api-openapi.yml, openapi/zoho-supportplan-api-openapi.yml, openapi/zoho-task-api-openapi.yml, openapi/zoho-task-comments-api-openapi.yml, openapi/zoho-taskattachment-api-openapi.yml, openapi/zoho-tasktimeentry-api-openapi.yml, openapi/zoho-tasktimer-api-openapi.yml, openapi/zoho-team-api-openapi.yml, openapi/zoho-template-folders-api-openapi.yml, openapi/zoho-thread-api-openapi.yml, openapi/zoho-ticket-api-openapi.yml, openapi/zoho-ticketapprovals-api-openapi.yml, openapi/zoho-ticketattachment-api-openapi.yml, openapi/zoho-ticketcomment-api-openapi.yml, openapi/zoho-ticketcount-api-openapi.yml, openapi/zoho-ticketfollowers-api-openapi.yml, openapi/zoho-tickettag-api-openapi.yml, openapi/zoho-tickettemplate-api-openapi.yml, openapi/zoho-tickettimeentry-api-openapi.yml, openapi/zoho-tickettimer-api-openapi.yml, openapi/zoho-time-tracking-api-openapi.yml, openapi/zoho-timeline-api-openapi.yml, openapi/zoho-upload-api-openapi.yml, openapi/zoho-upsert-api-openapi.yml, openapi/zoho-user-api-openapi.yml, openapi/zoho-user-management-apis-api-openapi.yml, openapi/zoho-users-api-openapi.yml, openapi/zoho-validation-rules-api-openapi.yml, openapi/zoho-validationrulecriteria-api-openapi.yml, openapi/zoho-webhook-api-openapi.yml, openapi/zoho-widget-api-openapi.yml, openapi/zoho-workflow-configurations-api-openapi.yml, openapi/zoho-write-api-openapi.yml, openapi/zoho-zia-org-enrichment-api-openapi.yml, openapi/zoho-zoho-crm-related-records-api-api-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: 1270 by_action_class: acting: 710 connected: 560 by_consequence: write: 666 read: 560 physical: 26 safety-critical: 18 human_in_the_loop_required: 18 operations: - path: /api/v1/accounts/{accountId}/associateProducts method: post operationId: associateProductsWithAccount x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/merge method: post operationId: mergeAccounts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/accounts method: get operationId: getAccountsByContact x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/statistics method: get operationId: getAccountStatistics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/tickets method: get operationId: getTicketsByAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.search.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts method: get operationId: getAccounts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts method: post operationId: createAccount x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/contracts method: get operationId: getContractsByAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId} method: get operationId: getAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId} method: patch operationId: updateAccount x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/history method: get operationId: getTicketHistoryByAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/moveToTrash method: post operationId: deleteAccount x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/{productId}/accounts method: get operationId: getAccountsByProduct x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/updateMany method: post operationId: bulkUpdateAccounts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/attachments method: get operationId: getAccountAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.UPDATE token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/attachments method: post operationId: createAccountAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/attachments/{attachmentId} method: delete operationId: deleteAccountAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/comments/{commentId} method: get operationId: getAccountComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/comments/{commentId} method: put operationId: updateAccountComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/comments/{commentId} method: delete operationId: deleteAccountComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/comments method: get operationId: getAccountComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/comments method: post operationId: createAccountComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accountContactMapping/{mappingId} method: patch operationId: updateAccountContactMappingInfo x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accountsDeduplication/defaultFieldName method: get operationId: getDefaultFieldNameForAccountDeduplication x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accountsDeduplication/defaultFieldName method: post operationId: setDefaultFieldNameForAccountDeduplication x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/groupAccountDuplicateValues method: get operationId: listGroupedDuplicateAccounts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/groupAccounts method: get operationId: listDuplicateAccounts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/removeFollowers method: post operationId: removeAccountFollowers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/addFollowers method: post operationId: addAccountFollowers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/followers method: get operationId: getAccountFollowers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/sla/{slaId} method: post operationId: associateAndDisassociateSlaInAccount x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/accounts/{accountId}/sla method: get operationId: getSlasUnderAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/timeEntry method: get operationId: getAccountTimeEntries x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/timeEntrySummation method: get operationId: getSummationOfTimeEntryForAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /{module}/{recordId}/actions/associate_email method: post operationId: associateEmail x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.emails.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/unenrol_from_cadences method: post operationId: postUnenrolFromCadences x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.CREATE - ZohoCRM.modules.Activities.CREATE - ZohoCRM.modules.Attachments.CREATE - ZohoCRM.modules.Calls.CREATE - ZohoCRM.modules.Campaigns.CREATE - ZohoCRM.modules.Cases.CREATE - ZohoCRM.modules.Contacts.CREATE - ZohoCRM.modules.Deals.CREATE - ZohoCRM.modules.Events.CREATE - ZohoCRM.modules.Forecasts.CREATE - ZohoCRM.modules.Invoices.CREATE - ZohoCRM.modules.Leads.CREATE - ZohoCRM.modules.Notes.CREATE - ZohoCRM.modules.Products.CREATE - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.Solutions.CREATE - ZohoCRM.modules.Tasks.CREATE - ZohoCRM.modules.Vendors.CREATE - ZohoCRM.modules.custom.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/enrol_in_cadences method: post operationId: postEnrolInCadences x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.CREATE - ZohoCRM.modules.Activities.CREATE - ZohoCRM.modules.Attachments.CREATE - ZohoCRM.modules.Calls.CREATE - ZohoCRM.modules.Campaigns.CREATE - ZohoCRM.modules.Cases.CREATE - ZohoCRM.modules.Contacts.CREATE - ZohoCRM.modules.Deals.CREATE - ZohoCRM.modules.Events.CREATE - ZohoCRM.modules.Forecasts.CREATE - ZohoCRM.modules.Invoices.CREATE - ZohoCRM.modules.Leads.CREATE - ZohoCRM.modules.Notes.CREATE - ZohoCRM.modules.Products.CREATE - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.Solutions.CREATE - ZohoCRM.modules.Tasks.CREATE - ZohoCRM.modules.Vendors.CREATE - ZohoCRM.modules.custom.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{record}/actions/change_owner method: post operationId: singleUpdate x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.change_owner.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/change_owner method: post operationId: bulkChangeOwner x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.change_owner.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/actions/fetch_full_data method: get operationId: fetchFullDataForMultipleRecords x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.READ token: max-ttl: 3600 audit: none - path: /{moduleApiName}/{id}/actions/fetch_full_data method: get operationId: fetchFullDataForSingleRecord x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.READ token: max-ttl: 3600 audit: none - path: /{module}/{masterRecordId}/actions/merge method: get operationId: getMergeJobStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.read token: max-ttl: 3600 audit: none - path: /{module}/{masterRecordId}/actions/merge method: post operationId: mergeRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/actions/get_related_records_count method: post operationId: getRelatedRecordsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.READ token: max-ttl: 3600 audit: none - path: /{moduleApiName}/{id}/actions/convert method: post operationId: convertInventory x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.SalesOrders.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/actions/send_mail_merge method: post operationId: postSendMailMerge x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.mailmerge.CREATE,ZohoWriter.documentEditor.ALL,ZohoWriter.merge.ALL,ZohoCRM.settings.emails.ALL audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/actions/sign_mail_merge method: post operationId: postSignMailMerge x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.mailmerge.CREATE,ZohoWriter.documentEditor.ALL,ZohoWriter.merge.ALL,ZohoSign.documents.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/actions/download_mail_merge method: post operationId: postDownloadMailMerge x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.mailmerge.CREATE,ZohoWriter.documentEditor.ALL,ZohoWriter.merge.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/mass_change_owner method: post operationId: massChangeOwner x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.change_owner.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/mass_change_owner method: get operationId: checkStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.change_owner.READ token: max-ttl: 3600 audit: none - path: /{module}/actions/mass_delete method: post operationId: massDelete x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.mass_delete.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/mass_delete method: get operationId: getMassDeleteJobStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.mass_delete.READ token: max-ttl: 3600 audit: none - path: /{module}/actions/mass_update method: post operationId: idsUpdate x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.mass_update.Leads.UPDATE - ZohoCRM.mass_update.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/mass_update method: get operationId: getMassUpdateStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.mass_update.Leads.READ - ZohoCRM.mass_update.READ token: max-ttl: 3600 audit: none - path: /actions/watch method: get operationId: getNotifications x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.notifications.READ token: max-ttl: 3600 audit: none - path: /actions/watch method: post operationId: createNotifications x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.notifications.ALL - ZohoCRM.notifications.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /actions/watch method: put operationId: updateNotificationDetails x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.notifications.ALL - ZohoCRM.notifications.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /actions/watch method: patch operationId: updateNotificationInfo x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.notifications.ALL - ZohoCRM.notifications.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /actions/watch method: delete operationId: disableNotifications x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - ZohoCRM.notifications.ALL - ZohoCRM.notifications.DELETE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /{module}/actions/portal_invite method: post operationId: inviteUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/portal_invite method: get operationId: getScheduledInviteUsersInfo x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.clientportal.READ token: max-ttl: 3600 audit: none - path: /{module}/{recordId}/actions/portal_invite method: post operationId: singleInviteUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{recordID}/actions/clone method: post operationId: cloneRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.CREATE - ZohoCRM.modules.Activities.CREATE - ZohoCRM.modules.Attachments.CREATE - ZohoCRM.modules.CREATE - ZohoCRM.modules.Calls.CREATE - ZohoCRM.modules.Campaigns.CREATE - ZohoCRM.modules.Cases.CREATE - ZohoCRM.modules.Contacts.CREATE - ZohoCRM.modules.Deals.CREATE - ZohoCRM.modules.Events.CREATE - ZohoCRM.modules.Forecasts.CREATE - ZohoCRM.modules.Invoices.CREATE - ZohoCRM.modules.Leads.CREATE - ZohoCRM.modules.Notes.CREATE - ZohoCRM.modules.Products.CREATE - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.Solutions.CREATE - ZohoCRM.modules.Tasks.CREATE - ZohoCRM.modules.Vendors.CREATE - ZohoCRM.modules.custom.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{id}/actions/share_emails method: post operationId: shareEmails x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.CREATE - ZohoCRM.modules.Activities.CREATE - ZohoCRM.modules.Attachments.CREATE - ZohoCRM.modules.CREATE - ZohoCRM.modules.Calls.CREATE - ZohoCRM.modules.Campaigns.CREATE - ZohoCRM.modules.Cases.CREATE - ZohoCRM.modules.Contacts.CREATE - ZohoCRM.modules.Deals.CREATE - ZohoCRM.modules.Events.CREATE - ZohoCRM.modules.Forecasts.CREATE - ZohoCRM.modules.Invoices.CREATE - ZohoCRM.modules.Leads.CREATE - ZohoCRM.modules.Notes.CREATE - ZohoCRM.modules.Products.CREATE - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.Solutions.CREATE - ZohoCRM.modules.Tasks.CREATE - ZohoCRM.modules.Vendors.CREATE - ZohoCRM.modules.custom.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{id}/actions/unshare_emails method: post operationId: unshareEmails x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.DELETE - ZohoCRM.modules.Activities.DELETE - ZohoCRM.modules.Attachments.DELETE - ZohoCRM.modules.Calls.DELETE - ZohoCRM.modules.Campaigns.DELETE - ZohoCRM.modules.Cases.DELETE - ZohoCRM.modules.Contacts.DELETE - ZohoCRM.modules.DELETE - ZohoCRM.modules.Deals.DELETE - ZohoCRM.modules.Events.DELETE - ZohoCRM.modules.Forecasts.DELETE - ZohoCRM.modules.Invoices.DELETE - ZohoCRM.modules.Leads.DELETE - ZohoCRM.modules.Notes.DELETE - ZohoCRM.modules.Products.DELETE - ZohoCRM.modules.Quotes.DELETE - ZohoCRM.modules.Solutions.DELETE - ZohoCRM.modules.Tasks.DELETE - ZohoCRM.modules.Vendors.DELETE - ZohoCRM.modules.custom.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/actions/share_emails method: post operationId: shareBulkEmails x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.CREATE - ZohoCRM.modules.Activities.CREATE - ZohoCRM.modules.Attachments.CREATE - ZohoCRM.modules.CREATE - ZohoCRM.modules.Calls.CREATE - ZohoCRM.modules.Campaigns.CREATE - ZohoCRM.modules.Cases.CREATE - ZohoCRM.modules.Contacts.CREATE - ZohoCRM.modules.Deals.CREATE - ZohoCRM.modules.Events.CREATE - ZohoCRM.modules.Forecasts.CREATE - ZohoCRM.modules.Invoices.CREATE - ZohoCRM.modules.Leads.CREATE - ZohoCRM.modules.Notes.CREATE - ZohoCRM.modules.Products.CREATE - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.Solutions.CREATE - ZohoCRM.modules.Tasks.CREATE - ZohoCRM.modules.Vendors.CREATE - ZohoCRM.modules.custom.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/actions/unshare_emails method: post operationId: unshareBulkEmails x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.DELETE - ZohoCRM.modules.Activities.DELETE - ZohoCRM.modules.Attachments.DELETE - ZohoCRM.modules.Calls.DELETE - ZohoCRM.modules.Campaigns.DELETE - ZohoCRM.modules.Cases.DELETE - ZohoCRM.modules.Contacts.DELETE - ZohoCRM.modules.DELETE - ZohoCRM.modules.Deals.DELETE - ZohoCRM.modules.Events.DELETE - ZohoCRM.modules.Forecasts.DELETE - ZohoCRM.modules.Invoices.DELETE - ZohoCRM.modules.Leads.DELETE - ZohoCRM.modules.Notes.DELETE - ZohoCRM.modules.Products.DELETE - ZohoCRM.modules.Quotes.DELETE - ZohoCRM.modules.Solutions.DELETE - ZohoCRM.modules.Tasks.DELETE - ZohoCRM.modules.Vendors.DELETE - ZohoCRM.modules.custom.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleName}/{id}/actions/send_mail method: post operationId: sendMail x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.send_mail.all.CREATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/actions/share method: get operationId: getShareRecords x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.share.accounts.READ - ZohoCRM.share.bundles.READ - ZohoCRM.share.calls.READ - ZohoCRM.share.campaigns.READ - ZohoCRM.share.cases.READ - ZohoCRM.share.contacts.READ - ZohoCRM.share.cross_sellings.READ - ZohoCRM.share.custom.READ - ZohoCRM.share.deals.READ - ZohoCRM.share.events.READ - ZohoCRM.share.first_buys.READ - ZohoCRM.share.invoices.READ - ZohoCRM.share.leads.READ - ZohoCRM.share.next_buys.READ - ZohoCRM.share.pricebooks.READ - ZohoCRM.share.products.READ - ZohoCRM.share.purchaseorders.READ - ZohoCRM.share.quotes.READ - ZohoCRM.share.rebuys.READ - ZohoCRM.share.salesorders.READ - ZohoCRM.share.solutions.READ - ZohoCRM.share.tasks.READ - ZohoCRM.share.vendors.READ token: max-ttl: 3600 audit: none - path: /{moduleApiName}/{recordId}/actions/share method: post operationId: createShareRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.share.accounts.CREATE - ZohoCRM.share.bundles.CREATE - ZohoCRM.share.calls.CREATE - ZohoCRM.share.campaigns.CREATE - ZohoCRM.share.cases.CREATE - ZohoCRM.share.contacts.CREATE - ZohoCRM.share.cross_sellings.CREATE - ZohoCRM.share.custom.CREATE - ZohoCRM.share.deals.CREATE - ZohoCRM.share.events.CREATE - ZohoCRM.share.first_buys.CREATE - ZohoCRM.share.invoices.CREATE - ZohoCRM.share.leads.CREATE - ZohoCRM.share.next_buys.CREATE - ZohoCRM.share.pricebooks.CREATE - ZohoCRM.share.products.CREATE - ZohoCRM.share.purchaseorders.CREATE - ZohoCRM.share.quotes.CREATE - ZohoCRM.share.rebuys.CREATE - ZohoCRM.share.salesorders.CREATE - ZohoCRM.share.solutions.CREATE - ZohoCRM.share.tasks.CREATE - ZohoCRM.share.vendors.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/actions/share method: put operationId: updateShareRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.share.accounts.UPDATE - ZohoCRM.share.bundles.UPDATE - ZohoCRM.share.calls.UPDATE - ZohoCRM.share.campaigns.UPDATE - ZohoCRM.share.cases.UPDATE - ZohoCRM.share.contacts.UPDATE - ZohoCRM.share.cross_sellings.UPDATE - ZohoCRM.share.custom.UPDATE - ZohoCRM.share.deals.UPDATE - ZohoCRM.share.events.UPDATE - ZohoCRM.share.first_buys.UPDATE - ZohoCRM.share.invoices.UPDATE - ZohoCRM.share.leads.UPDATE - ZohoCRM.share.next_buys.UPDATE - ZohoCRM.share.pricebooks.UPDATE - ZohoCRM.share.products.UPDATE - ZohoCRM.share.purchaseorders.UPDATE - ZohoCRM.share.quotes.UPDATE - ZohoCRM.share.rebuys.UPDATE - ZohoCRM.share.salesorders.UPDATE - ZohoCRM.share.solutions.UPDATE - ZohoCRM.share.tasks.UPDATE - ZohoCRM.share.vendors.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/actions/share method: delete operationId: deleteShareRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.share.accounts.DELETE - ZohoCRM.share.bundles.DELETE - ZohoCRM.share.calls.DELETE - ZohoCRM.share.campaigns.DELETE - ZohoCRM.share.cases.DELETE - ZohoCRM.share.contacts.DELETE - ZohoCRM.share.cross_sellings.DELETE - ZohoCRM.share.custom.DELETE - ZohoCRM.share.deals.DELETE - ZohoCRM.share.events.DELETE - ZohoCRM.share.first_buys.DELETE - ZohoCRM.share.invoices.DELETE - ZohoCRM.share.leads.DELETE - ZohoCRM.share.next_buys.DELETE - ZohoCRM.share.pricebooks.DELETE - ZohoCRM.share.products.DELETE - ZohoCRM.share.purchaseorders.DELETE - ZohoCRM.share.quotes.DELETE - ZohoCRM.share.rebuys.DELETE - ZohoCRM.share.salesorders.DELETE - ZohoCRM.share.solutions.DELETE - ZohoCRM.share.tasks.DELETE - ZohoCRM.share.vendors.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/add_tags method: post operationId: postAddTags x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.all audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/remove_tags method: post operationId: postRemoveTags x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.all audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{id}/actions/add_tags method: post operationId: postAddTagsWithId x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.all audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{id}/actions/remove_tags method: post operationId: postRemoveTagsWithId x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.all audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{record}/actions/assign_territories method: post operationId: asssignTerritoriesToRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/assign_territories method: post operationId: asssignTerritoriesToRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{record}/actions/remove_territories method: post operationId: removeTerritoriesToRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/remove_territories method: post operationId: removeTerritoriesToRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/actions/unblock_email method: post operationId: unblockEmailByModule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.emails.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{id}/actions/unblock_email method: post operationId: unblockEmailById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.emails.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/activities/emptySpam method: post operationId: deleteSpamActivities x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.DELETE - Desk.activities.events.DELETE - Desk.activities.tasks.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/activities method: get operationId: getActivitiesForTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.activities.events.READ - Desk.activities.tasks.READ - Desk.calls.READ - Desk.events.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/myPreferences method: get operationId: getMyPreference x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/myPreferences method: patch operationId: updateMyPreferences x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/uploadMyPhoto method: post operationId: uploadMyPhoto x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agents/{agentId}/reassignment method: post operationId: scheduleAgentReassignment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agentsByIds method: get operationId: getAgentsByIds x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/photo method: get operationId: getAgentProfilePhoto x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/activate method: post operationId: activateAgents x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/deletedAgents/{agentId}/anonymize method: post operationId: anonymizeDeletedAgent x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agents method: get operationId: getAgents x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents method: post operationId: addAgent x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/myinfo method: get operationId: getMyInfo x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId} method: get operationId: getAgent x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId} method: patch operationId: updateAgent x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agents/{agentId}/deactivate method: post operationId: deactivateAgents x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/deleteMyPhoto method: post operationId: deleteMyPhoto x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agents/deleteUnconfirmed method: post operationId: deleteUnconfirmedAgent x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agents/count method: get operationId: getAgentsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/reinvite method: post operationId: reInviteAgents x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agentAvailabilityConfig method: get operationId: getConfig x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agentAvailabilityConfig method: post operationId: updateConfig x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/offlineAgents method: get operationId: getOfflineAgents x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agentAvailability method: get operationId: getCurrentAvailability x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/onlineAgents method: get operationId: getOnlineAgents x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/signatures method: get operationId: getSignatures x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/signatures method: patch operationId: updateSignatures x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agents/{agentId}/updateCustomizedSignature method: post operationId: updateCustomSignature x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agents/{agentId}/timeEntry method: get operationId: getTimeEntryByAgentId x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/timeEntrySummation method: get operationId: getSummationOfTimeEntryForAgent x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/timeEntry/{agentTimeEntryId} method: get operationId: getTimeEntryForAgent x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /__apis method: get operationId: getAvailableApis x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.apis.READ token: max-ttl: 3600 audit: none - path: /Appointments__s method: get operationId: getAppointmentsS x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.appointments.READ token: max-ttl: 3600 audit: none - path: /Appointments__s method: put operationId: putAppointmentsS x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.appointments.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Appointments__s method: post operationId: postAppointmentsS x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.appointments.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Appointments__s method: delete operationId: deleteAppointmentsS x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.appointments.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Appointments__s/{appointmentId} method: get operationId: getAppointmentById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.appointments.READ token: max-ttl: 3600 audit: none - path: /Appointments__s/{appointmentId} method: put operationId: updateAppointmentById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.appointments.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Appointments__s/{appointmentId} method: delete operationId: deleteId x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.appointments.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles method: get operationId: getArticles x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles method: post operationId: createArticle x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{id} method: get operationId: getArticle x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{id} method: patch operationId: updateArticle x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/checkPermalinkAvailability method: post operationId: checkArticlePermalinkAvailability x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.READ audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/count method: get operationId: getArticleCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/preview method: post operationId: previewArticle x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/moveToTrash method: post operationId: deleteArticle x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/articleSuggestion method: get operationId: suggestArticlesForTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{articleId}/translations/{locale}/dissociateAttachments method: post operationId: removeAttachmentsFromArticleTranslation x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articleAttachments method: post operationId: uploadArticleAttachments x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations/{locale}/attachments method: get operationId: getArticleTranslationAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{articleId}/translations/{locale}/attachments method: post operationId: addArticleTranslationAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations/{locale}/associateAttachments method: post operationId: associateAttachmentsToArticleTranslation x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations/{locale}/comments method: get operationId: getArticleTranslationComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{articleId}/translations/{locale}/comments method: post operationId: createArticleTranslationComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations/{locale}/comments/{commentId} method: get operationId: getArticleTranslationComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{articleId}/translations/{locale}/comments/{commentId} method: delete operationId: deleteArticleTranslationComments x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations/{locale}/comments/{commentId} method: patch operationId: updateArticleTranslationComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations/{locale}/feedbacks method: get operationId: getArticleTranslationFeedbacks x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articleFeedbacks/{feedbackId} method: get operationId: getArticleFeedback x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articleFeedbacks/{feedbackId} method: delete operationId: deleteArticleFeedback x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articleFeedbacks method: get operationId: getArticleFeedbacks x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articleFeedbacks/{feedbackId}/addAsTicket method: post operationId: convertFeedbackToTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{id}/translations/{locale}/permalinks method: get operationId: getArticleTranslationPermalinks x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{id}/translations/{locale}/dislike method: post operationId: dislikeArticleTranslation x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{id}/translations/{locale}/permalinks/add method: post operationId: updateArticleTranslationPermalink x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations method: get operationId: getArticleTranslations x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{articleId}/translations method: post operationId: createArticleTranslation x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articleTranslations/search method: get operationId: searchArticleTranslations x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{articleId}/translations/{locale}/attachments/{attachmentId}/content method: get operationId: downloadArticleTranslationAttachment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{articleId}/translations/{locale}/moveToTrash method: post operationId: deleteArticleTranslation x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{articleId}/translations/{locale} method: patch operationId: updateArticleTranslation x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articles/{id}/translations/{locale} method: get operationId: getArticleTranslation x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/{id}/translations/{locale}/like method: post operationId: likeArticleTranslation x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/articleTranslations/searchByTag method: get operationId: searchArticleTranslationByTag x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /{moduleApiName}/{recordId}/Attachments/{id} method: get operationId: getAttachmentById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.attachments.READ token: max-ttl: 3600 audit: none - path: /{moduleApiName}/{recordId}/Attachments/{id} method: delete operationId: deleteAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.attachments.ALL - ZohoCRM.modules.attachments.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/{recordId}/Attachments method: get operationId: getAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.attachments.ALL - ZohoCRM.modules.attachments.READ token: max-ttl: 3600 audit: none - path: /{moduleApiName}/{recordId}/Attachments method: post operationId: uploadAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.attachments.ALL - ZohoCRM.modules.attachments.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/automationEngine/engineSupportedActions method: get operationId: getSupportedActionsEngine x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/engines/{engineId}/modules method: get operationId: getSupportedModulesOfEngine x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/engines/{engineId}/modules/{moduleId}/events method: get operationId: getSupportedEventsOfModule x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/automationFeatureCount method: get operationId: getUsedCountForAutomationFeature x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/bulkExport method: post operationId: initiateBulkExport x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.exports.CUSTOM audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/bulkExport/{exportId} method: get operationId: getBulkExport x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.exports.CUSTOM token: max-ttl: 3600 audit: none - path: /api/v1/downloadBulkExportFile method: get operationId: downloadBulkExportFile x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.exports.CUSTOM token: max-ttl: 3600 audit: none - path: /api/v1/badges method: get operationId: getBadges x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/users/{userId}/badges method: get operationId: getUserBadges x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/users/{userId}/badges/associate method: post operationId: associateBadgesToUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users/{userId}/badges/dissociate method: post operationId: dissociateBadgesFromUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/blueprints method: get operationId: getBluePrints x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/blueprints method: post operationId: createBlueprint x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/blueprints/reorder method: post operationId: reorderBlueprints x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.settings.UPDATE 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/v1/tickets/{ticket_id}/blueprint method: get operationId: getAppliedBlueprintDetailsForTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/blueprints/{blueprint_id} method: get operationId: getBlueprint x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/blueprints/{blueprint_id} method: delete operationId: deleteBlueprint x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/blueprints/{blueprint_id} method: patch operationId: updateBlueprint x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/blueprints/{blueprint_id}/revoke method: post operationId: revokeBlueprintForAllEntities x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/tickets/{ticket_id}/revokeBlueprint method: post operationId: revokeBlueprintForATicket x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/tickets/{ticket_id}/transitions/{transition_id}/attachments/{attachment_id}/content method: get operationId: viewTemporaryTransitionDraftAttachment x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticket_id}/transitions/{transition_id}/attachments/{attachment_id} method: delete operationId: deleteTransitionDraftTemporaryAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/bug/{bugId}/tickets method: get operationId: getBugLinkedTicketDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /restapi/v2/bulk/workspaces/{workspace-id}/data method: get operationId: createExportJobSQLQuery x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.data.read token: max-ttl: 3600 audit: none - path: /restapi/v2/bulk/workspaces/{workspace-id}/views/{view-id}/data method: get operationId: createExportJobViewId x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.data.read token: max-ttl: 3600 audit: none - path: /restapi/v2/bulk/workspaces/{workspace-id}/exportjobs/{job-id} method: get operationId: getExportJobDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.data.read token: max-ttl: 3600 audit: none - path: /restapi/v2/bulk/workspaces/{workspace-id}/exportjobs/{job-id}/data method: get operationId: downloadExportedData x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.data.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/data method: get operationId: exportDataView x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.data.read token: max-ttl: 3600 audit: none - path: /api/v1/bulkImport/{bulkImportId}/sampleData method: get operationId: getBulkImportSampleData x-agentic-access: action-class: connected consequence: read subject: optional scope: - imports.CUSTOM token: max-ttl: 3600 audit: none - path: /restapi/v2/bulk/workspaces/{workspace-id}/data method: post operationId: createImportJobNewTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/bulk/workspaces/{workspace-id}/views/{view-id}/data method: post operationId: createImportJobExistingTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/bulk/workspaces/{workspace-id}/importjobs/{job-id} method: get operationId: getImportJobDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.data.read token: max-ttl: 3600 audit: none - path: /restapi/v2/bulk/workspaces/{workspace-id}/data/batch method: post operationId: batchImportNewTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/bulk/workspaces/{workspace-id}/views/{view-id}/data/batch method: post operationId: batchImportExistingTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/data method: post operationId: importDataNewTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/data method: post operationId: importDataExistingTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/businessHours/{businessHourId} method: get operationId: getBusinessHour x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/businessHours/{businessHourId} method: patch operationId: updateBusinessHour x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/businessHours method: get operationId: getBusinessHours x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/businessHours method: post operationId: createBusinessHour x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/businessHours/{businessHourId}/relatedRules method: get operationId: getRelatedRulesForBusinessHour x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/calls/updateMany method: post operationId: bulkUpdateCalls x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.UPDATE - Desk.calls.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/calls/{callId} method: get operationId: getCall x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.calls.READ token: max-ttl: 3600 audit: none - path: /api/v1/calls/{callId} method: patch operationId: updateCall x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.UPDATE - Desk.calls.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/calls/moveToTrash method: post operationId: deleteCall x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.DELETE - Desk.calls.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/calls/{callId}/clearLiveCall method: post operationId: clearLiveCallMapping x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.calls.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/calls method: get operationId: getCalls x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.calls.READ token: max-ttl: 3600 audit: none - path: /api/v1/calls method: post operationId: createCall x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.CREATE - Desk.calls.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/calls/deleteSpam method: post operationId: deleteSpamCalls x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/calls/emptySpam method: post operationId: deleteAllSpamCalls x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/calls method: get operationId: getCallsByTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.calls.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/calls/{callId}/comments/{commentId} method: get operationId: getCallComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/calls/{callId}/comments/{commentId} method: put operationId: updateCallComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/calls/{entityId}/comments method: get operationId: getCallComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/calls/{callId}/comments method: post operationId: createCallComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.calls.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/channels/{channelCode}/photo method: get operationId: getChannelPhoto x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/channels/{channelCode} method: get operationId: getChannelByCode x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/channels method: get operationId: getChannels x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/attachments/{attachmentId}/content method: get operationId: getCommunityTopicAttachment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/voters/trend method: get operationId: getCommunityTopicVotersTrend x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/moveToTrash method: post operationId: deleteCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/replies/{replyId}/attachments/{attachmentId}/content method: get operationId: getCommunityTopicReplyAttachment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/lock method: post operationId: lockCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/comments/{commentId}/attachments/{attachmentId}/content method: get operationId: getCommunityTopicCommentAttachment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityAttachments method: post operationId: addCommunityAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.CREATE - Desk.forums.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityAttachments/{id}/content method: get operationId: getUnassociatedCommunityAttachment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityCategory/{categoryId}/disable method: post operationId: disableCommunityCategory x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/communityCategory/{categoryId}/enable method: post operationId: enableCommunityCategory x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityCategory method: get operationId: getCommunityCategory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityCategory/{categoryId}/follow method: post operationId: followCommunityCategory x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityCategory/{categoryId}/unfollow method: post operationId: unfollowCommunityCategory x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityCategory/{categoryId}/followers method: get operationId: getCommunityCategoryFollowers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityCategoryByPermalink method: get operationId: getACategoryByPermalink x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityCategory/{categoryId} method: get operationId: getACategory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/comments/{commentId}/markSpam method: post operationId: markACommentAsSpam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.community.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/community/markAllCommentsAsSpam method: post operationId: markAllCommentsAsSpam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.community.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityComments/restore method: post operationId: restoreCommunityTrashedComments x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityModeration/comments method: get operationId: getCommunityTopicModerationComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityComments method: delete operationId: deleteCommunityTopicComments x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.DELETE - Desk.forums.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityComments/count method: get operationId: getCommunityCommentViewCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/comments/{commentId} method: get operationId: getCommunityTopicComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/comments/{commentId} method: patch operationId: updateCommunityTopicComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/comments/{commentId}/moveToTrash method: post operationId: deleteCommunityTopicComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityComments/approve method: post operationId: approveCommunityTopicComments x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/comments/{parentCommentId}/replies method: post operationId: addCommunityTopicReply x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.CREATE - Desk.forums.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/comments/{commentId}/replies/{replyId}/moveToTrash method: post operationId: deleteCommunityTopicReply x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityUsers/{userId}/comments method: get operationId: getCommunityTopicUserComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/comments/{commentId}/replies/{replyId} method: patch operationId: updateCommunityTopicReply x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityComments/moveToTrash method: post operationId: deleteUnModeratedCommunityTopicComments x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/comments method: get operationId: getAllCommunityTopicComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/comments method: post operationId: addCommunityTopicComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.CREATE - Desk.forums.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityPreferences method: get operationId: getCommunityPreferences x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityPreferences method: post operationId: updateCommunityPreferences x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityModeration/counts method: get operationId: getModerationCounts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/unmoderate method: post operationId: unmoderateCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics method: get operationId: getAllCommunityTopics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics method: post operationId: addCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.CREATE - Desk.forums.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics method: delete operationId: deleteTrashedCommunityTopics x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.DELETE - Desk.forums.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/associateTags method: post operationId: addTagsToCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/approve method: post operationId: approveTopics x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/markSpam method: post operationId: markATopicAsSpam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.community.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/updateDraft method: put operationId: updateDraftedCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId} method: get operationId: getCommunityTopic x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId} method: patch operationId: updateCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/deleteDraft method: delete operationId: deleteDraftedCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.DELETE - Desk.forums.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/followers method: get operationId: getAllCommunityTopicFollowers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/dissociateTags method: post operationId: deleteCommunityTopicTags x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/unmoderate method: post operationId: unmoderateCommunityTopics x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/community/markAllTopicsAsSpam method: post operationId: markAllTopicsAsSpam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.community.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/unlock method: post operationId: unlockCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/saveDraft method: post operationId: addCommunityTopicAsDraft x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.CREATE - Desk.forums.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityModeration/topics method: get operationId: getCommunityModerationTopics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/participants method: get operationId: getCommunityTopicParticipants x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/unfollow method: post operationId: unfollowCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/moveToTrash method: post operationId: deleteUnmoderatedCommunityTopics x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/count method: get operationId: getCommunityTopicsViewsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/unlike method: post operationId: unlikeATopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopicTypes method: get operationId: getCommunityTopicTypes x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopicTypes method: patch operationId: updateCommunityTopicTypes x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/follow method: post operationId: followCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/moderate method: post operationId: moderateCommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopics/{topicId}/move method: post operationId: moveACommunityTopic x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityTopicByPermalink method: get operationId: getCommunityTopicByPermalink x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/restore method: post operationId: addTrashedCommunityTopics x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityModeratedTopics method: get operationId: getModeratedCommunityTopics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityUsers/{userId}/topics method: get operationId: getCommunityTopicsByUser x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/voters method: get operationId: getCommuntiyTopicVoters x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/like method: post operationId: updateCommunityTopicLike x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityMyDraftedTopics method: get operationId: getDraftedCommunityTopics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/publishDraft method: post operationId: publishCommunityTopicDraft x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityUsers/{userId} method: get operationId: getCommunityUserInfo x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityUsers/{userId} method: patch operationId: updateCommunityUserInfo x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityUsers/{userId}/followers method: get operationId: getAllCommunityUserFollowers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityUsers/unmoderate method: post operationId: unmoderateCommunityUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityModeratedUsers method: get operationId: getAllCommunityModeratedUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityUsers/{userId}/follow method: post operationId: updateFollowersToCommunityUser x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/communityUsers/{userId}/unfollow method: post operationId: updateUnFollowersToCommunityUser x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /__composite_requests method: post operationId: composite x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.composite_requests.CUSTOM audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/{productId}/contacts method: get operationId: getContactsUnderProduct x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/inviteAsEndUser method: post operationId: inviteContactsAsEndUser x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.contacts.UPDATE 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/v1/contacts/{contactId}/photo method: delete operationId: deleteContactPhoto x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/statistics method: get operationId: getContactStatistics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/dissociateAccounts method: post operationId: dissociateAccountsWithContact x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/moveToTrash method: post operationId: deleteContact x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/accounts/{accountId}/dissociate method: patch operationId: dissociateAccountWithContact x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/helpCenters method: get operationId: getContactActivationStatusAcrossHelpCenters x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/history method: get operationId: getContactTicketHistory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts method: get operationId: getContacts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts method: post operationId: createContact x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/updateMany method: post operationId: bulkUpdateContacts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/count method: get operationId: getContactsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/contactsByIds method: get operationId: getContactsByIds x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId} method: get operationId: getContact x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId} method: patch operationId: updateContact x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/merge method: post operationId: mergeContacts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/approveEndUserInvite method: post operationId: approveEndUserInvite x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/rejectEndUserInvite method: post operationId: rejectEndUserInvite x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/associateAccounts method: post operationId: associateAccountsWithContact x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/associateProducts method: post operationId: associateProductsWithContact x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/markSpam method: post operationId: markContactsAsSpam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/deleteSpam method: post operationId: deleteSpamContacts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/inviteAsEndUser method: post operationId: inviteContactAsEndUser x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.contacts.UPDATE 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/v1/accounts/{accountId}/contacts method: get operationId: getContactsUnderAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /{module}/{dealId}/Contact_Roles method: get operationId: getAssociatedContactRoles x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.CONTACTS.VIEW - ZohoCRM.modules.DEALS.VIEW token: max-ttl: 3600 audit: none - path: /{module}/{dealId}/Contact_Roles method: put operationId: upsertContactRoleRelations x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.CONTACTS.VIEW - ZohoCRM.modules.DEALS.VIEW audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{dealId}/Contact_Roles method: delete operationId: deleteContactRoleRelations x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.CONTACTS.VIEW - ZohoCRM.modules.DEALS.VIEW audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{dealId}/Contact_Roles/{contactId} method: get operationId: getDealContactRoleForContact x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.CONTACTS.VIEW - ZohoCRM.modules.DEALS.VIEW token: max-ttl: 3600 audit: none - path: /{module}/{dealId}/Contact_Roles/{contactId} method: put operationId: associateContactRoleToDeal x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.CONTACTS.VIEW - ZohoCRM.modules.DEALS.VIEW audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{dealId}/Contact_Roles/{contactId} method: delete operationId: deleteContactRoleRelation x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.CONTACTS.VIEW - ZohoCRM.modules.DEALS.VIEW audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/attachments method: get operationId: getContactAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.UPDATE token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/attachments method: post operationId: createContactAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/attachments/{attachmentId} method: delete operationId: deleteContactAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/comments method: get operationId: getContactComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/comments method: post operationId: createContactComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/comments/{commentId} method: get operationId: getContactComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/comments/{commentId} method: put operationId: updateContactComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/comments/{commentId} method: delete operationId: deleteContactComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/groupContactDuplicateValues method: get operationId: getDuplicateContactFieldValueCounts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contactsDeduplication/defaultFieldName method: get operationId: getDefaultFieldNameForContactDeduplication x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contactsDeduplication/defaultFieldName method: post operationId: setDefaultFieldNameForContactDeduplication x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/groupContacts method: get operationId: listGroupedDuplicateContacts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/removeFollowers method: post operationId: removeContactFollowers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/addFollowers method: post operationId: addContactFollowers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/followers method: get operationId: getContactFollowers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/profiles method: get operationId: getContactProfiles x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /contacts/roles method: get operationId: getContactRoles x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.contacts.READ token: max-ttl: 3600 audit: none - path: /contacts/roles method: post operationId: createRoles x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.WRITE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /contacts/roles method: put operationId: updateRoles x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /contacts/roles method: delete operationId: deleteRoles x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /contacts/roles/{role} method: get operationId: getRole x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.contacts.READ token: max-ttl: 3600 audit: none - path: /contacts/roles/{role} method: put operationId: updateRole x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /contacts/roles/{role} method: delete operationId: deleteRole x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Contacts/{contactId}/Emails/actions/link_record method: post operationId: linkEmailsToDeals x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.CREATE - ZohoCRM.modules.deals.CREATE - ZohoCRM.modules.emails.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Contacts/{contactId}/Emails/actions/link_record method: delete operationId: getRecordActions x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.CREATE - ZohoCRM.modules.deals.CREATE - ZohoCRM.modules.emails.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Contacts/{contactId}/Emails/{messageId}/actions/link_record method: post operationId: getRecordActionsSingle x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.contacts.CREATE - ZohoCRM.modules.deals.CREATE - ZohoCRM.modules.emails.CREATE token: max-ttl: 3600 audit: none - path: /Contacts/{contactId}/Emails/{messageId}/actions/link_record method: delete operationId: getRecordActions2Single x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.contacts.CREATE - ZohoCRM.modules.deals.CREATE - ZohoCRM.modules.emails.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/timeEntrySummation method: get operationId: getSummationOfTimeEntryForContact x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/timeEntry method: get operationId: getContactTimeEntries x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ token: max-ttl: 3600 audit: none - path: /api/v1/contracts/updateMany method: post operationId: updateMany x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contracts method: get operationId: getContracts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/contracts method: post operationId: createContract x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contracts/{id} method: get operationId: getContract x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/contracts/{id} method: patch operationId: updateContract x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contracts/count method: get operationId: getContractsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /coql method: post operationId: executeCOQLQuery x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.coql.READ - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.settings.fields.READ audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/countries method: get operationId: getAllCountries x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/languages method: get operationId: getAllLanguages x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/timeZones method: get operationId: getAllTimeZones x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/customerHappinessLinkHolder method: get operationId: GetCustomerHappinessLinkHolder x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/lastAccessedView/{cvId} method: put operationId: updateRecentView x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/views/{cvId}/star method: post operationId: addStarredView x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/lastAccessedView method: get operationId: getRecentView x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/starredViews/{cvId}/unstar method: post operationId: removeStarredView x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/starredViews/order method: put operationId: updateStarredViewOrder x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.settings.UPDATE 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/v1/views method: get operationId: getViews x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/starredViews method: get operationId: getStarredViews x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/onholdTickets method: get operationId: getOnholdTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/solvedTickets method: get operationId: getSolvedTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/backlogTickets method: get operationId: getBacklogTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/reopenedTickets method: get operationId: getReopenedTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/ticketsResolutionTime method: get operationId: getResolutionTime x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/createdTickets method: get operationId: getCreatedTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/responseCount method: get operationId: getResponseCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/responseTime method: get operationId: getResponseTime x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/dashboards/{id} method: get operationId: getDashboard x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/rows method: post operationId: addRow x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/rows method: put operationId: updateRows x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/rows method: delete operationId: deleteRows x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.data.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/deleted method: get operationId: getDeletedRecords x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.ALL - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Activities.READ - ZohoCRM.modules.Attachments.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Forecasts.READ - ZohoCRM.modules.Invoices.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Notes.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.custom.READ token: max-ttl: 3600 audit: none - path: /{parentRecordModule}/deleted/{parentRecord}/{relatedList} method: get operationId: getDeletedRelatedRecord x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments/{departmentId}/associateAgents method: post operationId: associateAgentsToDepartment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/departments/{departmentId} method: get operationId: getDepartment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments/{departmentId} method: patch operationId: updateDepartment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/departments/{departmentId}/logo method: get operationId: getDepartmentLogo x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments/{departmentId}/logo method: post operationId: updateDepartmentLogo x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/departments/{departmentId}/logo method: delete operationId: deleteDepartmentLogo x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/departments/{departmentId}/enable method: post operationId: enableDepartment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/departments/{departmentId}/disable method: post operationId: disableDepartment x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/departmentsByIds method: get operationId: getDepartmentsByIds x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments/{departmentId}/agents method: get operationId: getAgentsInDepartment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments/count method: get operationId: getDepartmentsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments/{departmentId}/dissociateAgents method: post operationId: dissociateAgents x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/departments method: get operationId: getDepartments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments method: post operationId: addDepartment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/departments/checkExists method: get operationId: checkDepartmentNameExist x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/availableDependencyMappings method: get operationId: getAvailableDepMappings x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/dependencyMappings method: get operationId: getDependencyMappingsByLayoutId x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/{entityName}/{entityId}/display method: post operationId: displayEntity 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/v1/domains/{domain} method: get operationId: getDomain x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/domains/{domain} method: delete operationId: deleteUnusedDomain x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/domains/apply method: post operationId: applyDomain x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/domains method: get operationId: listDomains x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/domains method: post operationId: addDomain x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/domains/verify method: post operationId: verifyDomain x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/domains/reset method: post operationId: resetCurrentDomain x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /{module}/{record}/__email_drafts method: get operationId: getEmailDrafts x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.accounts.READ - ZohoCRM.modules.cases.READ - ZohoCRM.modules.contacts.READ - ZohoCRM.modules.custom.READ - ZohoCRM.modules.deals.READ - ZohoCRM.modules.leads.READ - ZohoCRM.modules.purchaseorders.READ - ZohoCRM.modules.quotes.READ - ZohoCRM.modules.salesorders.READ token: max-ttl: 3600 audit: none - path: /{module}/{record}/__email_drafts method: post operationId: createEmailDrafts x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.accounts.CREATE - ZohoCRM.modules.cases.CREATE - ZohoCRM.modules.contacts.CREATE - ZohoCRM.modules.custom.CREATE - ZohoCRM.modules.deals.CREATE - ZohoCRM.modules.leads.CREATE - ZohoCRM.modules.purchaseorders.CREATE - ZohoCRM.modules.quotes.CREATE - ZohoCRM.modules.salesorders.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{record}/__email_drafts/{draft} method: get operationId: getEmailDraft x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.accounts.READ - ZohoCRM.modules.cases.READ - ZohoCRM.modules.contacts.READ - ZohoCRM.modules.custom.READ - ZohoCRM.modules.deals.READ - ZohoCRM.modules.leads.READ - ZohoCRM.modules.purchaseorders.READ - ZohoCRM.modules.quotes.READ - ZohoCRM.modules.salesorders.READ token: max-ttl: 3600 audit: none - path: /{module}/{record}/__email_drafts/{draft} method: put operationId: updateEmailDrafts x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.accounts.UPDATE - ZohoCRM.modules.cases.UPDATE - ZohoCRM.modules.contacts.UPDATE - ZohoCRM.modules.custom.UPDATE - ZohoCRM.modules.deals.UPDATE - ZohoCRM.modules.leads.UPDATE - ZohoCRM.modules.purchaseorders.UPDATE - ZohoCRM.modules.quotes.UPDATE - ZohoCRM.modules.salesorders.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{record}/__email_drafts/{draft} method: delete operationId: deleteEmailDrafts x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.accounts.DELETE - ZohoCRM.modules.cases.DELETE - ZohoCRM.modules.contacts.DELETE - ZohoCRM.modules.custom.DELETE - ZohoCRM.modules.deals.DELETE - ZohoCRM.modules.leads.DELETE - ZohoCRM.modules.purchaseorders.DELETE - ZohoCRM.modules.quotes.DELETE - ZohoCRM.modules.salesorders.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templates method: get operationId: getTemplates x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/templates method: post operationId: addTemplate x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templates/{emailTemplateId}/cloneAttachments method: post operationId: cloneTemplateAttachments x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templates/placeHolders method: get operationId: getPlaceHolders x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/templates/{emailTemplateId} method: get operationId: getTemplate x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/templates/{emailTemplateId} method: put operationId: updateTemplate x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templates/{emailTemplateId} method: delete operationId: deleteTemplate x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templates/{emailTemplateId}/render method: post operationId: applyTemplate x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.READ audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/emailFailureAlerts method: get operationId: getEmailFailureAlerts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/emailFailureAlerts method: patch operationId: clearEmailFailureAlerts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{recordId}/Emails/actions/download_attachments method: get operationId: downloadEmailAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.emails.READ - ZohoCRM.modules.leads.READ token: max-ttl: 3600 audit: none - path: /{module}/{recordId}/Emails/actions/download_inline_images method: get operationId: getDownloadInlineImages x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.contacts.all - ZohoCRM.modules.deals.all - ZohoCRM.modules.emails.READ - ZohoCRM.modules.leads.all token: max-ttl: 3600 audit: none - path: /{moduleApiName}/{id}/__emails_sharing_details method: get operationId: getEmailSharingDetail x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.ALL - ZohoCRM.modules.emails.READ token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish method: get operationId: getViewUrl x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.embed.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/embed method: get operationId: getEmbedUrl x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.embed.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/privatelink method: get operationId: getPrivateUrl x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.embed.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/privatelink method: post operationId: createPrivateUrl x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/privatelink method: delete operationId: removePrivateAccess x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/public method: post operationId: makeViewsPublic x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/public method: delete operationId: removePublicPermission x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/config method: get operationId: getPublishConfigurations x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.embed.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/publish/config method: put operationId: updatePublishConfigurations x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/slides method: get operationId: getSlideshows x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.embed.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/slides method: post operationId: createSlideshow x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/slides/{slide-id} method: get operationId: getSlideshowDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.embed.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/slides/{slide-id} method: put operationId: updateSlideshow x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/slides/{slide-id} method: delete operationId: deleteSlideshow x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.embed.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/slides/{slide-id}/publish method: get operationId: getSlideshowUrl x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.embed.read token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/transitions/{transitionId}/discardDraft method: post operationId: deleteDuringActionTransitionDraft x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/transitions/{transitionId}/saveDraft method: post operationId: saveDuringActionTransitionDraft x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/events method: get operationId: getEvents x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.events.READ - Desk.events.READ token: max-ttl: 3600 audit: none - path: /api/v1/events method: post operationId: createEvent x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.CREATE - Desk.events.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/events/{eventId} method: get operationId: getEvent x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.events.READ - Desk.events.READ token: max-ttl: 3600 audit: none - path: /api/v1/events/{eventId} method: patch operationId: updateEvent x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.UPDATE - Desk.events.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/events/deleteSpam method: post operationId: deleteSpamEvents x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/events/updateMany method: post operationId: bulkUpdateEvents x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.UPDATE - Desk.events.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/events/moveToTrash method: post operationId: deleteEvent x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.DELETE - Desk.events.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/events method: get operationId: getEventsByTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.events.READ - Desk.events.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/events/emptySpam method: post operationId: deleteAllSpamEvents x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/events/{eventId}/comments method: get operationId: getEventComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.events.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/events/{eventId}/comments method: post operationId: createEventComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/events/{eventId}/comments/{commentId} method: get operationId: getEventComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.events.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/events/{eventId}/comments/{commentId} method: put operationId: updateEventComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.events.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Events/{event}/actions/cancel method: post operationId: cancelMeetings x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.Modules.Events.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /__features method: get operationId: getFeatureDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.features.READ token: max-ttl: 3600 audit: none - path: /__features/{feature} method: get operationId: getFeatureSepcificDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.features.READ token: max-ttl: 3600 audit: none - path: /api/v1/organizationFields/{fieldId} method: get operationId: getField x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/organizationFields/{fieldId} method: patch operationId: updateField 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/v1/organizationFields/{fieldId}/permissions method: get operationId: getFieldPermissions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/organizationFields/{fieldId}/permissions method: patch operationId: updateFieldPermissions 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/v1/customFieldCount method: get operationId: getCustomFieldCount x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/organizationFields method: get operationId: getFields x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/organizationFields method: post operationId: createField 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: /files method: post operationId: uploadFiles x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.files.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /files method: get operationId: getFile x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.files.READ token: max-ttl: 3600 audit: none - path: /api/v1/zohoFinance/{financeService}/invoices method: get operationId: getInvoices x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.integrations.READ token: max-ttl: 3600 audit: none - path: /api/v1/zohoFinance/{financeService}/estimates method: get operationId: getEstimates x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.integrations.READ token: max-ttl: 3600 audit: none - path: /api/v1/zohoFinance/{financeService}/estimates/{id} method: patch operationId: updateEstimateStatus x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.integrations.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/zohoFinance/{financeService}/invoices/{id} method: patch operationId: updateInvoiceStatus x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.integrations.UPDATE 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/v1/zohoFinance/{financeService}/invoices/markAsSent method: post operationId: markInvoicesAsSent x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.integrations.CREATE 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/v1/finance/invoices/{id}/tickets method: get operationId: getTicketsForInvoiceId x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/{moduleAPIName}/{entityId}/followersCount method: get operationId: getEntityFollowersCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/{moduleAPIName}/{entityId}/followers method: get operationId: getEntityFollowers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/{moduleAPIName}/{entityId}/unfollow method: post operationId: unfollowEntity x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/{moduleAPIName}/{entityId}/follow method: post operationId: followEntity x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/actions/{id}/execute method: post operationId: executeAction x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/global_picklists/{id}/actions/replace_picklist_values method: post operationId: replacePicklistValues x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.global_picklist.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/global_picklists/{id}/actions/replaced_values method: get operationId: getReplacedValues x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.global_picklist.READ token: max-ttl: 3600 audit: none - path: /settings/global_picklists/{id}/actions/associations method: get operationId: getGlobalPickListFieldAssociations x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.global_picklist.READ token: max-ttl: 3600 audit: none - path: /api/v1/helpCenters/{helpcenterId}/sitemaps method: post operationId: createSiteMaps x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/helpCenters method: get operationId: getAllHelpCenters x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/helpCenters/{helpcenterId} method: get operationId: getHelpCenter x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/groups/{groupId}/users method: get operationId: getHelpCenterGroupUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.search.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/groups/{groupId} method: get operationId: getHelpCenterGroup x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/groups/{groupId} method: delete operationId: deleteHelpCenterUserGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/groups/{groupId} method: patch operationId: updateHelpCenterUserGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/groups/{groupId}/users/remove method: post operationId: deleteHCGroupUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/groups method: get operationId: getHelpCenterGroupList x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/groups method: post operationId: addHelpCenterGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/groups/{groupId}/users/add method: post operationId: addHelpCenterGroupUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/holidayList method: get operationId: getHolidayLists x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/holidayList method: post operationId: createHolidayList x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/holidayList/{holidayListId} method: get operationId: getHolidayList x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/holidayList/{holidayListId} method: patch operationId: updateHolidayList x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/holidays method: get operationId: getHolidays x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.business_hours.READ token: max-ttl: 3600 audit: none - path: /settings/holidays method: post operationId: createHolidays x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/holidays method: put operationId: updateHolidays x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/holidays/{holidayId} method: put operationId: updateHoliday x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/holidays/{holidayId} method: get operationId: getHoliday x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.business_hours.READ token: max-ttl: 3600 audit: none - path: /settings/holidays/{holidayId} method: delete operationId: deleteHoliday x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/im/channels/{id} method: get operationId: getIMChannel x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.InstantMessages.READ - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/im/channels method: get operationId: getIMChannelsList x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.InstantMessages.READ - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/im/channels/{channelId}/initiateSession method: post operationId: initiateSessionUsingTemplate x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.InstantMessages.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/channels/{channel_id}/photo method: post operationId: uploadChannelPhoto x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/im/metrics/agents method: get operationId: getAgentMetrics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.InstantMessages.READ - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/im/sessions method: get operationId: getSessions x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.InstantMessages.READ token: max-ttl: 3600 audit: none - path: /api/v1/im/sessions/{id} method: get operationId: getSession x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.InstantMessages.READ token: max-ttl: 3600 audit: none - path: /api/v1/im/cannedMessages/{id} method: get operationId: getCannedMessage x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.InstantMessages.READ - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/im/cannedMessages method: get operationId: getCannedMessages x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.InstantMessages.READ - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/importMappings method: post operationId: getImportMappings x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.imports.CUSTOM audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/imports/{importId} method: get operationId: getImport x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.imports.CUSTOM token: max-ttl: 3600 audit: none - path: /api/v1/imports method: post operationId: createImport x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.imports.CUSTOM audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbCategory/{categoryId}/repositionArticles method: get operationId: getArticlesForRepositioning x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/kbCategory/{categoryId}/repositionArticles method: post operationId: updateKBArticlesRepositioning x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbCategoryLogo method: post operationId: updateKBCategoryLogo x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbRootCategories/{rootCategoryId}/reviewOwners/remove method: post operationId: deleteKBCategoryReviewOwners x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbRootCategories/{rootCategoryId} method: get operationId: getKBRootCategory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/kbRootCategories method: get operationId: getAllKBRootCategories x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/kbRootCategories method: post operationId: addKBRootCategory x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbRootCategories/{rootCategoryId}/moderators/add method: post operationId: addKBRootCategoryModerators x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbRootCategories/{rootCategoryId}/reviewOwners method: get operationId: getKBRootCategoryReviewOwners x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/kbRootCategories/{rootCategoryId}/reviewOwners/add method: post operationId: addKBRootCategoryReviewOwners x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbRootCategories/{rootCategoryId}/translations/{locale}/permalinks/remove method: post operationId: deleteKBRootCategoryPermalink x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbRootCategories/{rootCategoryId}/translations/{locale}/permalinks/add method: post operationId: addKBRootCategoryPermalink x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbRootCategories/{rootCategoryId}/categoryTree method: get operationId: getKBRootCategoryTree x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/kbRootCategories/{rootCategoryId}/moderators/remove method: post operationId: deleteKBRootCategoryModerators x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbSections method: post operationId: addKBSection x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/kbSections/{sectionId} method: get operationId: getKBSection x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ token: max-ttl: 3600 audit: none - path: /api/v1/kbSections/{sectionId} method: patch operationId: updateKBSection x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/labels/{labelId}/users method: get operationId: getUsersByLabel x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.search.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/labels method: get operationId: getLabels x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/labels method: post operationId: createLabel x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/labels/{labelId} method: get operationId: getLabel x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/labels/{labelId} method: delete operationId: deleteLabel x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/labels/{labelId} method: patch operationId: updateLabel x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/labels/{labelId}/users/add method: post operationId: assignLabelToUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/labels/{labelId}/users/remove method: post operationId: removeLabelsFromUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts method: get operationId: getLayouts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts method: post operationId: createLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/standardLayoutFormat method: get operationId: getStandardLayoutFormat x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/clone method: post operationId: cloneLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/fields/{fieldId}/value method: get operationId: exportPickListValues x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/deactivate method: post operationId: deactivateLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId} method: get operationId: getLayout x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId} method: delete operationId: deleteLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId} method: patch operationId: updateLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/activate method: post operationId: activateLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/fields/{fieldId}/cloneFieldsInLayout method: post operationId: cloneFieldsToOtherLayouts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/profiles method: get operationId: getLayoutProfiles x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/profiles method: patch operationId: associateProfilesToLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/myForm method: get operationId: getMyForm x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/replaceValues method: post operationId: replacePickListValue x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/fields/{fieldId} method: patch operationId: updateLayoutField x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/fields/{fieldId}/unassociate method: post operationId: removeFieldFromLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/layoutRules/criteriaFields method: get operationId: getLayoutRuleCriteria x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/layoutRules/{layoutRuleId} method: get operationId: getLayoutRule x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/layoutRules/{layoutRuleId} method: delete operationId: deleteLayoutRule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/layoutRules/{layoutRuleId} method: patch operationId: updateLayoutRule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/layoutRules method: post operationId: createLayoutRule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layoutRules method: get operationId: getLayoutRules x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /settings/layouts/{id} method: patch operationId: updateLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.layouts.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Leads/{leadId}/__conversion_options method: get operationId: getLeadConversionOptions x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.leads.READ token: max-ttl: 3600 audit: none - path: /Leads/{leadId}/actions/convert method: post operationId: convertLead x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.leads.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Leads/actions/mass_convert method: post operationId: massConvert x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.mass_convert.leads.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Leads/actions/mass_convert method: get operationId: getJobStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.mass_convert.leads.READ token: max-ttl: 3600 audit: none - path: /api/v1/licenses/features method: get operationId: featureInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/licenses/features/{featureCode}/availability method: get operationId: checkLicenseAvailability x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/licenses/plan method: get operationId: planinfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /{moduleName}/{recordId}/Locking_Information__s method: get operationId: getRecordLockingInformationOfTheRecord x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.modules.READ token: max-ttl: 3600 audit: none - path: /{moduleName}/{recordId}/Locking_Information__s method: post operationId: lockRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleName}/{recordId}/Locking_Information__s/{lockId} method: put operationId: updateReasonofLockedRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleName}/{recordId}/Locking_Information__s/{lockId} method: delete operationId: removeLockFromLockedRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/mailReplyAddress/{mailReplyAddressId}/sendVerification method: post operationId: sendVerificationEmail x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.basic.CREATE - Desk.settings.CREATE 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/v1/mailReplyAddress method: get operationId: getReplyMailAddresses x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /restapi/v2/orgs method: get operationId: getOrganizations x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces method: get operationId: getAllWorkspaces x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/owned method: get operationId: getOwnedWorkspaces x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/shared method: get operationId: getSharedWorkspaces x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views method: get operationId: getViews x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/folders method: get operationId: getFolders x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/recentviews method: get operationId: getRecentViews x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/trash method: get operationId: getTrashViews x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/dashboards method: get operationId: getDashboards x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/dashboards/owned method: get operationId: getOwnedDashboards x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/dashboards/shared method: get operationId: getSharedDashboards x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/secretkey method: get operationId: getWorkspaceSecretKey x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id} method: get operationId: getWorkspaceDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/views/{view-id} method: get operationId: getViewDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/querytables/{query-table-id} method: get operationId: getQueryTableDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/metadata method: get operationId: getTableMetadata x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/dependents method: get operationId: getViewDependents x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/{column-id}/dependents method: get operationId: getColumnDependents x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/favorite method: post operationId: addFavoriteWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/favorite method: delete operationId: removeFavoriteWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/default method: post operationId: addDefaultWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/default method: delete operationId: removeDefaultWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/favorite method: post operationId: addFavoriteView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/favorite method: delete operationId: removeFavoriteView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/template/data method: get operationId: exportAsTemplate x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/customformulas method: get operationId: getCustomFormulaList x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/aggregateformulas method: get operationId: getAggregateFormulaList x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/aggregateformulas method: get operationId: getAggregateFormulasInWorkspace x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/aggregateformulas/{formula-id}/dependents method: get operationId: getAggregateFormulaDependents x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/aggregateformulas/{formula-id}/value method: get operationId: getAggregateFormulaValue x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/metadetails method: get operationId: getMetaDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/emailschedules method: get operationId: getEmailSchedules x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/datasources method: get operationId: getDatasources x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/importdetails method: get operationId: getLastImportDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/datasource/{datasource-id}/sync method: post operationId: syncDatasource x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/sync method: post operationId: refetchDatasource x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/datasource/{datasource-id} method: put operationId: updateDatasourceConnection x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/wlaccess method: post operationId: enableDomainWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/wlaccess method: delete operationId: disableDomainWorkspace x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - ZohoAnalytics.metadata.update audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /restapi/v2/automl/analysis method: get operationId: getAutoMLAnalysisInOrg x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis method: get operationId: getAutoMLAnalysisInWorkspace x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id} method: get operationId: getAutoMLAnalysisDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id}/models/{model-id}/deployments method: get operationId: getDeploymentsForModel x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.metadata.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces method: post operationId: createWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id} method: post operationId: copyWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id} method: put operationId: renameWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id} method: delete operationId: deleteWorkspace x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/tables method: post operationId: createTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/querytables method: post operationId: createQueryTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/querytables/{table-id} method: put operationId: editQueryTable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/reports method: post operationId: createReport x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/reports/{report-id} method: put operationId: updateReport x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/saveas method: post operationId: saveAsView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/movetofolder method: put operationId: moveViewsToFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id} method: put operationId: renameView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id} method: delete operationId: deleteView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/trash/{view-id} method: post operationId: restoreTrashView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/trash/{view-id} method: delete operationId: deleteTrashView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/folders method: post operationId: createFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/folders/{folder-id} method: put operationId: renameFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/folders/{folder-id} method: delete operationId: deleteFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/folders/{folder-id}/default method: post operationId: makeDefaultFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/folders/{folder-id}/move method: put operationId: changeFolderHierarchy x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/folders/{folder-id}/reorder method: put operationId: changeFolderPosition x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/data/sort method: put operationId: sortDataByColumns x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns method: post operationId: addColumn x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/{column-id} method: put operationId: renameColumn x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/{column-id} method: delete operationId: deleteColumn x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/{column-id}/lookup method: post operationId: addLookup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/{column-id}/lookup method: delete operationId: removeLookup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/hide method: put operationId: hideColumns x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/show method: put operationId: showColumns x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/reorder method: put operationId: reorderColumns x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{source-workspace-id}/views/copy method: post operationId: copyViews x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/formulas/copy method: post operationId: copyFormulas x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/similarviews method: post operationId: createSimilarViews x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/autoanalyse method: post operationId: autoAnalyseView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/columns/{column-id}/autoanalyse method: post operationId: autoAnalyseColumn x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/variables method: get operationId: getVariables x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.modeling.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/variables method: post operationId: createVariable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/variables/{variable-id} method: get operationId: getVariableDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.modeling.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/variables/{variable-id} method: put operationId: updateVariable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/variables/{variable-id} method: delete operationId: deleteVariable x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/customformulas method: post operationId: addFormulaColumn x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/customformulas/{formula-id} method: put operationId: editFormulaColumn x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/customformulas/{formula-id} method: delete operationId: deleteFormulaColumn x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/aggregateformulas method: post operationId: addAggregateFormula x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/aggregateformulas/{formula-id} method: put operationId: editAggregateFormula x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/aggregateformulas/{formula-id} method: delete operationId: deleteAggregateFormula x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/emailschedules method: post operationId: createEmailSchedule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/emailschedules/{schedule-id} method: put operationId: updateEmailSchedule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/emailschedules/{schedule-id} method: delete operationId: deleteEmailSchedule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/emailschedules/{schedule-id}/trigger method: post operationId: triggerEmailSchedule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/{view-id}/emailschedules/{schedule-id}/status method: put operationId: changeEmailScheduleStatus x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis method: post operationId: createAutoMLAnalysis x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id}/models/{model-id}/deployments method: post operationId: createAutoMLAnalysisDeployment x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id}/models/{model-id}/whatif method: post operationId: autoMLWhatIfAnalysis x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id}/deployments/{deployment-id}/execute method: post operationId: runAutoMLAnalysis x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoAnalytics.modeling.create audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id}/deployments/{deployment-id} method: delete operationId: deleteAutoMLAnalysisModelDeployment x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id}/models/{model-id} method: delete operationId: deleteAutoMLAnalysisModel x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/automl/workspaces/{workspace-id}/analysis/{analysis-id} method: delete operationId: deleteAutoMLAnalysis x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.modeling.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizationModules/{moduleId} method: get operationId: getModule x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/organizationModules/{moduleId} method: put operationId: updateModule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/myAccessibleModules method: get operationId: getMyModules x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/modules method: get operationId: getModulesDeprecated x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/organizationModules method: get operationId: getModules x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/organizationModules method: post operationId: createModule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/{customModuleApiName}/count method: get operationId: getCustomModuleRecordsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.custommodule.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/History method: get operationId: getTicketHistory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /Notes method: get operationId: getNotesModule x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.notes.READ token: max-ttl: 3600 audit: none - path: /Notes method: post operationId: createNotesModule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.notes.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Notes method: put operationId: updateNotesModule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.notes.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Notes method: delete operationId: deleteNotesModule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.notes.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Notes/{id} method: get operationId: getNoteById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.notes.READ token: max-ttl: 3600 audit: none - path: /Notes/{id} method: put operationId: updateNoteById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.notes.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Notes/{id} method: delete operationId: deleteNoteById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.notes.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecordId}/Notes method: get operationId: getNotes x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.notes.READ token: max-ttl: 3600 audit: none - path: /{parentRecordModule}/{parentRecordId}/Notes method: post operationId: createNotes x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.notes.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecordId}/Notes method: put operationId: updateBulkNotes x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.notes.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecordId}/Notes method: delete operationId: deleteBulkNotes x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.notes.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecordId}/Notes/{noteId} method: get operationId: getNotesById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.notes.READ token: max-ttl: 3600 audit: none - path: /{parentRecordModule}/{parentRecordId}/Notes/{noteId} method: put operationId: updateNotes x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.notes.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecordId}/Notes/{noteId} method: delete operationId: deleteNotes x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.notes.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/currencies method: get operationId: getCurrencies x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.currencies.READ token: max-ttl: 3600 audit: none - path: /org/currencies method: post operationId: createCurrencies x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.currencies.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/currencies method: put operationId: updateCurrencies x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.currencies.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/currencies/{currency} method: get operationId: getCurrencyById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.currencies.READ token: max-ttl: 3600 audit: none - path: /org/currencies/{currency} method: put operationId: updateCurrencyById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.currencies.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/currencies/actions/enable method: post operationId: enableCurrency x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.currencies.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/currencies/actions/enable method: put operationId: updateBaseCurrency x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.currencies.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org method: get operationId: getOrganization x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.org.READ token: max-ttl: 3600 audit: none - path: /org/photo method: get operationId: getOrgPhoto x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.org.READ token: max-ttl: 3600 audit: none - path: /org/photo method: post operationId: uploadOrganizationPhoto x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.org.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/photo method: delete operationId: delete x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.org.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizations/{organizationId} method: get operationId: getOrganization x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/organizations/{organizationId} method: patch operationId: updateOrganization x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizations/{organizationId}/favicon method: get operationId: getOrganizationFavicon x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/organizations/{organizationId}/favicon method: post operationId: updateOrganizationFavicon x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizations/{organizationId}/favicon method: delete operationId: deleteOrganizationFavicon x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizations/markDefault method: post operationId: updateDefaultOrganizaion x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizations/{organizationId}/logo method: get operationId: getOrganizationLogo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/v1/organizations/{organizationId}/logo method: post operationId: updateOrganizationLogo x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizations/{organizationId}/logo method: delete operationId: deleteOrganizationLogo x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/organizations method: get operationId: getOrganizations x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/accessibleOrganizations method: get operationId: getAccessibleOrganizations x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/myPendingApprovals method: get operationId: getMyPendingApprovals x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/permalink/availability method: get operationId: checkPermalinkAvailability x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/permalinks method: get operationId: getTopicPermalinks x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.community.READ - Desk.forums.READ token: max-ttl: 3600 audit: none - path: /api/v1/communityTopics/{topicId}/permalinks method: patch operationId: updateTopicPermalinks x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.community.UPDATE - Desk.forums.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{record}/photo method: get operationId: getPhoto x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.READ token: max-ttl: 3600 audit: none - path: /{module}/{record}/photo method: post operationId: uploadPhoto x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{record}/photo method: delete operationId: deletePhoto x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/pins/unpin method: post operationId: unPinConversations x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/pins method: get operationId: getPinnedConversations x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/pins method: post operationId: pinConversationOnTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/{productId} method: get operationId: getProduct x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.products.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/products/{productId} method: patch operationId: updateProduct x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.products.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products method: get operationId: getProducts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.products.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/products method: post operationId: createProduct x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.products.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/moveToTrash method: post operationId: deleteProduct x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.products.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/{productId}/associateAccounts method: post operationId: associateAccountsWithProduct x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.products.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/{productId}/associateContacts method: post operationId: associateContactsWithProduct x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.products.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/searchDuplicates method: get operationId: searchProductDuplicates x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.products.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/{accountId}/products method: get operationId: getProductsUnderAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.products.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/{contactId}/products method: get operationId: getProductsUnderContact x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.products.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/products/{productId}/attachments method: get operationId: getProductAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.products.UPDATE token: max-ttl: 3600 audit: none - path: /api/v1/products/{productId}/attachments method: post operationId: createProductAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.products.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/{productId}/attachments/{attachmentId} method: delete operationId: deleteProductAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.products.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/myProfile method: get operationId: getMyProfile x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/profiles/{profileId} method: get operationId: getProfile x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/profiles/{profileId} method: patch operationId: updateProfile x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/profiles/count method: get operationId: getProfileCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/lightAgentProfile method: get operationId: getLightAgentProfile x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/profiles/{profileId}/clone method: post operationId: cloneProfile x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/profiles/{profileId}/delete method: post operationId: deleteProfile x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/profiles method: get operationId: getProfileList x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/myProfilePermissions method: get operationId: getMyProfilePermissions x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/profiles/{profileId}/agents method: get operationId: getAgentsByProfile x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /read method: post operationId: createBulkReadJob x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.bulk.READ - ZohoCRM.modules.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /read/{jobId} method: get operationId: getBulkReadJobDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.bulk.READ - ZohoCRM.modules.ALL token: max-ttl: 3600 audit: none - path: /read/{jobId}/result method: get operationId: downloadResult x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.bulk.READ - ZohoCRM.modules.ALL token: max-ttl: 3600 audit: none - path: /{module} method: get operationId: getRecords x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Activities.READ - ZohoCRM.modules.Attachments.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Forecasts.READ - ZohoCRM.modules.Invoices.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Notes.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.custom.READ token: max-ttl: 3600 audit: none - path: /{module} method: post operationId: createRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.CREATE - ZohoCRM.modules.Activities.CREATE - ZohoCRM.modules.Attachments.CREATE - ZohoCRM.modules.CREATE - ZohoCRM.modules.Calls.CREATE - ZohoCRM.modules.Campaigns.CREATE - ZohoCRM.modules.Cases.CREATE - ZohoCRM.modules.Contacts.CREATE - ZohoCRM.modules.Deals.CREATE - ZohoCRM.modules.Events.CREATE - ZohoCRM.modules.Forecasts.CREATE - ZohoCRM.modules.Invoices.CREATE - ZohoCRM.modules.Leads.CREATE - ZohoCRM.modules.Notes.CREATE - ZohoCRM.modules.Products.CREATE - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.Solutions.CREATE - ZohoCRM.modules.Tasks.CREATE - ZohoCRM.modules.Vendors.CREATE - ZohoCRM.modules.custom.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module} method: put operationId: updateRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.UPDATE - ZohoCRM.modules.Activities.UPDATE - ZohoCRM.modules.Attachments.UPDATE - ZohoCRM.modules.Calls.UPDATE - ZohoCRM.modules.Campaigns.UPDATE - ZohoCRM.modules.Cases.UPDATE - ZohoCRM.modules.Contacts.UPDATE - ZohoCRM.modules.Deals.UPDATE - ZohoCRM.modules.Events.UPDATE - ZohoCRM.modules.Forecasts.UPDATE - ZohoCRM.modules.Invoices.UPDATE - ZohoCRM.modules.Leads.UPDATE - ZohoCRM.modules.Notes.UPDATE - ZohoCRM.modules.Products.UPDATE - ZohoCRM.modules.Quotes.UPDATE - ZohoCRM.modules.Solutions.UPDATE - ZohoCRM.modules.Tasks.UPDATE - ZohoCRM.modules.UPDATE - ZohoCRM.modules.Vendors.UPDATE - ZohoCRM.modules.custom.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module} method: delete operationId: deleteRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.DELETE - ZohoCRM.modules.Activities.DELETE - ZohoCRM.modules.Attachments.DELETE - ZohoCRM.modules.Calls.DELETE - ZohoCRM.modules.Campaigns.DELETE - ZohoCRM.modules.Cases.DELETE - ZohoCRM.modules.Contacts.DELETE - ZohoCRM.modules.DELETE - ZohoCRM.modules.Deals.DELETE - ZohoCRM.modules.Events.DELETE - ZohoCRM.modules.Forecasts.DELETE - ZohoCRM.modules.Invoices.DELETE - ZohoCRM.modules.Leads.DELETE - ZohoCRM.modules.Notes.DELETE - ZohoCRM.modules.Products.DELETE - ZohoCRM.modules.Quotes.DELETE - ZohoCRM.modules.Solutions.DELETE - ZohoCRM.modules.Tasks.DELETE - ZohoCRM.modules.Vendors.DELETE - ZohoCRM.modules.custom.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{recordID} method: get operationId: getRecord x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Activities.READ - ZohoCRM.modules.Attachments.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Forecasts.READ - ZohoCRM.modules.Invoices.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Notes.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.custom.READ token: max-ttl: 3600 audit: none - path: /{module}/{recordID} method: put operationId: updateRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.UPDATE - ZohoCRM.modules.Activities.UPDATE - ZohoCRM.modules.Attachments.UPDATE - ZohoCRM.modules.Calls.UPDATE - ZohoCRM.modules.Campaigns.UPDATE - ZohoCRM.modules.Cases.UPDATE - ZohoCRM.modules.Contacts.UPDATE - ZohoCRM.modules.Deals.UPDATE - ZohoCRM.modules.Events.UPDATE - ZohoCRM.modules.Forecasts.UPDATE - ZohoCRM.modules.Invoices.UPDATE - ZohoCRM.modules.Leads.UPDATE - ZohoCRM.modules.Notes.UPDATE - ZohoCRM.modules.Products.UPDATE - ZohoCRM.modules.Quotes.UPDATE - ZohoCRM.modules.Solutions.UPDATE - ZohoCRM.modules.Tasks.UPDATE - ZohoCRM.modules.UPDATE - ZohoCRM.modules.Vendors.UPDATE - ZohoCRM.modules.custom.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/{recordID} method: delete operationId: deleteRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.DELETE - ZohoCRM.modules.Activities.DELETE - ZohoCRM.modules.Attachments.DELETE - ZohoCRM.modules.Calls.DELETE - ZohoCRM.modules.Campaigns.DELETE - ZohoCRM.modules.Cases.DELETE - ZohoCRM.modules.Contacts.DELETE - ZohoCRM.modules.DELETE - ZohoCRM.modules.Deals.DELETE - ZohoCRM.modules.Events.DELETE - ZohoCRM.modules.Forecasts.DELETE - ZohoCRM.modules.Invoices.DELETE - ZohoCRM.modules.Leads.DELETE - ZohoCRM.modules.Notes.DELETE - ZohoCRM.modules.Products.DELETE - ZohoCRM.modules.Quotes.DELETE - ZohoCRM.modules.Solutions.DELETE - ZohoCRM.modules.Tasks.DELETE - ZohoCRM.modules.Vendors.DELETE - ZohoCRM.modules.custom.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{moduleApiName}/actions/count method: get operationId: getCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.ALL - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.pricebooks.READ - ZohoCRM.modules.purchaseorders.READ - ZohoCRM.modules.salesorders.READ - ZohoSearch.securesearch.READ token: max-ttl: 3600 audit: none - path: /api/v1/recycleBin/restore method: post operationId: restoreEntities x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/recycleBin/restoreAll method: post operationId: restoreAllEntities x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/recycleBin method: get operationId: getRecycleBinEntities x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/recycleBin/delete method: post operationId: deleteEntities x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/recycleBin/deleteAll method: post operationId: deleteAllEntities x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/reports/fields method: get operationId: getReportIntegrationFields x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.Desk.settings.READ - Desk.basic.READ token: max-ttl: 3600 audit: none - path: /api/v1/roles/{roleId} method: get operationId: getRole x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/roles/{roleId} method: patch operationId: updateRole x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/rolesByIds method: get operationId: getRolesByIds x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/personalRole method: get operationId: getPersonalRole x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/roles/count method: get operationId: getRoleCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/roles/{roleId}/agents method: get operationId: getAgentsByRole x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/roles/{roleId}/delete method: post operationId: deleteRole x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/roles method: get operationId: getRoles x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/roles method: post operationId: addRole x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/routingPreferences method: get operationId: getRoutingPreference x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/routingPreferences method: patch operationId: updateRoutingPreference x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/rulegroups method: get operationId: getRuleGroups x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/rulegroups method: post operationId: createRuleGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/rulegroups/{id} method: put operationId: updateRuleGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/search method: get operationId: searchTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.search.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/{moduleApiName}/search method: get operationId: searchRecords x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.custommodule.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /api/v1/calls/search method: get operationId: searchCalls x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.calls.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /api/v1/accounts/search method: get operationId: searchAccounts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /api/v1/articles/search method: get operationId: searchSolutions x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.articles.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /api/v1/products/search method: get operationId: searchProducts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.products.READ - Desk.search.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/contacts/search method: get operationId: searchContacts x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /api/v1/activities/search method: get operationId: searchActivities x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.activities.events.READ - Desk.activities.tasks.READ - Desk.calls.READ - Desk.events.READ - Desk.search.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/search method: get operationId: doSearch x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.search.READ - Desk.tasks.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/search method: get operationId: searchTasks x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.activities.events.READ - Desk.activities.tasks.READ - Desk.search.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/events/search method: get operationId: searchEvents x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.events.READ - Desk.search.READ token: max-ttl: 3600 audit: none - path: /{module}/search method: get operationId: getByModuleSearch x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.ALL - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Activities.READ - ZohoCRM.modules.Attachments.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Forecasts.READ - ZohoCRM.modules.Invoices.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Notes.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ - ZohoCRM.modules.custom.READ - ZohoCRM.users.ALL - ZohoCRM.users.READ - ZohoSearch.securesearch.READ token: max-ttl: 3600 audit: none - path: /Services__s method: get operationId: getServicesS x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.services.READ token: max-ttl: 3600 audit: none - path: /Services__s method: put operationId: putServicesS x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.services.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Services__s method: post operationId: postServicesS x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.services.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Services__s method: delete operationId: deleteServicesS x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.services.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Services__s/{id} method: get operationId: getServiceById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.services.READ token: max-ttl: 3600 audit: none - path: /Services__s/{id} method: put operationId: putServiceById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.services.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /Services__s/{id} method: delete operationId: deleteServiceById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.services.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/appointment_preferences method: get operationId: getAppointmentPreference x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.org.READ token: max-ttl: 3600 audit: none - path: /settings/appointment_preferences method: put operationId: updateAppointmentPreference x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.org.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/assignment_rules method: get operationId: getAssignmentRules x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.assignment_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/assignment_rules/{id} method: get operationId: getAssignmentRuleById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.assignment_rules.READ token: max-ttl: 3600 audit: none - path: /settings/audit_log_export method: post operationId: createAuditLogExport x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.audit_logs.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/audit_log_export method: get operationId: getAuditLogExports x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.audit_logs.READ token: max-ttl: 3600 audit: none - path: /settings/audit_log_export/{id} method: get operationId: getAuditLogExportsById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.audit_logs.READ token: max-ttl: 3600 audit: none - path: /settings/business_hours method: post operationId: createBusinessHours x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/business_hours method: put operationId: updateBusinessHours x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/business_hours method: get operationId: getBusinessHours x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.business_hours.READ token: max-ttl: 3600 audit: none - path: /settings/automation/cadences method: get operationId: getCadences x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.cadences.READ token: max-ttl: 3600 audit: none - path: /settings/call_preferences method: get operationId: getCallPreferences x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.modules.read token: max-ttl: 3600 audit: none - path: /settings/call_preferences method: put operationId: updateCallPreferences x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/custom_views method: get operationId: getCustomViews x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.custom_views.READ token: max-ttl: 3600 audit: none - path: /settings/custom_views/{id} method: get operationId: getCustomViewById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.custom_views.READ token: max-ttl: 3600 audit: none - path: /settings/custom_views/actions/change_sort method: put operationId: changeSort x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.custom_views.UPDATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/custom_views/{id}/actions/change_sort method: put operationId: changeSortById x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.custom_views.UPDATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/data_sharing method: get operationId: getDataSharing x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.data_sharing.ALL - ZohoCRM.settings.data_sharing.READ token: max-ttl: 3600 audit: none - path: /settings/data_sharing method: put operationId: updateDataSharing x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.data_sharing.ALL - ZohoCRM.settings.data_sharing.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/duplicate_check_preference method: get operationId: getDuplicateCheckPreference x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.duplicate_check_preference.READ token: max-ttl: 3600 audit: none - path: /settings/duplicate_check_preference method: post operationId: createDuplicateCheckPreference x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.duplicate_check_preference.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/duplicate_check_preference method: put operationId: updateDuplicateCheckPreference x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.duplicate_check_preference.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/duplicate_check_preference method: delete operationId: deleteDuplicateCheckPreference x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.duplicate_check_preference.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/email_templates method: get operationId: getTemplates x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.templates.email.READ token: max-ttl: 3600 audit: none - path: /settings/automation/field_updates method: get operationId: getFieldUpdates x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/field_updates method: post operationId: postFieldUpdates x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/field_updates method: delete operationId: deleteFieldUpdates x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/field_updates/{id} method: get operationId: getFieldUpdateById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/field_updates/{id} method: put operationId: putFieldUpdateById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/field_updates/{id} method: delete operationId: deleteFieldUpdateById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/fields method: get operationId: getFields x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.fields.READ token: max-ttl: 3600 audit: none - path: /settings/fields method: post operationId: postFields x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.fields.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/fields method: patch operationId: patchFields x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.fields.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/fields/{fieldId} method: get operationId: getFieldsWithID x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.fields.READ token: max-ttl: 3600 audit: none - path: /settings/fields/{fieldId} method: patch operationId: putFieldsWithId x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.fields.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/fields/{fieldId} method: delete operationId: deleteCustomField x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.fields.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/fiscal_year method: get operationId: getFiscalYear x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.fiscal_year.READ token: max-ttl: 3600 audit: none - path: /settings/fiscal_year method: put operationId: updateFiscalYear x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.fiscal_year.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/emails/actions/from_addresses method: get operationId: getAddresses x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.emails.READ token: max-ttl: 3600 audit: none - path: /settings/global_picklists method: get operationId: getBulkGlobalPicklists x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.global_picklist.READ token: max-ttl: 3600 audit: none - path: /settings/global_picklists method: post operationId: createGlobalPicklist x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.global_picklist.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/global_picklists/{id} method: get operationId: getSingleGlobalPicklists x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.global_picklist.READ token: max-ttl: 3600 audit: none - path: /settings/global_picklists/{id} method: patch operationId: updateGlobalPicklistById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.global_picklist.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/global_picklists/{id} method: delete operationId: deleteGlobalPicklist x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.global_picklist.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/global_picklists/{id}/actions/pick_list_values_associations method: get operationId: getPickListValuesAssociations x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.global_picklist.ALL token: max-ttl: 3600 audit: none - path: /settings/inventory_templates method: get operationId: getSettingsInventoryTemplates x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.templates.inventory.READ token: max-ttl: 3600 audit: none - path: /settings/layouts method: get operationId: getLayouts x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.layouts.READ token: max-ttl: 3600 audit: none - path: /settings/layouts/{id} method: get operationId: getLayoutById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.layouts.READ token: max-ttl: 3600 audit: none - path: /settings/layouts/{id} method: delete operationId: deleteLayout x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.layouts.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/layouts/{id}/actions/activate method: post operationId: layoutActivate x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.layouts.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/layouts/{id}/actions/activate method: delete operationId: layoutDeactivate x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.layouts.DELETE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/layouts/{layoutId}/map_dependency method: get operationId: getMapDependency x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.map_dependency.read token: max-ttl: 3600 audit: none - path: /settings/layouts/{layoutId}/map_dependency method: post operationId: createMapDependency x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.map_dependency.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/layouts/{layoutId}/map_dependency/{dependencyId} method: get operationId: getMapDependencyById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.map_dependency.read token: max-ttl: 3600 audit: none - path: /settings/layouts/{layoutId}/map_dependency/{dependencyId} method: put operationId: updateMapDependency x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.map_dependency.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/layouts/{layoutId}/map_dependency/{dependencyId} method: delete operationId: deleteMapDependency x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.map_dependency.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/tags/actions/mass_delete method: post operationId: createMassDeleteTags x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/tags/actions/mass_delete method: get operationId: getStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.tags.READ token: max-ttl: 3600 audit: none - path: /settings/modules method: get operationId: getModules x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.modules.READ token: max-ttl: 3600 audit: none - path: /settings/modules method: post operationId: createModules x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/modules method: put operationId: updateModules x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/modules/{moduleIdentifier} method: get operationId: getModuleByApiName x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.modules.READ token: max-ttl: 3600 audit: none - path: /settings/modules/{moduleIdentifier} method: put operationId: updateModuleByApiName x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/fields/{fieldId}/pick_list_values method: get operationId: getPickListValues x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.fields.READ token: max-ttl: 3600 audit: none - path: /settings/pipeline method: get operationId: getPipelines x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.pipeline.READ token: max-ttl: 3600 audit: none - path: /settings/pipeline method: post operationId: createPipeline x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.pipeline.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/pipeline method: patch operationId: updateOrDeletePipelinePatch x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.pipeline.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/pipeline method: put operationId: updateOrDeletePipelinePut x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.pipeline.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/pipeline/{id} method: get operationId: getPipeline x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.pipeline.READ token: max-ttl: 3600 audit: none - path: /settings/pipeline/{id} method: patch operationId: updateOrDeletePipelinePatchURL x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.pipeline.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/pipeline/{id} method: put operationId: updateOrDeletePipelinePutURL x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.pipeline.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/pipeline/actions/transfer method: post operationId: transferAndDeletePipelines x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.pipeline.CREATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal}/user_type method: get operationId: getPortalUserTypes x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.clientportal.READ token: max-ttl: 3600 audit: none - path: /settings/portals/{portal}/user_type method: post operationId: createPortalUserType x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal}/user_type/{userTypeId} method: get operationId: getPortalUserType x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.clientportal.READ token: max-ttl: 3600 audit: none - path: /settings/portals/{portal}/user_type/{userTypeId} method: put operationId: updatePortalUserType x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal}/user_type/{userTypeId} method: delete operationId: deletePortalUserType x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal}/user_type/{userType}/users method: get operationId: getPortalUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.clientportal.READ token: max-ttl: 3600 audit: none - path: /settings/portals/{portal}/user_type/{userType}/users method: delete operationId: deletePortalUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal}/user_type/{userType}/users/action/transfer method: post operationId: transferPortalUsers x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.clientportal.UPDATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal}/user_type/{userType}/users/{recordId}/actions/change_status method: post operationId: changePortalUsersStatus x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal}/user_type/{userType}/users/actions/change_status method: post operationId: changePortalUsersStatusBulk x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals method: get operationId: getPortals x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.clientportal.READ token: max-ttl: 3600 audit: none - path: /settings/portals method: post operationId: createPortal x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal} method: get operationId: getPortal x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.clientportal.READ token: max-ttl: 3600 audit: none - path: /settings/portals/{portal} method: put operationId: updatePortal x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/portals/{portal} method: delete operationId: deletePortal x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.clientportal.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/profiles method: get operationId: getProfiles x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.profiles.READ token: max-ttl: 3600 audit: none - path: /settings/profiles/{id}/actions/clone method: post operationId: cloneProfile x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.profiles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/profiles/{id} method: put operationId: updateProfile x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.profiles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/profiles/{id} method: get operationId: getProfile x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.profiles.READ token: max-ttl: 3600 audit: none - path: /settings/profiles/{id} method: delete operationId: deleteProfile x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.profiles.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/record_locking_configurations method: post operationId: createRecordLockingConfiguration x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.record_locking_configurations.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/record_locking_configurations method: put operationId: updateRecordLockingConfiguration x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.record_locking_configurations.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/record_locking_configurations method: get operationId: getRecordLockingConfiguration x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.record_locking_configurations.READ token: max-ttl: 3600 audit: none - path: /settings/record_locking_configurations method: delete operationId: deleteRecordLockingConfiguration x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.record_locking_configurations.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/record_locking_configurations/{id} method: put operationId: updateRecordLockingConfigurationPassingIdInURL x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.record_locking_configurations.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/record_locking_configurations/{id} method: get operationId: getRecordLockingConfigurationPassingIdInURL x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.record_locking_configurations.READ token: max-ttl: 3600 audit: none - path: /settings/record_locking_configurations/{id} method: delete operationId: deleteRecordLockingConfigurationPassingIdInURL x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.record_locking_configurations.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/recycle_bin method: get operationId: getRecycleBinRecords x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.recycle_bin.READ token: max-ttl: 3600 audit: none - path: /settings/recycle_bin method: delete operationId: deleteRecycleBinRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.recycle_bin.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/recycle_bin/actions/restore method: post operationId: restoreRecycleBinRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.recycle_bin.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/recycle_bin/actions/count method: get operationId: getRecycleBinCounts x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.recycle_bin.READ token: max-ttl: 3600 audit: none - path: /settings/recycle_bin/actions/empty method: post operationId: emptyRecycleBin x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.recycle_bin.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/recycle_bin/{recordId}/actions/restore method: post operationId: restoreRecycleBinRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.recycle_bin.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/recycle_bin/{recordId} method: get operationId: getRecycleBinRecord x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.recycle_bin.READ token: max-ttl: 3600 audit: none - path: /settings/recycle_bin/{recordId} method: delete operationId: deleteRecycleBinRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.recycle_bin.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/related_lists method: get operationId: getRelatedLists x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.related_lists.READ token: max-ttl: 3600 audit: none - path: /settings/roles method: get operationId: getRoles x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.roles.READ token: max-ttl: 3600 audit: none - path: /settings/roles method: post operationId: createRoles x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.roles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/roles method: put operationId: updateRoles x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.roles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/roles/{role} method: get operationId: getRole x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.roles.READ token: max-ttl: 3600 audit: none - path: /settings/roles/{role} method: put operationId: updateRole x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.roles.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/roles/{role} method: delete operationId: deleteRole x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.roles.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules method: get operationId: getScoringRules x-agentic-access: action-class: connected consequence: read subject: optional scope: - settings.scoring_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/scoring_rules method: put operationId: putScoringRules x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules method: post operationId: postScoringRules x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules method: delete operationId: deleteScoringRules x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules/{ruleId} method: get operationId: getScoringRuleById x-agentic-access: action-class: connected consequence: read subject: optional scope: - settings.scoring_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/scoring_rules/{ruleId} method: put operationId: putScoringRuleById x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules/{ruleId} method: delete operationId: deleteScoringRuleById x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules/{ruleId}/actions/activate method: put operationId: putActivate x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules/{ruleId}/actions/activate method: delete operationId: deleteActivate x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/scoring_rules/{ruleId}/actions/clone method: post operationId: postClone x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.scoring_rules.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/service_preferences method: get operationId: getServicePreference x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.modules.READ token: max-ttl: 3600 audit: none - path: /settings/service_preferences method: put operationId: updateServicePreference x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/business_hours/shift_hours method: get operationId: getShifts x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.business_hours.READ token: max-ttl: 3600 audit: none - path: /settings/business_hours/shift_hours method: post operationId: createShifts x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/business_hours/shift_hours method: put operationId: updateShiftHours x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/business_hours/shift_hours/{shift} method: get operationId: getSingleShiftHour x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.business_hours.READ token: max-ttl: 3600 audit: none - path: /settings/business_hours/shift_hours/{shift} method: put operationId: updateSingleShiftHour x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/business_hours/shift_hours/{shift} method: delete operationId: deleteSingleShiftHour x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.business_hours.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/tags method: get operationId: getTags x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.tags.READ token: max-ttl: 3600 audit: none - path: /settings/tags method: put operationId: putTags x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/tags method: post operationId: postTags x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/tags/{id} method: put operationId: putTagsWithId x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/tags/{id} method: delete operationId: deleteTags x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/tags/{id}/actions/records_count method: get operationId: getRecordsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.tags.all token: max-ttl: 3600 audit: none - path: /settings/tags/{id}/actions/merge method: post operationId: postMerge x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.tags.all audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories method: get operationId: getAllTerritories x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.READ token: max-ttl: 3600 audit: none - path: /settings/territories method: post operationId: createTerritories x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories method: put operationId: updateTerritory x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories method: delete operationId: deleteTerritories x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/{id} method: get operationId: getTerritory x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.READ token: max-ttl: 3600 audit: none - path: /settings/territories/{id} method: put operationId: updateTerritoryById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/{id} method: delete operationId: deleteTerritoryById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/actions/transfer_and_delete method: post operationId: transferAndDeleteTerritories x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.territories.DELETE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/{id}/actions/transfer_and_delete method: post operationId: transferAndDeleteTerritoryById x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.territories.DELETE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/{id}/__child_territories method: get operationId: getChildTerritoriesById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.READ token: max-ttl: 3600 audit: none - path: /settings/territories/actions/associated_users_count method: get operationId: getAssociatedUsersCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.READ token: max-ttl: 3600 audit: none - path: /settings/territories/{territory}/users method: get operationId: getTerritoryUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.ALL - ZohoCRM.settings.territories.READ - ZohoCRM.users.ALL - ZohoCRM.users.READ token: max-ttl: 3600 audit: none - path: /settings/territories/{territory}/users method: put operationId: associateUsersToTerritory x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.ALL - ZohoCRM.users.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/{territory}/users method: delete operationId: deassociateUsersFromTerritories x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.ALL - ZohoCRM.users.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/{territory}/users/{user} method: get operationId: getUserDetailsFromTerritory x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.ALL - ZohoCRM.settings.territories.READ - ZohoCRM.users.ALL - ZohoCRM.users.READ token: max-ttl: 3600 audit: none - path: /settings/territories/{territory}/users/{user} method: put operationId: associateUserToSpecificTerritory x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.ALL - ZohoCRM.users.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/territories/{territory}/users/{user} method: delete operationId: deassociateUserFromSpecificTerritory x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.ALL - ZohoCRM.users.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/unsubscribe_links method: get operationId: getUnsubscribeLinks x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.unsubscribe.READ token: max-ttl: 3600 audit: none - path: /settings/unsubscribe_links method: put operationId: putUnsubscribeLinks x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.unsubscribe.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/unsubscribe_links method: post operationId: postUnsubscribeLinks x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.unsubscribe.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/unsubscribe_links/{id} method: get operationId: get111111000000115718 x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.unsubscribe.READ token: max-ttl: 3600 audit: none - path: /settings/unsubscribe_links/{id} method: put operationId: put111111000000115722 x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.unsubscribe.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/unsubscribe_links/{id} method: delete operationId: delete111111000000115722 x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.unsubscribe.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/unsubscribe_link/actions/associations method: get operationId: getAssociations x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.unsubscribe.READ token: max-ttl: 3600 audit: none - path: /settings/user_groups method: get operationId: getGroups x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.user_groups.ALL token: max-ttl: 3600 audit: none - path: /settings/user_groups method: post operationId: createGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.user_groups.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/user_groups/{group} method: get operationId: getGroup x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.user_groups.READ token: max-ttl: 3600 audit: none - path: /settings/user_groups/{group} method: put operationId: updateGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.user_groups.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/user_groups/{group} method: delete operationId: deleteGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.user_groups.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/user_groups/{group}/sources method: get operationId: getSources x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.user_groups.READ token: max-ttl: 3600 audit: none - path: /settings/user_groups/{group}/actions/sources_count method: get operationId: getSourcesCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.user_groups.READ token: max-ttl: 3600 audit: none - path: /settings/user_groups/actions/associated_users_count method: get operationId: getSettingsUserGroupsActionsAssociatedUsersCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.user_groups.READ token: max-ttl: 3600 audit: none - path: /settings/user_groups/{group}/actions/associations method: get operationId: getSettingsUserGroupsByGroupActionsAssociations x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.user_groups.READ token: max-ttl: 3600 audit: none - path: /settings/variable_groups method: get operationId: getVariableGroups x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.variable_groups.READ token: max-ttl: 3600 audit: none - path: /settings/variable_groups method: put operationId: putVariableGroups x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.variable_groups.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/variable_groups/{id} method: get operationId: getVariableGroupById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.variable_groups.READ token: max-ttl: 3600 audit: none - path: /settings/variable_groups/{id} method: put operationId: putVariableGroupById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.variable_groups.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/variables method: get operationId: getVariables x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.variables.READ token: max-ttl: 3600 audit: none - path: /settings/variables method: put operationId: putVariables x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.variables.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/variables method: post operationId: postVariables x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.variables.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/variables method: delete operationId: deleteVariables x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.variables.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/variables/{id} method: get operationId: getVariableById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.variables.READ token: max-ttl: 3600 audit: none - path: /settings/variables/{id} method: put operationId: putVariableById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.variables.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/variables/{id} method: delete operationId: deleteVariableById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.variables.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/webhooks method: get operationId: getWebhooks x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/webhooks method: put operationId: putWebhooks x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/webhooks method: post operationId: postWebhooks x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/webhooks method: delete operationId: deleteWebhooks x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/webhooks/{webhookId} method: get operationId: getWebhookById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/webhooks/{webhookId} method: put operationId: putWebhooksById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/webhooks/{webhookId} method: delete operationId: deleteWebhooksById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/webhook_failures method: get operationId: getWebhookFailures x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/webhooks/actions/associated_modules method: get operationId: getAssociatedModules x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/webhooks/actions/usage_reports method: get operationId: getUsageReports x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/wizards method: get operationId: getAllWizards x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.wizards.READ token: max-ttl: 3600 audit: none - path: /settings/automation/workflow_rules method: post operationId: postWorkflowRule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.workflow_rules.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/workflow_rules method: put operationId: updateWorkflowRule x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.workflow_rules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/workflow_rules method: get operationId: getWorkflowRules x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.workflow_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/workflow_rules method: delete operationId: deleteWorkflowRules x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.workflow_rules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/workflow_rules/{id} method: put operationId: updateWorkflowRuleById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.workflow_rules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/workflow_rules/{id} method: get operationId: getWorkflowRuleById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.workflow_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/workflow_rules/{id} method: delete operationId: deleteWorkflowRuleById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.workflow_rules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/workflow_rules/actions/actions_count method: get operationId: getActionsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.workflow_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/workflow_rules/actions/module_specific_count method: get operationId: getModuleSpecificActionsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.workflow_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/workflow_rules/actions/rules_count method: get operationId: getRulesCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.workflow_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/workflow_rules/{workflowRuleId}/actions/usage method: get operationId: getUsage x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.workflow_rules.READ token: max-ttl: 3600 audit: none - path: /settings/automation/workflow_rules/actions/reorder method: put operationId: putReorder x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.settings.workflow_rules.UPDATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/tasks method: get operationId: getTasks x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/tasks method: post operationId: postTasks x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/tasks method: delete operationId: deleteTasks x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/tasks/{id} method: get operationId: getTaskById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.automation_actions.READ token: max-ttl: 3600 audit: none - path: /settings/automation/tasks/{id} method: put operationId: putTasksById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/automation/tasks/{id} method: delete operationId: deleteTaskById x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.automation_actions.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /settings/zia/data_enrichment method: get operationId: getZiaEnrichmentConfiguration x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.zia.enrichment token: max-ttl: 3600 audit: none - path: /restapi/v2/orgadmins method: get operationId: getOrgAdmins x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.share.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/admins method: get operationId: getWorkspaceAdmins x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.share.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/admins method: post operationId: addWorkspaceAdmins x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/admins method: delete operationId: removeWorkspaceAdmins x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/share method: get operationId: getWorkspaceSharedDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.share.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/views/share method: post operationId: shareViews x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/share method: delete operationId: removeShare x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/views/share method: put operationId: UpdateSharedDetailsForView x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /workspaces/{workspace-id}/views/{view-id}/share/mypermissions method: get operationId: getMyPermissions x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.share.read token: max-ttl: 3600 audit: none - path: /workspaces/{workspace-id}/share/shareddetails method: get operationId: getSharedDetailsForViews x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.share.read token: max-ttl: 3600 audit: none - path: /workspaces/{workspace-id}/groups method: get operationId: getGroups x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.share.read token: max-ttl: 3600 audit: none - path: /workspaces/{workspace-id}/groups method: post operationId: createGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /workspaces/{workspace-id}/groups/{group-id} method: get operationId: getGroupDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.share.read token: max-ttl: 3600 audit: none - path: /workspaces/{workspace-id}/groups/{group-id} method: put operationId: renameGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /workspaces/{workspace-id}/groups/{group-id} method: delete operationId: deleteGroup x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /workspaces/{workspace-id}/groups/{group-id}/members method: post operationId: addGroupMembers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /workspaces/{workspace-id}/groups/{group-id}/members method: delete operationId: removeGroupMembers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.share.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/dataSharingRules method: get operationId: getDataSharingRules x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/dataSharingRules method: patch operationId: updateDataSharingRules x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/skills method: get operationId: getSkills x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/skills method: post operationId: createSkill x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skills/order method: post operationId: reorderSkills x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/tickets/{ticketId}/executeSkillbasedAssignment method: post operationId: executeSkillbasedAssignment x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skills/{skillId} method: get operationId: getSkill x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/skills/{skillId} method: delete operationId: deleteSkill x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skills/{skillId} method: patch operationId: updateSkill x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skills/criteriaFields method: get operationId: getCriteriaFieldsForSkills x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/mapSkills method: post operationId: mapSkillsWithAgent x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/tickets/{ticketId}/recalculateSkills method: post operationId: recalculateAndStampSkillForTicket x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skills/{skillId}/relatedRules method: get operationId: getRelatedRulesForSkill x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/skills method: get operationId: getSkillsOfAgent x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/skillConfiguration method: get operationId: getSkillConfiguration x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/skillConfiguration method: patch operationId: updateSkillConfiguration x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skillTypes method: get operationId: getSkillTypes x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/skillTypes method: post operationId: createSkillType x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skillTypes/{skillTypeId} method: get operationId: getSkillType x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/skillTypes/{skillTypeId} method: delete operationId: deleteSkillType x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/skillTypes/{skillTypeId} method: patch operationId: updateSkillType x-agentic-access: action-class: acting consequence: safety-critical subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/v1/subjectAccessRequests/exportAll method: post operationId: sarExportAll x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/subjectAccessRequests/fieldsAndConditions method: get operationId: getFieldsAndConditions x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/subjectAccessRequests/{sarId} method: get operationId: getSubjectAccessRequest x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/subjectAccessRequests/eraseAll method: post operationId: sarEraseAll x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/subjectAccessRequests method: get operationId: getSubjectAccessRequestList x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/subjectAccessRequests/export method: post operationId: sarExport x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/subjectAccessRequests/count method: post operationId: getCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/subjectAccessRequests/erase method: post operationId: sarErase x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/supportEmailDomain method: get operationId: getSupportEmailAddressDomain x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/supportEmailDomain method: put operationId: updateSupportEmailAddressDomain x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/supportPlans/{supportPlanId} method: get operationId: getSupportPlanDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/supportPlans/{supportPlanId} method: delete operationId: deleteSupportPlan x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/supportPlans/{supportPlanId} method: patch operationId: updateSupportPlan x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/supportPlans method: get operationId: getSupportPlans x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/supportPlans method: post operationId: createSupportPlan x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/updateMany method: post operationId: bulkUpdateTasks x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/deleteSpam method: post operationId: deleteSpamTasks x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{taskId} method: get operationId: getTask x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{taskId} method: patch operationId: updateTask x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/emptySpam method: post operationId: deleteAllSpamTasks x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/moveToTrash method: post operationId: deleteTask x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.DELETE - Desk.tasks.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks method: get operationId: getTasks x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks method: post operationId: createTask x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.CREATE - Desk.tasks.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/tasks method: get operationId: getTasksByTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/count method: get operationId: getTasksCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{entityId}/comments/{commentId} method: get operationId: getTaskComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{entityId}/comments/{commentId} method: put operationId: updateTaskComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{entityId}/comments method: get operationId: getTaskComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{entityId}/comments method: post operationId: createTaskComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{taskId}/attachments method: get operationId: getTaskAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tasks.UPDATE token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{taskId}/attachments method: post operationId: createTaskAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{taskId}/attachments/{attachmentId} method: delete operationId: deleteTaskAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{taskId}/timeEntry method: get operationId: getTaskTimeEntries x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{taskId}/timeEntry method: post operationId: createTaskTimeEntry x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.CREATE - Desk.tasks.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{taskId}/timeEntrySummation method: get operationId: getSummationOfTimeEntryForTask x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{taskId}/timeEntry/{taskTimeEntryId} method: get operationId: getTaskTimeEntry x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{taskId}/timeEntry/{taskTimeEntryId} method: patch operationId: updateTaskTimeEntry x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{activityId}/timer method: get operationId: getTaskTimer x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/tasks/{taskId}/timer method: post operationId: updateTaskTimerState x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.activities.tasks.UPDATE - Desk.tasks.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tasks/{entityId}/activeTimer method: get operationId: getActiveTimersForTask x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.tasks.READ - Desk.tasks.READ token: max-ttl: 3600 audit: none - path: /api/v1/departments/{departmentId}/teams method: get operationId: getTeamsInDepartment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/teams method: get operationId: getTeams x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/teams method: post operationId: createTeam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/teams/{team_id}/deleteTeam method: post operationId: deleteTeam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/teams/{teamId}/associables method: get operationId: getSubTeamsIds x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/roles/{role_id}/teams method: get operationId: getAssociatedTeamsForRole x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/agents/{agentId}/teams method: get operationId: listAssociatedTeamsForAgent x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/teams/{team_id}/members method: get operationId: getTeamMembersDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/teams/{teamId} method: get operationId: getTeam x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/teams/{team_id} method: patch operationId: updateTeam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templateFolders method: get operationId: getTemplateFolders x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/templateFolders method: post operationId: addTemplateFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templateFolders/{folderId} method: get operationId: getTemplateFolder x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/templateFolders/{folderId} method: put operationId: updateTemplateFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/templateFolders/{folderId} method: delete operationId: deleteTemplateFolder x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/draftReply/{threadId} method: patch operationId: updateDrafts x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{requestId}/threads/{threadId}/originalContent method: get operationId: getOriginalMailContent x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/sendReply method: post operationId: sendReply x-agentic-access: action-class: acting consequence: physical subject: required scope: - Desk.tickets.UPDATE 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/v1/tickets/{ticketId}/draftReply method: post operationId: draftsReply x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/threads method: get operationId: getThreads x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/threads/{threadId}/attachments/{attachmentId} method: delete operationId: deleteAttachment 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/v1/tickets/{ticketId}/resolution method: get operationId: getTicketResolution x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/resolution method: delete operationId: deleteTicketResolution x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/resolution method: patch operationId: updateTicketResolution x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/agentsTicketsCount method: get operationId: getAgentsTicketsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/moveToTrash method: post operationId: deleteTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/associatedTickets method: get operationId: getAssociatedTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/updateMany method: post operationId: bulkUpdateTickets x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/deleteSpam method: post operationId: deleteSpamTickets x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/archivedTickets method: get operationId: getArchivedTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.search.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/move method: post operationId: moveTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/metrics method: get operationId: getTicketsMetrics x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/merge method: post operationId: mergeTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/emptySpam method: post operationId: deleteAllSpamTickets x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/notifyArticleUsage method: post operationId: mapArticlesToTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.articles.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/resolutionHistory method: get operationId: getTicketResolutionHistory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/markSpam method: post operationId: markTicketAsSpam x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/contacts/{contactId}/tickets method: get operationId: getTicketsByContact x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.search.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/markAsRead method: post operationId: markTicketAsRead x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets method: get operationId: getTickets x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets method: post operationId: createTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/closeTickets method: post operationId: closeTickets x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/ticketQueueView/count method: get operationId: getTicketQueueViewCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId} method: get operationId: getTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId} method: patch operationId: updateTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/markAsUnRead method: post operationId: markTicketAsUnRead x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/threads/{threadId}/split method: post operationId: splitThreadIntoNewTicket x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/products/{productId}/tickets method: get operationId: getTicketsByProduct x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.search.READ - Desk.settings.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/approvals method: get operationId: getTicketApprovals x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/approvals method: post operationId: createTicketApproval x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/approvals/{approvalId} method: get operationId: getTicketApproval x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/approvals/{approvalId} method: patch operationId: updateTicketApproval x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/attachments method: get operationId: getTicketAttachments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/attachments method: post operationId: createTicketAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/attachments/{attachmentId} method: delete operationId: deleteTicketAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/attachments/{attachmentId} method: patch operationId: updateTicketAttachment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/comments/{commentId}/history method: get operationId: getTicketCommentHistory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/comments/{commentId} method: get operationId: getTicketComment x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/comments/{commentId} method: delete operationId: deleteTicketComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/comments/{commentId} method: patch operationId: updateTicketComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/comments method: get operationId: getTicketComments x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/comments method: post operationId: createTicketComment x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/ticketsCount method: get operationId: getTicketsCount x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.search.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/ticketsCountByFieldValues method: get operationId: ticketsCountByFieldValues x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.search.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/removeFollowers method: post operationId: removeTicketFollowers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/addFollowers method: post operationId: addTicketFollowers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/followers method: get operationId: getTicketFollowers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/tags method: get operationId: getTicketTags x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/dissociateTag method: post operationId: dissociateTicketTags x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/recentTicketTags method: get operationId: getRecentTags x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/recentTicketTags/{tagId} method: post operationId: updateRecentTags x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tags/{currentTagId}/replace method: patch operationId: replaceTag x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/ticketTags method: get operationId: getTicketsTags x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/associateTag method: post operationId: associateTicketTags x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tags/search method: get operationId: getTags x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tags/{tagId}/tickets method: get operationId: getTicketsByTag x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/ticketTemplates/deleteMany method: post operationId: deleteTicketTemplates x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/ticketTemplates/{ticketTemplateId} method: get operationId: getTicketTemplate x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/ticketTemplates/{ticketTemplateId} method: patch operationId: updateTicketTemplate x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/ticketTemplates method: get operationId: getTicketTemplates x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/ticketTemplates method: post operationId: createTicketTemplate x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/timeEntry/{timeEntryId} method: get operationId: getTicketTimeEntry x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/timeEntry/{timeEntryId} method: delete operationId: deleteTicketTimeEntry x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{caseId}/timeEntry method: get operationId: getTicketTimeEntries x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/timeEntry/{teId} method: put operationId: updateTicketTimeEntry x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/timeEntrySummation method: get operationId: getSummationOfTimeEntryForTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{ticketId}/timeEntry method: post operationId: createTicketTimeEntry x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/tickets/{ticketId}/timeEntryByBillingType method: get operationId: getTicketTimeEntriesByBillingType x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/allActiveTimers method: get operationId: getActiveTimers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.activities.calls.READ - Desk.activities.events.READ - Desk.activities.tasks.READ - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{caseId}/timer method: get operationId: getTicketTimer x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{caseId}/timer method: post operationId: updateTicketTimerState x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.tickets.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/myActiveTimers method: get operationId: getMyActiveTimers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/tickets/{entityId}/activeTimer method: get operationId: getActiveTimersForTicket x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.tickets.READ token: max-ttl: 3600 audit: none - path: /api/v1/timeTrackSettings method: get operationId: getTimeTrackingSetup x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/timeTrackSettings method: put operationId: updateTimeTrackingSettings x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/timeTrackSettings method: post operationId: saveTimeTrackingSettings x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/timeTrackHistory method: get operationId: getTimeTrackBillingHistory x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /{module}/{recordId}/__timeline method: get operationId: getTimelines x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.Accounts.READ - ZohoCRM.modules.Calls.READ - ZohoCRM.modules.Campaigns.READ - ZohoCRM.modules.Cases.READ - ZohoCRM.modules.Contacts.READ - ZohoCRM.modules.Custom.READ - ZohoCRM.modules.Deals.READ - ZohoCRM.modules.Events.READ - ZohoCRM.modules.Leads.READ - ZohoCRM.modules.Pricebooks.READ - ZohoCRM.modules.Products.READ - ZohoCRM.modules.Purchaseorders.READ - ZohoCRM.modules.Quotes.READ - ZohoCRM.modules.Salesorders.READ - ZohoCRM.modules.Solutions.READ - ZohoCRM.modules.Tasks.READ - ZohoCRM.modules.Vendors.READ token: max-ttl: 3600 audit: none - path: /api/v1/uploads method: post operationId: uploadFile x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.basic.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /upload method: post operationId: postUpload x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoFiles.files.ALL audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{module}/upsert method: post operationId: upsertRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.Accounts.CREATE - ZohoCRM.modules.Activities.CREATE - ZohoCRM.modules.Attachments.CREATE - ZohoCRM.modules.CREATE - ZohoCRM.modules.Calls.CREATE - ZohoCRM.modules.Campaigns.CREATE - ZohoCRM.modules.Cases.CREATE - ZohoCRM.modules.Contacts.CREATE - ZohoCRM.modules.Deals.CREATE - ZohoCRM.modules.Events.CREATE - ZohoCRM.modules.Forecasts.CREATE - ZohoCRM.modules.Invoices.CREATE - ZohoCRM.modules.Leads.CREATE - ZohoCRM.modules.Notes.CREATE - ZohoCRM.modules.Products.CREATE - ZohoCRM.modules.Quotes.CREATE - ZohoCRM.modules.Solutions.CREATE - ZohoCRM.modules.Tasks.CREATE - ZohoCRM.modules.Vendors.CREATE - ZohoCRM.modules.custom.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users/{userId} method: get operationId: getUserDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/users/{userId} method: patch operationId: updateUserDetails x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users/{userId}/groups/associate method: post operationId: associateGroupsToUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users/{userId}/labels method: get operationId: getUserLabels x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/users/{userId}/labels/remove method: post operationId: removeLabelsFromUser x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users/{userId}/groups/dissociate method: post operationId: deleteGroupsFromUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users/{userId}/anonymize method: post operationId: deleteEndUser x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users method: get operationId: getUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.basic.READ - Desk.contacts.READ - Desk.search.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/users/{userId}/labels/assign method: post operationId: assignLabelsToUser x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.contacts.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/users/{userId}/groups method: get operationId: getUserGroups x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.contacts.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /restapi/v2/users method: get operationId: getUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.usermanagement.read token: max-ttl: 3600 audit: none - path: /restapi/v2/users method: post operationId: addUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/users method: delete operationId: removeUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/users/active method: put operationId: activateUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/users/inactive method: put operationId: deActivateUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/users/role method: put operationId: changeUserRole x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/subscription method: get operationId: getSubscriptionDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.usermanagement.read token: max-ttl: 3600 audit: none - path: /restapi/v2/resources method: get operationId: getResourceDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.usermanagement.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/users method: get operationId: getWorkspaceUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoAnalytics.usermanagement.read token: max-ttl: 3600 audit: none - path: /restapi/v2/workspaces/{workspace-id}/users method: post operationId: addWorkspaceUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.create audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/users method: delete operationId: deleteWorkspaceUsers x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.delete audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/users/status method: put operationId: changeWorkspaceUsersStatus x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /restapi/v2/workspaces/{workspace-id}/users/role method: put operationId: changeWorkspaceUsersRole x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoAnalytics.usermanagement.update audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{user}/actions/associated_groups method: get operationId: getAssociatedGroupsForUser x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.user_groups.READ token: max-ttl: 3600 audit: none - path: /users method: get operationId: getUsers x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.users.READ token: max-ttl: 3600 audit: none - path: /users method: post operationId: createUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.users.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users method: put operationId: updateUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.users.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{user} method: get operationId: getSingleUser x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.users.READ token: max-ttl: 3600 audit: none - path: /users/{user} method: put operationId: updateSingleUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.users.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{user} method: delete operationId: deleteUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.users.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{user}/territories method: get operationId: getTerritoriesOfUser x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.READ - ZohoCRM.users.READ token: max-ttl: 3600 audit: none - path: /users/{user}/territories method: put operationId: associateTerritoriesToUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.UPDATE - ZohoCRM.users.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{user}/territories method: delete operationId: removeTerritoriesfromUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.DELETE - ZohoCRM.users.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{user}/territories/{territory} method: get operationId: getSpecificTerritoryOfUser x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.territories.READ - ZohoCRM.users.READ token: max-ttl: 3600 audit: none - path: /users/{user}/territories/{territory} method: delete operationId: removeSpecificTerritoriesfromUser x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.territories.DELETE - ZohoCRM.users.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{userId}/actions/transfer_and_delete method: post operationId: userTransfer x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.users.CREATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/actions/transfer_and_delete method: post operationId: userTransferWithoutId x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.users.CREATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/actions/transfer_and_delete method: get operationId: getTransferStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.users.DELETE - ZohoCRM.users.READ token: max-ttl: 3600 audit: none - path: /users/{userId}/actions/transfer method: post operationId: userTransferAPI x-agentic-access: action-class: acting consequence: physical subject: required scope: - ZohoCRM.change_owner.CREATE audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/actions/transfer method: get operationId: getTransferAPIStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.change_owner.READ token: max-ttl: 3600 audit: none - path: /users/{userId}/actions/validate_before_transfer method: get operationId: getValidateBeforeTransferStatus x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.change_owner.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/validationRules/{validationRuleId} method: get operationId: getValidationRule x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/validationRules/{validationRuleId} method: delete operationId: deleteValidationRule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/validationRules/{validationRuleId} method: patch operationId: updateValidationRule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/layouts/{layoutId}/validationRules method: post operationId: createValidationRule x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/validationRules method: get operationId: getValidationRules x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/layouts/{layoutId}/validationRules/criteriaFields method: get operationId: getValidationRuleCriteria x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/webhooks method: get operationId: getWebhooks x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.events.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/webhooks method: post operationId: createWebhook x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.events.CREATE - Desk.settings.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/webhooks/{webhookId} method: get operationId: getWebhook x-agentic-access: action-class: connected consequence: read subject: optional scope: - Desk.events.READ - Desk.settings.READ token: max-ttl: 3600 audit: none - path: /api/v1/webhooks/{webhookId} method: delete operationId: deleteWebhook x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.events.DELETE - Desk.settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/webhooks/{webhookId} method: patch operationId: updateWebhook x-agentic-access: action-class: acting consequence: write subject: required scope: - Desk.events.UPDATE - Desk.settings.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/widgets/{widgetId} method: delete operationId: deleteWidget x-agentic-access: action-class: acting consequence: write subject: required scope: - settings.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /workflow_configurations method: get operationId: getWorkflowConfigurations x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.workflow_rules.READ token: max-ttl: 3600 audit: none - path: /write method: post operationId: createBulkWriteJob x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.bulk.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /write/{jobId} method: get operationId: getJobDetails x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.bulk.CREATE token: max-ttl: 3600 audit: none - path: /__zia_org_enrichment method: post operationId: submitOrgEnrichmentRequest x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.settings.intelligence.CREATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /__zia_org_enrichment method: get operationId: getZiaOrgEnrichment x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.intelligence.READ token: max-ttl: 3600 audit: none - path: /__zia_org_enrichment/{id} method: get operationId: getOrgEnrichmentById x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.settings.intelligence.READ token: max-ttl: 3600 audit: none - path: /{parentRecordModule}/{parentRecord}/{relatedList} method: get operationId: getRelatedRecords x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.READ token: max-ttl: 3600 audit: none - path: /{parentRecordModule}/{parentRecord}/{relatedList} method: put operationId: updateRelatedRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecord}/{relatedList} method: delete operationId: delinkRelatedRecords x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecord}/{relatedList}/{record} method: get operationId: getRelatedRecord x-agentic-access: action-class: connected consequence: read subject: optional scope: - ZohoCRM.modules.READ token: max-ttl: 3600 audit: none - path: /{parentRecordModule}/{parentRecord}/{relatedList}/{record} method: put operationId: updateSpecificRelatedRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.UPDATE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /{parentRecordModule}/{parentRecord}/{relatedList}/{record} method: delete operationId: delinkSpecificRelatedRecord x-agentic-access: action-class: acting consequence: write subject: required scope: - ZohoCRM.modules.DELETE audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required