# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Hubspot Definitions API version: 1.0.0 extends: openapi/hubspot-definitions-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-24' generator: build-phrasing.py label: Generated by API Evangelist operations: 9 - target: $.paths['/automation/actions/2026-09/{appId}'].get update: x-apievangelist-phrasing: intent: List an app's custom workflow actions effect: read questions: - Which custom workflow actions has my app defined? - Can I include archived custom action definitions in the list? instructions: - text: List the custom workflow action definitions for app {appId}. slots: appId: path.appId - text: Show archived custom actions for app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/automation/actions/2026-09/{appId}'].post update: x-apievangelist-phrasing: intent: Create a custom workflow action effect: write questions: - How do I add my own action to HubSpot workflows from my app? - What inputs does a new custom workflow action need, like its execution URL? instructions: - text: Create a custom workflow action for app {appId} that calls {actionUrl}. slots: appId: path.appId actionUrl: requestBody.actionUrl - text: Define a new action on app {appId} with input fields {inputFields} for object types {objectTypes}. slots: appId: path.appId inputFields: requestBody.inputFields objectTypes: requestBody.objectTypes method: generated generated: '2026-09-24' - target: $.paths['/automation/actions/2026-09/{appId}/{definitionId}'].get update: x-apievangelist-phrasing: intent: Get one custom workflow action effect: read questions: - How do I view the full configuration of one custom action definition? - Can I read a single archived custom action by its ID? instructions: - text: Get custom action definition {definitionId} for app {appId}. slots: definitionId: path.definitionId appId: path.appId - text: Show the configuration of action {definitionId} in app {appId}. slots: definitionId: path.definitionId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/automation/actions/2026-09/{appId}/{definitionId}'].delete update: x-apievangelist-phrasing: intent: Delete a custom workflow action effect: destructive questions: - How do I remove a custom workflow action my app no longer supports? - Can I delete one action definition without affecting the app's others? instructions: - text: Delete custom action {definitionId} from app {appId}. slots: definitionId: path.definitionId appId: path.appId - text: Remove workflow action definition {definitionId} of app {appId}. slots: definitionId: path.definitionId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/automation/actions/2026-09/{appId}/{definitionId}'].patch update: x-apievangelist-phrasing: intent: Update a custom workflow action effect: write questions: - Can I change the URL an existing custom action calls? - How do I publish or unpublish a custom action I already created? instructions: - text: Point existing action {definitionId} in app {appId} at {actionUrl}. slots: definitionId: path.definitionId appId: path.appId actionUrl: requestBody.actionUrl - text: Set published to {published} on action {definitionId} for app {appId}. slots: published: requestBody.published definitionId: path.definitionId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/automation/actions/2026-09/{appId}/{definitionId}/requires-object'].get update: x-apievangelist-phrasing: intent: Check if a custom action requires an object effect: read questions: - Does my custom workflow action need an enrolled CRM object to run? - Where can I see a custom action's object requirement setting? instructions: - text: Check whether action {definitionId} in app {appId} requires an object. slots: definitionId: path.definitionId appId: path.appId - text: Show the object requirement status for custom action {definitionId} of app {appId}. slots: definitionId: path.definitionId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/automation/actions/2026-09/{appId}/{definitionId}/requires-object'].post update: x-apievangelist-phrasing: intent: Set whether a custom action requires an object effect: write questions: - Can I let a custom action run without an associated CRM object? - How do I change the object requirement on a custom action? instructions: - text: Set requires-object to {requiresObject} for action {definitionId} in app {appId}. slots: requiresObject: requestBody.requiresObject definitionId: path.definitionId appId: path.appId - text: Make custom action {definitionId} of app {appId} stop requiring an object. slots: definitionId: path.definitionId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/communication-preferences/2026-09/definitions'].get update: x-apievangelist-phrasing: intent: List subscription type definitions effect: read questions: - What email subscription types are set up in my account? - Can I get subscription definitions with their translations for one business unit? instructions: - text: List all subscription status definitions in my account. - text: Show subscription definitions for business unit {businessUnitId}, including translations. slots: businessUnitId: query.businessUnitId method: generated generated: '2026-09-24' - target: $.paths['/communication-preferences/2026-09/statuses/{subscriberIdString}/unsubscribe-all'].post update: x-apievangelist-phrasing: intent: Unsubscribe a contact from everything effect: destructive questions: - How do I opt a contact out of every email subscription at once? - Can I unsubscribe someone from all emails within just one business unit? instructions: - text: Unsubscribe {subscriberIdString} from all {channel} subscriptions. slots: subscriberIdString: path.subscriberIdString channel: query.channel - text: Opt out {subscriberIdString} from every {channel} subscription in business unit {businessUnitId}. slots: subscriberIdString: path.subscriberIdString channel: query.channel businessUnitId: query.businessUnitId method: generated generated: '2026-09-24'