Spyderbat Notification Target API

An API to allow the management of notification targets. Notification targets allow users to define where notifications are sent.

Operations 11

GET /api/v1/org/{orgUID}/notificationtarget/ List notification targets #
POST /api/v1/org/{orgUID}/notificationtarget/email/ Create an email notification target. #
PUT /api/v1/org/{orgUID}/notificationtarget/email/{notificationTargetUID} Update a notification target. #
POST /api/v1/org/{orgUID}/notificationtarget/pagerduty/ Create a pagerduty notification target. #
PUT /api/v1/org/{orgUID}/notificationtarget/pagerduty/{notificationTargetUID} Update a notification target. #
POST /api/v1/org/{orgUID}/notificationtarget/slack/ Create a slack notification target. #
PUT /api/v1/org/{orgUID}/notificationtarget/slack/{notificationTargetUID} Update a notification target. #
POST /api/v1/org/{orgUID}/notificationtarget/webhook/ Create a webhook notification target. #
PUT /api/v1/org/{orgUID}/notificationtarget/webhook/{notificationTargetUID} Update a notification target. #
GET /api/v1/org/{orgUID}/notificationtarget/{notificationTargetUID} Load a notification target #
DELETE /api/v1/org/{orgUID}/notificationtarget/{notificationTargetUID} Delete a notification target. #

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/spyderbat-notificationtarget-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 email required.

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

OpenAPI Specification

spyderbat-notificationtarget-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Spyderbat Notification Target API
  version: 1.0.0
  contact:
    name: API Support
    url: https://api.prod.spyderbat.com/openapi
    email: support@spyderbat.com
  license:
    name: MIT
    url: https://mit-license.org/
  termsOfService: https://www.spyderbat.com/terms-of-use/
  x-logo:
    url: /static/sb-logo.svg
    backgroundColor: '#161A21'
    altText: Spyderbat Logo
  description: 'Operations tagged NotificationTarget across 2 of this provider''s published API definitions: spyderbat-openapi-original.json, spyderbat-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.prod.spyderbat.com/
  description: Spyderbat API Server
security:
- apiToken: []
tags:
- name: NotificationTarget
  description: '

    An API to allow the management of notification targets. Notification targets allow users to define where notifications are sent.'
