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

# List a control's tests

> List a control's tests.



## OpenAPI

````yaml /reference/manage-vanta.json get /controls/{controlId}/tests
openapi: 3.0.0
info:
  title: Manage Vanta
  version: 1.0.0
  description: >-
    The REST API lets customers query and mutate Vanta's data. Use this API to
    automate bulk actions, query data for custom workflows and dashboards, and
    bolster your security operations


    **Note for Vanta Gov (FedRAMP) customers:** Select `Vanta Gov (FedRAMP)`
    from the server dropdown to issue requests against
    `https://api.vanta-gov.com`. The OAuth token URL shown below defaults to the
    commercial host — replace it with `https://api.vanta-gov.com/oauth/token`.
  termsOfService: https://www.vanta.com/terms
  license:
    name: UNLICENSED
  contact:
    name: API Support
    url: https://help.vanta.com/
    email: support@vanta.com
servers:
  - url: https://api.vanta.com/v1
    description: Vanta (Commercial)
  - url: https://api.vanta-gov.com/v1
    description: Vanta Gov (FedRAMP)
security: []
paths:
  /controls/{controlId}/tests:
    get:
      tags:
        - Controls
      summary: List a control's tests
      description: List a control's tests.
      operationId: ListTestsForControl
      parameters:
        - in: path
          name: controlId
          required: true
          schema:
            type: string
        - in: query
          name: pageSize
          required: false
          schema:
            $ref: '#/components/schemas/PageSize'
        - in: query
          name: pageCursor
          required: false
          schema:
            $ref: '#/components/schemas/PageCursor'
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedResponse_Test_'
              examples:
                Example 1:
                  value:
                    results:
                      data:
                        - id: aws-account-access-removed-on-termination
                          name: AWS accounts deprovisioned when personnel leave
                          lastTestRunDate: '2024-06-18T20:17:38.463Z'
                          latestFlipDate: null
                          description: >
                            Verifies that AWS accounts linked to removed users
                            are removed.
                          failureDescription: >-
                            Some AWS accounts associated with terminated
                            personnel have not been deactivated.
                          remediationDescription: |
                            Remove all accounts listed from AWS.
                          version:
                            major: 0
                            minor: 0
                          category: Account security
                          integrations:
                            - aws
                          status: OK
                          deactivatedStatusInfo:
                            isDeactivated: false
                            deactivatedReason: null
                            lastUpdatedDate: null
                          remediationStatusInfo:
                            status: PASS
                            soonestRemediateByDate: null
                            itemCount: 0
                          owner: null
                      pageInfo:
                        hasNextPage: false
                        hasPreviousPage: false
                        startCursor: '1'
                        endCursor: '1'
      security:
        - bearerAuth: []
