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

# Delete a webhook subscription

> Permanently delete a webhook subscription.

## ⚠️ Warning
This action cannot be undone. The webhook will immediately stop receiving events and its configuration will be permanently removed.

## When to Delete vs Deactivate
- **Delete** when:
  - The webhook endpoint is being permanently decommissioned
  - You're migrating to a completely different webhook system
  - The webhook was created for testing and is no longer needed

- **Deactivate** (set status to inactive) when:
  - Temporarily pausing webhooks for maintenance
  - Troubleshooting webhook issues
  - You might need the webhook configuration later

## Example Request
```bash
curl -X DELETE https://app.titanx.io/api/public/v2/webhooks/550e8400-e29b-41d4-a716-446655440000 \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## Response
Returns HTTP 204 No Content on successful deletion.



## OpenAPI

````yaml /api-reference/openapi.json delete /api/public/v2/webhooks/{id}
openapi: 3.1.0
info:
  version: 2.0.0
  title: TitanX API
  description: |-
    # TitanX API Documentation

    Welcome to the TitanX API!

    ## Base URL

    ```
    https://app.titanx.io/api/public/v2
    ```

    ## Authentication

    All endpoints require Bearer token authentication:

    ```http
    Authorization: Bearer YOUR_API_KEY
    ```

    ## Response Format

    All endpoints return responses in this consistent format:

    ```json
    {
      "data": { /* Your requested data */ },
      "credits": {
        "creditsCharged": 5,
        "creditsRemaining": 995,
        "costPerPhone": 0.05,
        "phoneCount": 100
      },
      "error": null
    }
    ```
servers:
  - url: https://app.titanx.io
    description: Production server
security:
  - bearerAuth: []
tags:
  - name: v2
    description: ✅ Version 2 API (Current)
    externalDocs:
      description: V2 API Guide
      url: https://docs.titanx.io/api/v2
  - name: v2-contacts
    description: V2 Contact operations - scoring and enrichment with credit tracking
  - name: v2-jobs
    description: V2 Job operations - job management and contact retrieval
  - name: v2-account
    description: V2 Account operations - credits and billing information
  - name: v2-webhooks
    description: >-
      V2 Webhook operations - manage webhook subscriptions for real-time contact
      event notifications
paths:
  /api/public/v2/webhooks/{id}:
    delete:
      tags:
        - v2
        - v2-webhooks
      summary: Delete a webhook subscription
      description: >-
        Permanently delete a webhook subscription.


        ## ⚠️ Warning

        This action cannot be undone. The webhook will immediately stop
        receiving events and its configuration will be permanently removed.


        ## When to Delete vs Deactivate

        - **Delete** when:
          - The webhook endpoint is being permanently decommissioned
          - You're migrating to a completely different webhook system
          - The webhook was created for testing and is no longer needed

        - **Deactivate** (set status to inactive) when:
          - Temporarily pausing webhooks for maintenance
          - Troubleshooting webhook issues
          - You might need the webhook configuration later

        ## Example Request

        ```bash

        curl -X DELETE
        https://app.titanx.io/api/public/v2/webhooks/550e8400-e29b-41d4-a716-446655440000
        \
          -H "Authorization: Bearer YOUR_API_KEY"
        ```


        ## Response

        Returns HTTP 204 No Content on successful deletion.
      parameters:
        - schema:
            type: string
            format: uuid
            description: Webhook ID to delete
            example: 550e8400-e29b-41d4-a716-446655440000
          required: true
          description: Webhook ID to delete
          name: id
          in: path
      responses:
        '204':
          description: Webhook deleted successfully (no content)
        '400':
          description: Invalid request - invalid webhook ID format
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookErrorResponse'
        '401':
          description: Unauthorized - invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookErrorResponse'
        '404':
          description: Webhook not found or not owned by user
      security:
        - bearerAuth: []
components:
  schemas:
    WebhookErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Error message describing what went wrong
          example: 'Invalid webhook ID: must be a valid UUID'
      required:
        - error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````