SecureAuth (incl. Cloudentity) Webhooks API

The webhooks API from SecureAuth (incl. Cloudentity) — 3 operation(s) for webhooks.

Business capability
Webhook & Event Subscription Management BC-4270.80

Operations 6

GET /servers/{wid}/webhooks List webhooks #
POST /servers/{wid}/webhooks Create a Webhook #
DELETE /servers/{wid}/webhooks/{webhookID} Delete Webhook #
GET /servers/{wid}/webhooks/{webhookID} Get Webhook #
PUT /servers/{wid}/webhooks/{webhookID} Update a Webhook #
GET /webhooks/events/{wid} List available events for a webhook #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/secureauth:secureauth-webhooks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

secureauth-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'SecureAuth Admin API


    The POST APIs support idempotency for safely retrying requests without accidentally performing the same operation twice.


    To use idempotent requests:


    1. Generate a unique idempotency key (32-255 characters long).

    2. Include the key in the X-Idempotency-Key header of your POST request.

    3. Retry failed requests with the same key within 1 minute.


    Responses for replayed requests will include the X-Idempotent-Replayed: true header.'
  title: SecureAuth Webhooks API
  version: latest
servers:
- url: https://localhost:8443/api/admin/default
tags:
- name: Webhooks
paths:
  /servers/{wid}/webhooks:
    get:
      description: Returns list of webhooks for server
      operationId: listServerWebhooks
      parameters:
      - description: A server will only return requested resources if the resource matches one of the listed ETag value
        in: header
        name: if-match
        schema:
          type: string
          format: etag
      - description: Unique identifier included in audit events for request tracking
        in: header
        name: x-correlation-id
        schema:
          type: string
      - description: Key used to safely retry failed requests without duplicate processing
        in: header
        name: x-idempotency-key
        schema:
          type: string
      - description: Authorization server id
        in: path
        name: wid
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/WebhooksResponse'
        '401':
          $ref: '#/components/responses/unauthorizedHTTPError'
        '403':
          $ref: '#/components/responses/forbiddenHTTPError'
        '429':
          $ref: '#/components/responses/tooManyRequestsHTTPError'
      security:
      - admin: []
      summary: List webhooks
      tags:
      - Webhooks
    post:
      description: Creates a webhook
      operationId: createWebhook
      parameters:
      - description: A server will only return requested resources if the resource matches one of the listed ETag value
        in: header
        name: if-match
        schema:
          type: string
          format: etag
      - description: Unique identifier included in audit events for request tracking
        in: header
        name: x-correlation-id
        schema:
          type: string
      - description: Key used to safely retry failed requests without duplicate processing
        in: header
        name: x-idempotency-key
        schema:
          type: string
      - description: Authorization server id
        in: path
        name: wid
        required: true
        schema:
          type: string
      responses:
        '201':
          $ref: '#/components/responses/WebhookOnCreateResponse'
        '400':
          $ref: '#/components/responses/badRequestHTTPError'
        '401':
          $ref: '#/components/responses/unauthorizedHTTPError'
        '403':
          $ref: '#/components/responses/forbiddenHTTPError'
        '404':
          $ref: '#/components/responses/notFoundHTTPError'
        '422':
          $ref: '#/components/responses/unprocessableEntityHTTPError'
        '429':
          $ref: '#/components/responses/tooManyRequestsHTTPError'
      security:
      - admin: []
      summary: Create a Webhook
      tags:
      - Webhooks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Webhook'
  /servers/{wid}/webhooks/{webhookID}:
    delete:
      description: Deletes the Webhook.
      operationId: deleteWebhook
      parameters:
      - description: A server will only return requested resources if the resource matches one of the listed ETag value
        in: header
        name: if-match
        schema:
          type: string
          format: etag
      - description: Unique identifier included in audit events for request tracking
        in: header
        name: x-correlation-id
        schema:
          type: string
      - description: Key used to safely retry failed requests without duplicate processing
        in: header
        name: x-idempotency-key
        schema:
          type: string
      - description: Authorization server id
        in: path
        name: wid
        required: true
        schema:
          type: string
      - description: Webhook ID
        in: path
        name: webhookID
        required: true
        schema:
          type: string
      responses:
        '204':
          description: ' Webhook has been deleted'
        '401':
          $ref: '#/components/responses/unauthorizedHTTPError'
        '403':
          $ref: '#/components/responses/forbiddenHTTPError'
        '404':
          $ref: '#/components/responses/notFoundHTTPError'
        '429':
          $ref: '#/components/responses/tooManyRequestsHTTPError'
      security:
      - admin: []
      summary: Delete Webhook
      tags:
      - Webhooks
    get:
      description: Returns a Webhook and its content.
      operationId: getWebhook
      parameters:
      - description: A server will only return requested resources if the resource matches one of the listed ETag value
        in: header
        name: if-match
        schema:
          type: string
          format: etag
      - description: Unique identifier included in audit events for request tracking
        in: header
        name: x-correlation-id
        schema:
          type: string
      - description: Key used to safely retry failed requests without duplicate processing
        in: header
        name: x-idempotency-key
        schema:
          type: string
      - description: Authorization server id
        in: path
        name: wid
        required: true
        schema:
          type: string
      - description: Webhook ID
        in: path
        name: webhookID
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/WebhookResponse'
        '401':
          $ref: '#/components/responses/unauthorizedHTTPError'
        '403':
          $ref: '#/components/responses/forbiddenHTTPError'
        '404':
          $ref: '#/components/responses/notFoundHTTPError'
        '429':
          $ref: '#/components/responses/tooManyRequestsHTTPError'
      security:
      - admin: []
      summary: Get Webhook
      tags:
      - Webhooks
    put:
      description: Updates an existing Webhook
      operationId: updateWebhook
      parameters:
      - description: A server will only return requested resources if the resource matches one of the listed ETag value
        in: header
        name: if-match
        schema:
          type: string
          format: etag
      - description: Unique identifier included in audit events for request tracking
        in: header
        name: x-correlation-id
        schema:
          type: string
      - description: Key used to safely retry failed requests without duplicate processing
        in: header
        name: x-idempotency-key
        schema:
          type: string
      - description: Authorization server id
        in: path
        name: wid
        required: true
        schema:
          type: string
      - description: Webhook ID
        in: path
        name: webhookID
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/WebhookResponse'
        '400':
          $ref: '#/components/responses/badRequestHTTPError'
        '401':
          $ref: '#/components/responses/unauthorizedHTTPError'
        '403':
          $ref: '#/components/responses/forbiddenHTTPError'
        '404':
          $ref: '#/components/responses/notFoundHTTPError'
        '422':
          $ref: '#/components/responses/unprocessableEntityHTTPError'
        '429':
          $ref: '#/components/responses/tooManyRequestsHTTPError'
      security:
      - admin: []
      summary: Update a Webhook
      tags:
      - Webhooks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Webhook'
  /webhooks/events/{wid}:
    get:
      description: Returns list of events that can be used with webhooks
      operationId: listWebhookEvents
      parameters:
      - description: A server will only return requested resources if the resource matches one of the listed ETag value
        in: header
        name: if-match
        schema:
          type: string
          format: etag
      - description: Unique identifier included in audit events for request tracking
        in: header
        name: x-correlation-id
        schema:
          type: string
      - description: Key used to safely retry failed requests without duplicate processing
        in: header
        name: x-idempotency-key
        schema:
          type: string
      - description: Authorization server id
        in: path
        name: wid
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/AvailableEventsResponse'
        '401':
          $ref: '#/components/responses/unauthorizedHTTPError'
        '403':
          $ref: '#/components/responses/forbiddenHTTPError'
        '429':
          $ref: '#/components/responses/tooManyRequestsHTTPError'
      security:
      - admin: []
      summary: List available events for a webhook
      tags:
      - Webhooks
