HubSpot · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Hubspot Definitions API

10 actions 10 updates phrasing extends openapi/hubspot-definitions-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for HubSpot's API. It is a proposal applied on top of the contract, not a document HubSpot publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 10

$.info
$.paths['/automation/actions/2026-09/{appId}'].get
$.paths['/automation/actions/2026-09/{appId}'].post
$.paths['/automation/actions/2026-09/{appId}/{definitionId}'].get
$.paths['/automation/actions/2026-09/{appId}/{definitionId}'].delete
$.paths['/automation/actions/2026-09/{appId}/{definitionId}'].patch
$.paths['/automation/actions/2026-09/{appId}/{definitionId}/requires-object'].get
$.paths['/automation/actions/2026-09/{appId}/{definitionId}/requires-object'].post
$.paths['/communication-preferences/2026-09/definitions'].get
$.paths['/communication-preferences/2026-09/statuses/{subscriberIdString}/unsubscribe-all'].post

OpenAPI Overlay

Raw ↑
# 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'

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/hubspot-definitions-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.