> ## Documentation Index
> Fetch the complete documentation index at: https://docs.leen.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# List VMS Scan Configurations

> List the scan configurations defined in the connected vulnerability scanner — what it scans, and on what schedule.



## OpenAPI

````yaml get /vms/scan-configurations
openapi: 3.1.0
info:
  title: Leen Security API
  version: 0.0.1
servers:
  - description: Production API (US)
    url: https://api.leen.dev/v1
  - description: Production API (EU)
    url: https://api.eu-c1.leen.dev/v1
  - description: Production API (APAC)
    url: https://api.ap-se2.leen.dev/v1
security: []
paths:
  /vms/scan-configurations:
    get:
      tags:
        - vms
      summary: List VMS Scan Configurations
      description: >-
        List the scan configurations defined in the connected vulnerability
        scanner — what it scans, and on what schedule.
      operationId: get_vms_scan_configurations
      parameters:
        - description: >-
            Enable cursor based pagination instead of default offset-based
            pagination
          in: query
          name: enableCursor
          required: false
          schema:
            default: false
            description: >-
              Enable cursor based pagination instead of default offset-based
              pagination
            title: Enablecursor
            type: boolean
        - description: >-
            Only records whose `updated_at` is at or after this time. Leen bumps
            `updated_at` whenever any field on a record changes, so this is the
            filter for an incremental sync: it returns records that are new and
            records that changed, and nothing that has stood still. Example:
            `2021-01-01T00:00:00+00:00`.
          in: query
          name: updatedSince
          required: false
          schema:
            anyOf:
              - format: date-time
                type: string
              - type: 'null'
            description: >-
              Only records whose `updated_at` is at or after this time. Leen
              bumps `updated_at` whenever any field on a record changes, so this
              is the filter for an incremental sync: it returns records that are
              new and records that changed, and nothing that has stood still.
              Example: `2021-01-01T00:00:00+00:00`.
            examples:
              - '2021-01-01T00:00:00+00:00'
            title: Updatedsince
        - description: >-
            How many records to return per page. The walk is the same either
            way; a larger page means fewer round trips and more memory per
            response.
          in: query
          name: limit
          required: false
          schema:
            default: 100
            description: >-
              How many records to return per page. The walk is the same either
              way; a larger page means fewer round trips and more memory per
              response.
            maximum: 500
            minimum: 1
            title: Limit
            type: integer
        - description: >-
            Where to start, counted in records. Offset paging is stable only
            while the underlying data is; prefer the cursor for anything
            long-running.
          in: query
          name: offset
          required: false
          schema:
            default: 0
            description: >-
              Where to start, counted in records. Offset paging is stable only
              while the underlying data is; prefer the cursor for anything
              long-running.
            minimum: 0
            title: Offset
            type: integer
        - description: >-
            Skip counting the total. Counting is the expensive half of a large
            query, so set this when you are walking every page anyway and never
            read `total`. `total` comes back null.
          in: query
          name: excludeTotal
          required: false
          schema:
            default: false
            description: >-
              Skip counting the total. Counting is the expensive half of a large
              query, so set this when you are walking every page anyway and
              never read `total`. `total` comes back null.
            title: Excludetotal
            type: boolean
        - description: >-
            Opaque position of the next page, taken from the previous response.
            Ignore its contents; it encodes where the walk had reached.
          in: query
          name: cursor
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Opaque position of the next page, taken from the previous
              response. Ignore its contents; it encodes where the walk had
              reached.
            title: Cursor
      responses:
        '200':
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: >-
                      #/components/schemas/OffsetPaginatedResponse_VMSScanConfigurationRespModel_
                  - $ref: >-
                      #/components/schemas/KeySetPaginatedResponse_VMSScanConfigurationRespModel_
                title: Response Get Vms Scan Configurations
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
        - API-Key: []
          Connection-ID: []
