Catchpoint InstantTest API

The InstantTest API from Catchpoint — 4 operation(s) for instanttest.

Operations 4

POST /v2/instanttests Runs a new instant test based on the POST data #
GET /v2/instanttests/configuration/{instantTestId} Returns properties of one instant test based on instant test ID #
GET /v2/instanttests/{instantTestId} Return instant test results performance data based on an instant test ID and… #
POST /v2/instanttests/{testId} Runs an instant test by ID #

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/catchpoint-instanttest-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

catchpoint-instanttest-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Catchpoint REST API v2.0 Instant Test API
  version: '2.0'
servers:
- url: /api
tags:
- name: InstantTest
paths:
  /v2/instanttests:
    post:
      tags:
      - InstantTest
      summary: Runs a new instant test based on the POST data
      description: 'Use the onDemand parameter to run from public nodes. An instant test can run from up to five nodes.


        **Request:**


        The request body must include all required test properties and may include any optional properties as well. By default, the endpoint only allows instant tests to run from enterprise nodes.


        To get a sample payload, refer InternalLink[Instant Test Configuration Endpoint,operations-tag-InstantTest,operations-InstantTest-get_v2_instanttests_configuration__instantTestId_].


        **Response:**


        The response does not include instant test results. To get the instant test results use InternalLink[Instant Test Results Endpoint,operations-tag-InstantTest,operations-InstantTest-get_v2_instanttests__instantTestId_].'
      parameters:
      - name: onDemand
        in: query
        description: Used to run the instant test on public nodes
        schema:
          type: boolean
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestAPIModel'
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestAPIModel'
          text/json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestAPIModel'
          application/*+json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestAPIModel'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestPostResponse'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestPostResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestPostResponse'
      security:
      - bearer: []
      order: 1
      operationId: postV2Instanttests
      x-operation-id-source: derived
  /v2/instanttests/configuration/{instantTestId}:
    get:
      tags:
      - InstantTest
      summary: Returns properties of one instant test based on instant test ID
      description: Results include all the properties set in the instant test during creation. The response from this request can be used to trigger new instant test runs using the POST method.
      parameters:
      - name: instantTestId
        in: path
        description: Instant test ID to look up the test results. Pass “0” to get post data for creating a new instant test.
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ActionResult_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestGetResponse'
            text/plain:
              schema:
                $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ActionResult_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestGetResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ActionResult_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestGetResponse'
      security:
      - bearer: []
      order: 4
      operationId: getV2InstanttestsConfigurationByInstantTestId
      x-operation-id-source: derived
  /v2/instanttests/{instantTestId}:
    get:
      tags:
      - InstantTest
      summary: Return instant test results performance data based on an instant test ID and…
      description: '*[Analytics Endpoint]*


        Performance data is for one node and a single step. To get transactions data with multiple steps, use the parameter step ID. If no step ID is passed, the endpoint pulls data for the first step.


        The endpoint pulls all the instant test result details seen in the Catchpoint portal. This includes test run details, summary metrics, waterfall details, hosts, zones, and content type. This also includes a public link to the instant test run, screenshot, filmstrip, and request/response headers for each request from waterfall.'
      parameters:
      - name: instantTestId
        in: path
        description: Instant test ID to look up the test results
        required: true
        schema:
          type: integer
          format: int64
      - name: nodeId
        in: query
        description: Node ID to look up the test results
        required: true
        schema:
          type: integer
          format: int32
      - name: stepId
        in: query
        description: Step ID to look up the test results
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestGetResponse'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestGetResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestGetResponse'
      security:
      - bearer: []
      order: 3
      operationId: getV2InstanttestsByInstantTestId
      x-operation-id-source: derived
  /v2/instanttests/{testId}:
    post:
      tags:
      - InstantTest
      summary: Runs an instant test by ID
      description: 'By default the instant test can only be run on enterprise nodes. Use the onDemand parameter to run from public nodes. An instant test can run from up to five nodes.


        **Request:**


        The request body must include all required test properties and may include any optional properties as well.


        To get a sample payload, refer InternalLink[Instant Test Configuration Endpoint,operations-tag-InstantTest,operations-InstantTest-get_v2_instanttests_configuration__instantTestId_].


        **Response:**


        The response does not include instant test results. To get the instant test results use the InternalLink[Instant Test Results Endpoint,operations-tag-InstantTest,operations-InstantTest-get_v2_instanttests__instantTestId_].'
      parameters:
      - name: testId
        in: path
        description: Test ID to run an instant test
        required: true
        schema:
          type: integer
          format: int64
      - name: onDemand
        in: query
        description: Used to run the instant test on public nodes
        schema:
          type: boolean
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.InstantTestPostRequest'
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.InstantTestPostRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.InstantTestPostRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.InstantTestPostRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestPostResponse'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestPostResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse_1_Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestPostResponse'
      security:
      - bearer: []
      order: 2
      operationId: postV2InstanttestsByTestId
      x-operation-id-source: derived
components:
  schemas:
    Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.RecordTransactionStep:
      type: object
      properties:
        stepName:
          type:
          - string
          - 'null'
        testUri:
          type:
          - string
          - 'null'
        actualRunTime:
          type: string
          format: date-time
        httpMethodType:
          $ref: '#/components/schemas/Catchpoint.Symphony.Enums.WinHttp.WinHttpMethod'
        isLogable:
          type: boolean
        isPost:
          type: boolean
        hasScreenShot:
          type: boolean
        hasFilmStrip:
          type: boolean
        metrics:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.RecordMetricItem'
        items:
          type:
          - array
          - 'null'
          items:
            type: number
            format: double
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.InstantTest.InstantTestAuthenticationAPIModel:
      type: object
      properties:
        userName:
          type:
          - string
          - 'null'
        password:
          type:
          - string
          - 'null'
        passwordIds:
          type:
          - array
          - 'null'
          items:
            type: integer
            format: int32
      additionalProperties: false
    Catchpoint.Symphony.Enums.Test.WebSocketTransferType:
      enum:
      - id: 0
        name: Send
      - id: 1
        name: Receive
      - id: 2
        name: Ping
      - id: 3
        name: Pong
      - id: 4
        name: Dns
      - id: 5
        name: Connect
      - id: 6
        name: Ssl
      - id: 7
        name: Handshake
      type: integer
      format: int32
    Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.RecordSshData:
      type: object
      properties:
        metrics:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.RecordMetricItem'
        host:
          type:
          - string
          - 'null'
        port:
          type: integer
          format: int32
        ipAddress:
          type:
          - string
          - 'null'
        errorCode:
          $ref: '#/components/schemas/Catchpoint.Symphony.Response.ErrorCode'
        standardOutputUrl:
          type:
          - string
          - 'null'
      additionalProperties: false
    Catchpoint.Symphony.Enums.Test.DisplayMonitorType:
      enum:
      - id: 0
        name: IE
      - id: 1
        name: RealUser
      - id: 2
        name: HTTP
      - id: 3
        name: Emulated
      - id: 5
        name: Mqtt
      - id: 6
        name: Imap
      - id: 7
        name: Ntp
      - id: 8
        name: Ping ICMP
      - id: 9
        name: Traceroute ICMP
      - id: 10
        name: DnsTrace
      - id: 11
        name: PingTcp
      - id: 12
        name: DnsExperience
      - id: 13
        name: DnsDirect
      - id: 14
        name: TraceRouteUdp
      - id: 15
        name: Tcp
      - id: 16
        name: Ftp
      - id: 17
        name: ApiSummary
      - id: 18
        name: Chrome
      - id: 19
        name: Playback
      - id: 20
        name: MobilePlayback
      - id: 21
        name: Smtp
      - id: 22
        name: TcpUdp
      - id: 23
        name: PingUdp
      - id: 24
        name: Streaming
      - id: 25
        name: Api
      - id: 26
        name: Mobile
      - id: 28
        name: Ssh
      - id: 29
        name: TraceRouteTcp
      - id: 30
        name: WebSocket
      - id: 31
        name: Ssl
      - id: 32
        name: Wifi
      - id: 33
        name: ShellScript
      - id: 34
        name: Bgp
      - id: 35
        name: TraceRouteSack
      - id: 36
        name: M-Lab Bandwidth
      - id: 37
        name: WebPageTest
      - id: 39
        name: Edge
      - id: 40
        name: Nprobe
      - id: 41
        name: BgpBasic
      - id: 42
        name: TracerouteQUIC
      - id: 43
        name: NProbeRFactor
      type: integer
      format: int32
    Catchpoint.Symphony.REST.Common.Response.v2_0.ZoneAPIModel:
      type: object
      properties:
        fields:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.RecordMetricItemAPIModel'
        items:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.RecordContentZone'
      additionalProperties: false
    Catchpoint.Symphony.ViewModels.CertificateModel:
      required:
      - givenName
      - id
      type: object
      properties:
        id:
          type: integer
          format: int32
        changeDate:
          type: string
          format: date-time
        description:
          type:
          - string
          - 'null'
        divisionId:
          type: integer
          format: int32
        objectId:
          type:
          - integer
          - 'null'
          format: int64
        objectType:
          $ref: '#/components/schemas/Catchpoint.Symphony.Enums.ObjectType'
        name:
          type:
          - string
          - 'null'
        statusType:
          $ref: '#/components/schemas/Catchpoint.Symphony.Enums.DomainStatus'
        passphrase:
          type:
          - string
          - 'null'
        passwordStatus:
          $ref: '#/components/schemas/Catchpoint.Symphony.Enums.PasswordStatusType'
        file:
          type:
          - string
          - 'null'
        base64File:
          type:
          - string
          - 'null'
        givenName:
          minLength: 1
          type: string
        isLibraryCertificate:
          type: boolean
        changeLogObjectType:
          $ref: '#/components/schemas/Catchpoint.Symphony.Enums.ObjectType'
        contacts:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.CertificateContactModel'
        contactGroups:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.CertificateContactGroupModel'
        associatedCertificates:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.AssociatedCertificateModel'
        restrictContactAccess:
          type: boolean
        access:
          type:
          - string
          - 'null'
          readOnly: true
        passphraseUpdated:
          type:
          - string
          - 'null'
        labels:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.LabelKeyModel'
        labelsForChangeLog:
          type:
          - array
          - 'null'
          items:
            type: string
      additionalProperties: false
    Catchpoint.Symphony.Response.GraphPath:
      type: object
      properties:
        path:
          type:
          - array
          - 'null'
          items:
            type: string
        isMtuReliable:
          type: boolean
        minPathMtu:
          type: integer
          format: int32
        minTcpMss:
          type: integer
          format: int32
        hasRepeatingIp:
          type: boolean
        dscpPathData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.DscpSummaryData'
        ecnPathData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.EcnSummaryData'
        dscpChangedPathData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.DscpSummaryData'
        ecnChangedPathData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.EcnSummaryData'
        hasUnreachableDestination:
          type: boolean
        hasPathChange:
          type: boolean
      additionalProperties: false
    Catchpoint.Symphony.Response.NetworkGraphTooltipOverrideSummaryData:
      type: object
      properties:
        name:
          type:
          - string
          - 'null'
        roundTripTime:
          type:
          - number
          - 'null'
          format: double
        pingPacketLoss:
          type:
          - number
          - 'null'
          format: double
        runsCount:
          type:
          - number
          - 'null'
          format: double
        jitter:
          type:
          - number
          - 'null'
          format: double
        ecnValue:
          type:
          - integer
          - 'null'
          format: int32
        dscpValue:
          type:
          - integer
          - 'null'
          format: int32
      additionalProperties: false
    Catchpoint.Symphony.Response.TraceRouteIpAddressLookup:
      type: object
      properties:
        ipAddress:
          type:
          - string
          - 'null'
        asn:
          type: integer
          format: int64
        asName:
          type:
          - string
          - 'null'
        cityName:
          type:
          - string
          - 'null'
        countryName:
          type:
          - string
          - 'null'
        hostName:
          type:
          - string
          - 'null'
        continentName:
          type:
          - string
          - 'null'
        internetServices:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.InternetServiceModel'
      additionalProperties: false
    Catchpoint.Symphony.Enums.MtuIndexType:
      enum:
      - id: 0
        name: LessThanFifteenHundred
      - id: 1
        name: FifteenHundred
      - id: 2
        name: GreaterThanFifteenHundred
      - id: -1
        name: Unknown
      type: integer
      format: int32
    Catchpoint.Symphony.ViewModels.CustomFieldModel:
      type: object
      properties:
        parameterId:
          type:
          - integer
          - 'null'
          format: int64
        name:
          type:
          - string
          - 'null'
        value:
          type:
          - string
          - 'null'
        macroName:
          type:
          - string
          - 'null'
          readOnly: true
      additionalProperties: false
    Catchpoint.Symphony.Orchestra.Response.TracepointData:
      type: object
      properties:
        id:
          type: integer
          format: int32
        value:
          type:
          - string
          - 'null'
      additionalProperties: false
    Catchpoint.Symphony.Enums.RecordWebItemRequestType:
      enum:
      - id: 0
        name: None
      - id: 1
        name: Failed
      - id: 2
        name: Cancelled
      - id: 3
        name: Uncompressed
      - id: 4
        name: Http1Dot0
      - id: 5
        name: Http1Dot1
      - id: 6
        name: Secure
      - id: 7
        name: Unsecure
      - id: 8
        name: Closed
      - id: 9
        name: Http2Dot0
      - id: 10
        name: Http3Dot0
      type: integer
      format: int32
    Catchpoint.Symphony.REST.Api.ApiUsageStatistics:
      type: object
      properties:
        clientId:
          type: integer
          format: int64
        lastRequestTimestamp:
          type: string
          format: date-time
        limits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.Limit'
        runs:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.Limit'
        exceededMessage:
          type:
          - string
          - 'null'
          readOnly: true
        divisionUsageStatistics:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.DivisionUsageStatistics'
      additionalProperties: false
    Catchpoint.Symphony.Response.NetworkGraphEdge:
      type: object
      properties:
        hopNumber:
          type: integer
          format: int32
        testId:
          type: integer
          format: int64
        nodeId:
          type: integer
          format: int64
        deadHopCount:
          type: integer
          format: int32
        parentKey:
          type:
          - string
          - 'null'
        childKey:
          type:
          - string
          - 'null'
        totalRuns:
          type: integer
          format: int32
        successfulPackets:
          type: integer
          format: int32
        failedPackets:
          type: integer
          format: int32
        sentPackets:
          type: integer
          format: int32
          readOnly: true
        destinationSuccessCount:
          type: integer
          format: int32
        destinationFailureCount:
          type: integer
          format: int32
        destinationSuccess_SuccessfulPacketCount:
          type: integer
          format: int32
        destinationSuccess_FailedPacketCount:
          type: integer
          format: int32
        destinationSuccess_PingRoundTripTimeTotal:
          type: integer
          format: int32
        destinationFailure_SuccessfulPacketCount:
          type: integer
          format: int32
        destinationFailure_FailedPacketCount:
          type: integer
          format: int32
        destinationFailure_PingRoundTripTimeTotal:
          type: integer
          format: int32
        pingRoundTripTimeTotal:
          type: integer
          format: int32
        pingRoundTripTimeAvg:
          type:
          - number
          - 'null'
          format: double
        hasHighLatency:
          type: boolean
        mplsData:
          type:
          - string
          - 'null'
        jitterTotal:
          type: number
          format: double
        countHopsWithJitter:
          type: integer
          format: int32
        hasUnreachableDestination:
          type: boolean
        mplsHopData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.MplsHopSummaryData'
        dscpHopData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.DscpSummaryData'
        ecnHopData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.EcnSummaryData'
        pingRTTInMs:
          type: number
          format: double
          readOnly: true
        isDestinationEdge:
          type: boolean
        countMssOversized:
          type:
          - integer
          - 'null'
          format: int32
        countMssUndersized:
          type:
          - integer
          - 'null'
          format: int32
        bottleneckMtuCounts:
          type:
          - array
          - 'null'
          items:
            type: integer
            format: int32
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.RecordWebDataAPIModel:
      type: object
      properties:
        contentTags:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.ContentTagAPIModel'
        filmStripImages:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.ImageDataItem'
        hosts:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.HostDataAPIModel'
        metrics:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.MetricModel'
        screenshot:
          $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.ImageDataItem'
        failedVerb:
          type:
          - string
          - 'null'
        zone:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.ZoneAPIModel'
        webRecords:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.WebRecordAPIModel'
        transactionData:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.RecordTransactionDataAPIModel'
        scriptErrors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.RecordScriptErrorItem'
        httpError:
          $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.WebErrorCodeItem'
        pageSpeedItems:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.RecordPageSpeedItem'
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.RecordTransactionDataAPIModel:
      type: object
      properties:
        metrics:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.RecordMetricItemAPIModel'
        items:
          type:
          - array
          - 'null'
          items:
            type: number
            format: double
        transactionSteps:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.RecordTransactionStepAPIModel'
      additionalProperties: false
    Catchpoint.Symphony.Response.NetworkGraphTooltipOverrideData:
      type: object
      properties:
        summaryData:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Response.NetworkGraphTooltipOverrideSummaryData'
      additionalProperties: false
    Catchpoint.Symphony.Orchestra.Response.SyntheticRecords.RecordNtpData:
      type: object
      properties:
        metrics:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.Orchestra.Response.RecordMetricItem'
        host:
          type:
          - string
          - 'null'
        ipAddress:
          type:
          - string
          - 'null'
        errorCode:
          $ref: '#/components/schemas/Catchpoint.Symphony.Response.ErrorCode'
      additionalProperties: false
    Catchpoint.Symphony.Enums.Test.PageSpeedRuleType:
      enum:
      - id: 0
        name: None
      - id: 1
        name: AvoidBadRequest
      - id: 2
        name: AvoidCSSImport
      - id: 3
        name: AvoidDocumentWrite
      - id: 4
        name: CombineExternalCSS
      - id: 5
        name: CombineExternalJavaScript
      - id: 6
        name: EnableGzipCompression
      - id: 7
        name: LeverageBrowserCaching
      - id: 8
        name: MinifyCSS
      - id: 9
        name: MinifyHTML
      - id: 10
        name: MinifyJavaScript
      - id: 11
        name: MinimizeDnsLookups
      - id: 12
        name: MinimizeRedirects
      - id: 13
        name: MinimizeRequestSize
      - id: 14
        name: OptimizeImages
      - id: 15
        name: OptimizeTheOrderOfStylesAndScripts
      - id: 16
        name: ParallelizeDownloadsAcrossHostnames
      - id: 17
        name: PreferAsyncResources
      - id: 18
        name: PutCssInTheDocumentHead
      - id: 19
        name: RemoveQueryStringsFromStaticResources
      - id: 20
        name: ServeResourcesFromAConsistentUrl
      - id: 21
        name: ServeScaledImages
      - id: 22
        name: ServeStaticContentFromACookielessDomain
      - id: 23
        name: SpecifyACacheValidator
      - id: 24
        name: SpecifyAVaryAcceptEncodingHeader
      - id: 25
        name: SpecifyCharsetEarly
      - id: 26
        name: SpecifyImageDimensions
      - id: 27
        name: SpriteImages
      - id: 28
        name: DeferParsingJavaScript
      - id: 29
        name: EnableKeepAlive
      - id: 30
        name: InlineSmallCSS
      - id: 31
        name: InlineSmallJavaScript
      - id: 32
        name: MakeLandingPageRedirectsCacheable
      - id: 33
        name: ServerResponseTime
      - id: 34
        name: AvoidLandingPageRedirects
      type: integer
      format: int32
    Catchpoint.Symphony.REST.Common.Response.v2_0.RecordMetricItemAPIModel:
      type: object
      properties:
        metricType:
          $ref: '#/components/schemas/Catchpoint.Symphony.Enums.Metrics.RecordMetric'
        name:
          type:
          - string
          - 'null'
        value:
          type:
          - number
          - 'null'
          format: double
        index:
          type: integer
          format: int32
        lookbackValue:
          type:
          - number
          - 'null'
          format: double
      additionalProperties: false
    Catchpoint.Symphony.Enums.WebTagType:
      enum:
      - id: 0
        name: Unknown
      - id: 1
        name: Image
      - id: 2
        name: Script
      - id: 3
        name: IFrame
      - id: 4
        name: Link
      - id: 5
        name: Xhr
      - id: 6
        name: Flash
      - id: 7
        name: Media
      - id: 8
        name: Font
      type: integer
      format: int32
    Catchpoint.Symphony.Orchestra.Response.PingData:
      type: object
      properties:
        internetServices:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.InternetServiceModel'
        hostName:
          type:
          - string
          - 'null'
        ipAddress:
          type:
          - string
          - 'null'
        asn:
          $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.LookupModel'
        isDebugData:
          type: boolean
        errorCode:
          $ref: '#/components/schemas/Catchpoint.Symphony.Response.ErrorCode'
        averageRoundTripTime:
          type:
          - number
          - 'null'
          format: double
        packetsSent:
          type: integer
          format: int32
        packetsSentSuccess:
          type: integer
          format: int32
        packetLoss:
          type: number
          format: double
        jitter:
          type:
          - number
          - 'null'
          format: double
        roundTripTimes:
          type:
          - array
          - 'null'
          items:
            type: integer
            format: int32
        city:
          $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.LookupModel'
        country:
          $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.LookupModel'
        hasHighLatency:
          type: boolean
        matchedPrefix:
          type:
          - string
          - 'null'
        mplsData:
          type:
          - string
    

# --- truncated at 32 KB (174 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/catchpoint/refs/heads/main/openapi/catchpoint-instanttest-api-openapi.yml