Rapid7 Scans API

A Scan encapsulates all the information for a single execution of the criteria defined in the provided Scan Config. An App and a Scan Config must be created prior to submitting a Scan. All Scans submitted via the API are currently treated as an 'on-demand' request to perform the Scan, and as such will be queued for immanent execution. A Scan, once submitted, cannot be modified per-se, as the life cycle of the Scan is managed by the product; though, it is possible to manipulate the life cycle of each Scan by submitting an Action (e.g. a request to pause/resume or stop/cancel). A Scan can only be deleted if it is in a Failed state. A Scan which is not yet complete can be forced into a Failed state by submitting a CANCEL Action. A Scan which is submitted using a Scan Config with validation errors or without a valid Target will result in a Failed Scan.

Business capability
Vulnerability Management BC-620.40

Operations 9

GET /scans Get Scans #
POST /scans Submit Scan #
GET /scans/{scan-id} Get Scan #
DELETE /scans/{scan-id} Delete Scan #
GET /scans/{scan-id}/action Get Scan Action #
PUT /scans/{scan-id}/action Submit Scan Action #
GET /scans/{scan-id}/engine-events Get Scan Engine Events #
GET /scans/{scan-id}/execution-details Get Scan Execution Details #
GET /scans/{scan-id}/platform-events Get Scan Platform Events #

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/rapid7-scans-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

rapid7-scans-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: InsightAppSec Scans API
  description: Welcome to the reference documentation for the public APIs available for InsightAppSec.
  version: v1
servers:
- url: https://[region].api.insight.rapid7.com/ias/v1
tags:
- name: Scans
  description: A Scan encapsulates all the information for a single execution of the criteria defined in the provided Scan Config.
