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

# Create webhook config



## OpenAPI

````yaml https://api.gonitro.dev/openapi.json post /webhooks/configs
openapi: 3.1.0
info:
  title: Nitro Sign Public API
  description: REST API for Nitro Sign
  version: '0.1'
servers:
  - url: https://api.gonitro.dev
    description: Europe
  - url: https://api.us.gonitro.dev
    description: North America
  - url: https://api.au.gonitro.dev
    description: Australia
security:
  - bearerAuth: []
paths:
  /webhooks/configs:
    post:
      tags:
        - Webhooks
      summary: Create webhook config
      operationId: create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookConfigCreate'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookConfig'
        '400':
          description: Invalid request
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/BadRequestProblemDetail'
        '401':
          description: Unauthorized - Invalid or missing JWT token
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/UnauthorizedProblemDetail'
        '403':
          description: Forbidden
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ForbiddenProblemDetail'
        '409':
          description: A webhook config already exists for this application
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ConflictProblemDetail'
components:
  schemas:
    WebhookConfigCreate:
      type: object
      properties:
        url:
          type: string
          description: The customer endpoint URL to deliver webhooks to
          example: https://customer.example.com/webhook
          minLength: 1
        events:
          type: array
          description: >-
            List of event types to subscribe to, or ["AllEvents"] to subscribe
            to all supported event types including ones introduced in the future
          example:
            - EnvelopeCreated
            - EnvelopeSigningCompleted
          items:
            type: string
          minItems: 1
      required:
        - events
        - url
    WebhookConfig:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier
        accountId:
          type: string
          description: Account identifier
        applicationId:
          type: string
          description: Application identifier
        url:
          type: string
          description: Endpoint URL
        secret:
          type: string
          description: >-
            Signing secret, returned only once in the create response; store it
            securely
        subscribedEvents:
          type: array
          description: Subscribed event types, or ["AllEvents"] when subscribed to all
          items:
            type: string
        createdAt:
          type: string
          format: date-time
          description: Creation timestamp
        updatedAt:
          type: string
          format: date-time
          description: Last update timestamp
    BadRequestProblemDetail:
      type: object
      description: Bad Request error details
      example:
        type: https://developers.gonitro.com/docs/build-nitro/errors#400-bad-request
        title: Bad Request
        status: 400
        detail: Request validation failed
        instance: /sign/envelopes
        validation_errors:
          name: must not be blank
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
    UnauthorizedProblemDetail:
      type: object
      description: Unauthorized error details
      example:
        type: >-
          https://developers.gonitro.com/docs/build-nitro/errors#401-unauthorized
        title: Unauthorized
        status: 401
        detail: Missing or invalid Authorization header
        instance: /sign/envelopes
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
    ForbiddenProblemDetail:
      type: object
      description: Forbidden error details
      example:
        type: https://developers.gonitro.com/docs/build-nitro/errors#403-forbidden
        title: Forbidden
        status: 403
        detail: Forbidden
        instance: /webhooks/configs
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
    ConflictProblemDetail:
      type: object
      description: Conflict error details
      example:
        type: https://developers.gonitro.com/docs/build-nitro/errors#409-conflict
        title: Conflict
        status: 409
        detail: Too many documents in the same package
        instance: /sign/envelopes/%s/documents
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````