openapi: 3.1.0
info:
  title: 'Integrations: Webhooks'
  version: 1.0.0
paths:
  /stores/{store_hash}/v3/hooks:
    get:
      operationId: getWebhooks
      summary: List Webhooks
      description: |-
        Returns a list of all webhooks on a store associated to the `client_id` used to authenticate the request.

        *Note: BigCommerce determines the `client_id` from the `access_token`.*
      tags:
        - manageWebhooks
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: |
            Page number.
          required: false
          schema:
            type: integer
        - name: limit
          in: query
          description: |
            Items count per page.
          required: false
          schema:
            type: integer
        - name: is_active
          in: query
          description: >
            Enables user to filter for webhooks that are active or not. A webhook subscription becomes deactivated after
            90 days of inactivity.
          required: false
          schema:
            type: boolean
        - name: scope
          in: query
          description: |
            Enables user to filter for webhooks by scope.
          required: false
          schema:
            type: string
        - name: destination
          in: query
          description: |
            Enables user to filter for webhooks by destination.
          required: false
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            None required. Create and manage webhooks with the default scope of an API account.


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          required: false
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manage Webhooks_getWebhooks_Response_200'
        '401':
          description: Unauthorized - the v3 Auth client ID or token in the request are not a valid combination for this store.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
    post:
      operationId: createWebhooks
      summary: Create Webhook
      description: >-
        Creates a webhook. Only one webhook at a time can be created. Custom headers can be added. Destination URL must
        be served on port 443 (custom ports are not currently supported).
      tags:
        - manageWebhooks
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            None required. Create and manage webhooks with the default scope of an API account.


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          required: false
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manage Webhooks_createWebhooks_Response_200'
        '400':
          description: Malformed request syntax. Typically need to fix the JSON request body to resend successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
        '401':
          description: Unauthorized - the v3 Auth client ID or token in the request are not a valid combination for this store.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
        '422':
          description: >-
            This occurs when missing or unacceptable data is passed for one or more fields. Please correct the values
            for the fields listed in the errors object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetailed_Full'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/webhook_Base'
  /stores/{store_hash}/v3/hooks/{webhook_id}:
    get:
      operationId: getWebhook
      summary: Get Webhook
      description: Return a webhook by ID.
      tags:
        - manageWebhooks
      parameters:
        - name: webhook_id
          in: path
          description: The ID of a Webhook.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            None required. Create and manage webhooks with the default scope of an API account.


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          required: false
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: Example response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manage Webhooks_getWebhook_Response_200'
        '401':
          description: Unauthorized - the v3 Auth client ID or token in the request are not a valid combination for this store.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
        '404':
          description: If the requested webhook is not found, return a 404 Not Found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
    put:
      operationId: updateWebhook
      summary: Update Webhook
      description: Updates a webhook. You can add custom headers. At least one field is required to perform an update.
      tags:
        - manageWebhooks
      parameters:
        - name: webhook_id
          in: path
          description: The ID of a Webhook.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            None required. Create and manage webhooks with the default scope of an API account.


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          required: false
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: Example response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manage Webhooks_updateWebhook_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/webhook_Put'
    delete:
      operationId: deleteWebhook
      summary: Delete Webhook
      description: >-
        Deletes a webhook. Only one webhook at a time can be deleted. When a webhook is deleted, it is returned in the
        response as a 200 OK.
      tags:
        - manageWebhooks
      parameters:
        - name: webhook_id
          in: path
          description: The ID of a Webhook.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            None required. Create and manage webhooks with the default scope of an API account.


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          required: false
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: Example response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manage Webhooks_deleteWebhook_Response_200'
  /stores/{store_hash}/v3/hooks/admin:
    get:
      operationId: getHooksAdmin
      summary: Get Admin Info
      description: List all notification emails, webhooks, and denylisted domains associated with the API account.
      tags:
        - manageWebhooks
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: is_active
          in: query
          description: >
            Enables user to filter for webhooks that are active or not. A webhook subscription becomes deactivated after
            90 days of inactivity.
          required: false
          schema:
            type: boolean
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            None required. Create and manage webhooks with the default scope of an API account.


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful operation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manage Webhooks_getHooksAdmin_Response_200'
        '401':
          description: Unauthorized - the v3 Auth client ID or token in the request are not a valid combination for this store.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
    put:
      operationId: updateHooksAdmin
      summary: Upsert Email Notifications
      description: >
        Update email addresses that are sent notification emails when any domain associated with the API account is
        denylisted or when a webhook is deactivated. Supports `upsert` functionality in the case that no email address
        exists yet.
      tags:
        - manageWebhooks
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            None required. Create and manage webhooks with the default scope of an API account.


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
          content:
            application/json:
              schema:
                type: object
                properties: {}
        '400':
          description: Malformed request syntax. Typically need to fix the JSON request body to resend successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
        '401':
          description: Unauthorized - the v3 Auth client ID or token in the request are not a valid combination for this store.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_Full'
        '422':
          description: >-
            This occurs when missing or unacceptable data is passed for one or more fields. Please correct the values
            for the fields listed in the errors object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetailed_Full'
      requestBody:
        description: List of notification emails.
        content:
          application/json:
            schema:
              type: object
              properties:
                emails:
                  type: array
                  items:
                    type: string
                    format: email
