Squarespace Commerce API

The complete Squarespace Commerce API as Squarespace itself publishes it — a single OpenAPI 3.1.1 document covering 55 operations across ten resource families: Orders, Products, Inventory, Contacts, Discounts, Transactions, Analytics, Websites, Profiles and Webhook Subscriptions. Harvested verbatim on 2026-08-13 from the download link on the provider's own API reference pages. This is the authoritative contract and supersedes the per-resource splits elsewhere in this repo, which were derived from an earlier, smaller harvest and do not include Contacts, Discounts or Analytics. Note the versioning: resource families carry independent version numbers, so a single integration spans /1.0/, /v1/ and /v2/ paths at once.

Documentation

Specifications

Other Resources

OpenAPI Specification

squarespace-commerce-api-v2-openapi.json Raw ↑
{
  "openapi": "3.1.1",
  "info": {
    "title": "Commerce API",
    "version": "2"
  },
  "servers": [
    {
      "url": "https://api.squarespace.com",
      "description": "Commerce API"
    }
  ],
  "security": [
    {
      "Authorization": []
    }
  ],
  "tags": [
    {
      "description": "Manage customer contacts and address book entries for a website: create, read, update, delete, and query contacts; maintain addresses for shipping and fulfillment.",
      "name": "Contacts",
      "x-zudoku-collapsed": true
    },
    {
      "description": "Query analytics for a website",
      "name": "Analytics",
      "x-zudoku-collapsed": true
    },
    {
      "description": "Manage discounts for a website.",
      "name": "Discounts",
      "x-zudoku-collapsed": true
    },
    {
      "name": "Products",
      "x-zudoku-collapsed": true
    },
    {
      "name": "Websites",
      "x-zudoku-collapsed": true
    },
    {
      "name": "Inventory",
      "x-zudoku-collapsed": true
    },
    {
      "name": "Orders",
      "x-zudoku-collapsed": true
    },
    {
      "name": "Transactions",
      "x-zudoku-collapsed": true
    },
    {
      "name": "Profiles",
      "x-zudoku-collapsed": true
    },
    {
      "name": "WebhookSubscriptions",
      "x-zudoku-collapsed": true
    }
  ],
  "paths": {
    "/v1/analytics/transaction-summaries": {
      "post": {
        "operationId": "getTransactionsSummaries",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RetrieveTransactionsSummariesRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RetrieveTransactionsSummariesResponse"
                }
              }
            },
            "description": "Transaction summaries retrieved"
          },
          "400": {
            "description": "contactIds shouldn't be empty or too big, groupBy should have a valid value"
          }
        },
        "summary": "Retrieve transaction summaries grouped by contact",
        "tags": [
          "Analytics"
        ],
        "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"
            }
          }
        ]
      }
    },
    "/v1/commerce/discounts": {
      "get": {
        "description": "Returns a paginated list of discounts for the website. Requires OAuth website scope website.discounts.read or website.discounts, or API key scope DISCOUNTS_READONLY or DISCOUNTS.",
        "operationId": "listDiscounts",
        "parameters": [
          {
            "description": "Sort field for the result set.",
            "in": "query",
            "name": "sortBy",
            "required": false,
            "schema": {
              "type": "string",
              "default": "CREATED_ON",
              "enum": [
                "CREATED_ON",
                "PROMO_CODE",
                "USES_COUNT"
              ]
            }
          },
          {
            "description": "Sort direction.",
            "in": "query",
            "name": "sortDirection",
            "required": false,
            "schema": {
              "type": "string",
              "default": "DESCENDING",
              "enum": [
                "ASCENDING",
                "DESCENDING"
              ]
            }
          },
          {
            "description": "Free-text search across a discount's name and promo code.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by discount lifecycle status.",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "type": "string",
              "default": "ALL",
              "enum": [
                "ALL",
                "ACTIVE",
                "EXPIRED",
                "SCHEDULED"
              ]
            }
          },
          {
            "description": "Filter by one or more criteria types (comma-separated). When omitted, defaults to all allowable values.",
            "in": "query",
            "name": "criteria",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "ANY_ORDER",
                  "CART_TOTAL",
                  "PRODUCT",
                  "BUY_X_GET_Y"
                ]
              },
              "default": [
                "ANY_ORDER",
                "CART_TOTAL",
                "PRODUCT",
                "BUY_X_GET_Y"
              ]
            }
          },
          {
            "description": "Filter by one or more template types (comma-separated). When omitted, defaults to all allowable values.",
            "in": "query",
            "name": "template",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "FIXED_AMOUNT",
                  "PERCENTAGE",
                  "BUY_X_GET_Y_FIXED_AMOUNT",
                  "BUY_X_GET_Y_PERCENTAGE",
                  "FREE_SHIPPING"
                ]
              },
              "default": [
                "FIXED_AMOUNT",
                "PERCENTAGE",
                "BUY_X_GET_Y_FIXED_AMOUNT",
                "BUY_X_GET_Y_PERCENTAGE",
                "FREE_SHIPPING"
              ]
            }
          },
          {
            "description": "Filter by one or more trigger types (comma-separated): AUTO (auto-applied) or CODE (promo code). When omitted, or when all allowable values are supplied, defaults to all allowable values.",
            "in": "query",
            "name": "trigger",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "AUTO",
                  "CODE"
                ]
              },
              "enum": [
                "AUTO",
                "CODE"
              ]
            }
          },
          {
            "description": "When true, only discounts with limited-use semantics (per product rules) are returned.",
            "in": "query",
            "name": "limitedUseOnly",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "description": "Zero-based offset into the result set. Must be non-negative. Default 0.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "minimum": 0,
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "description": "Page size (1–1000; default 50).",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "maximum": 1000,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "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/PaginatedDiscountListResponse"
                }
              }
            },
            "description": "Paginated discounts for the website (empty page is a successful response)."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Invalid query parameters (e.g. limit over cap, unknown enum value)."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Rate limit exceeded."
          }
        },
        "summary": "List discounts",
        "tags": [
          "Discounts"
        ]
      },
      "post": {
        "description": "Creates a discount. A successful request returns the created Discount resource. Requires OAuth website scope website.discounts, or API key scope DISCOUNTS.",
        "operationId": "createDiscount",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDiscountRequest"
              }
            }
          },
          "description": "The discount to create.",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DiscountResponse"
                }
              }
            },
            "description": "The created discount."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Bad request. Missing or invalid fields, invalid criteria/template pairing, or promo code reserved for gift cards."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Conflict. The promo code is already in use by another discount, or the maximum number of auto-trigger discounts has been reached."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Rate limit exceeded."
          }
        },
        "summary": "Create discount",
        "tags": [
          "Discounts"
        ],
        "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"
            }
          }
        ]
      }
    },
    "/v1/commerce/discounts/{discountId}": {
      "delete": {
        "description": "Deletes the discount for the given discount ID. Deletion is permitted for any discount owned by the website, including discounts whose criteria, template, or trigger types are not supported by this API version; no type validation is performed. Requires OAuth website scope website.discounts, or API key scope DISCOUNTS.",
        "operationId": "deleteDiscount",
        "parameters": [
          {
            "description": "The discount's ID.",
            "in": "path",
            "name": "discountId",
            "required": true,
            "schema": {
              "type": "string"
            },
            "examples": {
              "default": {
                "value": "64b8f4e3d9a2ca6f41b25e3c"
              }
            }
          },
          {
            "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 discount was deleted successfully."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Not found. The requested discount was not found."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Rate limit exceeded."
          }
        },
        "summary": "Delete discount",
        "tags": [
          "Discounts"
        ]
      },
      "get": {
        "description": "Returns the discount for the given discount ID. Requires OAuth website scope website.discounts.read or website.discounts, or API key scope DISCOUNTS_READONLY or DISCOUNTS.",
        "operationId": "getDiscount",
        "parameters": [
          {
            "description": "The discount's ID",
            "in": "path",
            "name": "discountId",
            "required": true,
            "schema": {
              "type": "string"
            },
            "examples": {
              "default": {
                "value": "64b8f4e3d9a2ca6f41b25e3c"
              }
            }
          },
          {
            "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/DiscountResponse"
                }
              }
            },
            "description": "Discount found."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Discount not found for this website."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Rate limit exceeded."
          }
        },
        "summary": "Get discount",
        "tags": [
          "Discounts"
        ]
      },
      "put": {
        "description": "Replaces the discount for the given discount ID. Requires OAuth website scope website.discounts, or API key scope DISCOUNTS.",
        "operationId": "updateDiscount",
        "parameters": [
          {
            "description": "The discount's unique identifier.",
            "in": "path",
            "name": "discountId",
            "required": true,
            "schema": {
              "type": "string"
            },
            "examples": {
              "default": {
                "value": "64b8f4e3d9a2ca6f41b25e3c"
              }
            }
          },
          {
            "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/Discount"
              }
            }
          },
          "description": "The discount replacement payload.",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DiscountResponse"
                }
              }
            },
            "description": "The updated discount."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Bad request. Missing or invalid fields, invalid criteria/template pairing, or promo code reserved for gift cards."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Discount not found for this website."
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Conflict. The promo code is already in use by another discount, or the maximum number of auto-trigger discounts has been reached."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Rate limit exceeded."
          }
        },
        "summary": "Update discount",
        "tags": [
          "Discounts"
        ]
      }
    },
    "/v1/contacts": {
      "get": {
        "description": "Returns a paginated list of contacts for the website. Requires OAuth website scope website.contacts.read or website.contacts, or API key scope CONTACT_READONLY or CONTACT, or OAuth website scope website.profiles.read or website.profiles (OAuth only).",
        "operationId": "getContacts",
        "parameters": [
          {
            "description": "number of contacts to retrieve per request",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "maximum": 1000,
              "minimum": 0,
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "description": "where next page of results begins. should be {pagination.nextPageCursor} from previous response.",
            "in": "query",
            "name": "cursor",
            "required": false,
            "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/PaginatedGetContactsResponse"
                }
              }
            },
            "description": "A paginated list of contacts."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Invalid pagination parameters: page size out of range or cursor not from a previous response."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Too many requests. The rate limit for this endpoint has been exceeded."
          }
        },
        "summary": "List contacts",
        "tags": [
          "Contacts"
        ]
      },
      "post": {
        "description": "Creates a new contact. Requires OAuth website scope website.contacts, or API key scope CONTACT, or OAuth website scope website.profiles (OAuth only).",
        "operationId": "createContact",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateContactRequest"
              }
            }
          },
          "description": "The contact to create.",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateContactResponse"
                }
              }
            },
            "description": "The created contact."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Invalid input or malformed JSON."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "A contact with the same unique fields already exists."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Too many requests. The rate limit for this endpoint has been exceeded."
          }
        },
        "summary": "Create contact",
        "tags": [
          "Contacts"
        ],
        "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"
            }
          }
        ]
      }
    },
    "/v1/contacts/query": {
      "post": {
        "description": "Returns a paginated list of contacts matching filters and sort options in the request body. Requires OAuth website scope website.contacts.read or website.contacts, or API key scope CONTACT_READONLY or CONTACT, or OAuth website scope website.profiles.read or website.profiles (OAuth only).",
        "operationId": "queryContacts",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/QueryContactsRequest"
              }
            }
          },
          "description": "Filters and sort order for the contact query.",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedQueryContactsResponse"
                }
              }
            },
            "description": "A paginated list of contacts matching the query."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Invalid input or malformed JSON."
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Forbidden. Insufficient scope (OAuth or API key), or the requested resource is not accessible for the authenticated website."
          },
          "429": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StandardErrorPayload"
                }
              }
            },
            "description": "Too many requests. The rate limit for this endpoint has been exceeded."
          }
        },
        "summary": "Query contacts",
        "tags": [
          "Contacts"
        ],
        "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"
            }
          }
        ]
      }
    },
    "/v1/contacts/{contactId}": {
      "delete": {
        "description": "Deletes the contact for the given contact ID. Requires OAuth website scope website.contacts, or API key scope CONTACT, or OAuth website scope website.profiles (OAuth only).",
        "operationId": "deleteContact",
        "parameters": [
          {
            "description": "The contact's ID.",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "type": "string"
            },
            "examples": {
              "default": {
                "value": "64a7e3d2c8f1b95e30a14d2b"
              }
            }
          },
          {
            "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."
          },
          "403": {
            "content": {
              "applicati

# --- truncated at 32 KB (337 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/squarespace/refs/heads/main/openapi/squarespace-commerce-api-v2-openapi.json