paths:
  /scans:
    get:
      tags:
      - Scans
      summary: Get Scans
      description: 'Get a page of Scans, based on supplied pagination parameters.

        The default sort for Scans is "submit_time" (descending); for a full list of sortable properties, refer to the Search Catalog detailed in the Search API.'
      operationId: get-scans
      parameters:
      - name: index
        in: query
        schema:
          type: integer
          format: int32
      - name: size
        in: query
        schema:
          type: integer
          format: int32
      - name: sort
        in: query
        schema:
          type: string
      - name: page-token
        in: query
        schema:
          type: string
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageScan'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      tags:
      - Scans
      summary: Submit Scan
      description: Submit a new Scan
      operationId: submit-scan
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Scan'
        required: true
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '201':
          description: Created
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: Action conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Resource validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationErrors'
  /scans/{scan-id}:
    get:
      tags:
      - Scans
      summary: Get Scan
      description: Get a Scan
      operationId: get-scan
      parameters:
      - name: scan-id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityModelScan'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      tags:
      - Scans
      summary: Delete Scan
      description: Delete a Scan
      operationId: delete-scan
      parameters:
      - name: scan-id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: Action conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /scans/{scan-id}/action:
    get:
      tags:
      - Scans
      summary: Get Scan Action
      description: Get any current Scan action
      operationId: get-scan-action
      parameters:
      - name: scan-id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '204':
          description: No Content
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScanStateActionResource'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    put:
      tags:
      - Scans
      summary: Submit Scan Action
      description: Submit a new Scan action
      operationId: submit-scan-action
      parameters:
      - name: scan-id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScanStateActionResource'
        required: true
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '200':
          description: OK
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: Action conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Resource validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationErrors'
  /scans/{scan-id}/engine-events:
    get:
      tags:
      - Scans
      summary: Get Scan Engine Events
      description: Get the engine events from a Scan
      operationId: get-scan-engine-events
      parameters:
      - name: scan-id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LogEvent'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /scans/{scan-id}/execution-details:
    get:
      tags:
      - Scans
      summary: Get Scan Execution Details
      description: Get real-time details of the execution of a Scan
      operationId: get-scan-execution-details
      parameters:
      - name: scan-id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScanExecutionDetails'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /scans/{scan-id}/platform-events:
    get:
      tags:
      - Scans
      summary: Get Scan Platform Events
      description: Get the platform events from a Scan
      operationId: get-scan-platform-events
      parameters:
      - name: scan-id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '415':
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LogEvent'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      properties:
        status:
          type: string
          description: A description of the type of error based on HTTP status code
          enum:
          - 100 CONTINUE
          - 101 SWITCHING_PROTOCOLS
          - 102 PROCESSING
          - 103 EARLY_HINTS
          - 103 CHECKPOINT
          - 200 OK
          - 201 CREATED
          - 202 ACCEPTED
          - 203 NON_AUTHORITATIVE_INFORMATION
          - 204 NO_CONTENT
          - 205 RESET_CONTENT
          - 206 PARTIAL_CONTENT
          - 207 MULTI_STATUS
          - 208 ALREADY_REPORTED
          - 226 IM_USED
          - 300 MULTIPLE_CHOICES
          - 301 MOVED_PERMANENTLY
          - 302 FOUND
          - 302 MOVED_TEMPORARILY
          - 303 SEE_OTHER
          - 304 NOT_MODIFIED
          - 305 USE_PROXY
          - 307 TEMPORARY_REDIRECT
          - 308 PERMANENT_REDIRECT
          - 400 BAD_REQUEST
          - 401 UNAUTHORIZED
          - 402 PAYMENT_REQUIRED
          - 403 FORBIDDEN
          - 404 NOT_FOUND
          - 405 METHOD_NOT_ALLOWED
          - 406 NOT_ACCEPTABLE
          - 407 PROXY_AUTHENTICATION_REQUIRED
          - 408 REQUEST_TIMEOUT
          - 409 CONFLICT
          - 410 GONE
          - 411 LENGTH_REQUIRED
          - 412 PRECONDITION_FAILED
          - 413 PAYLOAD_TOO_LARGE
          - 413 REQUEST_ENTITY_TOO_LARGE
          - 414 URI_TOO_LONG
          - 414 REQUEST_URI_TOO_LONG
          - 415 UNSUPPORTED_MEDIA_TYPE
          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
          - 417 EXPECTATION_FAILED
          - 418 I_AM_A_TEAPOT
          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
          - 420 METHOD_FAILURE
          - 421 DESTINATION_LOCKED
          - 422 UNPROCESSABLE_ENTITY
          - 423 LOCKED
          - 424 FAILED_DEPENDENCY
          - 425 TOO_EARLY
          - 426 UPGRADE_REQUIRED
          - 428 PRECONDITION_REQUIRED
          - 429 TOO_MANY_REQUESTS
          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
          - 500 INTERNAL_SERVER_ERROR
          - 501 NOT_IMPLEMENTED
          - 502 BAD_GATEWAY
          - 503 SERVICE_UNAVAILABLE
          - 504 GATEWAY_TIMEOUT
          - 505 HTTP_VERSION_NOT_SUPPORTED
          - 506 VARIANT_ALSO_NEGOTIATES
          - 507 INSUFFICIENT_STORAGE
          - 508 LOOP_DETECTED
          - 509 BANDWIDTH_LIMIT_EXCEEDED
          - 510 NOT_EXTENDED
          - 511 NETWORK_AUTHENTICATION_REQUIRED
          readOnly: true
        message:
          type: string
          description: A description of the error
          readOnly: true
        errorCode:
          type: string
          description: An optional code which may help support indicate the underlying cause of the error
          enum:
          - E1
          - E2
          - E3
          - E4
          - E5
          - E6
          - E7
          - E8
          - E9
          - E10
          - E11
          - E12
          - E13
          - E14
          - E15
          - E16
          - E17
          - E18
          - E19
          - E20
          - E22
          - E23
          - E24
          - E25
          - E26
          - E27
          - E28
          - E999
          readOnly: true
      title: Error
    Link:
      properties:
        rel:
          type: string
        href:
          type: string
        profile:
          type: string
        name:
          type: string
      readOnly: true
    ScanVerificationResource:
      description: The Validation resource. Should not be included if a Specialized Scan Parameters Resource has been provided.
      example:
        parent_scan_id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
      properties:
        parent_scan_id:
          type: string
          format: uuid
    ScanExecutionDetails:
      properties:
        logged_in:
          type: boolean
          description: A flag which indicates if the Scan is using authentication during the Scan
          readOnly: true
        links_in_queue:
          type: integer
          format: int32
          description: The number of links in the crawling queue
          readOnly: true
        links_crawled:
          type: integer
          format: int32
          description: The number of links already crawled
          readOnly: true
        attacks_in_queue:
          type: integer
          format: int32
          description: The number of links in the attacking queue
          readOnly: true
        attacked:
          type: integer
          format: int32
          description: The number of attacks already performed
          readOnly: true
        vulnerable:
          type: integer
          format: int32
          description: The number of potential findings
          readOnly: true
        requests:
          type: integer
          format: int32
          description: The number of HTTP requests which have been executed
          readOnly: true
        failed_requests:
          type: integer
          format: int32
          description: The number of failed HTTP requests
          readOnly: true
        network_speed:
          type: integer
          format: int32
          description: A throughput indicator
          readOnly: true
        drip_delay:
          type: integer
          format: int32
          description: The current delay between HTTP requests
          readOnly: true
      title: ScanExecutionDetails
    ValidationErrors:
      properties:
        status:
          type: string
          description: A description of the type of error based on HTTP status code
          enum:
          - 100 CONTINUE
          - 101 SWITCHING_PROTOCOLS
          - 102 PROCESSING
          - 103 EARLY_HINTS
          - 103 CHECKPOINT
          - 200 OK
          - 201 CREATED
          - 202 ACCEPTED
          - 203 NON_AUTHORITATIVE_INFORMATION
          - 204 NO_CONTENT
          - 205 RESET_CONTENT
          - 206 PARTIAL_CONTENT
          - 207 MULTI_STATUS
          - 208 ALREADY_REPORTED
          - 226 IM_USED
          - 300 MULTIPLE_CHOICES
          - 301 MOVED_PERMANENTLY
          - 302 FOUND
          - 302 MOVED_TEMPORARILY
          - 303 SEE_OTHER
          - 304 NOT_MODIFIED
          - 305 USE_PROXY
          - 307 TEMPORARY_REDIRECT
          - 308 PERMANENT_REDIRECT
          - 400 BAD_REQUEST
          - 401 UNAUTHORIZED
          - 402 PAYMENT_REQUIRED
          - 403 FORBIDDEN
          - 404 NOT_FOUND
          - 405 METHOD_NOT_ALLOWED
          - 406 NOT_ACCEPTABLE
          - 407 PROXY_AUTHENTICATION_REQUIRED
          - 408 REQUEST_TIMEOUT
          - 409 CONFLICT
          - 410 GONE
          - 411 LENGTH_REQUIRED
          - 412 PRECONDITION_FAILED
          - 413 PAYLOAD_TOO_LARGE
          - 413 REQUEST_ENTITY_TOO_LARGE
          - 414 URI_TOO_LONG
          - 414 REQUEST_URI_TOO_LONG
          - 415 UNSUPPORTED_MEDIA_TYPE
          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
          - 417 EXPECTATION_FAILED
          - 418 I_AM_A_TEAPOT
          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
          - 420 METHOD_FAILURE
          - 421 DESTINATION_LOCKED
          - 422 UNPROCESSABLE_ENTITY
          - 423 LOCKED
          - 424 FAILED_DEPENDENCY
          - 425 TOO_EARLY
          - 426 UPGRADE_REQUIRED
          - 428 PRECONDITION_REQUIRED
          - 429 TOO_MANY_REQUESTS
          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
          - 500 INTERNAL_SERVER_ERROR
          - 501 NOT_IMPLEMENTED
          - 502 BAD_GATEWAY
          - 503 SERVICE_UNAVAILABLE
          - 504 GATEWAY_TIMEOUT
          - 505 HTTP_VERSION_NOT_SUPPORTED
          - 506 VARIANT_ALSO_NEGOTIATES
          - 507 INSUFFICIENT_STORAGE
          - 508 LOOP_DETECTED
          - 509 BANDWIDTH_LIMIT_EXCEEDED
          - 510 NOT_EXTENDED
          - 511 NETWORK_AUTHENTICATION_REQUIRED
          readOnly: true
        message:
          type: string
          description: A description of the error
          readOnly: true
        errorCode:
          type: string
          description: An optional code which may help support indicate the underlying cause of the error
          enum:
          - E1
          - E2
          - E3
          - E4
          - E5
          - E6
          - E7
          - E8
          - E9
          - E10
          - E11
          - E12
          - E13
          - E14
          - E15
          - E16
          - E17
          - E18
          - E19
          - E20
          - E22
          - E23
          - E24
          - E25
          - E26
          - E27
          - E28
          - E999
          readOnly: true
        errors:
          type: array
          description: A list of validation errors, when the HTTP status code is 422
          items:
            $ref: '#/components/schemas/ValidationError'
          readOnly: true
      title: ValidationErrors
    ScanStateActionResource:
      properties:
        action:
          type: string
          enum:
          - PAUSE
          - RESUME
          - STOP
          - AUTHENTICATE
          - CANCEL
      required:
      - action
    ScanSubmitter:
      description: The submitter of the Scan
      properties:
        type:
          type: string
          description: The type of submitter
          enum:
          - USER
          - SCHEDULE
          - ORGANIZATION
          readOnly: true
        id:
          type: string
          format: uuid
          description: The ID of the submitter
          readOnly: true
      readOnly: true
      title: ScanSubmitter
    LogEvent:
      properties:
        time:
          type: string
          description: The time at which the log event occurred
          example: '2021-08-03T14:07:37'
          readOnly: true
        event:
          type: string
          description: The log event
          readOnly: true
      title: LogEvent
    ValidationError:
      properties:
        type:
          type: string
          description: The type of the validation error
          enum:
          - OBJECT
          - PROPERTY
          readOnly: true
        context:
          type: string
          description: An optional contextual indicator of a part of the request which failed validation
          readOnly: true
        explanation:
          type: string
          description: Details of the validation error
          readOnly: true
    scan_config:
      description: The Scan Config used when the Scan was submitted, must be associated with the App specified for this Scan
      properties:
        id:
          type: string
          format: uuid
    ReadOnlyIdResource:
      description: The ID of the module
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
      readOnly: true
    PageMetadata:
      properties:
        index:
          type: integer
          format: int64
        size:
          type: integer
          format: int64
        sort:
          type: string
        total_data:
          type: integer
          format: int64
        total_pages:
          type: integer
          format: int64
        page_token:
          type: string
    Scan:
      properties:
        id:
          type: string
          format: uuid
          description: The ID of the Scan
          readOnly: true
        app:
          $ref: '#/components/schemas/ReadOnlyIdResource'
        scan_config:
          $ref: '#/components/schemas/scan_config'
        submitter:
          $ref: '#/components/schemas/ScanSubmitter'
        submit_time:
          type: string
          description: The time the Scan was submitted
          example: '2021-08-03T14:07:37'
          readOnly: true
        completion_time:
          type: string
          description: The time the Scan was completed
          example: '2021-08-03T14:07:37'
          readOnly: true
        status:
          type: string
          description: The status of the Scan
          enum:
          - PENDING
          - QUEUED
          - PROVISIONING
          - RUNNING
          - SCANNED
          - PROCESSED
          - COMPLETE
          - PAUSED
          - BLACKED_OUT
          - AWAITING_AUTHENTICATION
          - AUTHENTICATED
          - PAUSING
          - RESUMING
          - STOPPING
          - CANCELING
          - AUTHENTICATING
          - FAILED
          readOnly: true
        failure_reason:
          type: string
          description: The reason the Scan may have failed
          enum:
          - CANCELED
          - NETWORK_UNAVAILABLE
          - SYSTEM_ERROR
          - CONFIGURATION_INVALID
          - BAD_AUTH
          - LICENSE_INVALID
          - TARGETS_INVALID
          - ENGINE_UNAVAILABLE
          - INITIALIZATION_FAILURE
          - SWAGGER_PARSING_ERROR
          - DATABASE_TOO_LARGE
          - INSUFFICIENT_DISK_SPACE
          - INSUFFICIENT_MEMORY
          - TOO_MANY_THREADS
          - RASP_FAILURE
          - BOOTSTRAP_AUTHENTICATION_FAILURE
          - REPORT_GENERATION_FAILURE
          readOnly: true
        validation:
          $ref: '#/components/schemas/ScanVerificationResource'
        scan_type:
          type: string
          description: The type of Scan
          enum:
          - REGULAR
          - VERIFICATION
          - INCREMENTAL
          example: VERIFICATION
        specialized_scan_parameters:
          $ref: '#/components/schemas/SpecializedScanParamsResource'
      required:
      - scan_config
      title: Scan
    PageScan:
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/EntityModelScan'
        metadata:
          $ref: '#/components/schemas/PageMetadata'
        links:
          type: array
          items:
            $ref: '#/components/schemas/Link'
          readOnly: true
    SpecializedScanParamsResource:
      description: The Specialized Scan Parameters Resource used to start a validation scan with a subset of vulnerability ids. Should not be included if a Scan Verification Resource has been provided.
      example:
        parent_scan_id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        vulnerability_ids:
        - e2b44265-b637-4800-bfa4-a47a05ca4387
        - 3d16132c-5e2a-4375-87e9-1f01fc6ed70a
      properties:
        id:
          type: string
          format: uuid
        scan_id:
          type: string
          format: uuid
        parent_scan_id:
          type: string
          format: uuid
        vulnerability_ids:
          type: array
          items:
            type: string
            format: uuid
      required:
      - parent_scan_id
    EntityModelScan:
      properties:
        id:
          type: string
          format: uuid
          description: The ID of the Scan
          readOnly: true
        app:
          $ref: '#/components/schemas/ReadOnlyIdResource'
        scan_config:
          $ref: '#/components/schemas/scan_config'
        submitter:
          $ref: '#/components/schemas/ScanSubmitter'
        submit_time:
          type: string
          description: The time the Scan was submitted
          example: '2021-08-03T14:07:37'
          readOnly: true
        completion_time:
          type: string
          description: The time the Scan was completed
          example: '2021-08-03T14:07:37'
          readOnly: true
        status:
          type: string
          description: The status of the Scan
          enum:
          - PENDING
          - QUEUED
          - PROVISIONING
          - RUNNING
          - SCANNED
          - PROCESSED
          - COMPLETE
          - PAUSED
          - BLACKED_OUT
          - AWAITING_AUTHENTICATION
          - AUTHENTICATED
          - PAUSING
          - RESUMING
          - STOPPING
          - CANCELING
          - AUTHENTICATING
          - FAILED
          readOnly: true
        failure_reason:
          type: string
          description: The reason the Scan may have failed
          enum:
          - CANCELED
          - NETWORK_UNAVAILABLE
          - SYSTEM_ERROR
          - CONFIGURATION_INVALID
          - BAD_AUTH
          - LICENSE_INVALID
          - TARGETS_INVALID
          - ENGINE_UNAVAILABLE
          - INITIALIZATION_FAILURE
          - SWAGGER_PARSING_ERROR
          - DATABASE_TOO_LARGE
          - INSUFFICIENT_DISK_SPACE
          - INSUFFICIENT_MEMORY
          - TOO_MANY_THREADS
          - RASP_FAILURE
          - BOOTSTRAP_AUTHENTICATION_FAILURE
          - REPORT_GENERATION_FAILURE
          readOnly: true
        validation:
          $ref: '#/components/schemas/ScanVerificationResource'
        scan_type:
          type: string
          description: The type of Scan
          enum:
          - REGULAR
          - VERIFICATION
          - INCREMENTAL
          example: VERIFICATION
        specialized_scan_parameters:
          $ref: '#/components/schemas/SpecializedScanParamsResource'
        links:
          type: array
          items:
            $ref: '#/components/schemas/Link'
          readOnly: true
      required:
      - scan_config