{"type":"model","meta":{"id":"/apps/pubhub/media/000-v7-apis/805c8c263288cb8b508ba6a258b72098eef57120/78f45443-a63d-31b5-a066-5ca5d2bfbb18","info":{"version":"7.0.91","title":"Tests API","description":"**Note:** The Page Load Tests, API Tests, and Web Transaction Tests APIs are not available for ThousandEyes for Government instance.\n\nThis API allows you to list, create, edit, and delete Network and Application Synthetics tests.\n"},"security":[{"BearerAuth":[]}],"tags":[{"name":"Tests","description":"Get all tests"},{"name":"Agent to Server Tests","description":"Agent to Server test management operations"},{"name":"Agent to Agent Tests","description":"Agent to Agent test management operations"},{"name":"BGP Tests","description":"BGP test management operations"},{"name":"DNS Server Tests","description":"DNS Server test management operations"},{"name":"DNS Trace Tests","description":"DNS Trace test management operations"},{"name":"DNSSEC Tests","description":"DNSSEC test management operations"},{"name":"HTTP Server Tests","description":"HTTP Server test management operations"},{"name":"Page Load Tests","description":"Page Load test management operations"},{"name":"Web Transaction Tests","description":"Web Transactions test management operations"},{"name":"API Tests","description":"API test management operations"},{"name":"FTP Server Tests","description":"FTP Server test management operations"},{"name":"SIP Server Tests","description":"SIP Server test management operations"},{"name":"Voice Tests","description":"Voice test management operations"},{"name":"Path Visualization Interface Groups"}],"externalDocs":{"description":"Find out more about Network and Application Synthetics tests","url":"https://docs.thousandeyes.com/product-documentation/internet-and-wan-monitoring/tests#cloud-and-enterprise-agent-based-tests"},"openapi":"3.0.1","servers":[{"description":"ThousandEyes API production URL","url":"https://api.thousandeyes.com/v7"}],"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","description":"Bearer authentication token"}}},"spec":{"type":"object","properties":{"authType":{"type":"string","description":"HTTP authentication type.","enum":["none","basic","ntlm","kerberos","oauth"],"default":"none","example":"none","$$ref":"#/components/schemas/TestAuthType"},"agentInterfaces":{"type":"object","properties":{"ipAddress":{"type":"string","example":"192.1.1.0","description":"IP address of the agent interface."},"agentId":{"type":"string","description":"The agent ID of the enterprise agent for the test.","example":"2954"}},"$$ref":"#/components/schemas/AgentInterfaces"},"bandwidthMeasurements":{"type":"boolean","description":"Set to `true` to enable bandwidth measurements, only applies to Enterprise agents assigned to the test.","example":true,"$$ref":"#/components/schemas/TestBandwidthMeasurements"},"clientCertificate":{"type":"string","description":"String representation (containing newline characters) of client certificate, the private key must be placed first, then the certificate.","example":"-----BEGIN PRIVATE KEY-----\nMIICUTCCAfugAwIBAgIBADANBgkqhkiG9w0BAQQFADBXMQswCQYDVQQGEwJDTjEL\n-----END PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIICUTCCAfugAwIBAgIBADANBgkqhkiG9w0BAQQFADBXMQswCQYDVQQGEwJDTjEL\n-----END CERTIFICATE-----\n","$$ref":"#/components/schemas/TestClientCertificate"},"contentRegex":{"type":"string","description":"Content regex, this field does not require escaping.","example":"(regex)+"},"customHeaders":{"type":"object","properties":{"root":{"type":"object","description":"Use these HTTP headers for root server request.","additionalProperties":{"type":"string"}},"domains":{"type":"object","description":"Use these HTTP headers for the specified domains.","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}},"all":{"type":"object","description":"Use these HTTP headers for all domains.","additionalProperties":{"type":"string"}}},"example":{"root":{"header1":"value1"},"domains":{"domain1.com":{"header2":"value2"}},"all":{"header3":"value3"}},"$$ref":"#/components/schemas/TestCustomHeaders"},"desiredStatusCode":{"type":"string","description":"Specify the HTTP status code value that indicates a successful response. The default value accepts any 2xx or 3xx status code.","default":"default","example":"200","$$ref":"#/components/schemas/TestDesiredStatusCode"},"distributedTracing":{"type":"boolean","description":"Adds distributed tracing headers to API requests using B3 and W3C standards.","example":false,"$$ref":"#/components/schemas/TestDistributedTracing"},"downloadLimit":{"type":"integer","description":"Specifies maximum number of bytes to download from the target object.","example":2048},"dnsOverride":{"type":"string","format":"ipv4","description":"IP address to use for DNS override.","example":"8.8.8.8"},"httpTargetTime":{"type":"integer","minimum":100,"maximum":5000,"description":"Target time for HTTP server completion, specified in milliseconds.","example":100,"$$ref":"#/components/schemas/TestHttpTargetTime"},"httpTimeLimit":{"type":"integer","minimum":5,"maximum":60,"description":"HTTP time limit in seconds.","default":5,"example":5,"$$ref":"#/components/schemas/TestHttpTimeLimit"},"httpVersion":{"type":"integer","minimum":1,"maximum":2,"description":"HTTP protocol version. Set to '2' to prefer HTTP/2, or '1' to use only HTTP/1.1.","default":2,"example":2,"$$ref":"#/components/schemas/TestHttpVersion"},"includeHeaders":{"type":"boolean","description":"Set to `true` to capture response headers for objects loaded by the test.","default":true,"example":true,"$$ref":"#/components/schemas/TestIncludeHeaders"},"mtuMeasurements":{"type":"boolean","description":"Set `true` to measure MTU sizes on network from agents to the target.","example":false,"$$ref":"#/components/schemas/TestMtuMeasurements"},"networkMeasurements":{"type":"boolean","description":"Enable or disable network measurements. Set to true to enable or false to disable network measurements.","default":true,"example":true,"$$ref":"#/components/schemas/TestNetworkMeasurements"},"numPathTraces":{"type":"integer","minimum":1,"maximum":10,"description":"Number of path traces executed by the agent.","default":3,"example":3,"$$ref":"#/components/schemas/TestNumPathTraces"},"oAuth":{"type":"object","properties":{"testUrl":{"type":"string","description":"Target for the test.","example":"www.thousandeyes.com","$$ref":"#/components/schemas/TestUrl"},"requestMethod":{"type":"string","enum":["get","post"],"description":"HTTP request method.","example":"get","$$ref":"#/components/schemas/RequestMethod"},"postBody":{"type":"string","description":"Enter the OAuth body for the HTTP POST request in this field when using OAuth as the authentication mechanism. No special escaping is required. The value is saved only when `requestMethod` is set to `post`."},"headers":{"type":"string","description":"Request headers used for OAuth."},"authType":{"type":"string","description":"HTTP authentication type used for the OAuth request.","enum":["none","basic","ntlm"],"default":"none","example":"none","$$ref":"#/components/schemas/OAuthAuthType"},"username":{"type":"string","description":"OAuth username"},"password":{"type":"string","description":"OAuth password","writeOnly":true}},"description":"Use this only if you want to use OAuth as the authentication mechanism.","example":{"testUrl":"https://api.thousandeyes.com/v7/status","requestMethod":"post","postBody":"client_id: ************","headers":"Authorization: Basic ************","authType":"none","username":"user123","password":"*******"},"$$ref":"#/components/schemas/OAuth"},"password":{"type":"string","description":"Password for Basic/NTLM authentication.","example":"password","writeOnly":true,"$$ref":"#/components/schemas/TestPassword"},"pathTraceMode":{"type":"string","enum":["classic","in-session"],"description":"Select `inSession` to perform the path trace within a TCP session.","default":"classic","example":"classic","$$ref":"#/components/schemas/TestPathTraceMode"},"probeMode":{"type":"string","enum":["auto","sack","syn"],"description":"Probe mode used by network test, only valid when the protocol is set to TCP.","default":"auto","example":"auto","$$ref":"#/components/schemas/TestProbeMode"},"protocol":{"type":"string","enum":["tcp","icmp","udp"],"description":"Protocol used by dependent network tests (end-to-end, path trace, PMTUD).","default":"tcp","example":"tcp","$$ref":"#/components/schemas/TestProtocol"},"sslVersion":{"type":"string","description":"Reflects the verbose SSL protocol version used by a test.","readOnly":true,"example":"Auto","$$ref":"#/components/schemas/TestSslVersion"},"sslVersionId":{"type":"string","description":"SSL version options:\n\n* Use '0' for automatic selection.\n* Use '3' for SSLv3.\n* Use '4' for TLS v1.0.\n* Use '5' for TLS v1.1.\n* Use '6' for TLS v1.2.\n* Use '7' for TLS v1.3.\n","enum":["0","3","4","5","6","7"],"default":"0","example":"0","$$ref":"#/components/schemas/TestSslVersionId"},"url":{"type":"string","description":"Target for the test.","example":"www.thousandeyes.com","$$ref":"#/components/schemas/TestUrl"},"useNtlm":{"type":"boolean","description":"Set to true to use NTLM, false to use Basic Authentication. Requires username and password to be set.","example":false,"$$ref":"#/components/schemas/TestUseNtlm"},"userAgent":{"type":"string","description":"User-agent string to be provided during the test.","example":"curl","$$ref":"#/components/schemas/TestUserAgent"},"username":{"type":"string","description":"Username for Basic/NTLM authentication.","example":"username","$$ref":"#/components/schemas/TestUsername"},"verifyCertificate":{"type":"boolean","description":"Ignore or acknowledge certificate errors. Set to false to ignore certificate errors.","default":false,"example":false,"$$ref":"#/components/schemas/TestVerifyCertificate"},"allowUnsafeLegacyRenegotiation":{"type":"boolean","description":"Allows TLS renegotiation with servers not supporting RFC 5746. Default Set to true to allow unsafe legacy renegotiation.","default":true,"example":true,"$$ref":"#/components/schemas/TestAllowUnsafeLegacyRenegotiation"},"followRedirects":{"type":"boolean","description":"To disable following HTTP/301 or HTTP/302 redirect directives, set this parameter to `false`.","default":true,"example":true,"$$ref":"#/components/schemas/TestFollowRedirects"},"fixedPacketRate":{"type":"integer","minimum":0,"maximum":100,"description":"Sets packets rate sent to measure the network in packets per second.","example":50,"$$ref":"#/components/schemas/TestFixedPacketRate"},"overrideAgentProxy":{"type":"boolean","description":"Flag indicating if a proxy other than the default should be used. To override the default proxy for agents, set to `true` and specify a value for `overrideProxyId`.","default":false,"example":false,"$$ref":"#/components/schemas/TestOverrideAgentProxy"},"overrideProxyId":{"type":"string","description":"ID of the proxy to be used if the default proxy is overridden.","example":"281474976710706","$$ref":"#/components/schemas/TestOverrideProxyId"},"collectProxyNetworkData":{"type":"boolean","description":"Indicates whether network data to the proxy should be collected.","default":false,"example":false,"$$ref":"#/components/schemas/TestCollectProxyNetworkData"},"vaultCredentials":{"type":"array","description":"List of credential IDs that are stored in an external vault.","items":{"type":"object","properties":{"secretId":{"type":"string","description":"UUID of the configured secret.","example":"f27e85b2-318b-4145-b5aa-c9dc8d8b0819"},"target":{"type":"string","enum":["username","password","script"],"description":"The target setting that the credential should be used for.","example":"username","$$ref":"#/components/schemas/TestVaultCredentialTarget"}},"$$ref":"#/components/schemas/TestVaultCredential"}},"emulatedDeviceId":{"type":"string","description":"ID of the emulated device, if one was given when the test was created.","example":"2"},"pageLoadTargetTime":{"type":"integer","description":"Target time for page load completion, specified in seconds and cannot exceed the `pageLoadTimeLimit`.","minimum":1,"maximum":60,"example":10},"pageLoadTimeLimit":{"type":"integer","description":"Page load time limit. Must be larger than the `httpTimeLimit`.","minimum":5,"maximum":60,"default":10,"example":10,"$$ref":"#/components/schemas/TestPageLoadTimeLimit"},"blockDomains":{"type":"string","description":"Domains or full object URLs to be excluded from metrics and waterfall data for transaction tests.","example":"domain.com/","$$ref":"#/components/schemas/TestBlockDomains"},"disableScreenshot":{"type":"boolean","description":"Enables or disables screenshots on error. Set true to not capture","default":false,"example":false,"$$ref":"#/components/schemas/TestDisableScreenshot"},"allowMicAndCamera":{"type":"boolean","description":"Set true allow the use of a fake mic and camera in the browser.","default":false,"example":false,"$$ref":"#/components/schemas/TestAllowMicAndCamera"},"allowGeolocation":{"type":"boolean","description":"Set true to use the agent’s geolocation by the web page.","default":false,"example":false,"$$ref":"#/components/schemas/TestAllowGeolocation"},"browserLanguage":{"type":"string","description":"Set one of the available browser language that you want to use to configure the browser.","example":"en-US","$$ref":"#/components/schemas/TestBrowserLanguage"},"chromeOptions":{"type":"string","description":"Command-line options passed to Chrome when running the test.","default":"","example":"--disable-gpu","$$ref":"#/components/schemas/TestChromeOptions"},"chromePolicies":{"type":"string","description":"JSON string of Chrome policy settings to apply.","default":"{}","example":"{\"ProxyMode\":\"direct\"}","$$ref":"#/components/schemas/TestChromePolicies"},"pageLoadingStrategy":{"type":"string","enum":["normal","eager","none"],"description":"* `normal`: The test waits until the entire page is fully loaded, including the downloading and parsing of HTML content as well as all associated resources, before advancing to the next action in the transaction test script. \n* `eager`: The test waits for the DOMContentLoaded event, indicating that HTML content is downloaded and parsed, and the document reaches the \"interactive\" readiness state, before proceeding to the next action in the test script.\n* `none`: The test only waits for the download of HTML content. Once the HTML is downloaded, the test continues to the next action in the transaction test script without waiting for additional resources.\n","default":"normal","example":"normal","$$ref":"#/components/schemas/TestPageLoadingStrategy"},"randomizedStartTime":{"type":"boolean","description":"Indicates whether agents should randomize the start time in each test round.","default":false,"example":false,"$$ref":"#/components/schemas/TestRandomizedStartTime"},"type":{"type":"string","example":"page-load","readOnly":true,"$$ref":"#/components/schemas/TestPageLoadType"},"identifyAgentTrafficWithUserAgent":{"type":"boolean","description":"Determines how agent traffic is identified:\n\n* `false`: Adds the `x-thousandeyes-agent: yes` header.\n* `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header.\n\nFor more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy).\n","example":false,"default":false,"$$ref":"#/components/schemas/TestIdentifyAgentTrafficWithUserAgent"}},"$$ref":"#/components/schemas/PageLoadProperties","required":["url"],"title":"PageLoadProperties"}}