servers:
  - url: https://api.bigcommerce.com
    description: https://api.bigcommerce.com
components:
  schemas:
    HooksGetResponsesContentApplicationJsonSchemaDataItemsHeaders:
      type: object
      properties: {}
      title: HooksGetResponsesContentApplicationJsonSchemaDataItemsHeaders
    HooksGetResponsesContentApplicationJsonSchemaDataItems:
      type: object
      properties:
        id:
          type: integer
        client_id:
          type: string
        store_hash:
          type: string
        scope:
          type: string
        destination:
          type: string
        headers:
          oneOf:
            - $ref: '#/components/schemas/HooksGetResponsesContentApplicationJsonSchemaDataItemsHeaders'
            - type: 'null'
        is_active:
          type: boolean
        created_at:
          type: integer
          description: The time the webhook was created, represented in UNIX epoch time.
        updated_at:
          type: integer
          description: The time the webhook was most recently updated, represented in UNIX epoch time.
      title: HooksGetResponsesContentApplicationJsonSchemaDataItems
    PaginationLinks:
      type: object
      properties:
        previous:
          type: string
          description: Link to the previous page returned in the response.
        current:
          type: string
          description: Link to the current page returned in the response.
        next:
          type: string
          description: Link to the next page returned in the response.
      title: PaginationLinks
    Pagination:
      type: object
      properties:
        total:
          type: integer
          description: Total number of returned items across all pages.
        count:
          type: integer
          description: Number of items on current page.
        per_page:
          type: integer
          description: Maximum number of items per page.
        current_page:
          type: integer
          description: Current page number.
        total_pages:
          type: integer
          description: Total number of pages.
        links:
          $ref: '#/components/schemas/PaginationLinks'
      description: |
        Data about the response, including pagination and collection totals.
      title: Pagination
    HooksGetResponsesContentApplicationJsonSchemaMeta:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/Pagination'
      title: HooksGetResponsesContentApplicationJsonSchemaMeta
    Manage Webhooks_getWebhooks_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/HooksGetResponsesContentApplicationJsonSchemaDataItems'
        meta:
          $ref: '#/components/schemas/HooksGetResponsesContentApplicationJsonSchemaMeta'
      title: Manage Webhooks_getWebhooks_Response_200
    error_Full:
      type: object
      properties:
        status:
          type: integer
          description: |
            The HTTP status code.
        title:
          type: string
          description: |
            The error title describing the particular error.
        type:
          type: string
          description: This value is typically a link to BigCommerce API Status codes.
      title: error_Full
    WebhookBaseHeaders:
      type: object
      properties: {}
      description: >-
        Headers used to validate that webhooks are active. You can pass in any number of custom headers to validate
        webhooks are being returned.
      title: WebhookBaseHeaders
    webhook_Base:
      type: object
      properties:
        scope:
          type: string
          description: Event you subscribe to.
        destination:
          type: string
          description: >-
            URL must be active, return a 200 response, and be served on port 443. Custom ports arenʼt currently
            supported.
        is_active:
          type: boolean
          description: >-
            Boolean value that indicates whether the webhook is active or not. A webhook subscription becomes
            deactivated after 90 days of inactivity.
        headers:
          oneOf:
            - $ref: '#/components/schemas/WebhookBaseHeaders'
            - type: 'null'
          description: >-
            Headers used to validate that webhooks are active. You can pass in any number of custom headers to validate
            webhooks are being returned.
      required:
        - scope
        - destination
      title: webhook_Base
    WebhookFullHeaders:
      type: object
      properties: {}
      description: >-
        Headers used to validate that webhooks are active. You can pass in any number of custom headers to validate
        webhooks are being returned.
      title: WebhookFullHeaders
    webhook_Full:
      type: object
      properties:
        id:
          type: integer
          description: ID of the webhook.
        client_id:
          type: string
          description: Client ID, unique to the store or app.
        store_hash:
          type: string
          description: Permanent ID of the BigCommerce store.
        created_at:
          type: integer
          description: The time the webhook was created, represented in UNIX epoch time.
        updated_at:
          type: integer
          description: The time the webhook was most recently updated, represented in UNIX epoch time.
        scope:
          type: string
          description: Event you subscribe to.
        destination:
          type: string
          description: >-
            URL must be active, return a 200 response, and be served on port 443. Custom ports arenʼt currently
            supported.
        is_active:
          type: boolean
          description: >-
            Boolean value that indicates whether the webhook is active or not. A webhook subscription becomes
            deactivated after 90 days of inactivity.
        headers:
          oneOf:
            - $ref: '#/components/schemas/WebhookFullHeaders'
            - type: 'null'
          description: >-
            Headers used to validate that webhooks are active. You can pass in any number of custom headers to validate
            webhooks are being returned.
      required:
        - scope
        - destination
      title: webhook_Full
    Manage Webhooks_createWebhooks_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/webhook_Full'
        meta:
          description: Any type
      title: Manage Webhooks_createWebhooks_Response_200
    errorDetailed_Full:
      type: object
      properties:
        status:
          type: integer
          description: |
            The HTTP status code.
        title:
          type: string
          description: |
            The error title describing the particular error.
        type:
          type: string
          description: Typically a link to BigCommerce API Status codes
        errors:
          description: Any type
      title: errorDetailed_Full
    HooksWebhookIdGetResponsesContentApplicationJsonSchemaDataHeaders:
      type: object
      properties: {}
      title: HooksWebhookIdGetResponsesContentApplicationJsonSchemaDataHeaders
    HooksWebhookIdGetResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        id:
          type: integer
        client_id:
          type: string
        store_hash:
          type: string
        scope:
          type: string
        destination:
          type: string
        headers:
          oneOf:
            - $ref: '#/components/schemas/HooksWebhookIdGetResponsesContentApplicationJsonSchemaDataHeaders'
            - type: 'null'
        is_active:
          type: boolean
        created_at:
          type: integer
          description: The time the webhook was created, represented in UNIX epoch time.
        updated_at:
          type: integer
          description: The time the webhook was most recently updated, represented in UNIX epoch time.
      title: HooksWebhookIdGetResponsesContentApplicationJsonSchemaData
    Manage Webhooks_getWebhook_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/HooksWebhookIdGetResponsesContentApplicationJsonSchemaData'
        meta:
          description: Any type
      title: Manage Webhooks_getWebhook_Response_200
    WebhookPutHeaders:
      type: object
      properties: {}
      description: >-
        Headers used to validate that webhooks are active. You can pass in any number of custom headers to validate
        webhooks are being returned.
      title: WebhookPutHeaders
    webhook_Put:
      type: object
      properties:
        scope:
          type: string
          description: Event you subscribe to.
        destination:
          type: string
          description: >-
            URL must be active, return a 200 response, and be served on port 443. Custom ports arenʼt currently
            supported.
        is_active:
          type: boolean
          description: Boolean value that indicates whether the webhook is active or not.
        headers:
          oneOf:
            - $ref: '#/components/schemas/WebhookPutHeaders'
            - type: 'null'
          description: >-
            Headers used to validate that webhooks are active. You can pass in any number of custom headers to validate
            webhooks are being returned.
      title: webhook_Put
    HooksWebhookIdPutResponsesContentApplicationJsonSchemaDataHeaders:
      type: object
      properties: {}
      title: HooksWebhookIdPutResponsesContentApplicationJsonSchemaDataHeaders
    HooksWebhookIdPutResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        id:
          type: integer
        client_id:
          type: string
        store_hash:
          type: string
        scope:
          type: string
        destination:
          type: string
        headers:
          oneOf:
            - $ref: '#/components/schemas/HooksWebhookIdPutResponsesContentApplicationJsonSchemaDataHeaders'
            - type: 'null'
        is_active:
          type: boolean
        created_at:
          type: integer
          description: The time the webhook was created, represented in UNIX epoch time.
        updated_at:
          type: integer
          description: The time the webhook was most recently updated, represented in UNIX epoch time.
      title: HooksWebhookIdPutResponsesContentApplicationJsonSchemaData
    Manage Webhooks_updateWebhook_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/HooksWebhookIdPutResponsesContentApplicationJsonSchemaData'
        meta:
          description: Any type
      title: Manage Webhooks_updateWebhook_Response_200
    HooksWebhookIdDeleteResponsesContentApplicationJsonSchemaDataHeaders:
      type: object
      properties: {}
      title: HooksWebhookIdDeleteResponsesContentApplicationJsonSchemaDataHeaders
    HooksWebhookIdDeleteResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        id:
          type: integer
        client_id:
          type: string
        store_hash:
          type: string
        scope:
          type: string
        destination:
          type: string
        headers:
          oneOf:
            - $ref: '#/components/schemas/HooksWebhookIdDeleteResponsesContentApplicationJsonSchemaDataHeaders'
            - type: 'null'
        is_active:
          type: boolean
        created_at:
          type: integer
          description: The time the webhook was created, represented in UNIX epoch time.
        updated_at:
          type: integer
          description: The time the webhook was most recently updated, represented in UNIX epoch time.
      title: HooksWebhookIdDeleteResponsesContentApplicationJsonSchemaData
    Manage Webhooks_deleteWebhook_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/HooksWebhookIdDeleteResponsesContentApplicationJsonSchemaData'
        meta:
          description: Any type
      title: Manage Webhooks_deleteWebhook_Response_200
    HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItemsHeaders:
      type: object
      properties: {}
      description: You can pass in any number of custom headers to validate webhooks being returned.
      title: HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItemsHeaders
    HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItemsStatus:
      type: string
      enum:
        - inactive
        - active
        - deactivated
      description: The webhook status.
      title: HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItemsStatus
    HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItems:
      type: object
      properties:
        id:
          type: integer
          description: ID of the webhook
        client_id:
          type: string
          description: Client ID, unique to the store or app.
        store_hash:
          type: string
          description: Permanent ID of the BigCommerce store.
        scope:
          type: string
          description: Event you subscribe to
        destination:
          type: string
          description: >-
            URL must be active, return a 200 response, and be served on port 443. Custom ports arenʼt currently
            supported.
        headers:
          oneOf:
            - $ref: '#/components/schemas/HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItemsHeaders'
            - type: 'null'
          description: You can pass in any number of custom headers to validate webhooks being returned.
        is_active:
          type: boolean
          default: true
          description: If the webhook is active or not. A webhook subscription becomes deactivated after 90 days of inactivity.
        created_at:
          type: integer
          description: The time the webhook was created, represented in UNIX epoch time.
        updated_at:
          type: integer
          description: The time the webhook was most recently updated, represented in UNIX epoch time.
        status:
          $ref: '#/components/schemas/HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItemsStatus'
          description: The webhook status.
      title: HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItems
    HooksAdminGetResponsesContentApplicationJsonSchemaDataBlockedDomainsItemsReasonsItems:
      type: object
      properties:
        failure_description:
          type: string
        count:
          type: integer
        timestamp:
          type: integer
          format: int64
          description: UTC timestamp in seconds that the events was created
      title: HooksAdminGetResponsesContentApplicationJsonSchemaDataBlockedDomainsItemsReasonsItems
    HooksAdminGetResponsesContentApplicationJsonSchemaDataBlockedDomainsItems:
      type: object
      properties:
        destination:
          type: string
          format: url
          description: Domain URL to which webhooks are sent.
        time_left:
          type: integer
          description: Remaining time in seconds that the domain is on the denylist.
        reasons:
          type: array
          items:
            $ref: '#/components/schemas/HooksAdminGetResponsesContentApplicationJsonSchemaDataBlockedDomainsItemsReasonsItems'
      title: HooksAdminGetResponsesContentApplicationJsonSchemaDataBlockedDomainsItems
    HooksAdminGetResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        emails:
          type: array
          items:
            type: string
            format: email
          description: Email addresses to be sent notifications.
        hooks_list:
          type: array
          items:
            $ref: '#/components/schemas/HooksAdminGetResponsesContentApplicationJsonSchemaDataHooksListItems'
          description: List of all the webhooks associated with the provider API account, filtered by the `active` parameter.
        blocked_domains:
          type: array
          items:
            $ref: '#/components/schemas/HooksAdminGetResponsesContentApplicationJsonSchemaDataBlockedDomainsItems'
          description: List of domains (destinations) that are currently on the denylist and are not being sent webhooks.
      title: HooksAdminGetResponsesContentApplicationJsonSchemaData
    HooksAdminGetResponsesContentApplicationJsonSchemaMeta:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/Pagination'
      title: HooksAdminGetResponsesContentApplicationJsonSchemaMeta
    Manage Webhooks_getHooksAdmin_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/HooksAdminGetResponsesContentApplicationJsonSchemaData'
        meta:
          $ref: '#/components/schemas/HooksAdminGetResponsesContentApplicationJsonSchemaMeta'
      title: Manage Webhooks_getHooksAdmin_Response_200
  securitySchemes:
    X-Auth-Token:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: >-
        ### OAuth scopes


        None required. Create and manage webhooks with the default scope of an API account.


        ### Authentication header


        | Header | Argument | Description |

        |:-------|:---------|:------------|

        | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to
        API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


        ### Further reading


        For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example
        Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


        For more about BigCommerce OAuth scopes, see our [Guide to API
        Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


        For a list of API status codes, see [API Status
        Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
