generated: '2026-07-15' method: generated source: openapi/salesforce-experience-cloud-cms-connect-openapi.yml, openapi/salesforce-experience-cloud-cms-delivery-openapi.yml, openapi/salesforce-experience-cloud-cms-managed-content-openapi.yml, openapi/salesforce-experience-cloud-connect-communities-openapi.yml, openapi/salesforce-experience-cloud-graphql-openapi.yml, openapi/salesforce-experience-cloud-rest-api-openapi.yml, openapi/salesforce-experience-cloud-sites-openapi.yml, openapi/salesforce-experience-cloud-templates-openapi.yml, openapi/salesforce-experience-cloud-user-interface-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: 89 by_action_class: connected: 61 acting: 28 by_consequence: read: 61 write: 28 human_in_the_loop_required: 0 operations: - path: /channels method: get operationId: listCmsChannels x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /channels/{channelId} method: get operationId: getCmsChannel x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /contents method: get operationId: listCmsContents x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /contents method: post operationId: createCmsContent 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: /contents/{contentId} method: get operationId: getCmsContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /contents/{contentId} method: patch operationId: updateCmsContent 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: /contents/{contentId} method: delete operationId: deleteCmsContent 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: /contents/{contentId}/publish method: post operationId: publishCmsContent 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: /contents/{contentId}/unpublish method: post operationId: unpublishCmsContent 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: /content-types method: get operationId: listContentTypes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders method: get operationId: listCmsFolders x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /media method: get operationId: listCmsMedia x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /media method: post operationId: uploadCmsMedia 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: /media/{mediaId} method: get operationId: getCmsMedia x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /media/{mediaId} method: delete operationId: deleteCmsMedia 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: /channels/{channelId}/contents/query method: get operationId: queryDeliveryContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /channels/{channelId}/contents/search method: get operationId: searchDeliveryContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /channels/{channelId}/contents/{contentKeyOrId} method: get operationId: getDeliveryContentItem x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /channels/{channelId}/contents/{contentKeyOrId}/binary method: get operationId: getDeliveryContentBinary x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /channels/{channelId}/collections method: get operationId: listDeliveryCollections x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /channels/{channelId}/collections/{collectionKeyOrId} method: get operationId: getDeliveryCollection x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cms/delivery/channels method: get operationId: listDeliveryChannels x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cms/delivery/channels/{channelId} method: get operationId: getDeliveryChannel x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cms/delivery/channels/{channelId}/contents/query method: get operationId: queryChannelContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cms/delivery/channels/{channelId}/contents/search method: get operationId: searchChannelContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cms/delivery/channels/{channelId}/contents/{contentKeyOrId} method: get operationId: getChannelContentItem x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/managed-content/delivery method: get operationId: queryCommunityManagedContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/managed-content/delivery/search method: get operationId: searchCommunityManagedContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/chatter/feeds/news/me/feed-elements method: get operationId: getNewsFeed x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/chatter/feeds/news/me/feed-elements method: post operationId: postFeedElement 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: /communities/{communityId}/chatter/feed-elements/{feedElementId} method: get operationId: getFeedElement x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/chatter/feed-elements/{feedElementId} method: delete operationId: deleteFeedElement 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: /communities/{communityId}/chatter/feed-elements/{feedElementId}/capabilities/comments/items method: get operationId: getFeedElementComments x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/chatter/feed-elements/{feedElementId}/capabilities/comments/items method: post operationId: postComment 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: /communities/{communityId}/chatter/feed-elements/{feedElementId}/capabilities/chatter-likes/items method: get operationId: getFeedElementLikes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/chatter/feed-elements/{feedElementId}/capabilities/chatter-likes/items method: post operationId: likeFeedElement 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: /communities/{communityId}/topics method: get operationId: getTopics x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/topics method: post operationId: createTopic 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: /communities/{communityId}/topics/{topicId} method: get operationId: getTopic x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/topics/{topicId} method: patch operationId: updateTopic 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: /communities/{communityId}/topics/{topicId} method: delete operationId: deleteTopic 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: /communities/{communityId}/chatter/users/me method: get operationId: getCurrentUser x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/chatter/users method: get operationId: getCommunityMembers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/chatter/users/{userId}/reputation method: get operationId: getUserReputation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/managed-content/delivery method: get operationId: getKnowledgeArticles x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /communities/{communityId}/moderation/flagged-elements method: get operationId: getFlaggedElements x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /graphql method: post operationId: executeGraphqlQuery 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: /services/data method: get operationId: listApiVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: / method: get operationId: listResources x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /sobjects method: get operationId: describeGlobal x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /sobjects/{sObjectName} method: get operationId: getSObjectBasicInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /sobjects/{sObjectName} method: post operationId: createSObjectRecord 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: /sobjects/{sObjectName}/describe method: get operationId: describeSObject x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /sobjects/{sObjectName}/{recordId} method: get operationId: getSObjectRecord x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /sobjects/{sObjectName}/{recordId} method: patch operationId: updateSObjectRecord 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: /sobjects/{sObjectName}/{recordId} method: delete operationId: deleteSObjectRecord 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: /query method: get operationId: executeQuery x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /queryAll method: get operationId: executeQueryAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /query/{queryLocator} method: get operationId: getNextQueryPage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /search method: get operationId: executeSearch x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /limits method: get operationId: getLimits x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities method: get operationId: listExperienceCloudSites x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities method: post operationId: createExperienceCloudSite 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: /connect/communities/{communityId} method: get operationId: getExperienceCloudSite x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId} method: patch operationId: updateExperienceCloudSite 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: /connect/communities/{communityId}/publish method: post operationId: publishExperienceCloudSite 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: /connect/communities/{communityId}/navigation-menu/navigation-menu-items method: get operationId: getNavigationMenuItems x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId}/themes method: get operationId: getSiteThemes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/templates method: get operationId: listSiteTemplates x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId}/template method: get operationId: getSiteTemplate x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId}/themes method: get operationId: listSiteThemes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId}/themes/active method: get operationId: getActiveTheme x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId}/themes/active method: put operationId: setActiveTheme 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: /connect/communities/{communityId}/branding-sets method: get operationId: listBrandingSets x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId}/branding-sets/{brandingSetId} method: get operationId: getBrandingSet x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /connect/communities/{communityId}/branding-sets/{brandingSetId} method: patch operationId: updateBrandingSet 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: /record-ui/{recordIds} method: get operationId: getRecordUi x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /records/{recordId} method: get operationId: getRecord x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /records/{recordId} method: patch operationId: updateRecord 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: /records/{recordId} method: delete operationId: deleteRecord 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: /records method: post operationId: createRecord 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: /layout/{objectApiName} method: get operationId: getRecordLayout x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /object-info/{objectApiName} method: get operationId: getObjectInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /list-ui/{listViewId} method: get operationId: getListViewData x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /list-ui/{objectApiName} method: get operationId: getListViewsByObject x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /actions/record/{recordId} method: get operationId: getRecordActions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /favorites method: get operationId: getFavorites x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /favorites method: post operationId: addFavorite 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: /favorites/{favoriteId} method: delete operationId: removeFavorite 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