components:
  schemas:
    PageSize:
      type: integer
      format: int32
      default: 10
      description: >-
        Controls the maximum number of items returned in one response from the
        API.
      minimum: 1
      maximum: 100
    PageCursor:
      type: string
      description: >-
        A marker or pointer, telling the API where to start fetching items for
        the subsequent page in a paginated dataset.

        Note that the requested page will not include the item that corresponds
        to this cursor but will start from the one immediately

        after this cursor.
    PaginatedResponse_Test_:
      properties:
        results:
          properties:
            data:
              items:
                $ref: '#/components/schemas/Test'
              type: array
            pageInfo:
              $ref: '#/components/schemas/PageInfo'
          required:
            - data
            - pageInfo
          type: object
      required:
        - results
      type: object
      additionalProperties: false
    Test:
      properties:
        id:
          type: string
          description: The test's unique ID.
        name:
          type: string
          description: The test's name.
        lastTestRunDate:
          type: string
          format: date-time
          description: The timestamp of the last test run.
        latestFlipDate:
          type: string
          format: date-time
          nullable: true
          description: The most recent date when the test flipped.
        description:
          type: string
          description: The test's description.
        failureDescription:
          type: string
          description: The test's failure description.
        remediationDescription:
          type: string
          description: The test's remediation description.
        version:
          properties:
            minor:
              type: number
              format: double
              description: The minor version number.
            major:
              type: number
              format: double
              description: The major version number.
          required:
            - minor
            - major
          type: object
          description: The test's version.
        category:
          $ref: '#/components/schemas/DocumentAndTestCategory'
          description: The test's category.
        integrations:
          items:
            type: string
          type: array
          description: This test's third-party integration dependencies.
        status:
          $ref: '#/components/schemas/TestStatus'
          description: This test run's status.
        deactivatedStatusInfo:
          $ref: '#/components/schemas/DeactivatedStatusInfo'
          description: The test's deactivation status.
        remediationStatusInfo:
          $ref: '#/components/schemas/RemediationStatusInfo'
          description: The test's remediation status.
        owner:
          allOf:
            - $ref: '#/components/schemas/Owner'
          nullable: true
          description: The test's owner.
      required:
        - id
        - name
        - lastTestRunDate
        - latestFlipDate
        - description
        - failureDescription
        - remediationDescription
        - version
        - category
        - integrations
        - status
        - deactivatedStatusInfo
        - remediationStatusInfo
        - owner
      type: object
      additionalProperties: false
    PageInfo:
      description: Provides information about the pagination of a dataset.
      properties:
        endCursor:
          type: string
          nullable: true
          description: >-
            The cursor that points to the end of the current page, or null if
            there is no such cursor.
        hasNextPage:
          type: boolean
          description: Indicates if there is another page after the current page.
        hasPreviousPage:
          type: boolean
          description: Indicates if there is a page before the current page.
        startCursor:
          type: string
          nullable: true
          description: >-
            The cursor that points to the start of the current page, or null if
            there is no such cursor.
      required:
        - endCursor
        - hasNextPage
        - hasPreviousPage
        - startCursor
      type: object
      additionalProperties: false
    DocumentAndTestCategory:
      type: string
      enum:
        - Accounts access
        - Account security
        - Account setup
        - Computers
        - Custom
        - Data storage
        - Employees
        - Infrastructure
        - IT
        - Logging
        - Monitoring alerts
        - People
        - Policies
        - Risk analysis
        - Software development
        - CSPM alert management
        - Vendors
        - Vulnerability management
    TestStatus:
      enum:
        - OK
        - DEACTIVATED
        - NEEDS_ATTENTION
        - IN_PROGRESS
        - INVALID
        - NOT_APPLICABLE
      type: string
    DeactivatedStatusInfo:
      properties:
        isDeactivated:
          type: boolean
          description: The deactivated status of the test.
        deactivatedReason:
          type: string
          nullable: true
          description: The reason for deactivation.
        lastUpdatedDate:
          type: string
          format: date-time
          nullable: true
          description: The date of the last update to the deactivated status.
      required:
        - isDeactivated
        - deactivatedReason
        - lastUpdatedDate
      type: object
      additionalProperties: false
    RemediationStatusInfo:
      properties:
        status:
          $ref: '#/components/schemas/TestRemediationStatus'
          description: The status of the remediation.
        soonestRemediateByDate:
          type: string
          format: date-time
          nullable: true
          description: The soonest date by which the remediation should be completed.
        itemCount:
          type: number
          format: double
          description: The number of items that need remediation.
      required:
        - status
        - soonestRemediateByDate
        - itemCount
      type: object
      additionalProperties: false
    Owner:
      properties:
        id:
          type: string
          description: Unique identifier for the person.
        displayName:
          type: string
          description: Name of the person that is shown in product.
        emailAddress:
          type: string
          description: Email address of the person.
      required:
        - id
        - displayName
        - emailAddress
      type: object
      additionalProperties: false
    TestRemediationStatus:
      description: Enum for the possible test remediation statuses
      enum:
        - DISABLED
        - DUE_SOON
        - INVALID
        - IN_PROGRESS
        - NA
        - NEEDS_WORK
        - OVERDUE
        - PASS
      type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````