paths:
  /api/v1/org/{orgUID}/notificationtarget/:
    get:
      tags:
      - NotificationTarget
      summary: List notification targets
      description: "\nThis will list all notification targets for an org\n* Requires the action  *org:ListNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetList
      parameters:
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      - name: action_taken_equals
        in: query
        description: Filter by the action taken on the notification target(s). Pulls from the history database table. One of [insert|update|delete]
        schema:
          type: string
          description: Filter by the action taken on the notification target(s). Pulls from the history database table. One of [insert|update|delete]
      - name: from_history
        in: query
        allowEmptyValue: true
        schema:
          type: boolean
      - name: include_target_data
        in: query
        description: Include the potentially sensitive target data in the response. This could be emails, webhooks, keys, etc. Increased permissions are required to view this data.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Include the potentially sensitive target data in the response. This could be emails, webhooks, keys, etc. Increased permissions are required to view this data.
      - name: latest_version
        in: query
        allowEmptyValue: true
        schema:
          type: boolean
      - name: name_contains
        in: query
        schema:
          type: string
      - name: name_equals
        in: query
        schema:
          type: string
      - name: name_or_uid_contains
        in: query
        schema:
          type: string
      - name: name_or_uid_equals
        in: query
        schema:
          type: string
      - name: page
        in: query
        schema:
          type: integer
          format: int32
      - name: page_size
        in: query
        schema:
          type: integer
          format: int32
      - name: reversed
        in: query
        allowEmptyValue: true
        schema:
          type: boolean
      - name: sort_by
        in: query
        description: Sort the results by a field. One of [name|description|create_time|last_updated|type]
        schema:
          type: string
          description: Sort the results by a field. One of [name|description|create_time|last_updated|type]
      - name: tags_contain
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: true
      - name: type_equals
        in: query
        schema:
          type: string
      - name: type_not_equals
        in: query
        schema:
          type: string
      - name: uid_equals
        in: query
        schema:
          type: string
      - name: uid_in_list
        in: query
        schema:
          type: array
          items:
            type: string
        style: form
        explode: true
      - name: version
        in: query
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionNotificationTargetListOutput'
        '403':
          description: permission denied
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/email/:
    post:
      tags:
      - NotificationTarget
      summary: Create an email notification target.
      description: "\nThis will create a new email notification target for an org\n* Requires the action  *org:CreateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetEmailCreate
      parameters:
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetEmailCreateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionCreateNotificationTargetOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/email/{notificationTargetUID}:
    put:
      tags:
      - NotificationTarget
      summary: Update a notification target.
      description: "\nThis will update a specific email notification target for an org\n* Requires the action  *org:UpdateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetEmailUpdate
      parameters:
      - name: notificationTargetUID
        in: path
        required: true
        schema:
          type: string
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      - name: clear_description
        in: query
        description: Clear the description of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the description of the notification target.
      - name: clear_tags
        in: query
        description: Clear the tags of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the tags of the notification target.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetEmailUpdateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionNotificationTargetUpdateOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
        '404':
          description: not found
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/pagerduty/:
    post:
      tags:
      - NotificationTarget
      summary: Create a pagerduty notification target.
      description: "\nThis will create a new pagerduty notification target for an org\n* Requires the action  *org:CreateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetPagerDutyCreate
      parameters:
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetPagerDutyCreateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionCreateNotificationTargetOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/pagerduty/{notificationTargetUID}:
    put:
      tags:
      - NotificationTarget
      summary: Update a notification target.
      description: "\nThis will update a specific pagerduty notification target for an org\n* Requires the action  *org:UpdateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetPagerDutyUpdate
      parameters:
      - name: notificationTargetUID
        in: path
        required: true
        schema:
          type: string
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      - name: clear_description
        in: query
        description: Clear the description of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the description of the notification target.
      - name: clear_tags
        in: query
        description: Clear the tags of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the tags of the notification target.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetPagerDutyUpdateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionNotificationTargetUpdateOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
        '404':
          description: not found
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/slack/:
    post:
      tags:
      - NotificationTarget
      summary: Create a slack notification target.
      description: "\nThis will create a new slack notification target for an org\n* Requires the action  *org:CreateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetSlackCreate
      parameters:
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetSlackCreateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionCreateNotificationTargetOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/slack/{notificationTargetUID}:
    put:
      tags:
      - NotificationTarget
      summary: Update a notification target.
      description: "\nThis will update a specific slack notification target for an org\n* Requires the action  *org:UpdateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetSlackUpdate
      parameters:
      - name: notificationTargetUID
        in: path
        required: true
        schema:
          type: string
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      - name: clear_description
        in: query
        description: Clear the description of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the description of the notification target.
      - name: clear_tags
        in: query
        description: Clear the tags of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the tags of the notification target.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetSlackUpdateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionNotificationTargetUpdateOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
        '404':
          description: not found
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/webhook/:
    post:
      tags:
      - NotificationTarget
      summary: Create a webhook notification target.
      description: "\nThis will create a new webhook notification target for an org\n* Requires the action  *org:CreateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetWebhookCreate
      parameters:
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetWebhookCreateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionCreateNotificationTargetOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/webhook/{notificationTargetUID}:
    put:
      tags:
      - NotificationTarget
      summary: Update a notification target.
      description: "\nThis will update a specific webhook notification target for an org\n* Requires the action  *org:UpdateNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetWebhookUpdate
      parameters:
      - name: notificationTargetUID
        in: path
        required: true
        schema:
          type: string
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      - name: clear_description
        in: query
        description: Clear the description of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the description of the notification target.
      - name: clear_tags
        in: query
        description: Clear the tags of the notification target.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Clear the tags of the notification target.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTargetWebhookUpdateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionNotificationTargetUpdateOutput'
        '400':
          description: invalid input parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: permission denied
        '404':
          description: not found
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
  /api/v1/org/{orgUID}/notificationtarget/{notificationTargetUID}:
    get:
      tags:
      - NotificationTarget
      summary: Load a notification target
      description: "\nThis will retrieve a specific notification target for an org\n* Requires the action  *org:LoadNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetLoad
      parameters:
      - name: notificationTargetUID
        in: path
        required: true
        schema:
          type: string
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      - name: include_target_data
        in: query
        description: Include the potentially sensitive target data in the response. This could be emails, webhooks, keys, etc. Increased permissions are required to view this data.
        allowEmptyValue: true
        schema:
          type: boolean
          description: Include the potentially sensitive target data in the response. This could be emails, webhooks, keys, etc. Increased permissions are required to view this data.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionNotificationTargetLoadOutput'
        '403':
          description: permission denied
        '404':
          description: not found
    delete:
      tags:
      - NotificationTarget
      summary: Delete a notification target.
      description: "\nThis will delete a specific notification target for an org\n* Requires the action  *org:DeleteNotificationTarget* on the organization\n\t\t\t"
      operationId: NotificationTargetDelete
      parameters:
      - name: notificationTargetUID
        in: path
        required: true
        schema:
          type: string
      - name: orgUID
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '403':
          description: permission denied
        '404':
          description: not found
    servers:
    - url: https://api.prod.spyderbat.com/
      description: Spyderbat API Server
