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

# List webhook endpoints

> Lists the workspace's webhook endpoints, oldest first. Signing secrets are never returned. Endpoints are managed in the dashboard.



## OpenAPI

````yaml https://monid.ai/openapi.json get /v1/webhooks
openapi: 3.1.0
info:
  title: Monid API
  version: 0.1.0
  description: >-
    Agentic payment platform for data. Agents use it to discover and buy data on
    demand. Authenticated routes take a Monid API key as a Bearer token. Errors
    return `{ code, message }`. List endpoints use cursor pagination.
servers:
  - url: https://api.monid.ai
    description: Production
security: []
paths:
  /v1/webhooks:
    get:
      tags:
        - Webhooks
      summary: List webhook endpoints
      description: >-
        Lists the workspace's webhook endpoints, oldest first. Signing secrets
        are never returned. Endpoints are managed in the dashboard.
      responses:
        '200':
          description: The endpoints
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEndpointList'
        '401':
          description: Unauthorized. The API key is missing, invalid, expired or revoked.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: >-
            Forbidden. The API key lacks the scope this operation needs, or has
            no workspace.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: >-
            Rate limited. Wait the number of seconds in the `Retry-After`
            header, then retry. The `RateLimit-Limit`, `RateLimit-Remaining` and
            `RateLimit-Reset` headers describe the limit that applied.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - Bearer:
            - webhooks:read
components:
  schemas:
    WebhookEndpointList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/WebhookEndpoint'
        limit:
          type: integer
          description: >-
            Max endpoints this workspace may have (default 5; raised per
            workspace on request).
          example: 5
      required:
        - items
        - limit
    Error:
      type: object
      properties:
        code:
          type: integer
          description: HTTP status code, duplicated in the body.
          example: 400
        message:
          type: string
          description: Human-readable error description.
          example: Bad Request
        errorCode:
          type: string
          enum:
            - BAD_REQUEST
            - VALIDATION_FAILED
            - INVALID_JSON
            - INVALID_CURSOR
            - UNAUTHENTICATED
            - FORBIDDEN
            - NOT_FOUND
            - CONFLICT
            - GONE
            - PAYLOAD_TOO_LARGE
            - INTERNAL_ERROR
            - NOT_IMPLEMENTED
            - BAD_GATEWAY
            - SERVICE_UNAVAILABLE
            - WALLET_NOT_ACTIVE
            - WALLET_PROVISIONING
            - WALLET_FAILED
            - RATE_LIMITED
            - X402_WORKSPACE_RESOURCES
            - X402_WORKSPACE_ONLY
            - X402_ACCRUING_COST
            - X402_EXCEEDS_SETTLEMENT_WINDOW
            - X402_VALIDITY_WINDOW_TOO_SHORT
            - X402_UNBOUNDED_PRICE
            - X402_SETTLEMENT_FAILED
            - INSUFFICIENT_SCOPE
            - WALLET_INSUFFICIENT_FUNDS
            - MAX_COST_EXCEEDED
            - IDEMPOTENCY_KEY_REUSED
            - IDEMPOTENCY_KEY_IN_USE
            - IDENTITY_PROVIDER_UNKNOWN
            - IDENTITY_LINK_REQUIRES_SESSION
            - IDENTITY_LINK_STATE_INVALID
            - IDENTITY_VERIFICATION_FAILED
            - IDENTITY_ASSURANCE_INSUFFICIENT
            - IDENTITY_PROVIDER_UNAVAILABLE
            - IDENTITY_ALREADY_LINKED
            - IDENTITY_USER_ALREADY_LINKED
            - IDENTITY_LINK_RATE_LIMITED
            - IDENTITY_REQUIRED
            - PROMO_IDENTITY_REDEEMED
            - PROMO_REDEEM_REQUIRES_SESSION
            - PROMO_CODE_REDEEMED_BY_WORKSPACE
            - PROMO_CODE_REDEEMED_BY_USER
            - WEBHOOK_REQUIRES_SESSION
            - WEBHOOK_URL_NOT_ALLOWED
            - WEBHOOK_ENDPOINT_LIMIT
            - WEBHOOK_ROTATION_LIMIT
          description: >-
            Machine-readable reason, present on every error. Either a specific
            code (for example `MAX_COST_EXCEEDED`) or the generic code of the
            HTTP status (for example `NOT_FOUND`). Treat an unknown value as the
            generic meaning of the status.
        hints:
          type: object
          additionalProperties:
            anyOf:
              - type: string
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - command
                      - discover
                      - inspect
                      - run
                      - getRun
                      - stop
                      - releaseResource
                      - topup
                  command:
                    type: string
                  query:
                    type: string
                  provider:
                    type: string
                  endpoint:
                    type: string
                  runId:
                    type: string
                  resourceId:
                    type: string
                  stripe:
                    type: string
                  dashboard:
                    type: string
                  docs:
                    type: string
                  comment:
                    type: string
                required:
                  - kind
          description: >-
            Optional next actions, rendered for the calling client like
            run-response hints (e.g. the paid TinyFish version on a free-quota
            429 — spending permission required).
      required:
        - code
        - message
        - errorCode
    WebhookEndpoint:
      type: object
      properties:
        endpointId:
          type: string
        name:
          type: string
        url:
          type: string
        eventTypes:
          type: array
          items:
            type: string
        status:
          type: string
          enum:
            - ENABLED
            - DISABLED
        disabledReason:
          type: string
          enum:
            - MANUAL
            - GONE_410
          description: >-
            `MANUAL`, or the one automatic disable: `GONE_410` (the URL answered
            410 Gone).
        disabledMessage:
          type: string
        disabledAt:
          type: string
        disabledBy:
          type: string
        failingSince:
          type: string
          description: >-
            Warning: first failed attempt since the last success. Monid keeps
            delivering; a 2xx clears it.
        lastFailedAt:
          type: string
          description: 'Warning: the most recent failed attempt.'
        secretLastFourCharacters:
          type: string
          description: Last four characters of the current signing secret.
        version:
          type: integer
          description: >-
            Edit counter. Send it back with `PATCH`: a stale value gets 409.
            Goes up on every edit, rotation and automatic disable.
          example: 3
        createdBy:
          type: string
        createdAt:
          type: string
        updatedAt:
          type: string
      required:
        - endpointId
        - name
        - url
        - eventTypes
        - status
        - secretLastFourCharacters
        - version
        - createdBy
        - createdAt
        - updatedAt
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      description: Monid API key
      x-aep-authentication-method: api-key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.