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

# Subscribe to webhook

> This endpoint allows you to subscribe to a specific webhook event (e.g., new call responses or phone transfers). You must provide the event type and a callback URL.



## OpenAPI

````yaml post /webhooks/subscribe
openapi: 3.0.0
info:
  title: Thoughtly API
  version: 1.0.0
  contact:
    name: Thoughtly Support
    email: support@thoughtly.com
    url: https://thoughtly.com
servers:
  - url: https://api.thoughtly.com
    description: Production server
security:
  - ApiKeyAuth: []
    TeamIdAuth: []
paths:
  /webhooks/subscribe:
    post:
      tags:
        - webhooks
      summary: Subscribe to webhook
      description: >-
        This endpoint allows you to subscribe to a specific webhook event (e.g.,
        new call responses or phone transfers). You must provide the event type
        and a callback URL.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - type
                - url
              properties:
                type:
                  type: string
                  enum:
                    - NEW_RESPONSE
                    - PHONE_TRANSFER
                  description: >-
                    The type of webhook event to subscribe to. Choose
                    'NEW_RESPONSE' for new call responses or 'PHONE_TRANSFER'
                    for phone call transfers.
                  example: NEW_RESPONSE
                data:
                  type: string
                  nullable: true
                  description: >-
                    Additional data that can be included with the webhook event.
                    This is optional.
                url:
                  type: string
                  format: uri
                  description: The callback URL where the webhook should send the event.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
components:
  schemas:
    GenericResponse:
      type: object
      properties:
        error:
          type: object
          nullable: true
          description: >-
            An object containing error details, if any. This field will be
            populated if the API request fails or encounters an error. If the
            request is successful, this field will be null or omitted.
        data:
          type: object
          additionalProperties: true
          description: >-
            Contains the response data for the successful request. This field
            will vary based on the specific API endpoint being called and
            contains the main data returned from the API. For example, it may
            include information about a created contact, agent, or webhook
            subscription.
      required:
        - data
      description: >-
        The generic response format for all API requests. This structure ensures
        consistency in how success and error information is returned to the
        caller.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-token
      description: >-
        API key for the user making the request. This can be found via the
        [Developer Settings](https://app.thoughtly.com/settings/developer) page
        in the dashboard.
    TeamIdAuth:
      type: apiKey
      in: header
      name: team_id
      description: >-
        Team identifier, used to scope requests to a specific team. This can be
        found via the [Developer
        Settings](https://app.thoughtly.com/settings/developer) page in the
        dashboard.

````