components:
  schemas:
    NotificationTargetSlackCreateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        name:
          type: string
          description: Name of the notification target.
        tags:
          type: array
          items:
            type: string
        url:
          type: string
          description: URL to send the notification to.
      required:
      - name
      - url
    ValidationError:
      type: object
      properties:
        err_msg:
          type: string
          description: Message regarding the validation failure
        field:
          type: string
          description: Field name which failed validation
        property:
          type: string
          description: JSON property name of the field which failed validation
        tags:
          type: string
          description: Validation tag which failed
    NotificationTargetPagerDutyUpdateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        name:
          type: string
          description: Name of the notification target.
        routing_key:
          type: string
          description: Routing key for the PagerDuty service.
        tags:
          type: array
          items:
            type: string
      required:
      - name
      - routing_key
    SessionCreateNotificationTargetOutput:
      type: object
      properties:
        uid:
          type: string
    SessionNotificationTargetLoadOutput:
      type: object
      properties:
        notification_target:
          $ref: '#/components/schemas/SessionOutputNotificationTarget'
    SessionNotificationTargetListOutput:
      type: object
      properties:
        notification_targets:
          type: array
          items:
            $ref: '#/components/schemas/SessionOutputNotificationTarget'
        search_total:
          type: integer
          format: int32
        total_pages:
          type: integer
          format: int32
        total_targets:
          type: integer
          format: int32
    SessionNotificationTargetUpdateOutput:
      type: object
      properties:
        notification_target:
          $ref: '#/components/schemas/SessionOutputNotificationTarget'
    SessionOutputNotificationTarget:
      type: object
      properties:
        action_taken:
          type: string
        action_time:
          type: integer
          format: int64
        action_user:
          type: string
        created_by:
          type: string
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        last_updated:
          type: integer
          format: int64
        last_updated_by:
          type: string
        name:
          type: string
          description: Name of the notification target.
        org_uid:
          type: string
        revision:
          type: string
        tags:
          type: array
          items:
            type: string
        target_data:
          type: object
          additionalProperties: {}
        target_type:
          type: string
        uid:
          type: string
        valid_from:
          type: integer
          format: int64
        version:
          type: integer
          format: int32
      required:
      - name
    NotificationTargetWebhookUpdateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        name:
          type: string
          description: Name of the notification target.
        password:
          type: string
          description: Optional password for basic auth.
        tags:
          type: array
          items:
            type: string
        url:
          type: string
          description: URL to send the webhook to.
        user_name:
          type: string
          description: Optional username for basic auth.
      required:
      - name
      - url
    NotificationTargetEmailCreateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        emails:
          type: array
          items:
            type: string
          description: List of email addresses to send notifications to.
          maxItems: 100
          minItems: 1
        name:
          type: string
          description: Name of the notification target.
        tags:
          type: array
          items:
            type: string
      required:
      - emails
      - name
    NotificationTargetEmailUpdateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        emails:
          type: array
          items:
            type: string
          description: List of email addresses to send notifications to.
          maxItems: 100
          minItems: 1
        name:
          type: string
          description: Name of the notification target.
        tags:
          type: array
          items:
            type: string
      required:
      - emails
      - name
    NotificationTargetSlackUpdateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        name:
          type: string
          description: Name of the notification target.
        tags:
          type: array
          items:
            type: string
        url:
          type: string
          description: URL to send the notification to.
      required:
      - name
      - url
    NotificationTargetWebhookCreateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        name:
          type: string
          description: Name of the notification target.
        password:
          type: string
          description: Optional password for basic auth.
        tags:
          type: array
          items:
            type: string
        url:
          type: string
          description: URL to send the webhook to.
        user_name:
          type: string
          description: Optional username for basic auth.
      required:
      - name
      - url
    NotificationTargetPagerDutyCreateInput:
      type: object
      properties:
        description:
          type: string
          description: Description of the notification target.
          maxLength: 500
        name:
          type: string
          description: Name of the notification target.
        routing_key:
          type: string
          description: Routing key for the PagerDuty service.
        tags:
          type: array
          items:
            type: string
      required:
      - name
      - routing_key
  securitySchemes:
    apiToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
x-refined-from:
- spyderbat-openapi-original.json
- spyderbat-openapi.json