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

# Configure webhook settings



## OpenAPI

````yaml /api-reference/openapi.json put /api/v1/settings/webhooks
openapi: 3.1.0
info:
  title: FossaPay API
  description: >-
    FossaPay API for checkout wallets, master-wallet payouts, customer
    management, NGN wallets, crypto wallets, transfers, fees, banks, and
    webhooks.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api-production.fossapay.com
    description: Production server
security:
  - ApiKeyAuth: []
paths:
  /api/v1/settings/webhooks:
    put:
      tags:
        - Webhooks
      summary: Configure webhook settings
      operationId: WebhooksController_updateSettings
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookSettingsRequest'
      responses:
        '200':
          description: Webhook settings updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSettingsResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
components:
  schemas:
    WebhookSettingsRequest:
      type: object
      required:
        - url
        - events
        - secret
      properties:
        url:
          type: string
          format: uri
        events:
          type: array
          items:
            type: string
            enum:
              - deposit.completed
              - withdrawal.completed
              - transfer.completed
              - transfer.failed
              - wallet.balance.updated
              - checkout.completed
              - checkout.failed
              - checkout.expired
              - checkout.reversed
              - payout.completed
              - payout.failed
              - payout.reversed
        secret:
          type: string
      additionalProperties: false
    WebhookSettingsResponse:
      type: object
      required:
        - status
        - message
      properties:
        status:
          type: boolean
        message:
          type: string
        data:
          type: object
          additionalProperties: true
      additionalProperties: true
    ApiError:
      type: object
      properties:
        status:
          oneOf:
            - type: string
            - type: boolean
        statusCode:
          type: integer
        message:
          type: string
        error:
          type: string
        code:
          type: string
        errors:
          type: object
          additionalProperties: true
      additionalProperties: true
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````