Squarespace Webhook Subscriptions API

The WebhookSubscriptions API from Squarespace — 4 operation(s) for webhooksubscriptions.

Operations 7

GET /1.0/webhook_subscriptions List webhook subscriptions #
POST /1.0/webhook_subscriptions Create webhook subscription #
DELETE /1.0/webhook_subscriptions/{subscriptionId} Delete webhook subscription #
GET /1.0/webhook_subscriptions/{subscriptionId} Get webhook subscription #
POST /1.0/webhook_subscriptions/{subscriptionId} Update webhook subscription #
POST /1.0/webhook_subscriptions/{subscriptionId}/actions/rotateSecret Rotate webhook subscription secret #
POST /1.0/webhook_subscriptions/{subscriptionId}/actions/sendTestNotification Send test notification #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/squarespace-webhooksubscriptions-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

squarespace-webhooksubscriptions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Commerce Webhook Subscriptions API
  version: '2'
servers:
- url: https://api.squarespace.com
  description: Commerce API
security:
- Authorization: []
tags:
- name: WebhookSubscriptions
  x-zudoku-collapsed: true
paths:
  /1.0/webhook_subscriptions:
    get:
      description: Retrieves information for all webhook subscriptions. The response contains up to 25 Webhook Subscriptions. Requires an OAuth access token; API keys are not supported.
      operationId: getWebhookSubscriptions
      parameters:
      - in: header
        name: Authorization
        required: true
        description: API key or OAuth access token
        schema:
          type: string
          default: Bearer YOUR_API_KEY_OR_OAUTH_TOKEN
      - in: header
        name: User-Agent
        required: true
        description: User Agent
        schema:
          type: string
          default: YOUR_CUSTOM_APP_DESCRIPTION
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalWebhookSubscriptionListResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: Not found. The API version is not supported.
      summary: List webhook subscriptions
      tags:
      - WebhookSubscriptions
    post:
      callbacks:
        address.create:
          '{$request.body#/endpointUrl}':
            post:
              description: Address created details pushed to the registered callback URL
              operationId: createAddressEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/AddressCreatePayload'
                description: address.create event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        address.delete:
          '{$request.body#/endpointUrl}':
            post:
              description: Address delete details pushed to the registered callback URL
              operationId: deleteAddressEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/AddressDeletePayload'
                description: address.delete event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        address.update:
          '{$request.body#/endpointUrl}':
            post:
              description: Address update details pushed to the registered callback URL
              operationId: updateAddressEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/AddressUpdatePayload'
                description: address.update event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        contact.create:
          '{$request.body#/endpointUrl}':
            post:
              description: Contact created details pushed to the registered callback URL
              operationId: createContactEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/ContactCreatePayload'
                description: contact.create event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        contact.delete:
          '{$request.body#/endpointUrl}':
            post:
              description: Contact delete details pushed to the registered callback URL
              operationId: deleteContactEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/ContactDeletePayload'
                description: contact.delete event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        contact.update:
          '{$request.body#/endpointUrl}':
            post:
              description: Contact update details pushed to the registered callback URL
              operationId: updateContactEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/ContactUpdatePayload'
                description: contact.update event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        extension.uninstall:
          '{$request.body#/endpointUrl}':
            post:
              description: Extension uninstalled details pushed to the registered callback URL
              operationId: uninstallExtensionEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/ExtensionUninstallPayload'
                description: extension.uninstall event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        order.create:
          '{$request.body#/endpointUrl}':
            post:
              description: Order created details pushed to the registered callback URL
              operationId: createOrderEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/OrderCreatePayload'
                description: order.create event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
        order.update:
          '{$request.body#/endpointUrl}':
            post:
              description: Order update details pushed to the registered callback URL
              operationId: updateOrderEvent
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/OrderUpdatePayload'
                description: order.update event details payload
                required: true
              responses:
                '200':
                  description: Notification received by the external service.
      description: 'Creates a webhook subscription. A successful request returns the created Webhook Subscription resource. Requires an OAuth access token; API keys are not supported. The OAuth token must hold scopes appropriate for each subscribed event topic: order.create and order.update require website.orders or website.orders.read; contact.create, contact.update, contact.delete, address.create, address.update, and address.delete require website.contacts; extension.uninstall requires no event-specific scope.'
      operationId: createWebhookSubscription
      parameters:
      - in: header
        name: Authorization
        required: true
        description: API key or OAuth access token
        schema:
          type: string
          default: Bearer YOUR_API_KEY_OR_OAUTH_TOKEN
      - in: header
        name: User-Agent
        required: true
        description: User Agent
        schema:
          type: string
          default: YOUR_CUSTOM_APP_DESCRIPTION
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalCreateWebhookSubscriptionRequest'
        description: Subscription details
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalCreateWebhookSubscriptionResponse'
          description: The created webhook subscription.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: Invalid input or malformed JSON
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: Not found. The API version is not supported.
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The Squarespace website has reached its limit of 25 webhook subscriptions.
      summary: Create webhook subscription
      tags:
      - WebhookSubscriptions
  /1.0/webhook_subscriptions/{subscriptionId}:
    delete:
      description: Deletes a webhook subscription. Requires an OAuth access token; API keys are not supported.
      operationId: deleteWebhookSubscription
      parameters:
      - description: Specifies the Webhook Subscription to delete.
        in: path
        name: subscriptionId
        required: true
        schema:
          type: string
      - in: header
        name: Authorization
        required: true
        description: API key or OAuth access token
        schema:
          type: string
          default: Bearer YOUR_API_KEY_OR_OAUTH_TOKEN
      - in: header
        name: User-Agent
        required: true
        description: User Agent
        schema:
          type: string
          default: YOUR_CUSTOM_APP_DESCRIPTION
      responses:
        '204':
          description: No content. The webhook subscription was deleted successfully.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The requested Webhook Subscription was not found.
      summary: Delete webhook subscription
      tags:
      - WebhookSubscriptions
    get:
      description: Retrieves information for a specific webhook subscription. Requires an OAuth access token; API keys are not supported.
      operationId: getWebhookSubscription
      parameters:
      - description: Specifies the Webhook Subscription to retrieve.
        in: path
        name: subscriptionId
        required: true
        schema:
          type: string
      - in: header
        name: Authorization
        required: true
        description: API key or OAuth access token
        schema:
          type: string
          default: Bearer YOUR_API_KEY_OR_OAUTH_TOKEN
      - in: header
        name: User-Agent
        required: true
        description: User Agent
        schema:
          type: string
          default: YOUR_CUSTOM_APP_DESCRIPTION
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalWebhookSubscriptionResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The requested Webhook Subscription was not found.
      summary: Get webhook subscription
      tags:
      - WebhookSubscriptions
    post:
      description: 'Updates information for a webhook subscription. A successful request returns the updated Webhook Subscription resource. Requires an OAuth access token; API keys are not supported. The OAuth token must hold scopes appropriate for each subscribed event topic: order.create and order.update require website.orders or website.orders.read; contact.create, contact.update, contact.delete, address.create, address.update, and address.delete require website.contacts; extension.uninstall requires no event-specific scope.'
      operationId: updateWebhookSubscription
      parameters:
      - description: Specifies the Webhook Subscription to update.
        in: path
        name: subscriptionId
        required: true
        schema:
          type: string
      - in: header
        name: Authorization
        required: true
        description: API key or OAuth access token
        schema:
          type: string
          default: Bearer YOUR_API_KEY_OR_OAUTH_TOKEN
      - in: header
        name: User-Agent
        required: true
        description: User Agent
        schema:
          type: string
          default: YOUR_CUSTOM_APP_DESCRIPTION
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalUpdateWebhookSubscriptionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalWebhookSubscriptionResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The request body does not conform to the required specification.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The requested Webhook Subscription was not found.
      summary: Update webhook subscription
      tags:
      - WebhookSubscriptions
  /1.0/webhook_subscriptions/{subscriptionId}/actions/rotateSecret:
    post:
      description: Rotates a webhook subscription's secret. The previous secret for a subscription is no longer valid after a new one is generated. Requires an OAuth access token; API keys are not supported.
      operationId: rotateSubscriptionSecret
      parameters:
      - description: Specifies the Webhook Subscription to update.
        in: path
        name: subscriptionId
        required: true
        schema:
          type: string
      - in: header
        name: Authorization
        required: true
        description: API key or OAuth access token
        schema:
          type: string
          default: Bearer YOUR_API_KEY_OR_OAUTH_TOKEN
      - in: header
        name: User-Agent
        required: true
        description: User Agent
        schema:
          type: string
          default: YOUR_CUSTOM_APP_DESCRIPTION
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalRotateSecretResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The requested Webhook Subscription was not found.
      summary: Rotate webhook subscription secret
      tags:
      - WebhookSubscriptions
  /1.0/webhook_subscriptions/{subscriptionId}/actions/sendTestNotification:
    post:
      description: Sends a notification to a subscribed webhook endpoint for testing purposes. This is a one-time notification, and will not be retried if it fails or times out. Requires an OAuth access token; API keys are not supported.
      operationId: sendTestNotificationForWebhookSubscription
      parameters:
      - description: Specifies the Webhook Subscription to send a notification to.
        in: path
        name: subscriptionId
        required: true
        schema:
          type: string
      - in: header
        name: Authorization
        required: true
        description: API key or OAuth access token
        schema:
          type: string
          default: Bearer YOUR_API_KEY_OR_OAUTH_TOKEN
      - in: header
        name: User-Agent
        required: true
        description: User Agent
        schema:
          type: string
          default: YOUR_CUSTOM_APP_DESCRIPTION
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalSendTestNotificationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalTestNotificationResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The request body does not conform to the required specification.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorPayload'
          description: The requested Webhook Subscription was not found.
      summary: Send test notification
      tags:
      - WebhookSubscriptions