components:
  schemas:
    WebhooksResponse:
      description: Webhooks
      properties:
        webhooks:
          description: 'list of Webhooks

            in:body'
          items:
            $ref: '#/components/schemas/WebhookResponse'
          type: array
      type: object
    Event:
      properties:
        description:
          type: string
        name:
          type: string
      type: object
    Error:
      description: HTTP error response
      properties:
        details:
          type: object
        error:
          type: string
        error_code:
          type: string
        status_code:
          format: int64
          type: integer
      type: object
    Webhook:
      description: Custom Branding Webhook
      properties:
        active:
          description: Active
          type: boolean
        api_key:
          description: API Key
          type: string
        events:
          additionalProperties:
            items:
              type: string
            type: array
          description: events
          type: object
        include_child_events:
          description: IncludeChildEvents indicates whether to receive events from child organizations
          type: boolean
        insecure:
          description: Insecure
          type: boolean
        server_id:
          description: ID of the server
          format: serverID
          type: string
        tenant_id:
          description: ID of the tenant
          example: default
          format: tenantID
          type: string
        url:
          description: url of the Webhook
          type: string
        webhook_id:
          description: ID to the Webhook
          format: webhookID
          type: string
      required:
      - webhook_id
      - tenant_id
      - server_id
      type: object
    EventSubject:
      properties:
        description:
          type: string
        events:
          items:
            $ref: '#/components/schemas/Event'
          type: array
        name:
          type: string
      type: object
    AvailableEvents:
      description: AvailableEvents
      properties:
        etag:
          description: 'The ETag HTTP header is an identifier for a specific version of a resource


            in:header'
          format: etag
          type: string
        subjects:
          description: 'List of the events

            in:body'
          items:
            $ref: '#/components/schemas/EventSubject'
          type: array
        x-external-error:
          description: 'Indicates that a 5xx error was caused by tenant-provided code


            in:header'
          type: string
        x-trace-id:
          description: 'OpenTelemetry trace identifier


            in:header'
          type: string
      type: object
    WebhookResponse:
      description: Webhook object on list or get
      properties:
        active:
          description: Active
          type: boolean
        events:
          additionalProperties:
            items:
              type: string
            type: array
          description: events
          type: object
        include_child_events:
          description: IncludeChildEvents indicates whether to receive events from child organizations
          type: boolean
        insecure:
          description: Insecure
          type: boolean
        url:
          description: url of the Webhook
          type: string
        webhook_id:
          description: ID to the Webhook
          format: webhookID
          type: string
      type: object
    WebhookOnCreateResponse:
      description: Wevhook object on create
      properties:
        active:
          description: Active
          type: boolean
        api_key:
          description: API Key
          type: string
        events:
          additionalProperties:
            items:
              type: string
            type: array
          description: events
          type: object
        include_child_events:
          description: IncludeChildEvents indicates whether to receive events from child organizations
          type: boolean
        insecure:
          description: Insecure
          type: boolean
        url:
          description: url of the Webhook
          type: string
        webhook_id:
          description: ID to the Webhook
          format: webhookID
          type: string
      type: object
  responses:
    unprocessableEntityHTTPError:
      description: Unprocessable entity
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    AvailableEventsResponse:
      description: AvailableEventsResponse
      headers:
        etag:
          description: 'The ETag HTTP header is an identifier for a specific version of a resource


            in:header'
          schema:
            type: string
            format: etag
        x-external-error:
          description: 'Indicates that a 5xx error was caused by tenant-provided code


            in:header'
          schema:
            type: string
        x-trace-id:
          description: 'OpenTelemetry trace identifier


            in:header'
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AvailableEvents'
    notFoundHTTPError:
      description: Not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    forbiddenHTTPError:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    WebhookResponse:
      description: Webhook response
      headers:
        etag:
          description: 'The ETag HTTP header is an identifier for a specific version of a resource


            in:header'
          schema:
            type: string
            format: etag
        x-external-error:
          description: 'Indicates that a 5xx error was caused by tenant-provided code


            in:header'
          schema:
            type: string
        x-trace-id:
          description: 'OpenTelemetry trace identifier


            in:header'
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/WebhookResponse'
    WebhooksResponse:
      description: Webhooks response
      headers:
        etag:
          description: 'The ETag HTTP header is an identifier for a specific version of a resource


            in:header'
          schema:
            type: string
            format: etag
        x-external-error:
          description: 'Indicates that a 5xx error was caused by tenant-provided code


            in:header'
          schema:
            type: string
        x-trace-id:
          description: 'OpenTelemetry trace identifier


            in:header'
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/WebhooksResponse'
    unauthorizedHTTPError:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    tooManyRequestsHTTPError:
      description: Too many requests
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    WebhookOnCreateResponse:
      description: Webhook on create response
      headers:
        etag:
          description: 'The ETag HTTP header is an identifier for a specific version of a resource


            in:header'
          schema:
            type: string
            format: etag
        x-external-error:
          description: 'Indicates that a 5xx error was caused by tenant-provided code


            in:header'
          schema:
            type: string
        x-trace-id:
          description: 'OpenTelemetry trace identifier


            in:header'
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/WebhookOnCreateResponse'
    badRequestHTTPError:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    admin:
      type: oauth2
      flows:
        authorizationCode:
          scopes: {}
          authorizationUrl: /default/admin/oauth2/authorize
          tokenUrl: /default/admin/oauth2/token