components:
  schemas:
    OffsetPaginatedResponse_VMSScanConfigurationRespModel_:
      properties:
        count:
          description: Number of items return in the response
          title: Count
          type: integer
        items:
          description: The records on this page.
          items:
            $ref: '#/components/schemas/VMSScanConfigurationRespModel'
          title: Items
          type: array
        total:
          anyOf:
            - type: integer
            - type: 'null'
          description: Total number of items that can be returned
          title: Total
      required:
        - count
        - items
      title: OffsetPaginatedResponse[VMSScanConfigurationRespModel]
      type: object
    KeySetPaginatedResponse_VMSScanConfigurationRespModel_:
      properties:
        items:
          description: The records on this page.
          items:
            $ref: '#/components/schemas/VMSScanConfigurationRespModel'
          title: Items
          type: array
        next_cursor:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Opaque position of the next page. Pass it back as `cursor` to
            continue; null when this is the last page.
          title: Next Cursor
        previous_cursor:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Opaque position of the previous page, for walking backwards. Null on
            the first page.
          title: Previous Cursor
      required:
        - items
      title: KeySetPaginatedResponse[VMSScanConfigurationRespModel]
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    VMSScanConfigurationRespModel:
      properties:
        device_target_count:
          anyOf:
            - type: integer
            - type: 'null'
          description: >-
            Number of devices targeted in the latest scan for the scan
            configuration
          title: Device Target Count
        id:
          description: Leen's UUID for the VMS scan configuration
          format: uuid
          title: Id
          type: string
        is_enabled:
          description: Is the scan configuration active/enabled or inactive/disabled
          title: Is Enabled
          type: boolean
        is_scheduled:
          anyOf:
            - type: boolean
            - type: 'null'
          description: Is the scan configuration scheduled or on demand
          title: Is Scheduled
        last_scan_vendor_id:
          anyOf:
            - type: string
            - type: 'null'
          description: Vendor's ID of the last scan for the scan configuration
          title: Last Scan Vendor Id
        name:
          description: Name of the scan configuration
          title: Name
          type: string
        owner:
          anyOf:
            - type: string
            - type: 'null'
          description: Owner of the scan configuration
          title: Owner
        scan_targets:
          description: >-
            List of scan targets in the latest scan for the scan configuration.
            It can be IP addresses, hyphenated IP ranges, etc
          items:
            type: string
          title: Scan Targets
          type: array
        severity_frequency:
          anyOf:
            - $ref: '#/components/schemas/VMSScanConfigurationSeverityFrequency'
            - type: 'null'
          description: Severity frequency result of latest scan for the scan configuration
        vendor:
          $ref: '#/components/schemas/VulnerabilityVendor'
          description: Source vendor
        vendor_data:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          description: Vendor specific pass through data, values can vary based on vendor
          title: Vendor Data
        vendor_id:
          description: Pass through value of vendor ID for the scan configuration
          title: Vendor Id
          type: string
      required:
        - id
        - vendor
        - vendor_id
        - name
        - owner
        - severity_frequency
        - device_target_count
        - scan_targets
        - is_scheduled
        - is_enabled
        - last_scan_vendor_id
      title: VMSScanConfiguration
      type: object
    ValidationError:
      properties:
        ctx:
          title: Context
          type: object
        input:
          title: Input
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
    VMSScanConfigurationSeverityFrequency:
      properties:
        critical:
          description: Number of critical severity vulnerabilities
          title: Critical
          type: integer
        high:
          description: Number of high severity vulnerabilities
          title: High
          type: integer
        info:
          description: Number of info severity vulnerabilities
          title: Info
          type: integer
        low:
          description: Number of low severity vulnerabilities
          title: Low
          type: integer
        medium:
          description: Number of medium severity vulnerabilities
          title: Medium
          type: integer
      required:
        - critical
        - high
        - medium
        - low
        - info
      title: VMSScanConfigurationSeverityFrequency
      type: object
    VulnerabilityVendor:
      enum:
        - tenable
        - qualys
        - snyk
        - insightvm
        - crowdstrike_spotlight
        - sentinelone_vms
        - MS_DEFENDER_VMS
        - WIZ_VMS
        - AWS_INSPECTOR2
      title: VulnerabilityVendor
      type: string
  securitySchemes:
    API-Key:
      in: header
      name: X-API-KEY
      type: apiKey
    Connection-ID:
      in: header
      name: X-CONNECTION-ID
      type: apiKey

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.