> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tabby.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve a webhook

> Retrieves the specified webhook.



## OpenAPI

````yaml get /api/v1/webhooks/{id}
openapi: 3.1.0
info:
  title: Tabby API Reference
  version: 1.0.0
  x-logo:
    url: assets/tabby-new.png
    altText: tabby Logo
  description: |
    Tabby Documentation:  **[docs.tabby.ai](https://docs.tabby.ai/)**
servers:
  - url: https://api.tabby.ai/
    description: Production (UAE, Kuwait)
  - url: https://api.tabby.sa/
    description: Production (KSA)
security: []
tags:
  - name: Checkout
    description: >-
      Checkout is a whole process of customer data collection and payment
      authorization.
  - name: Payments
    description: >-
      The core of tabby is a payments flow enabling you to handle payments at
      your webstore.
  - name: Webhooks
    description: Manage webhook endpoints.
  - name: Disputes
    description: >-
      The Disputes API is designed to simplify the process of handling disputes
      and help merchants resolve issues with customer orders more efficiently.
      Merchants can use this API to retrieve a list of disputes, view details
      about a specific dispute, and approve or challenge a bunch of disputes. It
      mirrors the functionality available in Tabby Merchant Dashboard and
      operates exclusively with live payments using live credentials. A secret
      key is required for using the Disputes API. <SchemaDefinition
      schemaRef="#/components/schemas/Webhook" />
paths:
  /api/v1/webhooks/{id}:
    get:
      tags:
        - Webhooks
      summary: Retrieve a webhook
      description: Retrieves the specified webhook.
      operationId: getWebhook
      parameters:
        - $ref: '#/components/parameters/webhookIdParam'
        - $ref: '#/components/parameters/merchantCodeParam'
      responses:
        '200':
          $ref: '#/components/responses/Webhook'
        '401':
          $ref: '#/components/responses/AuthenticationError_invalid_secret_key'
        '404':
          $ref: '#/components/responses/NotFoundError_no_such_webhook'
        '500':
          $ref: '#/components/responses/UnexpectedError'
      security:
        - bearerAuth:
            - secret_key
components:
  parameters:
    webhookIdParam:
      in: path
      name: id
      required: true
      schema:
        type: string
        format: uuid
        example: webhook id, uuid format
      description: ID of the webhook.
    merchantCodeParam:
      in: header
      name: X-Merchant-Code
      required: true
      schema:
        type: string
        example: code provided to you from Tabby side
      description: >-
        Used for multi store/countries setup, please contact your Account
        manager to recognize that
  responses:
    Webhook:
      description: Success. Webhook object is returned.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Webhook'
    AuthenticationError_invalid_secret_key:
      description: The request cannot be authorized.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error_401_invalid_secret_key'
    NotFoundError_no_such_webhook:
      description: You are using an incorrect ID.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error_404_no_such_webhook'
    UnexpectedError:
      description: Something bad happened. We're notified.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error_500'
  schemas:
    Webhook:
      type: object
      properties:
        header:
          type: object
          nullable: true
          properties:
            title:
              type: string
              example: Arbitrary header name to sign the request
              description: Arbitrary header name to sign the request.
            value:
              type: string
              example: Random string to sign the request
              description: Random string to sign the request.
        id:
          type: string
          readOnly: true
          example: unique webhook id
          description: Unique webhook ID, assigned by Tabby.
        is_test:
          type: boolean
          default: true
          deprecated: true
          description: >-
            Deprecated. The webhook environment is determined by the secret key
            used at registration (production `sk_...` or test `sk_test_...`),
            not by this field.
        url:
          type: string
          format: uri
          example: https://example.com/
          description: >-
            HTTPS endpoint for notifications. The URL should be valid and
            accessible (not local).
      required:
        - url
        - is_test
        - id
    Error_401_invalid_secret_key:
      type: object
      properties:
        status:
          type: string
          example: error
        errorType:
          type: string
          example: not_authorized
        error:
          type: string
          example: invalid secret key
    Error_404_no_such_webhook:
      type: object
      properties:
        status:
          type: string
          example: error
        errorType:
          type: string
          example: not_found
        error:
          type: string
          example: no such webhook
    Error_500:
      type: string
      example: Internal Server error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >
        Bearer authentication header of the form `Bearer <secret_key>`, where
        `<secret_key>` is your `secret_key`.

````