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

# Create webhook endpoint



## OpenAPI

````yaml /openapi.public.json post /integrations/webhooks
openapi: 3.1.1
info:
  title: Breezy Public API
  version: 1.0.0
  description: Curated Breezy customer API for user JWT and service API key clients.
servers:
  - url: https://ai-api.getbreezyapp.com/api/v1
    description: Production
security:
  - userJwtBearer: []
  - serviceApiKeyBearer: []
tags:
  - name: API Keys
    description: Create, list, reveal, and revoke service API keys.
  - name: Company Settings
    description: Read and update tenant company settings and service zones.
  - name: Contacts
    description: Read contacts and update customer attribution fields.
  - name: Service Requests
    description: Read and triage customer service requests.
  - name: Users
    description: Read public user identity and team user records.
  - name: Webhooks
    description: Create, update, rotate, and delete webhook endpoints.
paths:
  /integrations/webhooks:
    post:
      tags:
        - Webhooks
      summary: Create webhook endpoint
      operationId: webhooks.create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 100
                url:
                  type: string
                  minLength: 1
                  maxLength: 2048
                eventTypes:
                  type: array
                  minItems: 1
                  items:
                    enum:
                      - service_request.created
                      - service_request.status_changed
                      - service_request.booked
                      - interaction.completed
                    type: string
                enabled:
                  type: boolean
                  default: true
              required:
                - name
                - url
                - eventTypes
      responses:
        '201':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        pattern: >-
                          ^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$
                        description: Unique identifier (UUID)
                      name:
                        type: string
                      url:
                        type: string
                      eventTypes:
                        type: array
                        items:
                          enum:
                            - service_request.created
                            - service_request.status_changed
                            - service_request.booked
                            - interaction.completed
                          type: string
                        readOnly: true
                      enabled:
                        type: boolean
                      createdAt:
                        type: string
                        format: date-time
                      updatedAt:
                        type: string
                        format: date-time
                      lastDeliveryAt:
                        anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                      lastDeliveryStatus:
                        anyOf:
                          - enum:
                              - pending
                              - succeeded
                              - failed
                              - abandoned
                            type: string
                          - type: 'null'
                      signingSecret:
                        type: string
                    required:
                      - id
                      - name
                      - url
                      - eventTypes
                      - enabled
                      - createdAt
                      - updatedAt
                      - lastDeliveryAt
                      - lastDeliveryStatus
                      - signingSecret
                    readOnly: true
                required:
                  - data
                readOnly: true
      security:
        - userJwtBearer: []
components:
  securitySchemes:
    userJwtBearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        User JWT bearer token. User principals can manage API keys and call
        tenant-scoped customer endpoints.
    serviceApiKeyBearer:
      type: http
      scheme: bearer
      bearerFormat: bzy_live_...
      description: >-
        Service API key bearer token beginning with bzy_live_. Service API keys
        use tenant scope and cannot manage API keys or call user-only endpoints.

````