openapi: 3.0.1
info:
  description: |2

    You can create and execute a new endpoint instant scheduled test within ThousandEyes using this API. The test parameters are specified in the `POST` data.

    The following applies to the Endpoint Instant Scheduled Tests API:

    * To initiate the creation and execution of an instant scheduled test, the user must possess the `Edit endpoint tests` permission.

    * Upon successful creation of an instant scheduled test, the API responds with an HTTP/201 CREATED status code and return the test definition.
    * It's important to note that the response does not include the results of the instant scheduled test. To retrieve test results, users can utilize the Endpoint Test Data endpoints.
    The URLs for these API test data endpoints are provided within the test definition output when an instant scheduled test is created.
  title: Endpoint Instant Scheduled Tests API
  version: 7.0.42
servers:
- description: ThousandEyes API production URL
  url: https://api.thousandeyes.com/v7
security:
- BearerAuth: []
tags:
- name: Agent to Server Endpoint Instant Scheduled Tests
- name: HTTP Server Endpoint Instant Scheduled Tests
- name: Run Endpoint Instant Scheduled Tests
paths:
  /endpoint/tests/scheduled-tests/agent-to-server/instant:
    post:
      description: Creates and runs a new endpoint agent to server instant scheduled
        test in ThousandEyes.
      operationId: createAgentToServerScheduledInstantTest
      parameters:
      - description: A unique identifier associated with your account group. You can
          retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note
          that you must be assigned to the target account group. Specifying this parameter
          without being assigned to the target account group will result in an error
          response.
        in: query
        name: aid
        required: false
        schema:
          example: "1234"
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EndpointAgentToServerInstantTest'
        required: true
      responses:
        "201":
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/EndpointAgentToServerTest'
          description: Created
          headers:
            Location:
              $ref: '#/components/headers/Location'
        "400":
          content:
            application/problem+json:
              example:
                type: about:blank
                title: Request validation failed. There are invalid or missing fields
                status: 400
                detail: Your request object contains invalid fields.
                instance: /v7
                errors:
                - code: AM-5432
                  field: firstName
                  message: firstName cannot have fancy characters
                - code: DASH-5622
                  field: password
                  message: Password cannot be blank
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: Bad Request
        "401":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: Unauthorized
        "403":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Insufficient permissions to query endpoint
        "429":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Exhausted rate limit for the organization
        "500":
          content:
            application/problem+json:
              example:
                type: about:blank
                title: Internal server error
                status: 500
                detail: Optional detail about the internal error message.
                instance: /v7
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal server error
        "502":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Bad Gateway
        default:
          description: An error occurred
      summary: Run agent to server instant scheduled test
      tags:
      - Agent to Server Endpoint Instant Scheduled Tests
  /endpoint/tests/scheduled-tests/http-server/instant:
    post:
      description: Creates and runs a new endpoint http server instant scheduled test
        in ThousandEyes.
      operationId: createHttpServerScheduledInstantTest
      parameters:
      - description: A unique identifier associated with your account group. You can
          retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note
          that you must be assigned to the target account group. Specifying this parameter
          without being assigned to the target account group will result in an error
          response.
        in: query
        name: aid
        required: false
        schema:
          example: "1234"
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EndpointHttpServerInstantTest'
        required: true
      responses:
        "201":
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/EndpointHttpServerTest'
          description: Created
          headers:
            Location:
              $ref: '#/components/headers/Location'
        "400":
          content:
            application/problem+json:
              example:
                type: about:blank
                title: Request validation failed. There are invalid or missing fields
                status: 400
                detail: Your request object contains invalid fields.
                instance: /v7
                errors:
                - code: AM-5432
                  field: firstName
                  message: firstName cannot have fancy characters
                - code: DASH-5622
                  field: password
                  message: Password cannot be blank
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: Bad Request
        "401":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: Unauthorized
        "403":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Insufficient permissions to query endpoint
        "429":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Exhausted rate limit for the organization
        "500":
          content:
            application/problem+json:
              example:
                type: about:blank
                title: Internal server error
                status: 500
                detail: Optional detail about the internal error message.
                instance: /v7
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal server error
        "502":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Bad Gateway
        default:
          description: An error occurred
      summary: Run http server instant scheduled test
      tags:
      - HTTP Server Endpoint Instant Scheduled Tests
  /endpoint/tests/scheduled-tests/{testId}/run:
    post:
      description: Runs an existing endpoint instant scheduled test in ThousandEyes.
      operationId: runEndpointScheduledInstantTest
      parameters:
      - description: A unique identifier associated with your account group. You can
          retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note
          that you must be assigned to the target account group. Specifying this parameter
          without being assigned to the target account group will result in an error
          response.
        in: query
        name: aid
        required: false
        schema:
          example: "1234"
          type: string
      - description: ID of the endpoint instant scheduled test to rerun
        example: "765231567"
        explode: false
        in: path
        name: testId
        required: true
        schema:
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EndpointRunScheduledInstantTestResult'
          description: Successfully reran the instant scheduled test.
        "400":
          content:
            application/problem+json:
              example:
                type: about:blank
                title: Request validation failed. There are invalid or missing fields
                status: 400
                detail: Your request object contains invalid fields.
                instance: /v7
                errors:
                - code: AM-5432
                  field: firstName
                  message: firstName cannot have fancy characters
                - code: DASH-5622
                  field: password
                  message: Password cannot be blank
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: Bad Request
        "401":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: Unauthorized
        "403":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Insufficient permissions to query endpoint
        "404":
          content:
            application/problem+json:
              example:
                type: about:blank
                title: URI Resource Not Found
                status: 404
                detail: Details explaining if the 404 error is related to an invalid
                  URI or a wrong ID
                instance: /v7
              schema:
                $ref: '#/components/schemas/Error'
          description: Not found
        "429":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Exhausted rate limit for the organization
        "500":
          content:
            application/problem+json:
              example:
                type: about:blank
                title: Internal server error
                status: 500
                detail: Optional detail about the internal error message.
                instance: /v7
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal server error
        "502":
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Bad Gateway
        default:
          description: An error occurred
      summary: Run endpoint instant scheduled test
      tags:
      - Run Endpoint Instant Scheduled Tests
