Shopify Topic API

The Topic API from Shopify — 12 operation(s) for topic.

Operations 12

POST /admin/api/2020-01/webhooks.json Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic #
PUT /admin/api/2020-01/webhooks/{webhook_id}.json Shopify Update A Webhook Subscription's Topic Or Address Uris #
POST /admin/api/2020-04/webhooks.json Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic #
PUT /admin/api/2020-04/webhooks/{webhook_id}.json Shopify Update A Webhook Subscription's Topic Or Address Uris #
POST /admin/api/2020-07/webhooks.json Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic #
PUT /admin/api/2020-07/webhooks/{webhook_id}.json Shopify Update A Webhook Subscription's Topic Or Address Uris #
POST /admin/api/2020-10/webhooks.json Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic #
PUT /admin/api/2020-10/webhooks/{webhook_id}.json Shopify Update A Webhook Subscription's Topic Or Address Uris #
POST /admin/api/2021-01/webhooks.json Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic #
PUT /admin/api/2021-01/webhooks/{webhook_id}.json Shopify Update A Webhook Subscription's Topic Or Address Uris #
POST /admin/api/unstable/webhooks.json Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic #
PUT /admin/api/unstable/webhooks/{webhook_id}.json Shopify Update A Webhook Subscription's Topic Or Address Uris #

Documentation

Specifications

Schemas & Data

Other Resources

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/shopify-topic-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 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.

OpenAPI Specification

shopify-topic-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Shopify Admin REST About Topic API
  description: The Shopify Admin REST API lets you build apps and integrations that extend and enhance the Shopify admin. Access products, customers, orders, inventory, fulfillment, and more. Endpoints are organized by resource type and versioned by release date.
  version: 2025-01
  contact:
    name: Shopify
    url: https://shopify.dev/docs/api/admin-rest
    email: api@shopify.com
  license:
    name: Shopify API Terms
    url: https://www.shopify.com/legal/api-terms
  x-date: '2026-03-04'
servers:
- url: https://{store}.myshopify.com/admin/api/2025-01
  description: Shopify Admin REST API
  variables:
    store:
      default: my-store
      description: The Shopify store subdomain
