Shodan Network Alerts API

Create and manage alerts on monitored IP ranges.

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-rest-host-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-rest-search-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-rest-alert-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-rest-notifier-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-rest-scan-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-structure/shodan-rest-host-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-structure/shodan-rest-alert-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-stream-banner-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-structure/shodan-stream-banner-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-trends-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-internetdb-host-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-cvedb-cve-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/shodan/refs/heads/main/json-schema/shodan-cvedb-cpe-schema.json

Other Resources

OpenAPI Specification

shodan-network-alerts-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Shodan CVEDB Account Network Alerts API
  description: Shodan's CVEDB is a free vulnerability database API that supports CVE lookups, CPE-keyed vulnerability search, KEV filtering, EPSS ordering, date-range queries, and product-name search. No API key required; updated daily.
  version: '1.0'
  contact:
    name: Shodan Support
    email: support@shodan.io
    url: https://cvedb.shodan.io/
  license:
    name: Shodan API Terms of Service
    url: https://www.shodan.io/legal/tos
servers:
- url: https://cvedb.shodan.io
  description: Production
tags:
- name: Network Alerts
  description: Create and manage alerts on monitored IP ranges.
paths:
  /shodan/alert:
    post:
      tags:
      - Network Alerts
      summary: Create Network Alert
      operationId: createAlert
      description: Create a network alert on one or more IP ranges.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              - filters
              properties:
                name:
                  type: string
                filters:
                  type: object
                  properties:
                    ip:
                      type: array
                      items:
                        type: string
                expires:
                  type: integer
                  description: Optional expiration in seconds.
      responses:
        '200':
          description: Created alert.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Alert'
  /shodan/alert/info:
    get:
      tags:
      - Network Alerts
      summary: List Network Alerts
      operationId: listAlerts
      description: Returns the network alerts that have been created on the account.
      responses:
        '200':
          description: List of alerts.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Alert'
  /shodan/alert/{id}/info:
    get:
      tags:
      - Network Alerts
      summary: Get Network Alert
      operationId: getAlert
      description: Returns the information about a specific network alert.
      parameters:
      - $ref: '#/components/parameters/AlertId'
      responses:
        '200':
          description: Alert details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Alert'
        '404':
          $ref: '#/components/responses/NotFound'
  /shodan/alert/{id}:
    post:
      tags:
      - Network Alerts
      summary: Update Network Alert
      operationId: updateAlert
      description: Edit the IP ranges or name of a network alert.
      parameters:
      - $ref: '#/components/parameters/AlertId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                filters:
                  type: object
                  properties:
                    ip:
                      type: array
                      items:
                        type: string
      responses:
        '200':
          description: Updated alert.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Alert'
    delete:
      tags:
      - Network Alerts
      summary: Delete Network Alert
      operationId: deleteAlert
      description: Remove the network alert and its triggers.
      parameters:
      - $ref: '#/components/parameters/AlertId'
      responses:
        '200':
          description: Alert deletion result.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
  /shodan/alert/triggers:
    get:
      tags:
      - Network Alerts
      summary: List Alert Triggers
      operationId: listAlertTriggers
      description: Returns the list of triggers that can be enabled on alerts.
      responses:
        '200':
          description: Trigger metadata.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    name:
                      type: string
                    description:
                      type: string
                    rule:
                      type: string
  /shodan/alert/{id}/trigger/{trigger}:
    put:
      tags:
      - Network Alerts
      summary: Enable Alert Trigger
      operationId: enableAlertTrigger
      description: Enable a trigger on a network alert.
      parameters:
      - $ref: '#/components/parameters/AlertId'
      - $ref: '#/components/parameters/TriggerName'
      responses:
        '200':
          description: Trigger enable result.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
    delete:
      tags:
      - Network Alerts
      summary: Disable Alert Trigger
      operationId: disableAlertTrigger
      description: Disable a trigger on a network alert.
      parameters:
      - $ref: '#/components/parameters/AlertId'
      - $ref: '#/components/parameters/TriggerName'
      responses:
        '200':
          description: Trigger disable result.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
components:
  schemas:
    Alert:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        created:
          type: string
          format: date-time
        expires:
          type: integer
        expiration:
          type: string
          format: date-time
        filters:
          type: object
          properties:
            ip:
              type: array
              items:
                type: string
        triggers:
          type: object
          additionalProperties:
            type: object
            properties:
              enabled:
                type: boolean
        size:
          type: integer
  parameters:
    TriggerName:
      name: trigger
      in: path
      required: true
      schema:
        type: string
      description: Trigger name.
    AlertId:
      name: id
      in: path
      required: true
      schema:
        type: string
      description: Alert identifier.
  responses:
    NotFound:
      description: Resource not found.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: string