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

# Get a webhook

> Get a specific webhook by ID



## OpenAPI

````yaml get /developers/webhooks/{id}
openapi: 3.1.0
info:
  title: BitGPT 402pay API
  description: Full description of private and dev-availble API endpoints
  version: 1.0.0
  termsOfService: https://bitgpt.xyz/terms
  contact:
    name: API Support
    url: https://help.bitgpt.xyz
    email: support@bitgpt.xyz
servers:
  - url: https://api.bitgpt.xyz
    description: Production API server
security: []
tags:
  - name: Payments
    description: Invoice and payment management endpoints
  - name: Products
    description: Product management endpoints
  - name: dev-api
    description: Developer API endpoints
externalDocs:
  description: Full BitGPT 402pay API documentation
  url: https://docs.bitgpt.xyz
paths:
  /developers/webhooks/{id}:
    get:
      tags:
        - Webhooks
        - dev-api
      summary: Get a webhook
      description: Get a specific webhook by ID
      operationId: getWebhook
      parameters:
        - name: id
          in: path
          required: true
          description: Webhook ID
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/viewDeveloperWebhookResponse'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
      security:
        - BearerAuth: []
          ApiKeyAuth: []
components:
  responses:
    '400':
      description: Bad request
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: integer
                enum:
                  - 400
                  - 401
                  - 403
                  - 404
                description: Status code of the response
              data:
                type:
                  - object
                  - 'null'
                description: Response data containing the requested object
              error:
                type:
                  - string
                  - 'null'
                examples:
                  - Invalid email address
                description: Error message of the response, human readable
              message:
                type: 'null'
              env:
                type: string
                enum:
                  - development
                  - production
                description: API environment
              log:
                type:
                  - string
                  - object
                  - 'null'
                examples:
                  - request_id: req_1234567890
                  - Some pertinent log message
                description: Useful informaiton, not always present, to debug the response
              validator:
                type:
                  - object
                  - 'null'
                examples:
                  - email: Invalid email address
                    password: Password is required
                description: >-
                  Validator response object, each key is the field name and
                  value is the error message
              support_id:
                type:
                  - string
                  - 'null'
                format: uuid
                examples:
                  - support_uuidv7-something-else
                description: >-
                  Support ID linked to the response, used to identify it when
                  talking with our team
            required:
              - status
              - error
              - message
              - env
              - log
              - validator
              - support_id
    '401':
      description: Access token is missing or invalid
      content:
        application/json:
          schema:
            allOf:
              - type: object
                properties:
                  status:
                    type: integer
                    enum:
                      - 400
                      - 401
                      - 403
                      - 404
                    description: Status code of the response
                  data:
                    type:
                      - object
                      - 'null'
                    description: Response data containing the requested object
                  error:
                    type:
                      - string
                      - 'null'
                    examples:
                      - Invalid email address
                    description: Error message of the response, human readable
                  message:
                    type: 'null'
                  env:
                    type: string
                    enum:
                      - development
                      - production
                    description: API environment
                  log:
                    type:
                      - string
                      - object
                      - 'null'
                    examples:
                      - request_id: req_1234567890
                      - Some pertinent log message
                    description: >-
                      Useful informaiton, not always present, to debug the
                      response
                  validator:
                    type:
                      - object
                      - 'null'
                    examples:
                      - email: Invalid email address
                        password: Password is required
                    description: >-
                      Validator response object, each key is the field name and
                      value is the error message
                  support_id:
                    type:
                      - string
                      - 'null'
                    format: uuid
                    examples:
                      - support_uuidv7-something-else
                    description: >-
                      Support ID linked to the response, used to identify it
                      when talking with our team
                required:
                  - status
                  - error
                  - message
                  - env
                  - log
                  - validator
                  - support_id
              - properties:
                  status:
                    type: integer
                    enum:
                      - 401
    '403':
      description: You do not have the required permissions to access this resource
      content:
        application/json:
          schema:
            allOf:
              - type: object
                properties:
                  status:
                    type: integer
                    enum:
                      - 400
                      - 401
                      - 403
                      - 404
                    description: Status code of the response
                  data:
                    type:
                      - object
                      - 'null'
                    description: Response data containing the requested object
                  error:
                    type:
                      - string
                      - 'null'
                    examples:
                      - Invalid email address
                    description: Error message of the response, human readable
                  message:
                    type: 'null'
                  env:
                    type: string
                    enum:
                      - development
                      - production
                    description: API environment
                  log:
                    type:
                      - string
                      - object
                      - 'null'
                    examples:
                      - request_id: req_1234567890
                      - Some pertinent log message
                    description: >-
                      Useful informaiton, not always present, to debug the
                      response
                  validator:
                    type:
                      - object
                      - 'null'
                    examples:
                      - email: Invalid email address
                        password: Password is required
                    description: >-
                      Validator response object, each key is the field name and
                      value is the error message
                  support_id:
                    type:
                      - string
                      - 'null'
                    format: uuid
                    examples:
                      - support_uuidv7-something-else
                    description: >-
                      Support ID linked to the response, used to identify it
                      when talking with our team
                required:
                  - status
                  - error
                  - message
                  - env
                  - log
                  - validator
                  - support_id
              - properties:
                  status:
                    type: integer
                    enum:
                      - 403
    viewDeveloperWebhookResponse:
      description: Successful webhook view response
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Response200'
              - $ref: '#/components/schemas/viewDeveloperWebhookResponse'
  schemas:
    Response200:
      type: object
      properties:
        status:
          type: integer
          enum:
            - 200
            - 201
            - 202
          description: Status code of the response
        data:
          type:
            - object
            - array
            - 'null'
          description: Response data containing the requested object
        error:
          type:
            - string
            - 'null'
          examples:
            - Invalid email address
          description: Error message of the response, human readable
        message:
          type:
            - string
            - 'null'
          examples:
            - Resource created successfully
          description: Message of the response, human readable
        env:
          type: string
          enum:
            - development
            - production
          description: API environment
        log:
          type:
            - string
            - object
            - 'null'
          examples:
            - request_id: req_1234567890
            - Some pertinent log message
          description: Useful informaiton, not always present, to debug the response
        validator:
          type:
            - object
            - 'null'
          examples:
            - email: Invalid email address
              password: Password is required
          description: >-
            Validator response object, each key is the field name and value is
            the error message
        support_id:
          type:
            - string
            - 'null'
          format: uuid
          examples:
            - support_uuidv7-something-else
          description: >-
            Support ID linked to the response, used to identify it when talking
            with our team
      required:
        - status
        - data
        - message
        - env
      examples:
        - status: 200
          data:
            id: '123'
          error: null
          log: null
          validator: null
          support_id: null
          message: Resource created successfully
          env: development
    viewDeveloperWebhookResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/developersWebhook'
      required:
        - data
      examples:
        - data:
            id: webhook_0197bbbe-d286-73dd-8088-fc14dc526724
            secret: >-
              whs_live_MDA5N2JiVmU5ZDI4Ni03Yjg3xTkYZmEtxTg3MtJhODEzMmYyX4JpdGdwdA
            label: example
            url: https://api-beta-ha72hg.bitgpt.xyz/demo/webhook
            description: Example webhook for testing
            enabled: 1
            created_at: '2025-06-29 14:52:14'
            updated_at: null
            events:
              - api_key.created
    developersWebhook:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the webhook
        label:
          type: string
          description: Human-readable label for the webhook
          maxLength: 255
        url:
          type: string
          format: uri
          description: URL where webhook events will be sent
        events:
          type: array
          description: List of events this webhook subscribes to
          items:
            $ref: '#/components/schemas/webhookEvent'
            description: Event type for the webhook
        secret:
          type: string
          description: Secret used to sign webhook payloads
        description:
          type:
            - string
            - 'null'
          description: Description for the webhook
        enabled:
          type: number
          description: Indicates if the webhook is currently enabled
          default: 1
        created_at:
          type: string
          format: mysql-date-time
          examples:
            - '2025-06-29 16:03:44'
          description: Timestamp when the webhook was created
        updated_at:
          type:
            - string
            - 'null'
          format: mysql-date-time
          examples:
            - '2025-06-29 16:03:44'
          description: Timestamp when the webhook was last updated
        day_metrics:
          oneOf:
            - $ref: '#/components/schemas/webhookDayMetrics'
            - type: 'null'
        hourly_metrics:
          description: Hourly metrics for the last 24 hours
          oneOf:
            - type: array
              items:
                $ref: '#/components/schemas/webhookHourlyMetrics'
            - type: 'null'
      required:
        - id
        - label
        - url
        - events
        - description
        - created_at
        - updated_at
    webhookEvent:
      type: string
      description: Type of webhook event that occurred
      oneOf:
        - type: string
          enum:
            - api_key.created
          description: Webhook event for when an API key is created
        - type: string
          enum:
            - api_key.updated
          description: Webhook event for when an API key is updated
        - type: string
          enum:
            - api_key.deleted
          description: Webhook event for when an API key is deleted
        - type: string
          enum:
            - product.created
          description: Webhook event for when a product is created
        - type: string
          enum:
            - product.updated
          description: Webhook event for when a product is updated
        - type: string
          enum:
            - product.deleted
          description: Webhook event for when a product is deleted
        - type: string
          enum:
            - invoice.created
          description: Webhook event for when an invoice is created
        - type: string
          enum:
            - invoice.updated
          description: Webhook event for when an invoice is updated
        - type: string
          enum:
            - invoice.completed
          description: Webhook event for when an invoice is completed
        - type: string
          enum:
            - invoice.cancelled
          description: Webhook event for when an invoice is canceled
        - type: string
          enum:
            - payment.created
          description: Webhook event for when a payment is created
        - type: string
          enum:
            - payment.updated
          description: Webhook event for when a payment is updated
        - type: string
          enum:
            - payment.completed
          description: Webhook event for when a payment is completed
        - type: string
          enum:
            - payment.cancelled
          description: Webhook event for when a payment is cancelled
      examples:
        - product.created
        - invoice.completed
    webhookDayMetrics:
      type: object
      properties:
        webhook_id:
          type: string
          description: Unique identifier for the webhook
        total:
          type: integer
          description: Total number of webhook deliveries
        success:
          type: integer
          description: Number of successful webhook deliveries
        failed:
          type: integer
          description: Number of failed webhook deliveries
        pending:
          type: integer
          description: Number of pending webhook deliveries
        retry_rate_pct:
          type: number
          description: Average number of retries per webhook delivery
        avg_delay_ms:
          type: number
          description: Average delay in seconds for webhook deliveries
    webhookHourlyMetrics:
      type: object
      description: Hourly metrics
      properties:
        webhook_id:
          type: string
          description: ID of the webhook for which metrics are being reported
        hour:
          type: string
          description: Hour in format YYYY-MM-DD HH:00:00
        total:
          type: integer
          description: Total number of webhook deliveries in this hour
        success:
          type: integer
          description: Number of successful webhook deliveries in this hour
        failed:
          type: integer
          description: Number of failed webhook deliveries in this hour
        pending:
          type: integer
          description: Number of pending webhook deliveries in this hour
      required:
        - hour
        - total
        - success
        - failed
        - pending
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Send your access token as header Authorization: Bearer {accessToken}'
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Your API key that starts with sk_live or sk_test. You can create yours
        at go.bitgpt.xyz/api-keys.

````