components:
  schemas:
    ExternalWebhookSubscriptionListResponse:
      type: object
      properties:
        webhookSubscriptions:
          type: array
          description: Array of Webhook Subscription resources. If the merchant site doesn't have any webhook subscriptions, this array is empty.
          items:
            $ref: '#/components/schemas/ExternalWebhookSubscriptionResponse'
    OrderUpdatePayload:
      required:
      - createdOn
      - id
      - subscriptionsId
      - topic
      - websiteId
      type: object
      properties:
        createdOn:
          type: string
          description: Creation date and time in UTC (ISO 8601 format) of this message.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
        data:
          $ref: '#/components/schemas/OrderUpdateData'
        id:
          type: string
          description: Unique notification id.
          examples:
          - 5c2ba184b63ed3cb411ce2b1
        subscriptionsId:
          type: string
          description: Unique Webhook Subscriptions id.
          examples:
          - 5f3c2155d947844beedda991
        topic:
          type: string
          description: 'Description of the event that triggered the notification.

            * `order.create`        - always value for OrderCreatePayload.topic ref

            * `order.update`        - always value for OrderUpdatePayload.topic

            * `extension.uninstall` - always value for ExtensionUninstallPayload.topic

            * `contact.create`      - always value for ContactCreatePayload.topic

            * `contact.update`      - always value for ContactUpdatePayload.topic

            * `contact.delete`      - always value for ContactDeletePayload.topic

            * `address.create`      - always value for AddressCreatePayload.topic

            * `address.update`      - always value for AddressUpdatePayload.topic

            * `address.delete`      - always value for AddressDeletePayload.topic

            '
          default: order.update
          enum:
          - order.update
          examples:
          - order.update
        websiteId:
          type: string
          description: Squarespace website id that triggered the notification.
          examples:
          - 5f3c3d55ac435e1a051f77b3
    ContactCreatePayload:
      required:
      - createdOn
      - id
      - subscriptionsId
      - topic
      - websiteId
      type: object
      properties:
        createdOn:
          type: string
          description: Creation date and time in UTC (ISO 8601 format) of this message.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
        data:
          $ref: '#/components/schemas/Contact'
        id:
          type: string
          description: Unique notification id.
          examples:
          - 5c2ba184b63ed3cb411ce2b1
        subscriptionsId:
          type: string
          description: Unique Webhook Subscriptions id.
          examples:
          - 5f3c2155d947844beedda991
        topic:
          type: string
          description: 'Description of the event that triggered the notification.

            * `order.create`        - always value for OrderCreatePayload.topic ref

            * `order.update`        - always value for OrderUpdatePayload.topic

            * `extension.uninstall` - always value for ExtensionUninstallPayload.topic

            * `contact.create`      - always value for ContactCreatePayload.topic

            * `contact.update`      - always value for ContactUpdatePayload.topic

            * `contact.delete`      - always value for ContactDeletePayload.topic

            * `address.create`      - always value for AddressCreatePayload.topic

            * `address.update`      - always value for AddressUpdatePayload.topic

            * `address.delete`      - always value for AddressDeletePayload.topic

            '
          default: contact.create
          enum:
          - contact.create
          examples:
          - contact.create
        websiteId:
          type: string
          description: Squarespace website id that triggered the notification.
          examples:
          - 5f3c3d55ac435e1a051f77b3
    ContactDeletePayload:
      required:
      - createdOn
      - id
      - subscriptionsId
      - topic
      - websiteId
      type: object
      properties:
        createdOn:
          type: string
          description: Creation date and time in UTC (ISO 8601 format) of this message.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
        data:
          $ref: '#/components/schemas/ContactDeleteData'
        id:
          type: string
          description: Unique notification id.
          examples:
          - 5c2ba184b63ed3cb411ce2b1
        subscriptionsId:
          type: string
          description: Unique Webhook Subscriptions id.
          examples:
          - 5f3c2155d947844beedda991
        topic:
          type: string
          description: 'Description of the event that triggered the notification.

            * `order.create`        - always value for OrderCreatePayload.topic ref

            * `order.update`        - always value for OrderUpdatePayload.topic

            * `extension.uninstall` - always value for ExtensionUninstallPayload.topic

            * `contact.create`      - always value for ContactCreatePayload.topic

            * `contact.update`      - always value for ContactUpdatePayload.topic

            * `contact.delete`      - always value for ContactDeletePayload.topic

            * `address.create`      - always value for AddressCreatePayload.topic

            * `address.update`      - always value for AddressUpdatePayload.topic

            * `address.delete`      - always value for AddressDeletePayload.topic

            '
          default: contact.delete
          enum:
          - contact.delete
          examples:
          - contact.delete
        websiteId:
          type: string
          description: Squarespace website id that triggered the notification.
          examples:
          - 5f3c3d55ac435e1a051f77b3
    AddressUpdateData:
      required:
      - addressBookEntries
      - contactId
      type: object
      properties:
        addressBookEntries:
          type: array
          description: The address book entries after the update.
          items:
            $ref: '#/components/schemas/AddressBookEntry'
        contactId:
          type: string
          description: The contact's ID.
          examples:
          - 64a7e3d2c8f1b95e30a14d2b
        createdOn:
          type: string
          description: Creation date and time in UTC (ISO 8601 format) of the address book entries.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
        updatedOn:
          type: string
          description: Last update date and time in UTC (ISO 8601 format) of the address book entries.
          format: date-time
          examples:
          - '2024-02-15T14:30:00Z'
      description: The address data after the update.
    AddressCreatePayload:
      required:
      - createdOn
      - id
      - subscriptionsId
      - topic
      - websiteId
      type: object
      properties:
        createdOn:
          type: string
          description: Creation date and time in UTC (ISO 8601 format) of this message.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
        data:
          $ref: '#/components/schemas/AddressCreateData'
        id:
          type: string
          description: Unique notification id.
          examples:
          - 5c2ba184b63ed3cb411ce2b1
        subscriptionsId:
          type: string
          description: Unique Webhook Subscriptions id.
          examples:
          - 5f3c2155d947844beedda991
        topic:
          type: string
          description: 'Description of the event that triggered the notification.

            * `order.create`        - always value for OrderCreatePayload.topic ref

            * `order.update`        - always value for OrderUpdatePayload.topic

            * `extension.uninstall` - always value for ExtensionUninstallPayload.topic

            * `contact.create`      - always value for ContactCreatePayload.topic

            * `contact.update`      - always value for ContactUpdatePayload.topic

            * `contact.delete`      - always value for ContactDeletePayload.topic

            * `address.create`      - always value for AddressCreatePayload.topic

            * `address.update`      - always value for AddressUpdatePayload.topic

            * `address.delete`      - always value for AddressDeletePayload.topic

            '
          default: address.create
          enum:
          - address.create
          examples:
          - address.create
        websiteId:
          type: string
          description: Squarespace website id that triggered the notification.
          examples:
          - 5f3c3d55ac435e1a051f77b3
    ExternalWebhookSubscriptionResponse:
      type: object
      properties:
        clientId:
          type: string
          description: Third-party client id.
        createdOn:
          type: string
          description: ISO 8601 UTC date and time string; represents when the webhook subscription was created.
        endpointUrl:
          type: string
          description: HTTPS URL that receives webhook notifications.
        id:
          type: string
          description: Unique Webhook Subscription id.
        topics:
          type: array
          description: 'List of event topics that trigger a webhook notification. Possible values include: extension.uninstall, order.create, order.update.'
          items:
            type: string
            description: 'List of event topics that trigger a webhook notification. Possible values include: extension.uninstall, order.create, order.update.'
        updatedOn:
          type: string
          description: ISO 8601 UTC date and time string; represents when the webhook subscription was last modified.
        websiteId:
          type: string
          description: Unique website id.
    AddressDeleteData:
      required:
      - addressBookEntryIds
      - contactId
      type: object
      properties:
        addressBookEntryIds:
          type: array
          description: The IDs of the deleted address book entries.
          items:
            type: string
            description: The IDs of the deleted address book entries.
        contactId:
          type: string
          description: The contact's ID.
          examples:
          - 64a7e3d2c8f1b95e30a14d2b
        deletedOn:
          type: string
          description: Deletion date and time in UTC (ISO 8601 format) of the address book entries.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
      description: Identifiers and metadata for the deleted address book entries.
    AddressCreateData:
      required:
      - addressBookEntries
      - contactId
      type: object
      properties:
        addressBookEntries:
          type: array
          description: The address book entries that were created.
          items:
            $ref: '#/components/schemas/AddressBookEntry'
        contactId:
          type: string
          description: The contact's ID.
          examples:
          - 64a7e3d2c8f1b95e30a14d2b
        createdOn:
          type: string
          description: Creation date and time in UTC (ISO 8601 format) of the address book entries.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
      description: The address data for the created address book entries.
    ExternalUpdateWebhookSubscriptionRequest:
      type: object
      properties:
        endpointUrl:
          $ref: '#/components/schemas/ChangeString'
        topics:
          $ref: '#/components/schemas/ChangeListString'
    ExternalTestNotificationResponse:
      type: object
      properties:
        statusCode:
          type: integer
          description: Status code returned by the subscribed webhook endpoint.
          format: int32
    AddressDeletePayload:
      required:
      - createdOn
      - id
      - subscriptionsId
      - topic
      - websiteId
      type: object
      properties:
        createdOn:
          type: string
          description: Creation date and time in UTC (ISO 8601 format) of this message.
          format: date-time
          examples:
          - '2024-01-28T10:44:00Z'
        data:
          $ref: '#/components/schemas/AddressDeleteData'
        id:
          type: string
          description: Unique notification id.
          examples:
          - 5c2ba184b63ed3cb411ce2b1
        subscriptionsId:
          type: string
          description: Unique Webhook Subscriptions id.
          examples:
          - 5f3c2155d947844beedda991
        topic:
          type: string
          description: 'Description of the event that triggered the notification.

            * `order.create`        - always value for OrderCreatePayload.topic ref

            * `order.update`        - always value for OrderUpdatePayload.topic

            * `extension.uninstall` - always value for ExtensionUninstallPayload.topic

            * `contact.create`      - always value for ContactCreatePayload.topic

            * `contact.update`      - always value for ContactUpdatePayload.topic

            * `contact.delete`      - always value for ContactDeletePayload.topic

            * `address.create`      - always value for AddressCreatePayload.topic

            * `address.update`      - always value for AddressUpdatePayload.topic

            * `address.delete`      - always value for AddressDeletePayload.topic

            '
          default: address.delete
          enum:
          - address.delete
          examples:
          - address.delete
        websiteId:
          type: string
          description: Squarespace website id that triggered the notification.
          examples:
          - 5f3c3d55ac435e1a051f77b3
    StandardErrorPayload:
      type: object
      properties:
        contextId:
          type: string
        details:
          type: object
        message:
          type: string
        subtype:
          type: string
          enum:
          - MISSING_ARGUMENT
          - INVALID_ARGUMENT
          - INVALID_CONTENT_TYPE
          - CONCURRENT_MODIFICATION
          - INSUFFICIENT_STOCK
          - STOCK_NOT_TRACKED
          - STOCK_EXCEEDS_MAX
          - CURRENCY_MISMATCH
          - MEASUREMENT_STANDARD_MISMATCH
          - INSUFFICIENT_PRODUCT_VARIANTS
          - URL_SLUG_UNAVAILABLE
          - SKU_UNAVAILABLE
          - STORE_PAGE_NOT_FOUND
          - STORE_PAGE_PRODUCT_LIMIT_REACHED
          - IMAGE_LIMIT_REACHED
          - WEBHOOK_SUBSCRIPTION_LIMIT_REACHED
          - MISSING_SCOPE
          - PROFILE_CANNOT_ACCEPT_MARKETING
          - ENTITY_LIMIT_REACHED
          - PRODUCT_UPDATE_CONFLICT
          - DUPLICATE_USER_CONFLICT
          - PROMO_CODE_CONFLICT
          - INVENTORY_ITEM_NOT_FOUND
          - PRODUCT_IMAGE_NOT_FOUND
          - PRODUCT_VARIANT_NOT_FOUND
          - OAUTH_TOKEN_REQUIRED
          - FORBIDDEN_RESOURC

# --- truncated at 32 KB (55 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/squarespace/refs/heads/main/openapi/squarespace-webhooksubscriptions-api-openapi.yml