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

# Retrieve a Webhook

> Retrieve a webhook subscription.



## OpenAPI

````yaml /Sela_API.yaml get /api/webhooks/{id}/
openapi: 3.0.3
info:
  title: Sela API
  version: 1.0.2
  description: Voice AI agents with superhuman conversion rates
servers:
  - url: https://api.trysela.com/
    description: Production API
security: []
paths:
  /api/webhooks/{id}/:
    get:
      tags:
        - Webhooks
      summary: Retrieve a Webhook
      description: Retrieve a webhook subscription.
      operationId: webhooks_retrieve
      parameters:
        - in: path
          name: id
          schema:
            type: integer
          description: A unique integer value identifying this webhook.
          required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
          description: ''
      security:
        - tokenAuth: []
components:
  schemas:
    Webhook:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        url:
          type: string
          format: uri
          description: >-
            Webhook URL. Supports {{variable}} placeholders resolved from the
            webhook payload (e.g. https://api.example.com/leads/{{id}}/notify).
            Use dot notation for nested values (e.g. {{metadata.us_state}}).
          maxLength: 255
        trigger:
          $ref: '#/components/schemas/TriggerEnum'
        method:
          nullable: true
          description: >-
            HTTP method to use when sending the webhook request. NULL or blank
            defaults to POST.


            * `GET` - GET

            * `POST` - POST

            * `PUT` - PUT

            * `PATCH` - PATCH
          oneOf:
            - $ref: '#/components/schemas/MethodEnum'
            - $ref: '#/components/schemas/BlankEnum'
            - $ref: '#/components/schemas/NullEnum'
        filter_condition:
          type: string
          nullable: true
          description: >-
            Optional filter expression that controls when the webhook fires. The
            expression is evaluated against the webhook payload - the same data
            sent in the request body. Leave blank to always fire. Use
            has('field') to check whether a field exists, get('path.to.value',
            default) for safe nested access, and comparison operators such as
            ==, !=, and, or. Examples: status == 'CLOSED', has('last_chat') and
            last_chat['is_contact'], get('last_chat.call_direction', '') ==
            'INBOUND'
      required:
        - id
        - url
    TriggerEnum:
      enum:
        - LEAD_CREATED
        - LEAD_UPDATED
        - LEAD_CLOSED
        - LEAD_CLOSED_INCOMPLETE
        - LEAD_LOST
        - LEAD_SCHEDULE_COMPLETED
        - LEAD_LATE_CALLBACK
        - LEAD_OUT_OF_TERRITORY
        - LEAD_BAD_NUMBER
        - LEAD_CANCELLED
        - LEAD_CALLBACK_TO_TRANSFER
        - LEAD_BEFORE_REENGAGEMENT
        - LEAD_REENGAGEMENT
        - LEAD_FIRST_INBOUND
        - CALL_COMPLETE
        - BEFORE_CALLING
        - CALL_FAILED
        - CALL_ENDED
        - CALL_TRANSFER_INITIATED
        - SMS_DNC
        - CALL_DNC
      type: string
      description: |-
        * `LEAD_CREATED` - Lead Created
        * `LEAD_UPDATED` - Lead Updated
        * `LEAD_CLOSED` - Lead Closed
        * `LEAD_CLOSED_INCOMPLETE` - Lead Closed Incomplete
        * `LEAD_LOST` - Lead Lost
        * `LEAD_SCHEDULE_COMPLETED` - Lead Schedule Completed
        * `LEAD_LATE_CALLBACK` - Lead Late Callback
        * `LEAD_OUT_OF_TERRITORY` - Lead Out of Territory
        * `LEAD_BAD_NUMBER` - Lead Bad Number
        * `LEAD_CANCELLED` - Lead Cancelled
        * `LEAD_CALLBACK_TO_TRANSFER` - Lead Callback to Transfer
        * `LEAD_BEFORE_REENGAGEMENT` - Lead Before Reengagement
        * `LEAD_REENGAGEMENT` - Lead Reengagement
        * `LEAD_FIRST_INBOUND` - Lead First Inbound
        * `CALL_COMPLETE` - Call Complete
        * `BEFORE_CALLING` - Before Calling
        * `CALL_FAILED` - Call Failed
        * `CALL_ENDED` - Call Ended
        * `CALL_TRANSFER_INITIATED` - Call Transfer Initiated
        * `SMS_DNC` - SMS DNC
        * `CALL_DNC` - CALL DNC
    MethodEnum:
      enum:
        - GET
        - POST
        - PUT
        - PATCH
      type: string
      description: |-
        * `GET` - GET
        * `POST` - POST
        * `PUT` - PUT
        * `PATCH` - PATCH
    BlankEnum:
      enum:
        - ''
    NullEnum:
      enum:
        - null
  securitySchemes:
    tokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Token-based authentication with required prefix "Token"

````