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

# Create webhook

> Create a new webhook endpoint



## OpenAPI

````yaml https://api.conduit.financial/api-docs/2024-12-01/openapi-external.yaml?mode=dynamic post /webhooks
openapi: 3.0.2
info:
  version: '2024-12-01'
  title: Conduit API
  description: The Conduit Financial API
  contact:
    name: Conduit Support
    email: conduit@conduit.fi
servers:
  - url: https://api.conduit.financial
    description: The Conduit API live environment
  - url: https://api.sandbox.conduit.financial
    description: The Conduit API Sandbox environment
security: []
tags:
  - name: Accounts
    description: |
      Endpoints dealing with accounts.
  - name: Counterparties
    description: |
      Endpoints dealing with counterparties information. 
  - name: Quotes
    description: |
      Endpoints dealing with quotes.
  - name: Transactions
    description: |
      Endpoints dealing with transactions.
  - name: Documents
    description: |
      Endpoints dealing with documents.
  - name: Customers
    description: |
      Endpoints dealing with customer information. 
paths:
  /webhooks:
    post:
      tags:
        - Webhooks
      summary: Create webhook
      description: Create a new webhook endpoint
      operationId: createWebhook
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  format: uri
                events:
                  type: array
                  items:
                    type: string
                    enum:
                      - counterparty.active
                      - counterparty.compliance_rejected
                      - counterparty.deleted
                      - counterparty.in_compliance_review
                      - customer.active
                      - customer.in_compliance_review
                      - customer.compliance_rejected
                      - customer.created
                      - customer.kyb_in_progress
                      - customer.kyb_expired
                      - customer.kyb_missing_information
                      - customer.account_onboarding_pending
                      - transaction.initializing
                      - transaction.created
                      - transaction.compliance_approved
                      - transaction.compliance_rejected
                      - transaction.completed
                      - transaction.awaiting_funds
                      - transaction.funds_received
                      - transaction.cancelled
                      - transaction.in_compliance_review
                      - transaction.awaiting_compliance_review
                      - transaction.processing_withdrawal
                      - transaction.withdrawal_processed
                      - transaction.processing_settlement
                      - transaction.settlement_processed
                      - transaction.processing_payment
                      - transaction.payment_processed
                  minItems: 1
                status:
                  type: string
                  enum:
                    - enabled
                    - disabled
                organizationId:
                  $ref: '#/components/schemas/ClientId'
              required:
                - url
                - events
                - status
      responses:
        '201':
          description: The created webhook
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
                    format: uri
                  events:
                    type: array
                    items:
                      type: string
                      enum:
                        - counterparty.active
                        - counterparty.compliance_rejected
                        - counterparty.deleted
                        - counterparty.in_compliance_review
                        - customer.active
                        - customer.in_compliance_review
                        - customer.compliance_rejected
                        - customer.created
                        - customer.kyb_in_progress
                        - customer.kyb_expired
                        - customer.kyb_missing_information
                        - customer.account_onboarding_pending
                        - transaction.initializing
                        - transaction.created
                        - transaction.compliance_approved
                        - transaction.compliance_rejected
                        - transaction.completed
                        - transaction.awaiting_funds
                        - transaction.funds_received
                        - transaction.cancelled
                        - transaction.in_compliance_review
                        - transaction.awaiting_compliance_review
                        - transaction.processing_withdrawal
                        - transaction.withdrawal_processed
                        - transaction.processing_settlement
                        - transaction.settlement_processed
                        - transaction.processing_payment
                        - transaction.payment_processed
                    minItems: 1
                  status:
                    type: string
                    enum:
                      - enabled
                      - disabled
                  organizationId:
                    $ref: '#/components/schemas/ClientId'
                  id:
                    $ref: '#/components/schemas/WebhookId'
                  secret:
                    type: string
                required:
                  - url
                  - events
                  - status
                  - id
        '400':
          description: Input validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestErrorResponse'
        '403':
          description: Authorization error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenErrorResponse'
        '415':
          description: Unsupported media type error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnsupportedMediaTypeErrorResponse'
        '429':
          description: Throttling error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsErrorResponse'
        '500':
          description: Internal Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerErrorResponse'
      security:
        - apiKey: []
          apiSecret: []
components:
  schemas:
    ClientId:
      type: string
      pattern: ^client_[a-zA-Z0-9]{27}$
      description: A valid Client ID
      example: client_2ofTA13AD0xBtbEvBl20aEb1hEu
    WebhookId:
      type: string
      pattern: ^whk_[a-zA-Z0-9]{27}$
      description: A valid Webhook ID
      example: whk_2ofTA13AD0xBtbEvBl20aEb1hEu
    BadRequestErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              detail:
                type: string
              code:
                type: string
            required:
              - detail
              - code
      required:
        - errors
    ForbiddenErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              detail:
                type: string
              code:
                type: string
            required:
              - detail
              - code
      required:
        - errors
    UnsupportedMediaTypeErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              detail:
                type: string
              code:
                type: string
            required:
              - detail
              - code
      required:
        - errors
    TooManyRequestsErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              detail:
                type: string
              code:
                type: string
            required:
              - detail
              - code
      required:
        - errors
    InternalServerErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              detail:
                type: string
              code:
                type: string
            required:
              - detail
              - code
      required:
        - errors
  securitySchemes:
    apiKey:
      type: apiKey
      description: Includes an API key in the HTTP headers to authenticate the client.
      name: X-API-Key
      in: header
    apiSecret:
      type: apiKey
      description: Includes an API secret in the HTTP headers to authenticate the client.
      name: X-API-Secret
      in: header

````