security:
- AccessToken: []
tags:
- name: Topic
paths:
  /admin/api/2020-01/webhooks.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    topic: orders/create
                    address: https://whatever.hostname.com/
                    format: json
                summary: Subscribe to order creation webhooks
              example2:
                value:
                  webhook:
                    body: foobar
                summary: Trying to create a webhook subscription without an address and topic will return a 422 - Unprocessable Entity error
      summary: Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#create-2020-01
      parameters:
      - in: query
        name: format
        description: "Use this parameter to select the data format for the payload. Valid values are json and xml.\n                  (default: json)"
        schema: {}
        required: false
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202001_create_webhooks
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-01/webhooks/{webhook_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    id: 4759306
                    address: https://somewhere-else.com/
                summary: Update a webhook subscription so that it POSTs to a different address
      summary: Shopify Update A Webhook Subscription's Topic Or Address Uris
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#update-2020-01
      parameters:
      - in: path
        name: webhook_id
        required: true
        schema:
          type: string
        description: webhook_id
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202001_update_webhooks_param_webhook_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-04/webhooks.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    topic: orders/create
                    address: https://whatever.hostname.com/
                    format: json
                summary: Subscribe to order creation webhooks
              example2:
                value:
                  webhook:
                    body: foobar
                summary: Trying to create a webhook subscription without an address and topic will return a 422 - Unprocessable Entity error
      summary: Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#create-2020-04
      parameters:
      - in: query
        name: format
        description: "Use this parameter to select the data format for the payload. Valid values are json and xml.\n                  (default: json)"
        schema: {}
        required: false
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202004_create_webhooks
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-04/webhooks/{webhook_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    id: 4759306
                    address: https://somewhere-else.com/
                summary: Update a webhook subscription so that it POSTs to a different address
      summary: Shopify Update A Webhook Subscription's Topic Or Address Uris
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#update-2020-04
      parameters:
      - in: path
        name: webhook_id
        required: true
        schema:
          type: string
        description: webhook_id
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202004_update_webhooks_param_webhook_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-07/webhooks.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    topic: orders/create
                    address: https://whatever.hostname.com/
                    format: json
                summary: Subscribe to order creation webhooks
              example2:
                value:
                  webhook:
                    body: foobar
                summary: Trying to create a webhook subscription without an address and topic will return a 422 - Unprocessable Entity error
      summary: Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#create-2020-07
      parameters:
      - in: query
        name: format
        description: "Use this parameter to select the data format for the payload. Valid values are json and xml.\n                  (default: json)"
        schema: {}
        required: false
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202007_create_webhooks
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-07/webhooks/{webhook_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    id: 4759306
                    address: https://somewhere-else.com/
                summary: Update a webhook subscription so that it POSTs to a different address
      summary: Shopify Update A Webhook Subscription's Topic Or Address Uris
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#update-2020-07
      parameters:
      - in: path
        name: webhook_id
        required: true
        schema:
          type: string
        description: webhook_id
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202007_update_webhooks_param_webhook_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-10/webhooks.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    topic: orders/create
                    address: https://whatever.hostname.com/
                    format: json
                summary: Subscribe to order creation webhooks
              example2:
                value:
                  webhook:
                    body: foobar
                summary: Trying to create a webhook subscription without an address and topic will return a 422 - Unprocessable Entity error
      summary: Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#create-2020-10
      parameters:
      - in: query
        name: format
        description: "Use this parameter to select the data format for the payload. Valid values are json and xml.\n                  (default: json)"
        schema: {}
        required: false
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: create_webhooks
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-10/webhooks/{webhook_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    id: 4759306
                    address: https://somewhere-else.com/
                summary: Update a webhook subscription so that it POSTs to a different address
      summary: Shopify Update A Webhook Subscription's Topic Or Address Uris
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#update-2020-10
      parameters:
      - in: path
        name: webhook_id
        required: true
        schema:
          type: string
        description: webhook_id
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: update_webhooks_param_webhook_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2021-01/webhooks.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    topic: orders/create
                    address: https://whatever.hostname.com/
                    format: json
                summary: Subscribe to order creation webhooks
              example2:
                value:
                  webhook:
                    body: foobar
                summary: Trying to create a webhook subscription without an address and topic will return a 422 - Unprocessable Entity error
      summary: Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#create-2021-01
      parameters:
      - in: query
        name: format
        description: "Use this parameter to select the data format for the payload. Valid values are json and xml.\n                  (default: json)"
        schema: {}
        required: false
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202101_create_webhooks
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2021-01/webhooks/{webhook_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    id: 4759306
                    address: https://somewhere-else.com/
                summary: Update a webhook subscription so that it POSTs to a different address
      summary: Shopify Update A Webhook Subscription's Topic Or Address Uris
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#update-2021-01
      parameters:
      - in: path
        name: webhook_id
        required: true
        schema:
          type: string
        description: webhook_id
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_202101_update_webhooks_param_webhook_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/unstable/webhooks.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    topic: orders/create
                    address: https://whatever.hostname.com/
                    format: json
                summary: Subscribe to order creation webhooks
              example2:
                value:
                  webhook:
                    body: foobar
                summary: Trying to create a webhook subscription without an address and topic will return a 422 - Unprocessable Entity error
      summary: Shopify Create A New Webhook Subscription By Specifying Both An Address And A Topic
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#create-unstable
      parameters:
      - in: query
        name: format
        description: "Use this parameter to select the data format for the payload. Valid values are json and xml.\n                  (default: json)"
        schema: {}
        required: false
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_unstable_create_webhooks
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/unstable/webhooks/{webhook_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  webhook:
                    id: 4759306
                    address: https://somewhere-else.com/
                summary: Update a webhook subscription so that it POSTs to a different address
      summary: Shopify Update A Webhook Subscription's Topic Or Address Uris
      description: https://shopify.dev/docs/admin-api/rest/reference/events/webhook#update-unstable
      parameters:
      - in: path
        name: webhook_id
        required: true
        schema:
          type: string
        description: webhook_id
      tags:
      - Topic
      responses:
        '200':
          description: ''
      operationId: deprecated_unstable_update_webhooks_param_webhook_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
components:
  securitySchemes:
    AccessToken:
      type: apiKey
      name: X-Shopify-Access-Token
      in: header
      description: Access token obtained via OAuth