components:
  headers:
    Location:
      description: The absolute path to created resource.
      schema:
        example: https://api.thousandeyes.com/v7/link/to/resource/id
        format: uri
        type: string
  parameters:
    AccountGroupId:
      description: A unique identifier associated with your account group. You can
        retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that
        you must be assigned to the target account group. Specifying this parameter
        without being assigned to the target account group will result in an error
        response.
      in: query
      name: aid
      required: false
      schema:
        example: "1234"
        type: string
  responses:
    "400":
      content:
        application/problem+json:
          example:
            type: about:blank
            title: Request validation failed. There are invalid or missing fields
            status: 400
            detail: Your request object contains invalid fields.
            instance: /v7
            errors:
            - code: AM-5432
              field: firstName
              message: firstName cannot have fancy characters
            - code: DASH-5622
              field: password
              message: Password cannot be blank
          schema:
            $ref: '#/components/schemas/ValidationError'
      description: Bad Request
    "401":
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/UnauthorizedError'
      description: Unauthorized
    "403":
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Error'
      description: Insufficient permissions to query endpoint
    "429":
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Error'
      description: Exhausted rate limit for the organization
    "500":
      content:
        application/problem+json:
          example:
            type: about:blank
            title: Internal server error
            status: 500
            detail: Optional detail about the internal error message.
            instance: /v7
          schema:
            $ref: '#/components/schemas/Error'
      description: Internal server error
    "502":
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Error'
      description: Bad Gateway
    GeneralError:
      description: An error occurred
    "404":
      content:
        application/problem+json:
          example:
            type: about:blank
            title: URI Resource Not Found
            status: 404
            detail: Details explaining if the 404 error is related to an invalid URI
              or a wrong ID
            instance: /v7
          schema:
            $ref: '#/components/schemas/Error'
      description: Not found
  schemas:
    EndpointAgentToServerInstantTest:
      allOf:
      - $ref: '#/components/schemas/EndpointInstantTest'
      - properties:
          serverName:
            description: A server address without a protocol or IP address.
            example: www.example.com
            type: string
          port:
            $ref: '#/components/schemas/EndpointTestPort'
        required:
        - serverName
        type: object
    EndpointInstantTest:
      properties:
        agentSelectorType:
          $ref: '#/components/schemas/EndpointTestAgentSelectorType'
        agents:
          description: List of endpoint agent IDs (obtained from `/endpoint/agents`
            endpoint). Required when `agentSelectorType` is set to `specific-agent`.
          example:
          - 0a3b9998-dc3a-4ff2-b50d-ac4a7cd986e1
          - 66eec0f1-72b4-4755-aa83-3aed61d17f3c
          items:
            format: uuid
            type: string
          type: array
        endpointAgentLabels:
          description: "List of endpoint agent label IDs (obtained from `/endpoint/labels`\
            \ endpoint), required when `agentSelectorType` is set to `agent-labels`."
          example:
          - "567"
          - "214"
          items:
            type: string
          type: array
        maxMachines:
          default: 25
          description: Maximum number of agents which can execute the test.
          example: 25
          type: integer
        testName:
          description: Name of the test.
          example: Test name
          type: string
      required:
      - testName
      type: object
    EndpointTestAgentSelectorType:
      default: all-agents
      description: "Retrieve either all available agents, a specific list of agents,\
        \ or a list of agent labels."
      enum:
      - all-agents
      - specific-agents
      - agent-labels
      example: all-agents
      type: string
    EndpointTestAgents:
      description: List of endpoint agent IDs (obtained from `/endpoint/agents` endpoint).
        Required when `agentSelectorType` is set to `specific-agent`.
      example:
      - 0a3b9998-dc3a-4ff2-b50d-ac4a7cd986e1
      - 66eec0f1-72b4-4755-aa83-3aed61d17f3c
      items:
        format: uuid
        type: string
      type: array
    EndpointAgentLabels:
      description: "List of endpoint agent label IDs (obtained from `/endpoint/labels`\
        \ endpoint), required when `agentSelectorType` is set to `agent-labels`."
      example:
      - "567"
      - "214"
      items:
        type: string
      type: array
    EndpointTestMaxMachines:
      default: 25
      description: Maximum number of agents which can execute the test.
      example: 25
      type: integer
    TestName:
      description: Name of the test.
      example: Test name
      type: string
    EndpointTestPort:
      default: 443
      description: Port number.
      example: 443
      type: integer
    EndpointAgentToServerTest:
      allOf:
      - $ref: '#/components/schemas/EndpointTest'
      - properties:
          type:
            $ref: '#/components/schemas/EndpointAgentToServerType'
        type: object
    EndpointTest:
      properties:
        aid:
          description: A unique identifier associated with your account group. You
            can retrieve your `AccountGroupId` from the `/account-groups` endpoint.
          example: "1234"
          type: string
        _links:
          $ref: '#/components/schemas/EndpointTestLinks'
        agentSelectorConfig:
          $ref: '#/components/schemas/EndpointAgentSelectorConfig'
        createdDate:
          description: UTC created date (ISO date-time format).
          example: 2022-07-17T22:00:54Z
          format: date-time
          readOnly: true
          type: string
        isPrioritized:
          default: false
          description: Indicates whether the test should be prioritized when the number
            of tests assigned to an agent exceeds the license limit.
          example: false
          type: boolean
        interval:
          $ref: '#/components/schemas/TestInterval'
        isEnabled:
          default: true
          description: Indicates if test is enabled.
          example: true
          type: boolean
        isSavedEvent:
          description: |
            Indicates if the test is a saved event.

            **Note**: **Saved Events** are now called **Private Snapshots** in the user interface. This change does not affect API.
          example: false
          readOnly: true
          type: boolean
        hasPathTraceInSession:
          description: "Enables \"in session\" path trace. When enabled, this option\
            \ initiates a TCP session with the target server and sends path trace\
            \ packets within the established TCP session."
          example: true
          type: boolean
        labels:
          description: Labels to which the test is assigned. This field is not returned
            for Instant Tests.
          items:
            $ref: '#/components/schemas/TestLabel'
          readOnly: true
          type: array
        modifiedDate:
          description: UTC last modification date (ISO date-time format).
          example: 2022-07-17T22:00:54Z
          format: date-time
          readOnly: true
          type: string
        networkMeasurements:
          default: true
          description: Enable or disable network measurements. Set to true to enable
            or false to disable network measurements.
          example: true
          type: boolean
        protocol:
          $ref: '#/components/schemas/EndpointTestProtocol'
        ipVersion:
          $ref: '#/components/schemas/EndpointIpVersionTemplate'
        server:
          description: Target domain name or IP address.
          example: www.example.com
          type: string
        testId:
          description: Each test is assigned a unique ID to access test data from
            other endpoints.
          example: "281474976710706"
          readOnly: true
          type: string
        testName:
          description: Name of the test.
          example: Test name
          type: string
        type:
          $ref: '#/components/schemas/EndpointScheduledTestType'
        tcpProbeMode:
          $ref: '#/components/schemas/TestProbeModeResponse'
        port:
          default: 443
          description: Port number.
          example: 443
          type: integer
      required:
      - type
      type: object
    EndpointTestLinks:
      description: A list of links that can be accessed to get more information.
      properties:
        self:
          $ref: '#/components/schemas/EndpointTestSelfLink'
        testResults:
          description: Reference to the test results.
          example:
          - href: https://api.thousandeyes.com/v7/endpoint/test-results/scheduled-tests/281474976710706/network/filter
          - href: https://api.thousandeyes.com/v7/endpoint/test-results/scheduled-tests/281474976710706/pathvis
          items:
            $ref: '#/components/schemas/Link'
          type: array
      readOnly: true
      type: object
    EndpointTestSelfLink:
      allOf:
      - description: A reference to the test.
        example:
          href: "https://api.thousandeyes.com/v7/endpoint/tests/{type}/281474976710706"
      - $ref: '#/components/schemas/Link'
    ScheduledTestResults:
      description: Reference to the test results.
      example:
      - href: https://api.thousandeyes.com/v7/endpoint/test-results/scheduled-tests/281474976710706/network/filter
      - href: https://api.thousandeyes.com/v7/endpoint/test-results/scheduled-tests/281474976710706/pathvis
      items:
        $ref: '#/components/schemas/Link'
      type: array
    EndpointAgentSelectorConfig:
      description: Agents selection object based on agentSelectorType.
      discriminator:
        mapping:
          all-agents: '#/components/schemas/EndpointAllAgentsSelectorConfig'
          specific-agents: '#/components/schemas/EndpointSpecificAgentsSelectorConfig'
          agent-labels: '#/components/schemas/EndpointAgentLabelsSelectorConfig'
        propertyName: agentSelectorType
      oneOf:
      - $ref: '#/components/schemas/EndpointAllAgentsSelectorConfig'
      - $ref: '#/components/schemas/EndpointAgentLabelsSelectorConfig'
      - $ref: '#/components/schemas/EndpointSpecificAgentsSelectorConfig'
      readOnly: true
      required:
      - agentSelectorType
      type: object
    EndpointAllAgentsSelectorConfig:
      description: Any agent selection object.
      properties:
        agentSelectorType:
          example: all-agents
          pattern: ^all-agents$
          type: string
        maxMachines:
          default: 25
          description: Maximum number of agents which can execute the test.
          example: 25
          type: integer
      readOnly: true
      required:
      - agentSelectorType
      type: object
    EndpointAgentLabelsSelectorConfig:
      description: Agent labels selection object.
      properties:
        agentSelectorType:
          example: agent-labels
          pattern: ^agent-labels$
          type: string
        maxMachines:
          default: 25
          description: Maximum number of agents which can execute the test.
          example: 25
          type: integer
        endpointAgentLabels:
          description: "List of endpoint agent label IDs (obtained from `/endpoint/labels`\
            \ endpoint), required when `agentSelectorType` is set to `agent-labels`."
          example:
          - "567"
          - "214"
          items:
            type: string
          type: array
      readOnly: true
      required:
      - agentSelectorType
      type: object
    EndpointSpecificAgentsSelectorConfig:
      description: Specific agents selection object.
      properties:
        agentSelectorType:
          example: specific-agents
          pattern: ^specific-agents$
          type: string
        maxMachines:
          default: 25
          description: Maximum number of agents which can execute the test.
          example: 25
          type: integer
        agents:
          description: List of endpoint agent IDs (obtained from `/endpoint/agents`
            endpoint). Required when `agentSelectorType` is set to `specific-agent`.
          example:
          - 0a3b9998-dc3a-4ff2-b50d-ac4a7cd986e1
          - 66eec0f1-72b4-4755-aa83-3aed61d17f3c
          items:
            format: uuid
            type: string
          type: array
      readOnly: true
      required:
      - agentSelectorType
      type: object
    TestCreatedDate:
      description: UTC created date (ISO date-time format).
      example: 2022-07-17T22:00:54Z
      format: date-time
      readOnly: true
      type: string
    TestIsPrioritized:
      default: false
      description: Indicates whether the test should be prioritized when the number
        of tests assigned to an agent exceeds the license limit.
      example: false
      type: boolean
    TestInterval:
      default: 60
      description: Interval between test runs in seconds.
      enum:
      - 60
      - 120
      - 300
      - 600
      - 900
      - 1800
      - 3600
      example: 60
      type: integer
    TestIsEnabled:
      default: true
      description: Indicates if test is enabled.
      example: true
      type: boolean
    TestIsSavedEvent:
      description: |
        Indicates if the test is a saved event.

        **Note**: **Saved Events** are now called **Private Snapshots** in the user interface. This change does not affect API.
      example: false
      readOnly: true
      type: boolean
    TestHasPathTraceInSession:
      description: "Enables \"in session\" path trace. When enabled, this option initiates\
        \ a TCP session with the target server and sends path trace packets within\
        \ the established TCP session."
      example: true
      type: boolean
    TestLabels:
      description: Labels to which the test is assigned. This field is not returned
        for Instant Tests.
      items:
        $ref: '#/components/schemas/TestLabel'
      readOnly: true
      type: array
    TestLabel:
      example:
        labelId: "961"
        name: Artem label
        isBuiltin: false
      properties:
        labelId:
          description: Label ID.
          type: string
        name:
          description: Name of the label.
          type: string
        isBuiltin:
          description: "Value indicating if the label in question is BuiltIn (Account\
            \ Admin, Organization Admin, Regular User)."
          type: boolean
      type: object
    TestNetworkMeasurements:
      default: true
      description: Enable or disable network measurements. Set to true to enable or
        false to disable network measurements.
      example: true
      type: boolean
    EndpointTestProtocol:
      default: icmp
      description: Protocol requested for the test.
      enum:
      - icmp
      - icmp-with-tcp-connect
      - tcp
      - prefer-tcp
      - ast-autodetect
      - autodetect
      example: icmp
      type: string
    EndpointScheduledTestType:
      description: Type of test being queried.
      enum:
      - agent-to-server
      - http-server
      example: agent-to-server
      readOnly: true
      type: string
    TestProbeModeResponse:
      default: auto
      description: "Probe mode used by network test, only valid when the protocol\
        \ is set to TCP."
      enum:
      - auto
      - sack
      - syn
      - unknown
      example: auto
      type: string
    EndpointAgentToServerType:
      description: Type of test being queried.
      example: agent-to-server
      pattern: ^agent-to-server$
      readOnly: true
      type: string
    ValidationError:
      allOf:
      - $ref: '#/components/schemas/Error'
      - properties:
          errors:
            description: "(Optional) When multiple errors occur, the details for each\
              \ error are listed."
            items:
              $ref: '#/components/schemas/ValidationErrorItem'
            nullable: true
            type: array
        type: object
      type: object
    Error:
      properties:
        type:
          description: "A URI reference that identifies the problem type. When this\
            \ member is not present, its value is assumed to be \"about:blank\"."
          type: string
        title:
          description: "A short, human-readable summary of the problem type."
          type: string
        status:
          description: The HTTP status code generated by the origin server for this
            occurrence of the problem.
          type: integer
        detail:
          description: A human-readable explanation specific to this occurrence of
            the problem.
          type: string
        instance:
          description: A URI reference that identifies the specific occurrence of
            the problem.
          type: string
      type: object
    ValidationErrorItem:
      properties:
        code:
          description: (Optional) A unique error type/code that can be referenced
            in the documentation for further details.
          type: string
        field:
          description: Identifies the field that triggered this particular error.
          type: string
        message:
          description: "A short, human-readable summary of the error."
          type: string
      type: object
    UnauthorizedError:
      properties:
        error:
          example: invalid_token
          type: string
        error_description:
          example: Invalid access token
          type: string
      type: object
    EndpointHttpServerInstantTest:
      allOf:
      - $ref: '#/components/schemas/EndpointInstantTest'
      - $ref: '#/components/schemas/EndpointHttpServerBaseTest'
      - properties:
          hasPing:
            $ref: '#/components/schemas/TestRequestHasPing'
          hasTraceroute:
            $ref: '#/components/schemas/TestRequestHasTraceRoute'
          networkMeasurements:
            $ref: '#/components/schemas/TestNetworkMeasurements'
          targetResponseTime:
            default: 1000
            description: Response time target in milliseconds. Affects the colors
              of agents and legends on the view page. The value is compared with actual
              response time in order to determine the color scale (from green to red).
            example: 1000
            type: integer
          password:
            $ref: '#/components/schemas/TestPassword'
          url:
            $ref: '#/components/schemas/EndpointHttpServerTestUrl'
        required:
        - url
        type: object
    EndpointHttpServerBaseTest:
      properties:
        authType:
          $ref: '#/components/schemas/EndpointTestAuthType'
        hasPathTraceInSession:
          description: "Enables \"in session\" path trace. When enabled, this option\
            \ initiates a TCP session with the target server and sends path trace\
            \ packets within the established TCP session."
          example: true
          type: boolean
        httpTimeLimit:
          default: 5000
          description: Maximum amount of time in milliseconds the agents wait before
            a request times out.
          example: 5000
          type: integer
        protocol:
          $ref: '#/components/schemas/EndpointTestProtocol'
        username:
          description: Username for Basic/NTLM authentication.
          example: username
          type: string
        sslVersionId:
          $ref: '#/components/schemas/TestSslVersionId'
        tcpProbeMode:
          $ref: '#/components/schemas/TestProbeModeResponse'
        verifyCertificate:
          default: true
          description: Flag indicating if a certificate should be verified.
          example: true
          type: boolean
        url:
          description: The test target URL.
          example: https://example.com:443
          type: string
      type: object
    EndpointTestAuthType:
      default: none
      description: HTTP authentication type.
      enum:
      - none
      - basic
      - ntlm
      example: none
      type: string
    TestUsername:
      description: Username for Basic/NTLM authentication.
      example: username
      type: string
    TestSslVersionId:
      default: "0"
      description: |
        SSL version options:

        * Use '0' for automatic selection.
        * Use '3' for SSLv3.
        * Use '4' for TLS v1.0.
        * Use '5' for TLS v1.1.
        * Use '6' for TLS v1.2.
      enum:
      - "0"
      - "3"
      - "4"
      - "5"
      - "6"
      example: "0"
      type: string
    EndpointTestResultUrl:
      description: The test target URL.
      example: https://example.com:443
      type: string
    TestRequestHasPing:
      default: true
      deprecated: true
      description: "**(Deprecated)** Optional flag indicating if the test should run ping."
      type: boolean
    TestRequestHasTraceRoute:
      default: true
      deprecated: true
      description: "**(Deprecated)** Optional flag indicating if the test should run traceroute."
      type: boolean
    TestPassword:
      description: Password for Basic/NTLM authentication.
      example: password
      type: string
      writeOnly: true
    EndpointHttpServerTestUrl:
      description: "The test target URL. You can optionally specify the protocol (`http`\
        \ or `https`). \n\n- **Default Protocol:** If no protocol is specified, `https`\
        \ is used by default.\n\n- **Port Number:** To specify a port, append it to\
        \ the URL with a colon after the hostname or IP address (e.g., `https://example.com:443`).\n\
        \n    - If no port is specified in the URL, the `port` is determined by the\
        \ default for protocol (HTTP: 80, HTTPS: 443).\n"
      example: https://example.com:443
      type: string
    EndpointHttpServerTest:
      allOf:
      - $ref: '#/components/schemas/EndpointTest'
      - $ref: '#/components/schemas/EndpointHttpServerBaseTest'
      - properties:
          type:
            $ref: '#/components/schemas/EndpointHttpServerType'
          followRedirects:
            $ref: '#/components/schemas/TestFollowRedirects'
          httpTargetTime:
            $ref: '#/components/schemas/TestHttpTargetTime'
          httpVersion:
            $ref: '#/components/schemas/TestHttpVersion'
          isPrioritized:
            $ref: '#/components/schemas/TestIsPrioritized'
          interval:
            $ref: '#/components/schemas/TestInterval'
          sslVersion:
            $ref: '#/components/schemas/TestSslVersion'
          useNtlm:
            $ref: '#/components/schemas/TestUseNtlm'
        type: object
    EndpointHttpServerType:
      description: Type of test being queried.
      example: http-server
      pattern: ^http-server$
      readOnly: true
      type: string
    TestFollowRedirects:
      default: true
      description: "To disable following HTTP/301 or HTTP/302 redirect directives,\
        \ set this parameter to `false`."
      example: true
      type: boolean
    TestHttpTargetTime:
      description: "Target time for HTTP server completion, specified in milliseconds."
      example: 100
      maximum: 5000
      minimum: 100
      type: integer
    TestHttpVersion:
      default: 2
      description: "HTTP protocol version. Set to '2' to prefer HTTP/2, or '1' to\
        \ use only HTTP/1.1."
      example: 2
      maximum: 2
      minimum: 1
      type: integer
    TestSslVersion:
      description: Reflects the verbose SSL protocol version used by a test.
      example: Auto
      readOnly: true
      type: string
    TestUseNtlm:
      description: "Set to true to use NTLM, false to use Basic Authentication. Requires\
        \ username and password to be set."
      example: false
      type: boolean
    EndpointRunScheduledInstantTestResult:
      properties:
        message:
          example: Successfully reran the instant scheduled test with testId=765231567
          type: string
      type: object
    AccountGroupId:
      description: A unique identifier associated with your account group. You can
        retrieve your `AccountGroupId` from the `/account-groups` endpoint.
      example: "1234"
      type: string
    EndpointIpVersionTemplate:
      description: IP version the test should use for network tests.
      enum:
      - V4_ONLY
      - V6_ONLY
      - V6_PREFER
      - OS_DEFAULT
      example: V4_ONLY
      type: string
    Link:
      description: A hyperlink from the containing resource to a URI.
      properties:
        href:
          description: "Its value is either a URI [RFC3986] or a URI template [RFC6570]."
          example: https://api.thousandeyes.com/v7/link/to/resource/id
          type: string
        templated:
          description: Should be true when the link object's "href" property is a
            URI template.
          type: boolean
        type:
          description: Used as a hint to indicate the media type expected when dereferencing
            the target resource.
          type: string
        deprecation:
          description: Its presence indicates that the link is to be deprecated at
            a future date. Its value is a URL that should provide further information
            about the deprecation.
          type: string
        name:
          description: Its value may be used as a secondary key for selecting link
            objects that share the same relation type.
          type: string
        profile:
          description: A URI that hints about the profile of the target resource.
          type: string
        title:
          description: Intended for labelling the link with a human-readable identifier
          type: string
        hreflang:
          description: Indicates the language of the target resource
          type: string
      required:
      - href
      type: object
  securitySchemes:
    BearerAuth:
      description: Bearer authentication token
      scheme: bearer
      type: http
