HubSpot · Arazzo Workflow

HubSpot Manage a Commerce Subscription

Version 1.0.0

Retrieve a commerce subscription, then update its properties or archive it.

1 workflow 1 source API 1 provider
View Spec View on GitHub AnalyticsCommerceContentCRMCustomer ServiceEmail MarketingMarketingMarketing AutomationSalesArazzoWorkflows

Provider

hubspot

Workflows

manage-subscription
Read a subscription and either update its properties or archive it.
Fetches a subscription by ID, then either patches the supplied properties onto the record or archives the subscription depending on the cancel flag.
3 steps inputs: cancel, properties, subscriptionId outputs: archivedSubscriptionId, subscriptionId, updatedSubscriptionId
1
getSubscription
getSubscription
Retrieve the subscription record by its ID to confirm it exists before updating or archiving it.
2
updateSubscription
updateSubscription
Perform a partial update of the subscription, writing only the supplied properties and leaving all others unchanged.
3
archiveSubscription
deleteSubscription
Archive (soft delete) the subscription record, cancelling it.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: HubSpot Manage a Commerce Subscription
  summary: Retrieve a commerce subscription, then update its properties or archive it.
  description: >-
    A commerce subscription lifecycle flow. The workflow retrieves a single
    subscription record by its ID and then branches based on the requested
    action: it either performs a partial property update on the subscription or
    archives (cancels) it. Every step spells out its request inline so the flow
    can be read and executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: subscriptionsApi
  url: ../openapi/hubspot-commerce-subscriptions-api-openapi.yml
  type: openapi
workflows:
- workflowId: manage-subscription
  summary: Read a subscription and either update its properties or archive it.
  description: >-
    Fetches a subscription by ID, then either patches the supplied properties
    onto the record or archives the subscription depending on the cancel flag.
  inputs:
    type: object
    required:
    - subscriptionId
    properties:
      subscriptionId:
        type: string
        description: The ID of the subscription to retrieve and manage.
      cancel:
        type: boolean
        description: When true, archive (cancel) the subscription instead of updating it.
      properties:
        type: object
        description: A map of property name/value pairs to write when updating the subscription.
  steps:
  - stepId: getSubscription
    description: >-
      Retrieve the subscription record by its ID to confirm it exists before
      updating or archiving it.
    operationId: getSubscription
    parameters:
    - name: subscriptionId
      in: path
      value: $inputs.subscriptionId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      subscriptionId: $response.body#/id
    onSuccess:
    - name: cancelRequested
      type: goto
      stepId: archiveSubscription
      criteria:
      - context: $inputs
        condition: $.cancel == true
        type: jsonpath
    - name: updateRequested
      type: goto
      stepId: updateSubscription
      criteria:
      - context: $inputs
        condition: $.cancel != true
        type: jsonpath
  - stepId: updateSubscription
    description: >-
      Perform a partial update of the subscription, writing only the supplied
      properties and leaving all others unchanged.
    operationId: updateSubscription
    parameters:
    - name: subscriptionId
      in: path
      value: $inputs.subscriptionId
    requestBody:
      contentType: application/json
      payload:
        properties: $inputs.properties
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      updatedSubscriptionId: $response.body#/id
      updatedAt: $response.body#/updatedAt
    onSuccess:
    - name: done
      type: end
  - stepId: archiveSubscription
    description: >-
      Archive (soft delete) the subscription record, cancelling it.
    operationId: deleteSubscription
    parameters:
    - name: subscriptionId
      in: path
      value: $inputs.subscriptionId
    successCriteria:
    - condition: $statusCode == 204
    outputs:
      archivedSubscriptionId: $inputs.subscriptionId
  outputs:
    subscriptionId: $steps.getSubscription.outputs.subscriptionId
    updatedSubscriptionId: $steps.updateSubscription.outputs.updatedSubscriptionId
    archivedSubscriptionId: $steps.archiveSubscription.outputs.archivedSubscriptionId

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow 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 workflow
curl "https://apis.io/api/v1/arazzo/hubspot-manage-subscription-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

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

Get an API key

Free tier, no email required.

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