Root (fka Slim.ai) Webhooks API

The Webhooks API from Root (fka Slim.ai) — 3 operation(s) for webhooks.

Operations 4

GET /v3/settings/webhooks List webhook subscriptions
POST /v3/settings/webhooks Create webhook subscription
DELETE /v3/settings/webhooks/{webhookSubscriptionID} Delete webhook subscription
POST /v3/settings/webhooks/{webhookSubscriptionID}/test-tag-created Test tag-created webhook delivery

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/root-fka-slimai-webhooks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

root-fka-slimai-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: This is the API documentation for Root.io.
  title: Root.io Accounts Webhooks API
  termsOfService: https://www.root.io/terms-of-service
  contact: {}
  version: '1.0'
servers:
- url: https://api.root.io
tags:
- name: Webhooks
paths:
  /v3/settings/webhooks:
    get:
      security:
      - BearerAuth: []
      description: Lists webhook subscriptions for the organization (signing secret not included)
      tags:
      - Webhooks
      summary: List webhook subscriptions
      parameters:
      - description: After cursor for next page
        name: after
        in: query
        schema:
          type: string
      - description: Before cursor for previous page
        name: before
        in: query
        schema:
          type: string
      - description: Page size (max 1000)
        name: limit
        in: query
        schema:
          type: integer
          default: 100
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListWebhookSubscriptionsResponse'
        '400':
          description: Invalid query parameters
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: string
        '403':
          description: Not allowed to list webhook subscriptions
          content:
            application/json:
              schema:
                type: string
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: string
    post:
      security:
      - BearerAuth: []
      description: Creates a new webhook subscription for the organization. Returns the signing secret once — store it securely.
      tags:
      - Webhooks
      summary: Create webhook subscription
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateWebhookSubscriptionResponse'
        '400':
          description: Malformed request body
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: string
        '403':
          description: Not allowed to create webhook subscription
          content:
            application/json:
              schema:
                type: string
        '422':
          description: Invalid webhook URL or event type
          content:
            application/json:
              schema:
                type: string
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWebhookSubscriptionRequest'
        description: Webhook subscription create request
        required: true
  /v3/settings/webhooks/{webhookSubscriptionID}:
    delete:
      security:
      - BearerAuth: []
      description: Deletes a webhook subscription by ID
      tags:
      - Webhooks
      summary: Delete webhook subscription
      parameters:
      - description: Webhook Subscription ID
        name: webhookSubscriptionID
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSubscriptionResponse'
        '400':
          description: Invalid webhook subscription ID
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: string
        '403':
          description: Not allowed to delete webhook subscription
          content:
            application/json:
              schema:
                type: string
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: string
  /v3/settings/webhooks/{webhookSubscriptionID}/test-tag-created:
    post:
      security:
      - BearerAuth: []
      description: Performs a test webhook delivery for a specific webhook subscription using a specific RootRegistryTag. Returns 422 if the subscription does not subscribe to the image.created event type.
      tags:
      - Webhooks
      summary: Test tag-created webhook delivery
      parameters:
      - description: Webhook Subscription ID
        name: webhookSubscriptionID
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestWebhookResponse'
        '400':
          description: Malformed request body
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: string
        '404':
          description: No webhook subscription or RRT found
          content:
            application/json:
              schema:
                type: string
        '422':
          description: Subscription does not subscribe to image.created event type
          content:
            application/json:
              schema:
                type: string
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TestWebhookRequest'
        description: Test webhook request
        required: true
components:
  schemas:
    CreateWebhookSubscriptionRequest:
      type: object
      required:
      - url
      properties:
        description:
          type: string
        event_types:
          description: EventTypes lists the event types to deliver. Empty means all event types.
          type: array
          items:
            type: string
        url:
          type: string
    Cursor:
      type: object
      properties:
        after:
          type: string
        before:
          type: string
        limit:
          type: integer
        total_count:
          description: TotalCount is the number of rows matching the list filters for endpoints that populate it (e.g. security findings list). Response-only.
          type: integer
    CreateWebhookSubscriptionResponse:
      type: object
      properties:
        created_at:
          type: string
        description:
          type: string
        event_types:
          description: EventTypes lists the event types being delivered. Empty means all event types.
          type: array
          items:
            type: string
        id:
          type: string
        organization_id:
          type: string
        secret:
          type: string
        updated_at:
          type: string
        url:
          type: string
    v3.WebhookDeliveryAttemptStatus:
      type: string
      enum:
      - pending
      - delivered
      - failed
      x-enum-varnames:
      - WebhookDeliveryAttemptStatusPending
      - WebhookDeliveryAttemptStatusDelivered
      - WebhookDeliveryAttemptStatusFailed
    TestWebhookRequest:
      type: object
      properties:
        root_registry_tag_id:
          type: string
    TestWebhookResponse:
      type: object
      properties:
        error_reason:
          type: string
        event_id:
          type: string
        http_status:
          type: integer
        id:
          type: string
        sent_at:
          type: string
        status:
          $ref: '#/components/schemas/v3.WebhookDeliveryAttemptStatus'
        subscription_id:
          type: string
        type:
          type: string
    ListWebhookSubscriptionsResponse:
      type: object
      properties:
        cursor:
          $ref: '#/components/schemas/Cursor'
        data:
          type: array
          items:
            $ref: '#/components/schemas/WebhookSubscriptionResponse'
    WebhookSubscriptionResponse:
      type: object
      properties:
        created_at:
          type: string
        description:
          type: string
        event_types:
          description: EventTypes lists the event types being delivered. Empty means all event types.
          type: array
          items:
            type: string
        id:
          type: string
        organization_id:
          type: string
        updated_at:
          type: string
        url:
          type: string
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic