generated: '2026-07-15' method: generated source: openapi/trustpilot-business-units-openapi.yml, openapi/trustpilot-invitation-openapi.yml, openapi/trustpilot-product-reviews-openapi.yml, openapi/trustpilot-service-reviews-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: 38 by_action_class: connected: 23 acting: 15 by_consequence: read: 23 physical: 1 write: 14 human_in_the_loop_required: 0 operations: - path: /v1/business-units/search method: get operationId: searchBusinessUnits x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/business-units/{businessUnitId}/profileinfo method: get operationId: getBusinessUnitProfile x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/business-units/{businessUnitId}/reviews method: get operationId: getBusinessUnitReviews x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/business-units/{businessUnitId}/all-reviews method: get operationId: getAllBusinessUnitReviews x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/business-units/{businessUnitId}/reviews method: get operationId: getPrivateBusinessUnitReviews x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/business-units/{businessUnitId}/images method: get operationId: getBusinessUnitImages x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/business-units/{businessUnitId}/images/logo method: get operationId: getBusinessUnitLogo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/business-units/{businessUnitId}/categories method: get operationId: getBusinessUnitCategories x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/business-units/{businessUnitId}/web-links method: get operationId: getBusinessUnitWebLinks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/business-units/{businessUnitId}/templates method: get operationId: getInvitationTemplates x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/business-units/{businessUnitId}/email-invitations method: post operationId: sendEmailInvitations x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/business-units/{businessUnitId}/invitation-links method: post operationId: createInvitationLink x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/business-units/{businessUnitId}/invitation-data/delete method: post operationId: deleteInvitationData x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/product-reviews/business-units/{businessUnitId} method: get operationId: getProductReviewsSummary x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/product-reviews/business-units/{businessUnitId}/reviews method: get operationId: getProductReviews x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/product-reviews/business-units/{businessUnitId}/batch-summaries method: post operationId: getBatchProductReviewsSummaries x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/product-reviews/business-units/{businessUnitId}/attribute-summaries method: post operationId: getBatchAttributeRatingSummaries x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/product-reviews/business-units/{businessUnitId}/reviews method: get operationId: getPrivateProductReviews x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/product-reviews/{reviewId} method: get operationId: getPrivateProductReview x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/product-reviews/{reviewId}/create-conversation method: post operationId: createProductReviewConversation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/product-reviews/business-units/{businessUnitId}/summaries method: get operationId: getPrivateProductReviewsSummaries x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/product-reviews/business-units/{businessUnitId}/invitation-links method: post operationId: createProductReviewInvitationLink x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/conversations/{conversationId} method: get operationId: getConversation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/conversations/{conversationId}/state method: post operationId: setConversationState x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/conversations/{conversationId}/comments method: post operationId: createConversationComment x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/conversations/{conversationId} method: get operationId: getPublicConversation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reviews/latest method: get operationId: getLatestReviews x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reviews/{reviewId} method: get operationId: getReview x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reviews/{reviewId}/web-links method: get operationId: getReviewWebLinks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reviews/{reviewId}/likes method: get operationId: getReviewLikes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/reviews/{reviewId} method: get operationId: getPrivateReview x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/reviews/{reviewId}/reply method: post operationId: createReviewReply x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/reviews/{reviewId}/reply method: delete operationId: deleteReviewReply x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/reviews/{reviewId}/tags method: get operationId: getReviewTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/private/reviews/{reviewId}/tags method: post operationId: setReviewTags x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/reviews/{reviewId}/tags method: put operationId: addReviewTags x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/reviews/{reviewId}/tags method: delete operationId: deleteReviewTag x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/private/reviews/{reviewId}/find-reviewer method: post operationId: findReviewer 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