diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index d16435a94fcd..ad2a262a7f21 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -70768,10 +70768,6 @@ components: $ref: "#/components/schemas/SyntheticsApiMultistepSubtestData" type: array type: object - SyntheticsFastTestAssertionResult: - additionalProperties: {} - description: Result of a single assertion evaluated during a fast test run. - type: object SyntheticsFastTestResult: description: |- Fast test result response. Returns `null` if the result is not yet available @@ -70785,9 +70781,9 @@ components: description: Attributes of the fast test result. properties: device: - $ref: "#/components/schemas/SyntheticsFastTestResultDevice" + $ref: "#/components/schemas/SyntheticsTestResultDevice" location: - $ref: "#/components/schemas/SyntheticsFastTestResultLocation" + $ref: "#/components/schemas/SyntheticsTestResultLocation" result: $ref: "#/components/schemas/SyntheticsFastTestResultDetail" test_sub_type: @@ -70798,6 +70794,7 @@ components: type: string test_version: description: Version of the test at the time the fast test was triggered. + example: 1 format: int64 type: integer type: object @@ -70811,7 +70808,7 @@ components: example: abc12345-1234-1234-1234-abc123456789 type: string type: - $ref: "#/components/schemas/SyntheticsFastTestResultType" + $ref: "#/components/schemas/SyntheticsTestResultType" type: object SyntheticsFastTestResultDetail: description: |- @@ -70821,48 +70818,47 @@ components: assertions: description: Results of each assertion evaluated during the test. items: - $ref: "#/components/schemas/SyntheticsFastTestAssertionResult" + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" type: array call_type: description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary type: string cert: - additionalProperties: {} - description: TLS certificate details, present for SSL tests. - type: object + $ref: "#/components/schemas/SyntheticsTestResultCertificate" duration: description: Total duration of the test in milliseconds. + example: 150.5 format: double type: number failure: - $ref: "#/components/schemas/SyntheticsFastTestResultFailure" + $ref: "#/components/schemas/SyntheticsTestResultFailure" finished_at: description: Unix timestamp (ms) of when the test finished. + example: 1679328001000 format: int64 type: integer id: description: The result ID. Set to the fast test UUID because no persistent result ID exists for fast tests. + example: abc12345-1234-1234-1234-abc123456789 type: string is_fast_retry: description: Whether this result is from an automatic fast retry. + example: false type: boolean request: - additionalProperties: {} - description: Details of the outgoing request made during the test. - type: object + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" resolved_ip: description: IP address resolved for the target host. example: "1.2.3.4" type: string response: - additionalProperties: {} - description: Details of the response received during the test. - type: object + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" run_type: - description: Run type indicating how this test was triggered (for example, `fast`). - type: string + $ref: "#/components/schemas/SyntheticsTestResultRunType" started_at: description: Unix timestamp (ms) of when the test started. + example: 1679328000000 format: int64 type: integer status: @@ -70872,80 +70868,34 @@ components: steps: description: Step results for multistep API tests. items: - $ref: "#/components/schemas/SyntheticsFastTestStepResult" + $ref: "#/components/schemas/SyntheticsTestResultStep" type: array timings: additionalProperties: {} description: Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 type: object traceroute: description: Traceroute hop results, present for ICMP and TCP tests. items: - $ref: "#/components/schemas/SyntheticsFastTestTracerouteHop" + $ref: "#/components/schemas/SyntheticsTestResultTracerouteHop" type: array triggered_at: description: Unix timestamp (ms) of when the test was triggered. + example: 1679327999000 format: int64 type: integer tunnel: description: Whether the test was run through a Synthetics tunnel. + example: false type: boolean type: object - SyntheticsFastTestResultDevice: - description: Device information for browser-based fast tests. - properties: - id: - description: Device identifier. - example: chrome.laptop_large - type: string - name: - description: Display name of the device. - example: Laptop Large - type: string - type: object - SyntheticsFastTestResultFailure: - description: Failure details if the fast test did not pass. - properties: - code: - description: Error code identifying the failure type. - example: TIMEOUT - type: string - message: - description: Human-readable description of the failure. - example: Connection timed out - type: string - type: object - SyntheticsFastTestResultLocation: - description: Location from which the fast test was executed. - properties: - id: - description: ID of the location. - example: aws:us-east-1 - type: string - name: - description: Display name of the location. - example: N. Virginia (AWS) - type: string - version: - description: Agent version running at this location. - type: string - worker_id: - description: Identifier of the specific worker that ran the test. - type: string - type: object - SyntheticsFastTestResultType: - default: result - description: JSON:API type for a fast test result. - enum: - - result - example: result - type: string - x-enum-varnames: - - RESULT - SyntheticsFastTestStepResult: - additionalProperties: {} - description: Result of a single step in a multistep fast test run. - type: object SyntheticsFastTestSubType: description: Subtype of the Synthetic test that produced this result. enum: @@ -70972,10 +70922,6 @@ components: - TCP - UDP - WEBSOCKET - SyntheticsFastTestTracerouteHop: - additionalProperties: {} - description: A single traceroute hop result from a fast test run. - type: object SyntheticsGlobalVariable: description: Synthetic global variable. properties: @@ -71460,6 +71406,20 @@ components: type: string x-enum-varnames: - NETWORK + SyntheticsPollTestResultsResponse: + description: Response object for polling Synthetic test results. + properties: + data: + description: Array of Synthetic test results. + items: + $ref: "#/components/schemas/SyntheticsTestResultData" + type: array + included: + description: Array of included related resources, such as the test definition. + items: + $ref: "#/components/schemas/SyntheticsTestResultIncludedItem" + type: array + type: object SyntheticsRestrictedRoles: deprecated: true description: A list of role identifiers that can be pulled from the Roles API, for restricting read and write access. This field is deprecated. Use the restriction policies API to manage permissions. @@ -71757,6 +71717,20 @@ components: multipart_presigned_urls_params: $ref: "#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsParams" type: object + SyntheticsTestLatestResultsResponse: + description: Response object for a Synthetic test's latest result summaries. + properties: + data: + description: Array of Synthetic test result summaries. + items: + $ref: "#/components/schemas/SyntheticsTestResultSummaryData" + type: array + included: + description: Array of included related resources, such as the test definition. + items: + $ref: "#/components/schemas/SyntheticsTestResultIncludedItem" + type: array + type: object SyntheticsTestOptions: description: Object describing the extra options for a Synthetic test. properties: @@ -71967,6 +71941,1868 @@ components: x-enum-varnames: - LIVE - PAUSED + SyntheticsTestResultAssertionResult: + description: An individual assertion result from a Synthetic test. + properties: + actual: + description: Actual value observed during the test. Its type depends on the assertion type. + example: 200 + error_message: + description: Error message if the assertion failed. + example: "Assertion failed: expected 200 but got 500" + type: string + expected: + description: Expected value for the assertion. Its type depends on the assertion type. + example: "200" + operator: + description: Operator used for the assertion (for example, `is`, `contains`). + example: is + type: string + property: + description: Property targeted by the assertion, when applicable. + example: content-type + type: string + target: + description: Target value for the assertion. Its type depends on the assertion type. + example: 200 + target_path: + description: JSON path or XPath evaluated for the assertion. + example: $.url + type: string + target_path_operator: + description: Operator used for the target path assertion. + example: contains + type: string + type: + description: Type of the assertion (for example, `responseTime`, `statusCode`, `body`). + example: statusCode + type: string + valid: + description: Whether the assertion passed. + example: true + type: boolean + type: object + SyntheticsTestResultAttributes: + description: Attributes of a Synthetic test result. + properties: + batch: + $ref: "#/components/schemas/SyntheticsTestResultBatch" + ci: + $ref: "#/components/schemas/SyntheticsTestResultCI" + device: + $ref: "#/components/schemas/SyntheticsTestResultDevice" + git: + $ref: "#/components/schemas/SyntheticsTestResultGit" + location: + $ref: "#/components/schemas/SyntheticsTestResultLocation" + result: + $ref: "#/components/schemas/SyntheticsTestResultDetail" + test_sub_type: + description: The subtype of the test (for example, `http`, `multi`, `ssl`). + example: http + type: string + test_type: + description: The type of the test (for example, `api` or `browser`). + example: api + type: string + type: object + SyntheticsTestResultBatch: + description: Batch information for the test result. + properties: + id: + description: Batch identifier. + example: batch-abc-123 + type: string + type: object + SyntheticsTestResultBounds: + description: Bounding box of an element on the page. + properties: + height: + description: Height in pixels. + example: 37 + format: int64 + type: integer + width: + description: Width in pixels. + example: 343 + format: int64 + type: integer + x: + description: Horizontal position in pixels. + example: 16 + format: int64 + type: integer + y: + description: Vertical position in pixels. + example: 140 + format: int64 + type: integer + type: object + SyntheticsTestResultBrowserError: + description: A browser error captured during a browser test step. + properties: + description: + description: Error description. + example: Failed to fetch resource + type: string + method: + description: HTTP method associated with the error (for network errors). + example: GET + type: string + name: + description: Error name. + example: NetworkError + type: string + status: + description: HTTP status code associated with the error (for network errors). + example: 500 + format: int64 + type: integer + type: + description: Type of the browser error. + example: network + type: string + url: + additionalProperties: {} + description: URL associated with the error. + type: object + type: object + SyntheticsTestResultBucketKeys: + description: Storage bucket keys for artifacts produced during a step or test. + properties: + after_step_screenshot: + description: Key for the screenshot captured after the step (goal-based tests). + example: screenshots/after-step-1-1.png + type: string + after_turn_screenshot: + description: Key for the screenshot captured after the turn (goal-based tests). + example: screenshots/after-turn-1.png + type: string + artifacts: + description: Key for miscellaneous artifacts. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/artifacts__1724521416257.json + type: string + before_step_screenshot: + description: Key for the screenshot captured before the step (goal-based tests). + example: screenshots/before-step-1-1.png + type: string + before_turn_screenshot: + description: Key for the screenshot captured before the turn (goal-based tests). + example: screenshots/before-turn-1.png + type: string + crash_report: + description: Key for a captured crash report. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/crash_report.log + type: string + device_logs: + description: Key for captured device logs. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/d2z-32s-iax_1340718101990858549_device_logs.log + type: string + email_messages: + description: Keys for email message payloads captured by the step. + items: + description: Storage bucket key for a captured email message. + type: string + type: array + screenshot: + description: Key for the captured screenshot. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/step-0__1724521416269.jpeg + type: string + snapshot: + description: Key for the captured DOM snapshot. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/snapshot.html + type: string + source: + description: Key for the page source or element source. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/step-0__1724445301832.xml + type: string + type: object + SyntheticsTestResultCI: + description: CI information associated with the test result. + properties: + pipeline: + $ref: "#/components/schemas/SyntheticsTestResultCIPipeline" + provider: + $ref: "#/components/schemas/SyntheticsTestResultCIProvider" + stage: + $ref: "#/components/schemas/SyntheticsTestResultCIStage" + workspace_path: + description: Path of the workspace that ran the CI job. + example: /home/runner/work/example + type: string + type: object + SyntheticsTestResultCIPipeline: + description: Details of the CI pipeline. + properties: + id: + description: Pipeline identifier. + example: pipeline-abc-123 + type: string + name: + description: Pipeline name. + example: build-and-test + type: string + number: + description: Pipeline number. + example: 42 + format: int64 + type: integer + url: + description: Pipeline URL. + example: https://github.com/DataDog/example/actions/runs/42 + type: string + type: object + SyntheticsTestResultCIProvider: + description: Details of the CI provider. + properties: + name: + description: Provider name. + example: github + type: string + type: object + SyntheticsTestResultCIStage: + description: Details of the CI stage. + properties: + name: + description: Stage name. + example: test + type: string + type: object + SyntheticsTestResultCdnCacheStatus: + description: Cache status reported by the CDN for the response. + properties: + cached: + description: Whether the response was served from the CDN cache. + example: true + type: boolean + status: + description: Raw cache status string reported by the CDN. + example: HIT + type: string + type: object + SyntheticsTestResultCdnProviderInfo: + description: CDN provider details inferred from response headers. + properties: + cache: + $ref: "#/components/schemas/SyntheticsTestResultCdnCacheStatus" + provider: + description: Name of the CDN provider. + example: google_cloud + type: string + type: object + SyntheticsTestResultCdnResource: + description: A CDN resource encountered while executing a browser step. + properties: + cdn: + $ref: "#/components/schemas/SyntheticsTestResultCdnProviderInfo" + resolved_ip: + description: Resolved IP address for the CDN resource. + example: 34.95.79.70 + type: string + timestamp: + description: Unix timestamp (ms) of when the resource was fetched. + example: 1724521406576 + format: int64 + type: integer + timings: + additionalProperties: {} + description: Timing breakdown for fetching the CDN resource. + example: + firstByte: 99.7 + tcp: 0.9 + type: object + type: object + SyntheticsTestResultCertificate: + description: SSL/TLS certificate information returned from an SSL test. + properties: + cipher: + description: Cipher used for the TLS connection. + example: TLS_AES_256_GCM_SHA384 + type: string + exponent: + description: RSA exponent of the certificate. + example: 65537 + format: int64 + type: integer + ext_key_usage: + description: Extended key usage extensions for the certificate. + example: + - 1.3.6.1.5.5.7.3.1 + items: + description: Extended key usage value. + type: string + type: array + fingerprint: + description: SHA-1 fingerprint of the certificate. + example: D6:03:5A:9F:93:E1:B7:28:EC:90:C5:9F:72:30:55:7C:74:5F:53:92 + type: string + fingerprint256: + description: SHA-256 fingerprint of the certificate. + example: 04:45:93:A9:4C:14:70:47:DB:3C:FC:05:F9:5A:50:4E:DA:DB:A1:C6:37:3D:15:C0:B2:7E:5D:93:5F:A2:02:C7 + type: string + issuer: + additionalProperties: + type: string + description: Certificate issuer details. + example: + C: US + CN: WE2 + O: Google Trust Services + type: object + modulus: + description: RSA modulus of the certificate. + example: C0FCE9F9... + type: string + protocol: + description: TLS protocol used (for example, `TLSv1.2`). + example: TLSv1.3 + type: string + serial_number: + description: Serial number of the certificate. + example: 7B584A1A6670A1EB0941A9A121569D60 + type: string + subject: + additionalProperties: + type: string + description: Certificate subject details. + example: + CN: "*.google.fr" + altName: "DNS:*.google.fr, DNS:google.fr" + type: object + tls_version: + description: TLS protocol version. + example: 1.3 + format: double + type: number + valid: + $ref: "#/components/schemas/SyntheticsTestResultCertificateValidity" + type: object + SyntheticsTestResultCertificateValidity: + description: Validity window of a certificate. + properties: + from: + description: Unix timestamp (ms) of when the certificate became valid. + example: 1742469686000 + format: int64 + type: integer + to: + description: Unix timestamp (ms) of when the certificate expires. + example: 1749727285000 + format: int64 + type: integer + type: object + SyntheticsTestResultData: + description: Wrapper object for a Synthetic test result. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsTestResultAttributes" + id: + description: The result ID. + example: "5158904793181869365" + type: string + relationships: + $ref: "#/components/schemas/SyntheticsTestResultRelationships" + type: + $ref: "#/components/schemas/SyntheticsTestResultType" + type: object + SyntheticsTestResultDetail: + description: Full result details for a Synthetic test execution. + properties: + assertions: + description: Assertion results produced by the test. + items: + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" + type: array + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + cert: + $ref: "#/components/schemas/SyntheticsTestResultCertificate" + compressed_json_descriptor: + description: Compressed JSON descriptor for the test (internal format). + example: compressedJsonDescriptorValue + type: string + compressed_steps: + description: Compressed representation of the test steps (internal format). + example: eJzLSM3JyQcABiwCFQ== + type: string + connection_outcome: + description: Outcome of the connection attempt (for example, `established`, `refused`). + example: established + type: string + dns_resolution: + $ref: "#/components/schemas/SyntheticsTestResultDnsResolution" + duration: + description: Duration of the test execution (in milliseconds). + example: 380.7 + format: double + type: number + exited_on_step_success: + description: Whether the test exited early because a step marked with `exitIfSucceed` passed. + example: false + type: boolean + failure: + $ref: "#/components/schemas/SyntheticsTestResultFailure" + finished_at: + description: Timestamp of when the test finished (in milliseconds). + example: 1723782422760 + format: int64 + type: integer + handshake: + $ref: "#/components/schemas/SyntheticsTestResultHandshake" + id: + description: The unique identifier for this result. + example: "5158904793181869365" + type: string + initial_id: + description: The initial result ID before any retries. + example: "5158904793181869365" + type: string + is_fast_retry: + description: Whether this result is from a fast retry. + example: true + type: boolean + is_last_retry: + description: Whether this result is from the last retry. + example: true + type: boolean + netpath: + $ref: "#/components/schemas/SyntheticsTestResultNetpath" + netstats: + $ref: "#/components/schemas/SyntheticsTestResultNetstats" + ocsp: + $ref: "#/components/schemas/SyntheticsTestResultOCSPResponse" + ping: + $ref: "#/components/schemas/SyntheticsTestResultTracerouteHop" + received_email_count: + description: Number of emails received during the test (email tests). + example: 1 + format: int64 + type: integer + received_message: + description: Message received from the target (for WebSocket/TCP/UDP tests). + example: "UDP echo: b'Test message'" + type: string + request: + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" + resolved_ip: + description: IP address resolved for the target host. + example: "54.243.255.141" + type: string + response: + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" + run_type: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + sent_message: + description: Message sent to the target (for WebSocket/TCP/UDP tests). + example: udp mess + type: string + start_url: + description: Start URL for the test (browser tests). + example: http://34.95.79.70/prototype + type: string + started_at: + description: Timestamp of when the test started (in milliseconds). + example: 1723782422750 + format: int64 + type: integer + status: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + steps: + description: Step results (for browser, mobile, and multistep API tests). + items: + $ref: "#/components/schemas/SyntheticsTestResultStep" + type: array + time_to_interactive: + description: Time to interactive in milliseconds (browser tests). + example: 183 + format: int64 + type: integer + timings: + additionalProperties: {} + description: Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + trace: + $ref: "#/components/schemas/SyntheticsTestResultTrace" + traceroute: + description: Traceroute hop results (for network tests). + items: + $ref: "#/components/schemas/SyntheticsTestResultTracerouteHop" + type: array + triggered_at: + description: Timestamp of when the test was triggered (in milliseconds). + example: 1723782422715 + format: int64 + type: integer + tunnel: + description: Whether the test was executed through a tunnel. + example: false + type: boolean + turns: + description: Turns executed by a goal-based browser test. + items: + $ref: "#/components/schemas/SyntheticsTestResultTurn" + type: array + unhealthy: + description: Whether the test runner was unhealthy at the time of execution. + example: false + type: boolean + variables: + $ref: "#/components/schemas/SyntheticsTestResultVariables" + type: object + SyntheticsTestResultDevice: + description: Device information for the test result (browser and mobile tests). + properties: + browser: + $ref: "#/components/schemas/SyntheticsTestResultDeviceBrowser" + id: + description: Device identifier. + example: chrome.laptop_large + type: string + name: + description: Device name. + example: "Chrome - Laptop Large" + type: string + platform: + $ref: "#/components/schemas/SyntheticsTestResultDevicePlatform" + resolution: + $ref: "#/components/schemas/SyntheticsTestResultDeviceResolution" + type: + description: Device type. + example: browser + type: string + type: object + SyntheticsTestResultDeviceBrowser: + description: Browser information for the device used to run the test. + properties: + type: + description: Browser type (for example, `chrome`, `firefox`). + example: edge + type: string + user_agent: + description: User agent string reported by the browser. + example: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36 Edg/127.0.2651.105 DatadogSynthetics + type: string + version: + description: Browser version. + example: 127.0.2651.105 + type: string + type: object + SyntheticsTestResultDevicePlatform: + description: Platform information for the device used to run the test. + properties: + name: + description: Platform name (for example, `linux`, `macos`). + example: ios + type: string + version: + description: Platform version. + example: "14.8" + type: string + type: object + SyntheticsTestResultDeviceResolution: + description: Screen resolution of the device used to run the test. + properties: + height: + description: Viewport height in pixels. + example: 1100 + format: int64 + type: integer + pixel_ratio: + description: Device pixel ratio. + example: 2 + format: double + type: number + width: + description: Viewport width in pixels. + example: 1440 + format: int64 + type: integer + type: object + SyntheticsTestResultDnsRecord: + description: A DNS record returned in a DNS test response. + properties: + type: + description: DNS record type (for example, `A`, `AAAA`, `CNAME`). + example: A + type: string + values: + description: Values associated with the DNS record. + example: + - 213.186.33.19 + items: + description: DNS record value. + type: string + type: array + type: object + SyntheticsTestResultDnsResolution: + description: DNS resolution details recorded during the test execution. + properties: + attempts: + description: DNS resolution attempts made during the test. + items: + $ref: "#/components/schemas/SyntheticsTestResultDnsResolutionAttempt" + type: array + resolved_ip: + description: Resolved IP address for the target host. + example: 54.243.255.141 + type: string + resolved_port: + description: Resolved port for the target service. + example: "443" + type: string + server: + description: DNS server used for the resolution. + example: 8.8.4.4 + type: string + type: object + SyntheticsTestResultDnsResolutionAttempt: + additionalProperties: + type: string + description: A single DNS resolution attempt. Keys are provider-specific attempt fields. + type: object + SyntheticsTestResultExecutionInfo: + description: Execution details for a Synthetic test result. + properties: + duration: + description: Total duration of the test execution in milliseconds. + example: 380.7 + format: double + type: number + error_message: + description: Error message if the execution encountered an issue. + example: Connection timed out + type: string + is_fast_retry: + description: Whether this result is from a fast retry. + example: true + type: boolean + timings: + additionalProperties: {} + description: Timing breakdown of the test execution in milliseconds. + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + tunnel: + description: Whether the test was executed through a tunnel. + example: false + type: boolean + unhealthy: + description: Whether the location was unhealthy during execution. + example: false + type: boolean + type: object + SyntheticsTestResultFailure: + description: Details about the failure of a Synthetic test. + properties: + code: + description: Error code for the failure. + example: TIMEOUT + type: string + internal_code: + description: Internal error code used for debugging. + example: INCORRECT_ASSERTION + type: string + internal_message: + description: Internal error message used for debugging. + example: Assertion failed on step 2 + type: string + message: + description: Error message for the failure. + example: Connection timed out + type: string + type: object + SyntheticsTestResultFileRef: + description: Reference to a file attached to a Synthetic test request. + properties: + bucket_key: + description: Storage bucket key where the file is stored. + example: api-upload-file/s3v-msw-tp3/2024-08-20T12:18:27.628081_f433c953-a58a-4296-834b-0669e32ba55f.json + type: string + encoding: + description: Encoding of the file contents. + example: base64 + type: string + name: + description: File name. + example: dd_logo_h_rgb.jpg + type: string + size: + description: File size in bytes. + example: 30294 + format: int64 + type: integer + type: + description: File MIME type. + example: image/jpeg + type: string + type: object + SyntheticsTestResultGit: + description: Git information associated with the test result. + properties: + branch: + description: Git branch name. + example: main + type: string + commit: + $ref: "#/components/schemas/SyntheticsTestResultGitCommit" + repository_url: + description: Git repository URL. + example: https://github.com/DataDog/example + type: string + type: object + SyntheticsTestResultGitCommit: + description: Details of the Git commit associated with the test result. + properties: + author: + $ref: "#/components/schemas/SyntheticsTestResultGitUser" + committer: + $ref: "#/components/schemas/SyntheticsTestResultGitUser" + message: + description: Commit message. + example: Fix bug in login flow + type: string + sha: + description: Commit SHA. + example: 9e107d9d372bb6826bd81d3542a419d6f0e1de56 + type: string + url: + description: URL of the commit. + example: https://github.com/DataDog/example/commit/9e107d9d372bb6826bd81d3542a419d6f0e1de56 + type: string + type: object + SyntheticsTestResultGitUser: + description: A Git user (author or committer). + properties: + date: + description: Timestamp of the commit action for this user. + example: "2024-08-15T14:23:00Z" + type: string + email: + description: Email address of the Git user. + example: jane.doe@example.com + type: string + name: + description: Name of the Git user. + example: Jane Doe + type: string + type: object + SyntheticsTestResultHandshake: + description: Handshake request and response for protocol-level tests. + properties: + request: + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" + response: + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" + type: object + SyntheticsTestResultHealthCheck: + description: Health check information returned from a gRPC health check call. + properties: + message: + additionalProperties: + type: string + description: Raw health check message payload. + type: object + status: + description: Health check status code. + example: 1 + format: int64 + type: integer + type: object + SyntheticsTestResultIncludedItem: + description: An included related resource. + properties: + attributes: + additionalProperties: {} + description: Attributes of the included resource. + type: object + id: + description: ID of the included resource. + example: abc-def-123 + type: string + type: + description: Type of the included resource. + example: test + type: string + type: object + SyntheticsTestResultLocation: + description: Location information for a Synthetic test result. + properties: + id: + description: Identifier of the location. + example: aws:us-east-1 + type: string + name: + description: Human-readable name of the location. + example: "N. Virginia (AWS)" + type: string + version: + description: Version of the worker that ran the test. + example: 1.0.0 + type: string + worker_id: + description: Identifier of the specific worker that ran the test. + example: worker-abc-123 + type: string + type: object + SyntheticsTestResultNetpath: + description: Network Path test result capturing the path between source and destination. + properties: + destination: + $ref: "#/components/schemas/SyntheticsTestResultNetpathDestination" + hops: + description: Hops along the network path. + items: + $ref: "#/components/schemas/SyntheticsTestResultNetpathHop" + type: array + origin: + description: Origin of the network path (for example, probe source). + example: synthetics + type: string + pathtrace_id: + description: Identifier of the path trace. + example: 5d3cb978-533b-41ce-85a4-3661c8dd6a0b + type: string + protocol: + description: Protocol used for the path trace (for example, `tcp`, `udp`, `icmp`). + example: TCP + type: string + source: + $ref: "#/components/schemas/SyntheticsTestResultNetpathEndpoint" + tags: + description: Tags associated with the network path measurement. + example: + - synthetics.test_id:nja-epx-mg8 + items: + description: Tag associated with the network path measurement. + type: string + type: array + timestamp: + description: Unix timestamp (ms) of the network path measurement. + example: 1744117822266 + format: int64 + type: integer + type: object + SyntheticsTestResultNetpathDestination: + description: Destination endpoint of a network path measurement. + properties: + hostname: + description: Hostname of the destination. + example: 34.95.79.70 + type: string + ip_address: + description: IP address of the destination. + example: 34.95.79.70 + type: string + port: + description: Port of the destination service. + example: 80 + format: int64 + type: integer + type: object + SyntheticsTestResultNetpathEndpoint: + description: Source endpoint of a network path measurement. + properties: + hostname: + description: Hostname of the endpoint. + example: edge-eu1.staging.dog + type: string + type: object + SyntheticsTestResultNetpathHop: + description: A single hop along a network path. + properties: + hostname: + description: Resolved hostname of the hop. + example: 70.79.95.34.bc.googleusercontent.com + type: string + ip_address: + description: IP address of the hop. + example: 10.240.134.15 + type: string + reachable: + description: Whether this hop was reachable. + example: true + type: boolean + rtt: + description: Round-trip time to this hop in milliseconds. + example: 0.000346599 + format: double + type: number + ttl: + description: Time-to-live value of the probe packet at this hop. + example: 2 + format: int64 + type: integer + type: object + SyntheticsTestResultNetstats: + description: Aggregated network statistics from the test execution. + properties: + hops: + $ref: "#/components/schemas/SyntheticsTestResultNetstatsHops" + jitter: + description: Network jitter in milliseconds. + example: 0.08 + format: double + type: number + latency: + $ref: "#/components/schemas/SyntheticsTestResultNetworkLatency" + packet_loss_percentage: + description: Percentage of probe packets lost. + example: 0.0 + format: double + type: number + packets_received: + description: Number of probe packets received. + example: 4 + format: int64 + type: integer + packets_sent: + description: Number of probe packets sent. + example: 4 + format: int64 + type: integer + type: object + SyntheticsTestResultNetstatsHops: + description: Statistics about the number of hops for a network test. + properties: + avg: + description: Average number of hops. + example: 11.0 + format: double + type: number + max: + description: Maximum number of hops. + example: 11 + format: int64 + type: integer + min: + description: Minimum number of hops. + example: 11 + format: int64 + type: integer + type: object + SyntheticsTestResultNetworkLatency: + description: Latency statistics for a network probe. + properties: + avg: + description: Average latency in milliseconds. + example: 1.8805 + format: double + type: number + max: + description: Maximum latency in milliseconds. + example: 1.97 + format: double + type: number + min: + description: Minimum latency in milliseconds. + example: 1.76 + format: double + type: number + type: object + SyntheticsTestResultOCSPCertificate: + description: Certificate details returned in an OCSP response. + properties: + revocation_reason: + description: Reason code for the revocation, when applicable. + example: unspecified + type: string + revocation_time: + description: Unix timestamp (ms) of the revocation. + example: 1749727285000 + format: int64 + type: integer + serial_number: + description: Serial number of the certificate. + example: 7B584A1A6670A1EB0941A9A121569D60 + type: string + type: object + SyntheticsTestResultOCSPResponse: + description: OCSP response received while validating a certificate. + properties: + certificate: + $ref: "#/components/schemas/SyntheticsTestResultOCSPCertificate" + status: + description: OCSP response status (for example, `good`, `revoked`, `unknown`). + example: good + type: string + updates: + $ref: "#/components/schemas/SyntheticsTestResultOCSPUpdates" + type: object + SyntheticsTestResultOCSPUpdates: + description: OCSP response update timestamps. + properties: + next_update: + description: Unix timestamp (ms) of the next expected OCSP update. + example: 1743074486000 + format: int64 + type: integer + produced_at: + description: Unix timestamp (ms) of when the OCSP response was produced. + example: 1742469686000 + format: int64 + type: integer + this_update: + description: Unix timestamp (ms) of this OCSP update. + example: 1742469686000 + format: int64 + type: integer + type: object + SyntheticsTestResultParentStep: + description: Reference to the parent step of a sub-step. + properties: + id: + description: Identifier of the parent step. + example: fkk-j2a-gmw + type: string + type: object + SyntheticsTestResultParentTest: + description: Reference to the parent test of a sub-step. + properties: + id: + description: Identifier of the parent test. + example: abc-def-123 + type: string + type: object + SyntheticsTestResultRedirect: + description: A redirect hop encountered while performing the request. + properties: + location: + description: Target location of the redirect. + example: https://example.com/new-location + type: string + status_code: + description: HTTP status code of the redirect response. + example: 301 + format: int64 + type: integer + type: object + SyntheticsTestResultRelationshipTest: + description: Relationship to the Synthetic test. + properties: + data: + $ref: "#/components/schemas/SyntheticsTestResultRelationshipTestData" + type: object + SyntheticsTestResultRelationshipTestData: + description: Data for the test relationship. + properties: + id: + description: The public ID of the test. + example: abc-def-123 + type: string + type: + description: Type of the related resource. + example: test + type: string + type: object + SyntheticsTestResultRelationships: + description: Relationships for a Synthetic test result. + properties: + test: + $ref: "#/components/schemas/SyntheticsTestResultRelationshipTest" + type: object + SyntheticsTestResultRequestInfo: + description: Details of the outgoing request made during the test execution. + properties: + allow_insecure: + description: Whether insecure certificates are allowed for this request. + example: false + type: boolean + body: + description: Body sent with the request. + example: '{"key":"value"}' + type: string + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + destination_service: + description: Destination service for a Network Path test. + example: my-service + type: string + dns_server: + description: DNS server used to resolve the target host. + example: 8.8.8.8 + type: string + dns_server_port: + description: Port of the DNS server used for resolution. + example: 53 + format: int64 + type: integer + e2e_queries: + description: Number of end-to-end probe queries issued. + example: 4 + format: int64 + type: integer + files: + description: Files attached to the request. + items: + $ref: "#/components/schemas/SyntheticsTestResultFileRef" + type: array + headers: + additionalProperties: {} + description: Headers sent with the request. + example: + content-type: application/json + type: object + host: + description: Host targeted by the request. + example: grpcbin.test.k6.io + type: string + max_ttl: + description: Maximum TTL for network probe packets. + example: 64 + format: int64 + type: integer + message: + description: Message sent with the request (for WebSocket/TCP/UDP tests). + example: My message + type: string + method: + description: HTTP method used for the request. + example: GET + type: string + no_saving_response_body: + description: Whether the response body was not saved. + example: true + type: boolean + port: + description: Port targeted by the request. Can be a number or a string variable reference. + example: 9000 + service: + description: Service name targeted by the request (for gRPC tests). + example: addsvc.Add + type: string + source_service: + description: Source service for a Network Path test. + example: synthetics + type: string + timeout: + description: Request timeout in milliseconds. + example: 60 + format: int64 + type: integer + tool_name: + description: Name of the MCP tool called (MCP tests only). + example: search + type: string + traceroute_queries: + description: Number of traceroute probe queries issued. + example: 2 + format: int64 + type: integer + url: + description: URL targeted by the request. + example: https://httpbin.org/anything/lol valuehugo + type: string + type: object + SyntheticsTestResultResponse: + description: Response object for a Synthetic test result. + properties: + data: + $ref: "#/components/schemas/SyntheticsTestResultData" + included: + description: Array of included related resources, such as the test definition. + items: + $ref: "#/components/schemas/SyntheticsTestResultIncludedItem" + type: array + type: object + SyntheticsTestResultResponseInfo: + description: Details of the response received during the test execution. + properties: + body: + description: Body of the response. + example: '{"status":"ok"}' + type: string + body_compressed: + description: Compressed representation of the response body. + example: eJzLSM3JyQcABiwCFQ== + type: string + body_hashes: + description: Hashes computed over the response body. + example: 9e107d9d372bb6826bd81d3542a419d6 + type: string + body_size: + description: Size of the response body in bytes. + example: 793 + format: int64 + type: integer + cache_headers: + additionalProperties: + type: string + description: Cache-related response headers. + example: + server: gunicorn/19.9.0 + type: object + cdn: + $ref: "#/components/schemas/SyntheticsTestResultCdnProviderInfo" + close: + $ref: "#/components/schemas/SyntheticsTestResultWebSocketClose" + compressed_message: + description: Compressed representation of the response message. + example: eJzLSM3JyQcABiwCFQ== + type: string + headers: + additionalProperties: {} + description: Response headers. + example: + content-type: application/json + type: object + healthcheck: + $ref: "#/components/schemas/SyntheticsTestResultHealthCheck" + http_version: + description: HTTP version of the response. + example: "2.0" + type: string + is_body_truncated: + description: Whether the response body was truncated. + example: false + type: boolean + is_message_truncated: + description: Whether the response message was truncated. + example: false + type: boolean + message: + description: Message received in the response (for WebSocket/TCP/UDP tests). + example: '{"f_string":"concat-STATIC_HIDDEN_VALUE"}' + type: string + metadata: + additionalProperties: + type: string + description: Additional metadata returned with the response. + type: object + records: + description: DNS records returned in the response (DNS tests only). + items: + $ref: "#/components/schemas/SyntheticsTestResultDnsRecord" + type: array + redirects: + description: Redirect hops encountered while performing the request. + items: + $ref: "#/components/schemas/SyntheticsTestResultRedirect" + type: array + status_code: + description: HTTP status code of the response. + example: 200 + format: int64 + type: integer + type: object + SyntheticsTestResultRouter: + description: A router along the traceroute path. + properties: + ip: + description: IP address of the router. + example: 34.95.79.70 + type: string + resolved_host: + description: Resolved hostname of the router. + example: 70.79.95.34.bc.googleusercontent.com + type: string + type: object + SyntheticsTestResultRumContext: + description: RUM application context associated with a step or sub-test. + properties: + application_id: + description: RUM application identifier. + example: 00000000-0000-0000-0000-000000000000 + type: string + session_id: + description: RUM session identifier. + example: 11111111-1111-1111-1111-111111111111 + type: string + view_id: + description: RUM view identifier. + example: 22222222-2222-2222-2222-222222222222 + type: string + type: object + SyntheticsTestResultRunType: + description: The type of run for a Synthetic test result. + enum: + - scheduled + - fast + - ci + - triggered + example: scheduled + type: string + x-enum-varnames: + - SCHEDULED + - FAST + - CI + - TRIGGERED + SyntheticsTestResultStatus: + description: Status of a Synthetic test result. + enum: + - passed + - failed + - no_data + example: passed + type: string + x-enum-varnames: + - PASSED + - FAILED + - NO_DATA + SyntheticsTestResultStep: + description: A step result from a browser, mobile, or multistep API test. + properties: + allow_failure: + description: Whether the test continues when this step fails. + example: false + type: boolean + api_test: + additionalProperties: {} + description: Inner API test definition for browser `runApiTest` steps. + type: object + assertion_result: + $ref: "#/components/schemas/SyntheticsTestResultStepAssertionResult" + assertions: + description: Assertion results produced by the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" + type: array + blocked_requests_urls: + description: URLs of requests blocked during the step. + items: + description: Blocked request URL. + type: string + type: array + bounds: + $ref: "#/components/schemas/SyntheticsTestResultBounds" + browser_errors: + description: Browser errors captured during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultBrowserError" + type: array + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + cdn_resources: + description: CDN resources encountered during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultCdnResource" + type: array + click_type: + description: Click type performed in a browser step. + example: primary + type: string + compressed_json_descriptor: + description: Compressed JSON descriptor for the step (internal format). + example: compressedJsonDescriptorValue + type: string + config: + additionalProperties: {} + description: Request configuration executed by this step (API test steps). + type: object + description: + description: Human-readable description of the step. + example: Navigate to start URL + type: string + duration: + description: Duration of the step in milliseconds. + example: 1015.0 + format: double + type: number + element_description: + description: Description of the element interacted with by the step. + example: '' + type: string + element_updates: + $ref: "#/components/schemas/SyntheticsTestResultStepElementUpdates" + extracted_value: + $ref: "#/components/schemas/SyntheticsTestResultVariable" + failure: + $ref: "#/components/schemas/SyntheticsTestResultFailure" + http_results: + description: HTTP results produced by an MCP step. + items: + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" + type: array + id: + description: Identifier of the step. + example: fkk-j2a-gmw + type: string + is_critical: + description: Whether this step is critical for the test outcome. + example: true + type: boolean + javascript_custom_assertion_code: + description: Whether the step uses a custom JavaScript assertion. + example: false + type: boolean + locate_element_duration: + description: Time taken to locate the element in milliseconds. + example: 845.0 + format: double + type: number + name: + description: Name of the step. + example: Extract variable from body + type: string + request: + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" + response: + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" + retries: + description: Retry results for the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultStep" + type: array + retry_count: + description: Number of times this step was retried. + example: 0 + format: int64 + type: integer + rum_context: + $ref: "#/components/schemas/SyntheticsTestResultRumContext" + started_at: + description: Unix timestamp (ms) of when the step started. + example: 1724445283308 + format: int64 + type: integer + status: + description: Status of the step (for example, `passed`, `failed`). + example: passed + type: string + sub_step: + $ref: "#/components/schemas/SyntheticsTestResultSubStep" + sub_test: + $ref: "#/components/schemas/SyntheticsTestResultSubTest" + subtype: + description: Subtype of the step. + example: http + type: string + tabs: + description: Browser tabs involved in the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultTab" + type: array + timings: + additionalProperties: {} + description: Timing breakdown of the step execution. + type: object + tunnel: + description: Whether the step was executed through a Synthetics tunnel. + example: false + type: boolean + type: + description: Type of the step (for example, `click`, `assertElementContent`, `runApiTest`). + example: click + type: string + url: + description: URL associated with the step (for navigation steps). + example: http://34.95.79.70/prototype + type: string + value: + description: Step value. Its type depends on the step type. + example: http://34.95.79.70/prototype + variables: + $ref: "#/components/schemas/SyntheticsTestResultVariables" + vitals_metrics: + description: Web vitals metrics captured during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultVitalsMetrics" + type: array + warnings: + description: Warnings emitted during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultWarning" + type: array + type: object + SyntheticsTestResultStepAssertionResult: + description: Assertion result for a browser or mobile step. + properties: + actual: + description: Actual value observed during the step assertion. Its type depends on the check type. + example: "True\ngood\ngood\ngood\ngood\nTrue" + check_type: + description: Type of the step assertion check. + example: contains + type: string + expected: + description: Expected value for the step assertion. Its type depends on the check type. + example: True good good good good True + has_secure_variables: + description: Whether the assertion involves secure variables. + example: false + type: boolean + type: object + SyntheticsTestResultStepElementUpdates: + description: Element locator updates produced during a step. + properties: + multi_locator: + additionalProperties: + type: string + description: Updated multi-locator definition. + type: object + target_outer_html: + description: Updated outer HTML of the targeted element. + example:

My website - v4

+ type: string + version: + description: Version of the element locator definition. + example: 3 + format: int64 + type: integer + type: object + SyntheticsTestResultStepsInfo: + description: Step execution summary for a Synthetic test result. + properties: + completed: + description: Number of completed steps. + example: 6 + format: int64 + type: integer + errors: + description: Number of steps with errors. + example: 0 + format: int64 + type: integer + total: + description: Total number of steps. + example: 6 + format: int64 + type: integer + type: object + SyntheticsTestResultSubStep: + description: Information about a sub-step in a nested test execution. + properties: + level: + description: Depth of the sub-step in the execution tree. + example: 1 + format: int64 + type: integer + parent_step: + $ref: "#/components/schemas/SyntheticsTestResultParentStep" + parent_test: + $ref: "#/components/schemas/SyntheticsTestResultParentTest" + type: object + SyntheticsTestResultSubTest: + description: Information about a sub-test played from a parent browser test. + properties: + id: + description: Identifier of the sub-test. + example: abc-def-123 + type: string + playing_tab: + description: Index of the browser tab playing the sub-test. + example: 0 + format: int64 + type: integer + rum_context: + $ref: "#/components/schemas/SyntheticsTestResultRumContext" + type: object + SyntheticsTestResultSummaryAttributes: + description: Attributes of a Synthetic test result summary. + properties: + device: + $ref: "#/components/schemas/SyntheticsTestResultDevice" + execution_info: + $ref: "#/components/schemas/SyntheticsTestResultExecutionInfo" + finished_at: + description: Timestamp of when the test finished (in milliseconds). + format: int64 + type: integer + location: + $ref: "#/components/schemas/SyntheticsTestResultLocation" + run_type: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + started_at: + description: Timestamp of when the test started (in milliseconds). + format: int64 + type: integer + status: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + steps_info: + $ref: "#/components/schemas/SyntheticsTestResultStepsInfo" + test_sub_type: + description: The subtype of the test (for example, `http`, `multi`, `ssl`). + example: http + type: string + test_type: + description: The type of the test (for example, `api` or `browser`). + example: api + type: string + type: object + SyntheticsTestResultSummaryData: + description: Wrapper object for a Synthetic test result summary. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsTestResultSummaryAttributes" + id: + description: The result ID. + example: "5158904793181869365" + type: string + relationships: + $ref: "#/components/schemas/SyntheticsTestResultRelationships" + type: + $ref: "#/components/schemas/SyntheticsTestResultSummaryType" + type: object + SyntheticsTestResultSummaryType: + default: "result_summary" + description: Type of the Synthetic test result summary resource, `result_summary`. + enum: + - result_summary + example: result_summary + type: string + x-enum-varnames: + - RESULT_SUMMARY + SyntheticsTestResultTab: + description: Information about a browser tab involved in a step. + properties: + focused: + description: Whether the tab was focused during the step. + example: true + type: boolean + title: + description: Title of the tab. + example: Team Browser mini-websites + type: string + url: + description: URL loaded in the tab. + example: http://34.95.79.70/prototype + type: string + type: object + SyntheticsTestResultTrace: + description: Trace identifiers associated with a Synthetic test result. + properties: + id: + description: Datadog APM trace identifier. + example: "5513046492231128177" + type: string + otel_id: + description: OpenTelemetry trace identifier. + example: d8ba00eb1507bdba8643ba8e7a1c022c + type: string + type: object + SyntheticsTestResultTracerouteHop: + description: A network probe result, used for traceroute hops and ping summaries. + properties: + host: + description: Target hostname. + example: 34.95.79.70 + type: string + latency: + $ref: "#/components/schemas/SyntheticsTestResultNetworkLatency" + packet_loss_percentage: + description: Percentage of probe packets lost. + example: 0.0 + format: double + type: number + packet_size: + description: Size of each probe packet in bytes. + example: 56 + format: int64 + type: integer + packets_received: + description: Number of probe packets received. + example: 4 + format: int64 + type: integer + packets_sent: + description: Number of probe packets sent. + example: 4 + format: int64 + type: integer + resolved_ip: + description: Resolved IP address for the target. + example: 34.95.79.70 + type: string + routers: + description: List of intermediate routers for the traceroute. + items: + $ref: "#/components/schemas/SyntheticsTestResultRouter" + type: array + type: object + SyntheticsTestResultTurn: + description: A turn in a goal-based browser test, grouping steps and reasoning. + properties: + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + name: + description: Name of the turn. + example: Turn 1 + type: string + reasoning: + description: Agent reasoning produced for this turn. + example: I need to navigate to the chairs section + type: string + status: + description: Status of the turn (for example, `passed`, `failed`). + example: passed + type: string + steps: + description: Steps executed during the turn. + items: + $ref: "#/components/schemas/SyntheticsTestResultTurnStep" + type: array + turn_finished_at: + description: Unix timestamp (ms) of when the turn finished. + example: 1724521438800 + format: int64 + type: integer + turn_started_at: + description: Unix timestamp (ms) of when the turn started. + example: 1724521436800 + format: int64 + type: integer + type: object + SyntheticsTestResultTurnStep: + description: A step executed during a goal-based browser test turn. + properties: + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + config: + additionalProperties: {} + description: Browser step configuration for this turn step. + example: + id: step-1 + name: Click on div "Chairs" + type: click + type: object + type: object + SyntheticsTestResultType: + default: "result" + description: Type of the Synthetic test result resource, `result`. + enum: + - result + example: result + type: string + x-enum-varnames: + - RESULT + SyntheticsTestResultVariable: + description: A variable used or extracted during a test. + properties: + err: + description: Error encountered when evaluating the variable. + example: LOCAL_VARIABLE_UNKNOWN + type: string + error_message: + description: Human-readable error message for variable evaluation. + example: Unknown variable name undefined. + type: string + example: + description: Example value for the variable. + example: lol value + type: string + id: + description: Variable identifier. + example: c896702c-1e34-4e62-a67b-432e8092d062 + type: string + name: + description: Variable name. + example: HEADER_VALUE + type: string + pattern: + description: Pattern used to extract the variable. + example: lol value + type: string + secure: + description: Whether the variable holds a secure value. + example: false + type: boolean + type: + description: Variable type. + example: text + type: string + val: + description: Evaluated value of the variable. + example: value-to-extract + type: string + value: + description: Current value of the variable. + example: lol value + type: string + type: object + SyntheticsTestResultVariables: + description: Variables captured during a test step. + properties: + config: + description: Variables defined in the test configuration. + items: + $ref: "#/components/schemas/SyntheticsTestResultVariable" + type: array + extracted: + description: Variables extracted during the test execution. + items: + $ref: "#/components/schemas/SyntheticsTestResultVariable" + type: array + type: object + SyntheticsTestResultVitalsMetrics: + description: Web vitals metrics captured during a browser test step. + properties: + cls: + description: Cumulative Layout Shift score. + example: 0.0 + format: double + type: number + fcp: + description: First Contentful Paint in milliseconds. + example: 120.3 + format: double + type: number + inp: + description: Interaction to Next Paint in milliseconds. + example: 85.0 + format: double + type: number + lcp: + description: Largest Contentful Paint in milliseconds. + example: 210.5 + format: double + type: number + ttfb: + description: Time To First Byte in milliseconds. + example: 95.2 + format: double + type: number + url: + description: URL that produced the metrics. + example: http://34.95.79.70/prototype + type: string + type: object + SyntheticsTestResultWarning: + description: A warning captured during a browser test step. + properties: + element_bounds: + description: Bounds of elements related to the warning. + items: + $ref: "#/components/schemas/SyntheticsTestResultBounds" + type: array + message: + description: Warning message. + example: Element is not visible in the viewport + type: string + type: + description: Type of the warning. + example: visibility + type: string + type: object + SyntheticsTestResultWebSocketClose: + description: WebSocket close frame information for WebSocket test responses. + properties: + reason: + description: Reason string received in the close frame. + example: Normal closure + type: string + status_code: + description: Status code received in the close frame. + example: 1000 + format: int64 + type: integer + type: object SyntheticsTestVersionActionMetadata: description: Object containing metadata about a change action. properties: @@ -118597,6 +120433,207 @@ paths: permissions: - synthetics_write - synthetics_create_edit_trigger + /api/v2/synthetics/tests/browser/{public_id}/results: + get: + description: Get the latest result summaries for a given Synthetic browser test. + operationId: ListSyntheticsBrowserTestLatestResults + parameters: + - description: The public ID of the Synthetic browser test for which to search results. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Filter results by status. + in: query + name: status + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + - description: Filter results by run type. + in: query + name: runType + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + - description: Device IDs for which to query results. + in: query + name: device_id + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + device: + id: chrome.laptop_large + name: "Chrome - Laptop Large" + type: browser + finished_at: 1679328005200 + location: + id: aws:eu-west-1 + name: "Ireland (AWS)" + run_type: scheduled + started_at: 1679328000000 + status: passed + test_type: browser + test_version: 2 + id: "7291038456723891045" + relationships: + test: + data: + id: xyz-abc-789 + type: test + type: result_summary + schema: + $ref: "#/components/schemas/SyntheticsTestLatestResultsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test's latest results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/browser/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic browser test. + operationId: GetSyntheticsBrowserTestResult + parameters: + - description: The public ID of the Synthetic browser test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + - description: The event ID used to look up the result in the event store. + in: query + name: event_id + required: false + schema: + type: string + - description: Timestamp in seconds to look up the result. + in: query + name: timestamp + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + device: + id: chrome.laptop_large + name: "Chrome - Laptop Large" + type: browser + location: + id: aws:eu-west-1 + name: "Ireland (AWS)" + result: + duration: 5200.0 + finished_at: 1679328005200 + id: "7291038456723891045" + started_at: 1679328000000 + status: passed + test_type: browser + test_version: 2 + id: "7291038456723891045" + relationships: + test: + data: + id: xyz-abc-789 + type: test + type: result + schema: + $ref: "#/components/schemas/SyntheticsTestResultResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read /api/v2/synthetics/tests/bulk-delete: post: operationId: DeleteSyntheticsTests @@ -118654,6 +120691,27 @@ paths: "200": content: application/json: + examples: + default: + value: + data: + attributes: + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + result: + duration: 150.5 + finished_at: 1679328001000 + id: abc12345-1234-1234-1234-abc123456789 + resolved_ip: "1.2.3.4" + run_type: fast + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 1 + id: abc12345-1234-1234-1234-abc123456789 + type: result schema: $ref: "#/components/schemas/SyntheticsFastTestResult" description: OK @@ -118813,6 +120871,77 @@ paths: permissions: - synthetics_write - synthetics_create_edit_trigger + /api/v2/synthetics/tests/poll_results: + get: + description: |- + Poll for test results given a list of result IDs. This is typically used after + triggering tests via CI/CD to retrieve results once they are available. + operationId: PollSyntheticsTestResults + parameters: + - description: A JSON-encoded array of result IDs to poll for. + example: '["id1","id2","id3"]' + in: query + name: result_ids + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + result: + duration: 150.5 + finished_at: 1679328001000 + id: "5158904793181869365" + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: "5158904793181869365" + relationships: + test: + data: + id: abc-def-123 + type: test + type: result + schema: + $ref: "#/components/schemas/SyntheticsPollTestResultsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Poll for test results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read /api/v2/synthetics/tests/{public_id}/files/download: post: description: |- @@ -119082,6 +121211,201 @@ paths: operator: OR permissions: - synthetics_read + /api/v2/synthetics/tests/{public_id}/results: + get: + description: Get the latest result summaries for a given Synthetic test. + operationId: ListSyntheticsTestLatestResults + parameters: + - description: The public ID of the Synthetic test for which to search results. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Filter results by status. + in: query + name: status + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + - description: Filter results by run type. + in: query + name: runType + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + - description: Device IDs for which to query results. + in: query + name: device_id + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + finished_at: 1679328001000 + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + run_type: scheduled + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: "5158904793181869365" + relationships: + test: + data: + id: abc-def-123 + type: test + type: result_summary + schema: + $ref: "#/components/schemas/SyntheticsTestLatestResultsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test's latest results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic test. + operationId: GetSyntheticsTestResult + parameters: + - description: The public ID of the Synthetic test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + - description: The event ID used to look up the result in the event store. + in: query + name: event_id + required: false + schema: + type: string + - description: Timestamp in seconds to look up the result. + in: query + name: timestamp + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + result: + duration: 150.5 + finished_at: 1679328001000 + id: "5158904793181869365" + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: "5158904793181869365" + relationships: + test: + data: + id: abc-def-123 + type: test + type: result + schema: + $ref: "#/components/schemas/SyntheticsTestResultResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read /api/v2/synthetics/tests/{public_id}/version_history: get: description: Get the paginated version history for a Synthetic test. diff --git a/examples/v2/synthetics/GetSyntheticsBrowserTestResult.ts b/examples/v2/synthetics/GetSyntheticsBrowserTestResult.ts new file mode 100644 index 000000000000..f7e61ad3fe41 --- /dev/null +++ b/examples/v2/synthetics/GetSyntheticsBrowserTestResult.ts @@ -0,0 +1,22 @@ +/** + * Get a browser test result returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +const apiInstance = new v2.SyntheticsApi(configuration); + +const params: v2.SyntheticsApiGetSyntheticsBrowserTestResultRequest = { + publicId: "public_id", + resultId: "result_id", +}; + +apiInstance + .getSyntheticsBrowserTestResult(params) + .then((data: v2.SyntheticsTestResultResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/synthetics/GetSyntheticsTestResult.ts b/examples/v2/synthetics/GetSyntheticsTestResult.ts new file mode 100644 index 000000000000..9e9f1e3d58b8 --- /dev/null +++ b/examples/v2/synthetics/GetSyntheticsTestResult.ts @@ -0,0 +1,22 @@ +/** + * Get a test result returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +const apiInstance = new v2.SyntheticsApi(configuration); + +const params: v2.SyntheticsApiGetSyntheticsTestResultRequest = { + publicId: "public_id", + resultId: "result_id", +}; + +apiInstance + .getSyntheticsTestResult(params) + .then((data: v2.SyntheticsTestResultResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/synthetics/ListSyntheticsBrowserTestLatestResults.ts b/examples/v2/synthetics/ListSyntheticsBrowserTestLatestResults.ts new file mode 100644 index 000000000000..548e2af3cd7e --- /dev/null +++ b/examples/v2/synthetics/ListSyntheticsBrowserTestLatestResults.ts @@ -0,0 +1,21 @@ +/** + * Get a browser test's latest results returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +const apiInstance = new v2.SyntheticsApi(configuration); + +const params: v2.SyntheticsApiListSyntheticsBrowserTestLatestResultsRequest = { + publicId: "public_id", +}; + +apiInstance + .listSyntheticsBrowserTestLatestResults(params) + .then((data: v2.SyntheticsTestLatestResultsResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/synthetics/ListSyntheticsTestLatestResults.ts b/examples/v2/synthetics/ListSyntheticsTestLatestResults.ts new file mode 100644 index 000000000000..159cdaf90698 --- /dev/null +++ b/examples/v2/synthetics/ListSyntheticsTestLatestResults.ts @@ -0,0 +1,21 @@ +/** + * Get a test's latest results returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +const apiInstance = new v2.SyntheticsApi(configuration); + +const params: v2.SyntheticsApiListSyntheticsTestLatestResultsRequest = { + publicId: "public_id", +}; + +apiInstance + .listSyntheticsTestLatestResults(params) + .then((data: v2.SyntheticsTestLatestResultsResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/synthetics/PollSyntheticsTestResults.ts b/examples/v2/synthetics/PollSyntheticsTestResults.ts new file mode 100644 index 000000000000..1c3e3cd599f7 --- /dev/null +++ b/examples/v2/synthetics/PollSyntheticsTestResults.ts @@ -0,0 +1,21 @@ +/** + * Poll for test results returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +const apiInstance = new v2.SyntheticsApi(configuration); + +const params: v2.SyntheticsApiPollSyntheticsTestResultsRequest = { + resultIds: "result_ids", +}; + +apiInstance + .pollSyntheticsTestResults(params) + .then((data: v2.SyntheticsPollTestResultsResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/features/support/scenarios_model_mapping.ts b/features/support/scenarios_model_mapping.ts index 334f9b43a139..98ed92aadf13 100644 --- a/features/support/scenarios_model_mapping.ts +++ b/features/support/scenarios_model_mapping.ts @@ -12074,6 +12074,56 @@ export const ScenariosModelMappings: {[key: string]: {[key: string]: any}} = { }, "operationResponseType": "SyntheticsSuiteResponse", }, + "v2.ListSyntheticsBrowserTestLatestResults": { + "publicId": { + "type": "string", + "format": "", + }, + "fromTs": { + "type": "number", + "format": "int64", + }, + "toTs": { + "type": "number", + "format": "int64", + }, + "status": { + "type": "SyntheticsTestResultStatus", + "format": "", + }, + "runType": { + "type": "SyntheticsTestResultRunType", + "format": "", + }, + "probeDc": { + "type": "Array", + "format": "", + }, + "deviceId": { + "type": "Array", + "format": "", + }, + "operationResponseType": "SyntheticsTestLatestResultsResponse", + }, + "v2.GetSyntheticsBrowserTestResult": { + "publicId": { + "type": "string", + "format": "", + }, + "resultId": { + "type": "string", + "format": "", + }, + "eventId": { + "type": "string", + "format": "", + }, + "timestamp": { + "type": "number", + "format": "int64", + }, + "operationResponseType": "SyntheticsTestResultResponse", + }, "v2.DeleteSyntheticsTests": { "body": { "type": "DeletedTestsRequestDeleteRequest", @@ -12113,6 +12163,13 @@ export const ScenariosModelMappings: {[key: string]: {[key: string]: any}} = { }, "operationResponseType": "SyntheticsNetworkTestResponse", }, + "v2.PollSyntheticsTestResults": { + "resultIds": { + "type": "string", + "format": "", + }, + "operationResponseType": "SyntheticsPollTestResultsResponse", + }, "v2.GetTestFileDownloadUrl": { "publicId": { "type": "string", @@ -12164,6 +12221,56 @@ export const ScenariosModelMappings: {[key: string]: {[key: string]: any}} = { }, "operationResponseType": "SyntheticsTestParentSuitesResponse", }, + "v2.ListSyntheticsTestLatestResults": { + "publicId": { + "type": "string", + "format": "", + }, + "fromTs": { + "type": "number", + "format": "int64", + }, + "toTs": { + "type": "number", + "format": "int64", + }, + "status": { + "type": "SyntheticsTestResultStatus", + "format": "", + }, + "runType": { + "type": "SyntheticsTestResultRunType", + "format": "", + }, + "probeDc": { + "type": "Array", + "format": "", + }, + "deviceId": { + "type": "Array", + "format": "", + }, + "operationResponseType": "SyntheticsTestLatestResultsResponse", + }, + "v2.GetSyntheticsTestResult": { + "publicId": { + "type": "string", + "format": "", + }, + "resultId": { + "type": "string", + "format": "", + }, + "eventId": { + "type": "string", + "format": "", + }, + "timestamp": { + "type": "number", + "format": "int64", + }, + "operationResponseType": "SyntheticsTestResultResponse", + }, "v2.ListSyntheticsTestVersions": { "publicId": { "type": "string", diff --git a/features/v2/synthetics.feature b/features/v2/synthetics.feature index 22e61a439cd2..0b1e2f44e86d 100644 --- a/features/v2/synthetics.feature +++ b/features/v2/synthetics.feature @@ -151,6 +151,36 @@ Feature: Synthetics When the request is sent Then the response status is 200 OK + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a browser test result returns "API error response." response + Given new "GetSyntheticsBrowserTestResult" request + And request contains "public_id" parameter from "REPLACE.ME" + And request contains "result_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 API error response. + + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a browser test result returns "OK" response + Given new "GetSyntheticsBrowserTestResult" request + And request contains "public_id" parameter from "REPLACE.ME" + And request contains "result_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a browser test's latest results returns "API error response." response + Given new "ListSyntheticsBrowserTestLatestResults" request + And request contains "public_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 API error response. + + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a browser test's latest results returns "OK" response + Given new "ListSyntheticsBrowserTestLatestResults" request + And request contains "public_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + @generated @skip @team:DataDog/synthetics-orchestrating-managing Scenario: Get a fast test result returns "API error response." response Given new "GetSyntheticsFastTestResult" request @@ -211,6 +241,36 @@ Feature: Synthetics When the request is sent Then the response status is 200 OK + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a test result returns "API error response." response + Given new "GetSyntheticsTestResult" request + And request contains "public_id" parameter from "REPLACE.ME" + And request contains "result_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 API error response. + + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a test result returns "OK" response + Given new "GetSyntheticsTestResult" request + And request contains "public_id" parameter from "REPLACE.ME" + And request contains "result_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a test's latest results returns "API error response." response + Given new "ListSyntheticsTestLatestResults" request + And request contains "public_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 API error response. + + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Get a test's latest results returns "OK" response + Given new "ListSyntheticsTestLatestResults" request + And request contains "public_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + @generated @skip @team:DataDog/synthetics-orchestrating-managing Scenario: Get available subtests for a multistep test returns "OK" response Given new "GetApiMultistepSubtests" request @@ -322,6 +382,20 @@ Feature: Synthetics When the request is sent Then the response status is 200 OK + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Poll for test results returns "API error response." response + Given new "PollSyntheticsTestResults" request + And request contains "result_ids" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 API error response. + + @generated @skip @team:DataDog/synthetics-orchestrating-managing + Scenario: Poll for test results returns "OK" response + Given new "PollSyntheticsTestResults" request + And request contains "result_ids" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + @team:DataDog/synthetics-orchestrating-managing Scenario: Save new value for on-demand concurrency cap returns "OK" response Given new "SetOnDemandConcurrencyCap" request diff --git a/features/v2/undo.json b/features/v2/undo.json index bbfa27e028c6..dcc0fd5916b0 100644 --- a/features/v2/undo.json +++ b/features/v2/undo.json @@ -6404,6 +6404,18 @@ "type": "idempotent" } }, + "ListSyntheticsBrowserTestLatestResults": { + "tag": "Synthetics", + "undo": { + "type": "safe" + } + }, + "GetSyntheticsBrowserTestResult": { + "tag": "Synthetics", + "undo": { + "type": "safe" + } + }, "DeleteSyntheticsTests": { "tag": "Synthetics", "undo": { @@ -6441,6 +6453,12 @@ "type": "idempotent" } }, + "PollSyntheticsTestResults": { + "tag": "Synthetics", + "undo": { + "type": "safe" + } + }, "GetTestFileDownloadUrl": { "tag": "Synthetics", "undo": { @@ -6471,6 +6489,18 @@ "type": "safe" } }, + "ListSyntheticsTestLatestResults": { + "tag": "Synthetics", + "undo": { + "type": "safe" + } + }, + "GetSyntheticsTestResult": { + "tag": "Synthetics", + "undo": { + "type": "safe" + } + }, "ListSyntheticsTestVersions": { "tag": "Synthetics", "undo": { diff --git a/packages/datadog-api-client-v2/apis/SyntheticsApi.ts b/packages/datadog-api-client-v2/apis/SyntheticsApi.ts index 19638a7c5693..ea785ffd8add 100644 --- a/packages/datadog-api-client-v2/apis/SyntheticsApi.ts +++ b/packages/datadog-api-client-v2/apis/SyntheticsApi.ts @@ -32,6 +32,7 @@ import { SyntheticsApiMultistepSubtestsResponse } from "../models/SyntheticsApiM import { SyntheticsFastTestResult } from "../models/SyntheticsFastTestResult"; import { SyntheticsNetworkTestEditRequest } from "../models/SyntheticsNetworkTestEditRequest"; import { SyntheticsNetworkTestResponse } from "../models/SyntheticsNetworkTestResponse"; +import { SyntheticsPollTestResultsResponse } from "../models/SyntheticsPollTestResultsResponse"; import { SyntheticsSuiteResponse } from "../models/SyntheticsSuiteResponse"; import { SyntheticsSuiteSearchResponse } from "../models/SyntheticsSuiteSearchResponse"; import { SyntheticsTestFileAbortMultipartUploadRequest } from "../models/SyntheticsTestFileAbortMultipartUploadRequest"; @@ -40,7 +41,11 @@ import { SyntheticsTestFileDownloadRequest } from "../models/SyntheticsTestFileD import { SyntheticsTestFileDownloadResponse } from "../models/SyntheticsTestFileDownloadResponse"; import { SyntheticsTestFileMultipartPresignedUrlsRequest } from "../models/SyntheticsTestFileMultipartPresignedUrlsRequest"; import { SyntheticsTestFileMultipartPresignedUrlsResponse } from "../models/SyntheticsTestFileMultipartPresignedUrlsResponse"; +import { SyntheticsTestLatestResultsResponse } from "../models/SyntheticsTestLatestResultsResponse"; import { SyntheticsTestParentSuitesResponse } from "../models/SyntheticsTestParentSuitesResponse"; +import { SyntheticsTestResultResponse } from "../models/SyntheticsTestResultResponse"; +import { SyntheticsTestResultRunType } from "../models/SyntheticsTestResultRunType"; +import { SyntheticsTestResultStatus } from "../models/SyntheticsTestResultStatus"; import { SyntheticsTestVersionHistoryResponse } from "../models/SyntheticsTestVersionHistoryResponse"; import { SyntheticsTestVersionResponse } from "../models/SyntheticsTestVersionResponse"; @@ -471,6 +476,64 @@ export class SyntheticsApiRequestFactory extends BaseAPIRequestFactory { return requestContext; } + public async getSyntheticsBrowserTestResult( + publicId: string, + resultId: string, + eventId?: string, + timestamp?: number, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + // verify required parameter 'publicId' is not null or undefined + if (publicId === null || publicId === undefined) { + throw new RequiredError("publicId", "getSyntheticsBrowserTestResult"); + } + + // verify required parameter 'resultId' is not null or undefined + if (resultId === null || resultId === undefined) { + throw new RequiredError("resultId", "getSyntheticsBrowserTestResult"); + } + + // Path Params + const localVarPath = + "/api/v2/synthetics/tests/browser/{public_id}/results/{result_id}" + .replace("{public_id}", encodeURIComponent(String(publicId))) + .replace("{result_id}", encodeURIComponent(String(resultId))); + + // Make Request Context + const requestContext = _config + .getServer("v2.SyntheticsApi.getSyntheticsBrowserTestResult") + .makeRequestContext(localVarPath, HttpMethod.GET); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Query Params + if (eventId !== undefined) { + requestContext.setQueryParam( + "event_id", + ObjectSerializer.serialize(eventId, "string", ""), + "" + ); + } + if (timestamp !== undefined) { + requestContext.setQueryParam( + "timestamp", + ObjectSerializer.serialize(timestamp, "number", "int64"), + "" + ); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + "AuthZ", + ]); + + return requestContext; + } + public async getSyntheticsFastTestResult( id: string, _options?: Configuration @@ -573,6 +636,64 @@ export class SyntheticsApiRequestFactory extends BaseAPIRequestFactory { return requestContext; } + public async getSyntheticsTestResult( + publicId: string, + resultId: string, + eventId?: string, + timestamp?: number, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + // verify required parameter 'publicId' is not null or undefined + if (publicId === null || publicId === undefined) { + throw new RequiredError("publicId", "getSyntheticsTestResult"); + } + + // verify required parameter 'resultId' is not null or undefined + if (resultId === null || resultId === undefined) { + throw new RequiredError("resultId", "getSyntheticsTestResult"); + } + + // Path Params + const localVarPath = + "/api/v2/synthetics/tests/{public_id}/results/{result_id}" + .replace("{public_id}", encodeURIComponent(String(publicId))) + .replace("{result_id}", encodeURIComponent(String(resultId))); + + // Make Request Context + const requestContext = _config + .getServer("v2.SyntheticsApi.getSyntheticsTestResult") + .makeRequestContext(localVarPath, HttpMethod.GET); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Query Params + if (eventId !== undefined) { + requestContext.setQueryParam( + "event_id", + ObjectSerializer.serialize(eventId, "string", ""), + "" + ); + } + if (timestamp !== undefined) { + requestContext.setQueryParam( + "timestamp", + ObjectSerializer.serialize(timestamp, "number", "int64"), + "" + ); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + "AuthZ", + ]); + + return requestContext; + } + public async getSyntheticsTestVersion( publicId: string, versionNumber: number, @@ -774,6 +895,178 @@ export class SyntheticsApiRequestFactory extends BaseAPIRequestFactory { return requestContext; } + public async listSyntheticsBrowserTestLatestResults( + publicId: string, + fromTs?: number, + toTs?: number, + status?: SyntheticsTestResultStatus, + runType?: SyntheticsTestResultRunType, + probeDc?: Array, + deviceId?: Array, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + // verify required parameter 'publicId' is not null or undefined + if (publicId === null || publicId === undefined) { + throw new RequiredError( + "publicId", + "listSyntheticsBrowserTestLatestResults" + ); + } + + // Path Params + const localVarPath = + "/api/v2/synthetics/tests/browser/{public_id}/results".replace( + "{public_id}", + encodeURIComponent(String(publicId)) + ); + + // Make Request Context + const requestContext = _config + .getServer("v2.SyntheticsApi.listSyntheticsBrowserTestLatestResults") + .makeRequestContext(localVarPath, HttpMethod.GET); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Query Params + if (fromTs !== undefined) { + requestContext.setQueryParam( + "from_ts", + ObjectSerializer.serialize(fromTs, "number", "int64"), + "" + ); + } + if (toTs !== undefined) { + requestContext.setQueryParam( + "to_ts", + ObjectSerializer.serialize(toTs, "number", "int64"), + "" + ); + } + if (status !== undefined) { + requestContext.setQueryParam( + "status", + ObjectSerializer.serialize(status, "SyntheticsTestResultStatus", ""), + "" + ); + } + if (runType !== undefined) { + requestContext.setQueryParam( + "runType", + ObjectSerializer.serialize(runType, "SyntheticsTestResultRunType", ""), + "" + ); + } + if (probeDc !== undefined) { + requestContext.setQueryParam( + "probe_dc", + ObjectSerializer.serialize(probeDc, "Array", ""), + "multi" + ); + } + if (deviceId !== undefined) { + requestContext.setQueryParam( + "device_id", + ObjectSerializer.serialize(deviceId, "Array", ""), + "multi" + ); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + "AuthZ", + ]); + + return requestContext; + } + + public async listSyntheticsTestLatestResults( + publicId: string, + fromTs?: number, + toTs?: number, + status?: SyntheticsTestResultStatus, + runType?: SyntheticsTestResultRunType, + probeDc?: Array, + deviceId?: Array, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + // verify required parameter 'publicId' is not null or undefined + if (publicId === null || publicId === undefined) { + throw new RequiredError("publicId", "listSyntheticsTestLatestResults"); + } + + // Path Params + const localVarPath = "/api/v2/synthetics/tests/{public_id}/results".replace( + "{public_id}", + encodeURIComponent(String(publicId)) + ); + + // Make Request Context + const requestContext = _config + .getServer("v2.SyntheticsApi.listSyntheticsTestLatestResults") + .makeRequestContext(localVarPath, HttpMethod.GET); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Query Params + if (fromTs !== undefined) { + requestContext.setQueryParam( + "from_ts", + ObjectSerializer.serialize(fromTs, "number", "int64"), + "" + ); + } + if (toTs !== undefined) { + requestContext.setQueryParam( + "to_ts", + ObjectSerializer.serialize(toTs, "number", "int64"), + "" + ); + } + if (status !== undefined) { + requestContext.setQueryParam( + "status", + ObjectSerializer.serialize(status, "SyntheticsTestResultStatus", ""), + "" + ); + } + if (runType !== undefined) { + requestContext.setQueryParam( + "runType", + ObjectSerializer.serialize(runType, "SyntheticsTestResultRunType", ""), + "" + ); + } + if (probeDc !== undefined) { + requestContext.setQueryParam( + "probe_dc", + ObjectSerializer.serialize(probeDc, "Array", ""), + "multi" + ); + } + if (deviceId !== undefined) { + requestContext.setQueryParam( + "device_id", + ObjectSerializer.serialize(deviceId, "Array", ""), + "multi" + ); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + "AuthZ", + ]); + + return requestContext; + } + public async listSyntheticsTestVersions( publicId: string, lastVersionNumber?: number, @@ -930,6 +1223,46 @@ export class SyntheticsApiRequestFactory extends BaseAPIRequestFactory { return requestContext; } + public async pollSyntheticsTestResults( + resultIds: string, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + // verify required parameter 'resultIds' is not null or undefined + if (resultIds === null || resultIds === undefined) { + throw new RequiredError("resultIds", "pollSyntheticsTestResults"); + } + + // Path Params + const localVarPath = "/api/v2/synthetics/tests/poll_results"; + + // Make Request Context + const requestContext = _config + .getServer("v2.SyntheticsApi.pollSyntheticsTestResults") + .makeRequestContext(localVarPath, HttpMethod.GET); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Query Params + if (resultIds !== undefined) { + requestContext.setQueryParam( + "result_ids", + ObjectSerializer.serialize(resultIds, "string", ""), + "" + ); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + "AuthZ", + ]); + + return requestContext; + } + public async searchSuites( query?: string, sort?: string, @@ -1676,20 +2009,20 @@ export class SyntheticsApiResponseProcessor { * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * - * @params response Response returned by the server for a request to getSyntheticsFastTestResult + * @params response Response returned by the server for a request to getSyntheticsBrowserTestResult * @throws ApiException if the response code was not in [200, 299] */ - public async getSyntheticsFastTestResult( + public async getSyntheticsBrowserTestResult( response: ResponseContext - ): Promise { + ): Promise { const contentType = ObjectSerializer.normalizeMediaType( response.headers["content-type"] ); if (response.httpStatusCode === 200) { - const body: SyntheticsFastTestResult = ObjectSerializer.deserialize( + const body: SyntheticsTestResultResponse = ObjectSerializer.deserialize( ObjectSerializer.parse(await response.body.text(), contentType), - "SyntheticsFastTestResult" - ) as SyntheticsFastTestResult; + "SyntheticsTestResultResponse" + ) as SyntheticsTestResultResponse; return body; } if ( @@ -1719,11 +2052,11 @@ export class SyntheticsApiResponseProcessor { // Work around for missing responses in specification, e.g. for petstore.yaml if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { - const body: SyntheticsFastTestResult = ObjectSerializer.deserialize( + const body: SyntheticsTestResultResponse = ObjectSerializer.deserialize( ObjectSerializer.parse(await response.body.text(), contentType), - "SyntheticsFastTestResult", + "SyntheticsTestResultResponse", "" - ) as SyntheticsFastTestResult; + ) as SyntheticsTestResultResponse; return body; } @@ -1738,20 +2071,20 @@ export class SyntheticsApiResponseProcessor { * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * - * @params response Response returned by the server for a request to getSyntheticsNetworkTest + * @params response Response returned by the server for a request to getSyntheticsFastTestResult * @throws ApiException if the response code was not in [200, 299] */ - public async getSyntheticsNetworkTest( + public async getSyntheticsFastTestResult( response: ResponseContext - ): Promise { + ): Promise { const contentType = ObjectSerializer.normalizeMediaType( response.headers["content-type"] ); if (response.httpStatusCode === 200) { - const body: SyntheticsNetworkTestResponse = ObjectSerializer.deserialize( + const body: SyntheticsFastTestResult = ObjectSerializer.deserialize( ObjectSerializer.parse(await response.body.text(), contentType), - "SyntheticsNetworkTestResponse" - ) as SyntheticsNetworkTestResponse; + "SyntheticsFastTestResult" + ) as SyntheticsFastTestResult; return body; } if ( @@ -1781,11 +2114,11 @@ export class SyntheticsApiResponseProcessor { // Work around for missing responses in specification, e.g. for petstore.yaml if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { - const body: SyntheticsNetworkTestResponse = ObjectSerializer.deserialize( + const body: SyntheticsFastTestResult = ObjectSerializer.deserialize( ObjectSerializer.parse(await response.body.text(), contentType), - "SyntheticsNetworkTestResponse", + "SyntheticsFastTestResult", "" - ) as SyntheticsNetworkTestResponse; + ) as SyntheticsFastTestResult; return body; } @@ -1800,17 +2133,79 @@ export class SyntheticsApiResponseProcessor { * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * - * @params response Response returned by the server for a request to getSyntheticsSuite + * @params response Response returned by the server for a request to getSyntheticsNetworkTest * @throws ApiException if the response code was not in [200, 299] */ - public async getSyntheticsSuite( + public async getSyntheticsNetworkTest( response: ResponseContext - ): Promise { + ): Promise { const contentType = ObjectSerializer.normalizeMediaType( response.headers["content-type"] ); if (response.httpStatusCode === 200) { - const body: SyntheticsSuiteResponse = ObjectSerializer.deserialize( + const body: SyntheticsNetworkTestResponse = ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsNetworkTestResponse" + ) as SyntheticsNetworkTestResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: SyntheticsNetworkTestResponse = ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsNetworkTestResponse", + "" + ) as SyntheticsNetworkTestResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to getSyntheticsSuite + * @throws ApiException if the response code was not in [200, 299] + */ + public async getSyntheticsSuite( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: SyntheticsSuiteResponse = ObjectSerializer.deserialize( ObjectSerializer.parse(await response.body.text(), contentType), "SyntheticsSuiteResponse" ) as SyntheticsSuiteResponse; @@ -1854,6 +2249,68 @@ export class SyntheticsApiResponseProcessor { ); } + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to getSyntheticsTestResult + * @throws ApiException if the response code was not in [200, 299] + */ + public async getSyntheticsTestResult( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: SyntheticsTestResultResponse = ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsTestResultResponse" + ) as SyntheticsTestResultResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: SyntheticsTestResultResponse = ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsTestResultResponse", + "" + ) as SyntheticsTestResultResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects @@ -2102,6 +2559,134 @@ export class SyntheticsApiResponseProcessor { ); } + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to listSyntheticsBrowserTestLatestResults + * @throws ApiException if the response code was not in [200, 299] + */ + public async listSyntheticsBrowserTestLatestResults( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: SyntheticsTestLatestResultsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsTestLatestResultsResponse" + ) as SyntheticsTestLatestResultsResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: SyntheticsTestLatestResultsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsTestLatestResultsResponse", + "" + ) as SyntheticsTestLatestResultsResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to listSyntheticsTestLatestResults + * @throws ApiException if the response code was not in [200, 299] + */ + public async listSyntheticsTestLatestResults( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: SyntheticsTestLatestResultsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsTestLatestResultsResponse" + ) as SyntheticsTestLatestResultsResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: SyntheticsTestLatestResultsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsTestLatestResultsResponse", + "" + ) as SyntheticsTestLatestResultsResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects @@ -2286,6 +2871,70 @@ export class SyntheticsApiResponseProcessor { ); } + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to pollSyntheticsTestResults + * @throws ApiException if the response code was not in [200, 299] + */ + public async pollSyntheticsTestResults( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: SyntheticsPollTestResultsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsPollTestResultsResponse" + ) as SyntheticsPollTestResultsResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: SyntheticsPollTestResultsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "SyntheticsPollTestResultsResponse", + "" + ) as SyntheticsPollTestResultsResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects @@ -2546,6 +3195,29 @@ export interface SyntheticsApiGetApiMultistepSubtestsRequest { publicId: string; } +export interface SyntheticsApiGetSyntheticsBrowserTestResultRequest { + /** + * The public ID of the Synthetic browser test to which the target result belongs. + * @type string + */ + publicId: string; + /** + * The ID of the result to get. + * @type string + */ + resultId: string; + /** + * The event ID used to look up the result in the event store. + * @type string + */ + eventId?: string; + /** + * Timestamp in seconds to look up the result. + * @type number + */ + timestamp?: number; +} + export interface SyntheticsApiGetSyntheticsFastTestResultRequest { /** * The UUID of the fast test to retrieve the result for. @@ -2570,6 +3242,29 @@ export interface SyntheticsApiGetSyntheticsSuiteRequest { publicId: string; } +export interface SyntheticsApiGetSyntheticsTestResultRequest { + /** + * The public ID of the Synthetic test to which the target result belongs. + * @type string + */ + publicId: string; + /** + * The ID of the result to get. + * @type string + */ + resultId: string; + /** + * The event ID used to look up the result in the event store. + * @type string + */ + eventId?: string; + /** + * Timestamp in seconds to look up the result. + * @type number + */ + timestamp?: number; +} + export interface SyntheticsApiGetSyntheticsTestVersionRequest { /** * The public ID of the Synthetic test. @@ -2626,6 +3321,82 @@ export interface SyntheticsApiGetTestParentSuitesRequest { publicId: string; } +export interface SyntheticsApiListSyntheticsBrowserTestLatestResultsRequest { + /** + * The public ID of the Synthetic browser test for which to search results. + * @type string + */ + publicId: string; + /** + * Timestamp in milliseconds from which to start querying results. + * @type number + */ + fromTs?: number; + /** + * Timestamp in milliseconds up to which to query results. + * @type number + */ + toTs?: number; + /** + * Filter results by status. + * @type SyntheticsTestResultStatus + */ + status?: SyntheticsTestResultStatus; + /** + * Filter results by run type. + * @type SyntheticsTestResultRunType + */ + runType?: SyntheticsTestResultRunType; + /** + * Locations for which to query results. + * @type Array + */ + probeDc?: Array; + /** + * Device IDs for which to query results. + * @type Array + */ + deviceId?: Array; +} + +export interface SyntheticsApiListSyntheticsTestLatestResultsRequest { + /** + * The public ID of the Synthetic test for which to search results. + * @type string + */ + publicId: string; + /** + * Timestamp in milliseconds from which to start querying results. + * @type number + */ + fromTs?: number; + /** + * Timestamp in milliseconds up to which to query results. + * @type number + */ + toTs?: number; + /** + * Filter results by status. + * @type SyntheticsTestResultStatus + */ + status?: SyntheticsTestResultStatus; + /** + * Filter results by run type. + * @type SyntheticsTestResultRunType + */ + runType?: SyntheticsTestResultRunType; + /** + * Locations for which to query results. + * @type Array + */ + probeDc?: Array; + /** + * Device IDs for which to query results. + * @type Array + */ + deviceId?: Array; +} + export interface SyntheticsApiListSyntheticsTestVersionsRequest { /** * The public ID of the Synthetic test. @@ -2670,6 +3441,14 @@ export interface SyntheticsApiPatchTestSuiteRequest { body: SuiteJsonPatchRequest; } +export interface SyntheticsApiPollSyntheticsTestResultsRequest { + /** + * A JSON-encoded array of result IDs to poll for. + * @type string + */ + resultIds: string; +} + export interface SyntheticsApiSearchSuitesRequest { /** * The search query. @@ -2958,6 +3737,33 @@ export class SyntheticsApi { }); } + /** + * Get a specific full result from a given Synthetic browser test. + * @param param The request object + */ + public getSyntheticsBrowserTestResult( + param: SyntheticsApiGetSyntheticsBrowserTestResultRequest, + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.getSyntheticsBrowserTestResult( + param.publicId, + param.resultId, + param.eventId, + param.timestamp, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.getSyntheticsBrowserTestResult( + responseContext + ); + }); + }); + } + /** * @param param The request object */ @@ -3020,6 +3826,32 @@ export class SyntheticsApi { }); } + /** + * Get a specific full result from a given Synthetic test. + * @param param The request object + */ + public getSyntheticsTestResult( + param: SyntheticsApiGetSyntheticsTestResultRequest, + options?: Configuration + ): Promise { + const requestContextPromise = this.requestFactory.getSyntheticsTestResult( + param.publicId, + param.resultId, + param.eventId, + param.timestamp, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.getSyntheticsTestResult( + responseContext + ); + }); + }); + } + /** * Get a specific version of a Synthetic test by its version number. * @param param The request object @@ -3116,6 +3948,66 @@ export class SyntheticsApi { }); } + /** + * Get the latest result summaries for a given Synthetic browser test. + * @param param The request object + */ + public listSyntheticsBrowserTestLatestResults( + param: SyntheticsApiListSyntheticsBrowserTestLatestResultsRequest, + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.listSyntheticsBrowserTestLatestResults( + param.publicId, + param.fromTs, + param.toTs, + param.status, + param.runType, + param.probeDc, + param.deviceId, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.listSyntheticsBrowserTestLatestResults( + responseContext + ); + }); + }); + } + + /** + * Get the latest result summaries for a given Synthetic test. + * @param param The request object + */ + public listSyntheticsTestLatestResults( + param: SyntheticsApiListSyntheticsTestLatestResultsRequest, + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.listSyntheticsTestLatestResults( + param.publicId, + param.fromTs, + param.toTs, + param.status, + param.runType, + param.probeDc, + param.deviceId, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.listSyntheticsTestLatestResults( + responseContext + ); + }); + }); + } + /** * Get the paginated version history for a Synthetic test. * @param param The request object @@ -3199,6 +4091,30 @@ export class SyntheticsApi { }); } + /** + * Poll for test results given a list of result IDs. This is typically used after + * triggering tests via CI/CD to retrieve results once they are available. + * @param param The request object + */ + public pollSyntheticsTestResults( + param: SyntheticsApiPollSyntheticsTestResultsRequest, + options?: Configuration + ): Promise { + const requestContextPromise = this.requestFactory.pollSyntheticsTestResults( + param.resultIds, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.pollSyntheticsTestResults( + responseContext + ); + }); + }); + } + /** * Search for test suites. * @param param The request object diff --git a/packages/datadog-api-client-v2/index.ts b/packages/datadog-api-client-v2/index.ts index b1008408234c..6b7584d3b1ad 100644 --- a/packages/datadog-api-client-v2/index.ts +++ b/packages/datadog-api-client-v2/index.ts @@ -1232,16 +1232,21 @@ export { SyntheticsApiEditSyntheticsSuiteRequest, SyntheticsApiGetApiMultistepSubtestParentsRequest, SyntheticsApiGetApiMultistepSubtestsRequest, + SyntheticsApiGetSyntheticsBrowserTestResultRequest, SyntheticsApiGetSyntheticsFastTestResultRequest, SyntheticsApiGetSyntheticsNetworkTestRequest, SyntheticsApiGetSyntheticsSuiteRequest, + SyntheticsApiGetSyntheticsTestResultRequest, SyntheticsApiGetSyntheticsTestVersionRequest, SyntheticsApiGetTestFileDownloadUrlRequest, SyntheticsApiGetTestFileMultipartPresignedUrlsRequest, SyntheticsApiGetTestParentSuitesRequest, + SyntheticsApiListSyntheticsBrowserTestLatestResultsRequest, + SyntheticsApiListSyntheticsTestLatestResultsRequest, SyntheticsApiListSyntheticsTestVersionsRequest, SyntheticsApiPatchGlobalVariableRequest, SyntheticsApiPatchTestSuiteRequest, + SyntheticsApiPollSyntheticsTestResultsRequest, SyntheticsApiSearchSuitesRequest, SyntheticsApiSetOnDemandConcurrencyCapRequest, SyntheticsApiUpdateSyntheticsNetworkTestRequest, @@ -5840,10 +5845,6 @@ export { SyntheticsFastTestResult } from "./models/SyntheticsFastTestResult"; export { SyntheticsFastTestResultAttributes } from "./models/SyntheticsFastTestResultAttributes"; export { SyntheticsFastTestResultData } from "./models/SyntheticsFastTestResultData"; export { SyntheticsFastTestResultDetail } from "./models/SyntheticsFastTestResultDetail"; -export { SyntheticsFastTestResultDevice } from "./models/SyntheticsFastTestResultDevice"; -export { SyntheticsFastTestResultFailure } from "./models/SyntheticsFastTestResultFailure"; -export { SyntheticsFastTestResultLocation } from "./models/SyntheticsFastTestResultLocation"; -export { SyntheticsFastTestResultType } from "./models/SyntheticsFastTestResultType"; export { SyntheticsFastTestSubType } from "./models/SyntheticsFastTestSubType"; export { SyntheticsGlobalVariable } from "./models/SyntheticsGlobalVariable"; export { SyntheticsGlobalVariableAttributes } from "./models/SyntheticsGlobalVariableAttributes"; @@ -5875,6 +5876,7 @@ export { SyntheticsNetworkTestResponseData } from "./models/SyntheticsNetworkTes export { SyntheticsNetworkTestResponseType } from "./models/SyntheticsNetworkTestResponseType"; export { SyntheticsNetworkTestSubType } from "./models/SyntheticsNetworkTestSubType"; export { SyntheticsNetworkTestType } from "./models/SyntheticsNetworkTestType"; +export { SyntheticsPollTestResultsResponse } from "./models/SyntheticsPollTestResultsResponse"; export { SyntheticsSuite } from "./models/SyntheticsSuite"; export { SyntheticsSuiteOptions } from "./models/SyntheticsSuiteOptions"; export { SyntheticsSuiteResponse } from "./models/SyntheticsSuiteResponse"; @@ -5896,6 +5898,7 @@ export { SyntheticsTestFileMultipartPresignedUrlsPart } from "./models/Synthetic export { SyntheticsTestFileMultipartPresignedUrlsRequest } from "./models/SyntheticsTestFileMultipartPresignedUrlsRequest"; export { SyntheticsTestFileMultipartPresignedUrlsRequestBucketKeyPrefix } from "./models/SyntheticsTestFileMultipartPresignedUrlsRequestBucketKeyPrefix"; export { SyntheticsTestFileMultipartPresignedUrlsResponse } from "./models/SyntheticsTestFileMultipartPresignedUrlsResponse"; +export { SyntheticsTestLatestResultsResponse } from "./models/SyntheticsTestLatestResultsResponse"; export { SyntheticsTestOptions } from "./models/SyntheticsTestOptions"; export { SyntheticsTestOptionsMonitorOptions } from "./models/SyntheticsTestOptionsMonitorOptions"; export { SyntheticsTestOptionsMonitorOptionsNotificationPresetName } from "./models/SyntheticsTestOptionsMonitorOptionsNotificationPresetName"; @@ -5907,6 +5910,82 @@ export { SyntheticsTestParentSuiteData } from "./models/SyntheticsTestParentSuit export { SyntheticsTestParentSuitesResponse } from "./models/SyntheticsTestParentSuitesResponse"; export { SyntheticsTestParentSuiteType } from "./models/SyntheticsTestParentSuiteType"; export { SyntheticsTestPauseStatus } from "./models/SyntheticsTestPauseStatus"; +export { SyntheticsTestResultAssertionResult } from "./models/SyntheticsTestResultAssertionResult"; +export { SyntheticsTestResultAttributes } from "./models/SyntheticsTestResultAttributes"; +export { SyntheticsTestResultBatch } from "./models/SyntheticsTestResultBatch"; +export { SyntheticsTestResultBounds } from "./models/SyntheticsTestResultBounds"; +export { SyntheticsTestResultBrowserError } from "./models/SyntheticsTestResultBrowserError"; +export { SyntheticsTestResultBucketKeys } from "./models/SyntheticsTestResultBucketKeys"; +export { SyntheticsTestResultCdnCacheStatus } from "./models/SyntheticsTestResultCdnCacheStatus"; +export { SyntheticsTestResultCdnProviderInfo } from "./models/SyntheticsTestResultCdnProviderInfo"; +export { SyntheticsTestResultCdnResource } from "./models/SyntheticsTestResultCdnResource"; +export { SyntheticsTestResultCertificate } from "./models/SyntheticsTestResultCertificate"; +export { SyntheticsTestResultCertificateValidity } from "./models/SyntheticsTestResultCertificateValidity"; +export { SyntheticsTestResultCI } from "./models/SyntheticsTestResultCI"; +export { SyntheticsTestResultCIPipeline } from "./models/SyntheticsTestResultCIPipeline"; +export { SyntheticsTestResultCIProvider } from "./models/SyntheticsTestResultCIProvider"; +export { SyntheticsTestResultCIStage } from "./models/SyntheticsTestResultCIStage"; +export { SyntheticsTestResultData } from "./models/SyntheticsTestResultData"; +export { SyntheticsTestResultDetail } from "./models/SyntheticsTestResultDetail"; +export { SyntheticsTestResultDevice } from "./models/SyntheticsTestResultDevice"; +export { SyntheticsTestResultDeviceBrowser } from "./models/SyntheticsTestResultDeviceBrowser"; +export { SyntheticsTestResultDevicePlatform } from "./models/SyntheticsTestResultDevicePlatform"; +export { SyntheticsTestResultDeviceResolution } from "./models/SyntheticsTestResultDeviceResolution"; +export { SyntheticsTestResultDnsRecord } from "./models/SyntheticsTestResultDnsRecord"; +export { SyntheticsTestResultDnsResolution } from "./models/SyntheticsTestResultDnsResolution"; +export { SyntheticsTestResultExecutionInfo } from "./models/SyntheticsTestResultExecutionInfo"; +export { SyntheticsTestResultFailure } from "./models/SyntheticsTestResultFailure"; +export { SyntheticsTestResultFileRef } from "./models/SyntheticsTestResultFileRef"; +export { SyntheticsTestResultGit } from "./models/SyntheticsTestResultGit"; +export { SyntheticsTestResultGitCommit } from "./models/SyntheticsTestResultGitCommit"; +export { SyntheticsTestResultGitUser } from "./models/SyntheticsTestResultGitUser"; +export { SyntheticsTestResultHandshake } from "./models/SyntheticsTestResultHandshake"; +export { SyntheticsTestResultHealthCheck } from "./models/SyntheticsTestResultHealthCheck"; +export { SyntheticsTestResultIncludedItem } from "./models/SyntheticsTestResultIncludedItem"; +export { SyntheticsTestResultLocation } from "./models/SyntheticsTestResultLocation"; +export { SyntheticsTestResultNetpath } from "./models/SyntheticsTestResultNetpath"; +export { SyntheticsTestResultNetpathDestination } from "./models/SyntheticsTestResultNetpathDestination"; +export { SyntheticsTestResultNetpathEndpoint } from "./models/SyntheticsTestResultNetpathEndpoint"; +export { SyntheticsTestResultNetpathHop } from "./models/SyntheticsTestResultNetpathHop"; +export { SyntheticsTestResultNetstats } from "./models/SyntheticsTestResultNetstats"; +export { SyntheticsTestResultNetstatsHops } from "./models/SyntheticsTestResultNetstatsHops"; +export { SyntheticsTestResultNetworkLatency } from "./models/SyntheticsTestResultNetworkLatency"; +export { SyntheticsTestResultOCSPCertificate } from "./models/SyntheticsTestResultOCSPCertificate"; +export { SyntheticsTestResultOCSPResponse } from "./models/SyntheticsTestResultOCSPResponse"; +export { SyntheticsTestResultOCSPUpdates } from "./models/SyntheticsTestResultOCSPUpdates"; +export { SyntheticsTestResultParentStep } from "./models/SyntheticsTestResultParentStep"; +export { SyntheticsTestResultParentTest } from "./models/SyntheticsTestResultParentTest"; +export { SyntheticsTestResultRedirect } from "./models/SyntheticsTestResultRedirect"; +export { SyntheticsTestResultRelationships } from "./models/SyntheticsTestResultRelationships"; +export { SyntheticsTestResultRelationshipTest } from "./models/SyntheticsTestResultRelationshipTest"; +export { SyntheticsTestResultRelationshipTestData } from "./models/SyntheticsTestResultRelationshipTestData"; +export { SyntheticsTestResultRequestInfo } from "./models/SyntheticsTestResultRequestInfo"; +export { SyntheticsTestResultResponse } from "./models/SyntheticsTestResultResponse"; +export { SyntheticsTestResultResponseInfo } from "./models/SyntheticsTestResultResponseInfo"; +export { SyntheticsTestResultRouter } from "./models/SyntheticsTestResultRouter"; +export { SyntheticsTestResultRumContext } from "./models/SyntheticsTestResultRumContext"; +export { SyntheticsTestResultRunType } from "./models/SyntheticsTestResultRunType"; +export { SyntheticsTestResultStatus } from "./models/SyntheticsTestResultStatus"; +export { SyntheticsTestResultStep } from "./models/SyntheticsTestResultStep"; +export { SyntheticsTestResultStepAssertionResult } from "./models/SyntheticsTestResultStepAssertionResult"; +export { SyntheticsTestResultStepElementUpdates } from "./models/SyntheticsTestResultStepElementUpdates"; +export { SyntheticsTestResultStepsInfo } from "./models/SyntheticsTestResultStepsInfo"; +export { SyntheticsTestResultSubStep } from "./models/SyntheticsTestResultSubStep"; +export { SyntheticsTestResultSubTest } from "./models/SyntheticsTestResultSubTest"; +export { SyntheticsTestResultSummaryAttributes } from "./models/SyntheticsTestResultSummaryAttributes"; +export { SyntheticsTestResultSummaryData } from "./models/SyntheticsTestResultSummaryData"; +export { SyntheticsTestResultSummaryType } from "./models/SyntheticsTestResultSummaryType"; +export { SyntheticsTestResultTab } from "./models/SyntheticsTestResultTab"; +export { SyntheticsTestResultTrace } from "./models/SyntheticsTestResultTrace"; +export { SyntheticsTestResultTracerouteHop } from "./models/SyntheticsTestResultTracerouteHop"; +export { SyntheticsTestResultTurn } from "./models/SyntheticsTestResultTurn"; +export { SyntheticsTestResultTurnStep } from "./models/SyntheticsTestResultTurnStep"; +export { SyntheticsTestResultType } from "./models/SyntheticsTestResultType"; +export { SyntheticsTestResultVariable } from "./models/SyntheticsTestResultVariable"; +export { SyntheticsTestResultVariables } from "./models/SyntheticsTestResultVariables"; +export { SyntheticsTestResultVitalsMetrics } from "./models/SyntheticsTestResultVitalsMetrics"; +export { SyntheticsTestResultWarning } from "./models/SyntheticsTestResultWarning"; +export { SyntheticsTestResultWebSocketClose } from "./models/SyntheticsTestResultWebSocketClose"; export { SyntheticsTestVersionActionMetadata } from "./models/SyntheticsTestVersionActionMetadata"; export { SyntheticsTestVersionAttributes } from "./models/SyntheticsTestVersionAttributes"; export { SyntheticsTestVersionAuthor } from "./models/SyntheticsTestVersionAuthor"; diff --git a/packages/datadog-api-client-v2/models/ObjectSerializer.ts b/packages/datadog-api-client-v2/models/ObjectSerializer.ts index cd94d0ba021a..c9e86e6c33c7 100644 --- a/packages/datadog-api-client-v2/models/ObjectSerializer.ts +++ b/packages/datadog-api-client-v2/models/ObjectSerializer.ts @@ -3426,9 +3426,6 @@ import { SyntheticsFastTestResult } from "./SyntheticsFastTestResult"; import { SyntheticsFastTestResultAttributes } from "./SyntheticsFastTestResultAttributes"; import { SyntheticsFastTestResultData } from "./SyntheticsFastTestResultData"; import { SyntheticsFastTestResultDetail } from "./SyntheticsFastTestResultDetail"; -import { SyntheticsFastTestResultDevice } from "./SyntheticsFastTestResultDevice"; -import { SyntheticsFastTestResultFailure } from "./SyntheticsFastTestResultFailure"; -import { SyntheticsFastTestResultLocation } from "./SyntheticsFastTestResultLocation"; import { SyntheticsGlobalVariable } from "./SyntheticsGlobalVariable"; import { SyntheticsGlobalVariableAttributes } from "./SyntheticsGlobalVariableAttributes"; import { SyntheticsGlobalVariableOptions } from "./SyntheticsGlobalVariableOptions"; @@ -3446,6 +3443,7 @@ import { SyntheticsNetworkTestEditRequest } from "./SyntheticsNetworkTestEditReq import { SyntheticsNetworkTestRequest } from "./SyntheticsNetworkTestRequest"; import { SyntheticsNetworkTestResponse } from "./SyntheticsNetworkTestResponse"; import { SyntheticsNetworkTestResponseData } from "./SyntheticsNetworkTestResponseData"; +import { SyntheticsPollTestResultsResponse } from "./SyntheticsPollTestResultsResponse"; import { SyntheticsSuite } from "./SyntheticsSuite"; import { SyntheticsSuiteOptions } from "./SyntheticsSuiteOptions"; import { SyntheticsSuiteResponse } from "./SyntheticsSuiteResponse"; @@ -3463,6 +3461,7 @@ import { SyntheticsTestFileMultipartPresignedUrlsParams } from "./SyntheticsTest import { SyntheticsTestFileMultipartPresignedUrlsPart } from "./SyntheticsTestFileMultipartPresignedUrlsPart"; import { SyntheticsTestFileMultipartPresignedUrlsRequest } from "./SyntheticsTestFileMultipartPresignedUrlsRequest"; import { SyntheticsTestFileMultipartPresignedUrlsResponse } from "./SyntheticsTestFileMultipartPresignedUrlsResponse"; +import { SyntheticsTestLatestResultsResponse } from "./SyntheticsTestLatestResultsResponse"; import { SyntheticsTestOptions } from "./SyntheticsTestOptions"; import { SyntheticsTestOptionsMonitorOptions } from "./SyntheticsTestOptionsMonitorOptions"; import { SyntheticsTestOptionsRetry } from "./SyntheticsTestOptionsRetry"; @@ -3471,6 +3470,78 @@ import { SyntheticsTestOptionsSchedulingTimeframe } from "./SyntheticsTestOption import { SyntheticsTestParentSuiteAttributes } from "./SyntheticsTestParentSuiteAttributes"; import { SyntheticsTestParentSuiteData } from "./SyntheticsTestParentSuiteData"; import { SyntheticsTestParentSuitesResponse } from "./SyntheticsTestParentSuitesResponse"; +import { SyntheticsTestResultAssertionResult } from "./SyntheticsTestResultAssertionResult"; +import { SyntheticsTestResultAttributes } from "./SyntheticsTestResultAttributes"; +import { SyntheticsTestResultBatch } from "./SyntheticsTestResultBatch"; +import { SyntheticsTestResultBounds } from "./SyntheticsTestResultBounds"; +import { SyntheticsTestResultBrowserError } from "./SyntheticsTestResultBrowserError"; +import { SyntheticsTestResultBucketKeys } from "./SyntheticsTestResultBucketKeys"; +import { SyntheticsTestResultCI } from "./SyntheticsTestResultCI"; +import { SyntheticsTestResultCIPipeline } from "./SyntheticsTestResultCIPipeline"; +import { SyntheticsTestResultCIProvider } from "./SyntheticsTestResultCIProvider"; +import { SyntheticsTestResultCIStage } from "./SyntheticsTestResultCIStage"; +import { SyntheticsTestResultCdnCacheStatus } from "./SyntheticsTestResultCdnCacheStatus"; +import { SyntheticsTestResultCdnProviderInfo } from "./SyntheticsTestResultCdnProviderInfo"; +import { SyntheticsTestResultCdnResource } from "./SyntheticsTestResultCdnResource"; +import { SyntheticsTestResultCertificate } from "./SyntheticsTestResultCertificate"; +import { SyntheticsTestResultCertificateValidity } from "./SyntheticsTestResultCertificateValidity"; +import { SyntheticsTestResultData } from "./SyntheticsTestResultData"; +import { SyntheticsTestResultDetail } from "./SyntheticsTestResultDetail"; +import { SyntheticsTestResultDevice } from "./SyntheticsTestResultDevice"; +import { SyntheticsTestResultDeviceBrowser } from "./SyntheticsTestResultDeviceBrowser"; +import { SyntheticsTestResultDevicePlatform } from "./SyntheticsTestResultDevicePlatform"; +import { SyntheticsTestResultDeviceResolution } from "./SyntheticsTestResultDeviceResolution"; +import { SyntheticsTestResultDnsRecord } from "./SyntheticsTestResultDnsRecord"; +import { SyntheticsTestResultDnsResolution } from "./SyntheticsTestResultDnsResolution"; +import { SyntheticsTestResultExecutionInfo } from "./SyntheticsTestResultExecutionInfo"; +import { SyntheticsTestResultFailure } from "./SyntheticsTestResultFailure"; +import { SyntheticsTestResultFileRef } from "./SyntheticsTestResultFileRef"; +import { SyntheticsTestResultGit } from "./SyntheticsTestResultGit"; +import { SyntheticsTestResultGitCommit } from "./SyntheticsTestResultGitCommit"; +import { SyntheticsTestResultGitUser } from "./SyntheticsTestResultGitUser"; +import { SyntheticsTestResultHandshake } from "./SyntheticsTestResultHandshake"; +import { SyntheticsTestResultHealthCheck } from "./SyntheticsTestResultHealthCheck"; +import { SyntheticsTestResultIncludedItem } from "./SyntheticsTestResultIncludedItem"; +import { SyntheticsTestResultLocation } from "./SyntheticsTestResultLocation"; +import { SyntheticsTestResultNetpath } from "./SyntheticsTestResultNetpath"; +import { SyntheticsTestResultNetpathDestination } from "./SyntheticsTestResultNetpathDestination"; +import { SyntheticsTestResultNetpathEndpoint } from "./SyntheticsTestResultNetpathEndpoint"; +import { SyntheticsTestResultNetpathHop } from "./SyntheticsTestResultNetpathHop"; +import { SyntheticsTestResultNetstats } from "./SyntheticsTestResultNetstats"; +import { SyntheticsTestResultNetstatsHops } from "./SyntheticsTestResultNetstatsHops"; +import { SyntheticsTestResultNetworkLatency } from "./SyntheticsTestResultNetworkLatency"; +import { SyntheticsTestResultOCSPCertificate } from "./SyntheticsTestResultOCSPCertificate"; +import { SyntheticsTestResultOCSPResponse } from "./SyntheticsTestResultOCSPResponse"; +import { SyntheticsTestResultOCSPUpdates } from "./SyntheticsTestResultOCSPUpdates"; +import { SyntheticsTestResultParentStep } from "./SyntheticsTestResultParentStep"; +import { SyntheticsTestResultParentTest } from "./SyntheticsTestResultParentTest"; +import { SyntheticsTestResultRedirect } from "./SyntheticsTestResultRedirect"; +import { SyntheticsTestResultRelationshipTest } from "./SyntheticsTestResultRelationshipTest"; +import { SyntheticsTestResultRelationshipTestData } from "./SyntheticsTestResultRelationshipTestData"; +import { SyntheticsTestResultRelationships } from "./SyntheticsTestResultRelationships"; +import { SyntheticsTestResultRequestInfo } from "./SyntheticsTestResultRequestInfo"; +import { SyntheticsTestResultResponse } from "./SyntheticsTestResultResponse"; +import { SyntheticsTestResultResponseInfo } from "./SyntheticsTestResultResponseInfo"; +import { SyntheticsTestResultRouter } from "./SyntheticsTestResultRouter"; +import { SyntheticsTestResultRumContext } from "./SyntheticsTestResultRumContext"; +import { SyntheticsTestResultStep } from "./SyntheticsTestResultStep"; +import { SyntheticsTestResultStepAssertionResult } from "./SyntheticsTestResultStepAssertionResult"; +import { SyntheticsTestResultStepElementUpdates } from "./SyntheticsTestResultStepElementUpdates"; +import { SyntheticsTestResultStepsInfo } from "./SyntheticsTestResultStepsInfo"; +import { SyntheticsTestResultSubStep } from "./SyntheticsTestResultSubStep"; +import { SyntheticsTestResultSubTest } from "./SyntheticsTestResultSubTest"; +import { SyntheticsTestResultSummaryAttributes } from "./SyntheticsTestResultSummaryAttributes"; +import { SyntheticsTestResultSummaryData } from "./SyntheticsTestResultSummaryData"; +import { SyntheticsTestResultTab } from "./SyntheticsTestResultTab"; +import { SyntheticsTestResultTrace } from "./SyntheticsTestResultTrace"; +import { SyntheticsTestResultTracerouteHop } from "./SyntheticsTestResultTracerouteHop"; +import { SyntheticsTestResultTurn } from "./SyntheticsTestResultTurn"; +import { SyntheticsTestResultTurnStep } from "./SyntheticsTestResultTurnStep"; +import { SyntheticsTestResultVariable } from "./SyntheticsTestResultVariable"; +import { SyntheticsTestResultVariables } from "./SyntheticsTestResultVariables"; +import { SyntheticsTestResultVitalsMetrics } from "./SyntheticsTestResultVitalsMetrics"; +import { SyntheticsTestResultWarning } from "./SyntheticsTestResultWarning"; +import { SyntheticsTestResultWebSocketClose } from "./SyntheticsTestResultWebSocketClose"; import { SyntheticsTestVersionActionMetadata } from "./SyntheticsTestVersionActionMetadata"; import { SyntheticsTestVersionAttributes } from "./SyntheticsTestVersionAttributes"; import { SyntheticsTestVersionAuthor } from "./SyntheticsTestVersionAuthor"; @@ -5855,7 +5926,6 @@ const enumsMap: { [key: string]: any[] } = { SuiteSearchResponseType: ["suites_search"], SyntheticsApiMultistepParentTestType: ["parent_test"], SyntheticsApiMultistepSubtestType: ["subtest"], - SyntheticsFastTestResultType: ["result"], SyntheticsFastTestSubType: [ "dns", "grpc", @@ -5910,6 +5980,10 @@ const enumsMap: { [key: string]: any[] } = { ], SyntheticsTestParentSuiteType: ["parent_suite"], SyntheticsTestPauseStatus: ["live", "paused"], + SyntheticsTestResultRunType: ["scheduled", "fast", "ci", "triggered"], + SyntheticsTestResultStatus: ["passed", "failed", "no_data"], + SyntheticsTestResultSummaryType: ["result_summary"], + SyntheticsTestResultType: ["result"], SyntheticsTestVersionChangeType: ["version_metadata"], SyntheticsTestVersionType: ["version"], TableResultV2DataAttributesFileMetadataCloudStorageErrorType: [ @@ -10311,9 +10385,6 @@ const typeMap: { [index: string]: any } = { SyntheticsFastTestResultAttributes: SyntheticsFastTestResultAttributes, SyntheticsFastTestResultData: SyntheticsFastTestResultData, SyntheticsFastTestResultDetail: SyntheticsFastTestResultDetail, - SyntheticsFastTestResultDevice: SyntheticsFastTestResultDevice, - SyntheticsFastTestResultFailure: SyntheticsFastTestResultFailure, - SyntheticsFastTestResultLocation: SyntheticsFastTestResultLocation, SyntheticsGlobalVariable: SyntheticsGlobalVariable, SyntheticsGlobalVariableAttributes: SyntheticsGlobalVariableAttributes, SyntheticsGlobalVariableOptions: SyntheticsGlobalVariableOptions, @@ -10335,6 +10406,7 @@ const typeMap: { [index: string]: any } = { SyntheticsNetworkTestRequest: SyntheticsNetworkTestRequest, SyntheticsNetworkTestResponse: SyntheticsNetworkTestResponse, SyntheticsNetworkTestResponseData: SyntheticsNetworkTestResponseData, + SyntheticsPollTestResultsResponse: SyntheticsPollTestResultsResponse, SyntheticsSuite: SyntheticsSuite, SyntheticsSuiteOptions: SyntheticsSuiteOptions, SyntheticsSuiteResponse: SyntheticsSuiteResponse, @@ -10360,6 +10432,7 @@ const typeMap: { [index: string]: any } = { SyntheticsTestFileMultipartPresignedUrlsRequest, SyntheticsTestFileMultipartPresignedUrlsResponse: SyntheticsTestFileMultipartPresignedUrlsResponse, + SyntheticsTestLatestResultsResponse: SyntheticsTestLatestResultsResponse, SyntheticsTestOptions: SyntheticsTestOptions, SyntheticsTestOptionsMonitorOptions: SyntheticsTestOptionsMonitorOptions, SyntheticsTestOptionsRetry: SyntheticsTestOptionsRetry, @@ -10369,6 +10442,83 @@ const typeMap: { [index: string]: any } = { SyntheticsTestParentSuiteAttributes: SyntheticsTestParentSuiteAttributes, SyntheticsTestParentSuiteData: SyntheticsTestParentSuiteData, SyntheticsTestParentSuitesResponse: SyntheticsTestParentSuitesResponse, + SyntheticsTestResultAssertionResult: SyntheticsTestResultAssertionResult, + SyntheticsTestResultAttributes: SyntheticsTestResultAttributes, + SyntheticsTestResultBatch: SyntheticsTestResultBatch, + SyntheticsTestResultBounds: SyntheticsTestResultBounds, + SyntheticsTestResultBrowserError: SyntheticsTestResultBrowserError, + SyntheticsTestResultBucketKeys: SyntheticsTestResultBucketKeys, + SyntheticsTestResultCI: SyntheticsTestResultCI, + SyntheticsTestResultCIPipeline: SyntheticsTestResultCIPipeline, + SyntheticsTestResultCIProvider: SyntheticsTestResultCIProvider, + SyntheticsTestResultCIStage: SyntheticsTestResultCIStage, + SyntheticsTestResultCdnCacheStatus: SyntheticsTestResultCdnCacheStatus, + SyntheticsTestResultCdnProviderInfo: SyntheticsTestResultCdnProviderInfo, + SyntheticsTestResultCdnResource: SyntheticsTestResultCdnResource, + SyntheticsTestResultCertificate: SyntheticsTestResultCertificate, + SyntheticsTestResultCertificateValidity: + SyntheticsTestResultCertificateValidity, + SyntheticsTestResultData: SyntheticsTestResultData, + SyntheticsTestResultDetail: SyntheticsTestResultDetail, + SyntheticsTestResultDevice: SyntheticsTestResultDevice, + SyntheticsTestResultDeviceBrowser: SyntheticsTestResultDeviceBrowser, + SyntheticsTestResultDevicePlatform: SyntheticsTestResultDevicePlatform, + SyntheticsTestResultDeviceResolution: SyntheticsTestResultDeviceResolution, + SyntheticsTestResultDnsRecord: SyntheticsTestResultDnsRecord, + SyntheticsTestResultDnsResolution: SyntheticsTestResultDnsResolution, + SyntheticsTestResultExecutionInfo: SyntheticsTestResultExecutionInfo, + SyntheticsTestResultFailure: SyntheticsTestResultFailure, + SyntheticsTestResultFileRef: SyntheticsTestResultFileRef, + SyntheticsTestResultGit: SyntheticsTestResultGit, + SyntheticsTestResultGitCommit: SyntheticsTestResultGitCommit, + SyntheticsTestResultGitUser: SyntheticsTestResultGitUser, + SyntheticsTestResultHandshake: SyntheticsTestResultHandshake, + SyntheticsTestResultHealthCheck: SyntheticsTestResultHealthCheck, + SyntheticsTestResultIncludedItem: SyntheticsTestResultIncludedItem, + SyntheticsTestResultLocation: SyntheticsTestResultLocation, + SyntheticsTestResultNetpath: SyntheticsTestResultNetpath, + SyntheticsTestResultNetpathDestination: + SyntheticsTestResultNetpathDestination, + SyntheticsTestResultNetpathEndpoint: SyntheticsTestResultNetpathEndpoint, + SyntheticsTestResultNetpathHop: SyntheticsTestResultNetpathHop, + SyntheticsTestResultNetstats: SyntheticsTestResultNetstats, + SyntheticsTestResultNetstatsHops: SyntheticsTestResultNetstatsHops, + SyntheticsTestResultNetworkLatency: SyntheticsTestResultNetworkLatency, + SyntheticsTestResultOCSPCertificate: SyntheticsTestResultOCSPCertificate, + SyntheticsTestResultOCSPResponse: SyntheticsTestResultOCSPResponse, + SyntheticsTestResultOCSPUpdates: SyntheticsTestResultOCSPUpdates, + SyntheticsTestResultParentStep: SyntheticsTestResultParentStep, + SyntheticsTestResultParentTest: SyntheticsTestResultParentTest, + SyntheticsTestResultRedirect: SyntheticsTestResultRedirect, + SyntheticsTestResultRelationshipTest: SyntheticsTestResultRelationshipTest, + SyntheticsTestResultRelationshipTestData: + SyntheticsTestResultRelationshipTestData, + SyntheticsTestResultRelationships: SyntheticsTestResultRelationships, + SyntheticsTestResultRequestInfo: SyntheticsTestResultRequestInfo, + SyntheticsTestResultResponse: SyntheticsTestResultResponse, + SyntheticsTestResultResponseInfo: SyntheticsTestResultResponseInfo, + SyntheticsTestResultRouter: SyntheticsTestResultRouter, + SyntheticsTestResultRumContext: SyntheticsTestResultRumContext, + SyntheticsTestResultStep: SyntheticsTestResultStep, + SyntheticsTestResultStepAssertionResult: + SyntheticsTestResultStepAssertionResult, + SyntheticsTestResultStepElementUpdates: + SyntheticsTestResultStepElementUpdates, + SyntheticsTestResultStepsInfo: SyntheticsTestResultStepsInfo, + SyntheticsTestResultSubStep: SyntheticsTestResultSubStep, + SyntheticsTestResultSubTest: SyntheticsTestResultSubTest, + SyntheticsTestResultSummaryAttributes: SyntheticsTestResultSummaryAttributes, + SyntheticsTestResultSummaryData: SyntheticsTestResultSummaryData, + SyntheticsTestResultTab: SyntheticsTestResultTab, + SyntheticsTestResultTrace: SyntheticsTestResultTrace, + SyntheticsTestResultTracerouteHop: SyntheticsTestResultTracerouteHop, + SyntheticsTestResultTurn: SyntheticsTestResultTurn, + SyntheticsTestResultTurnStep: SyntheticsTestResultTurnStep, + SyntheticsTestResultVariable: SyntheticsTestResultVariable, + SyntheticsTestResultVariables: SyntheticsTestResultVariables, + SyntheticsTestResultVitalsMetrics: SyntheticsTestResultVitalsMetrics, + SyntheticsTestResultWarning: SyntheticsTestResultWarning, + SyntheticsTestResultWebSocketClose: SyntheticsTestResultWebSocketClose, SyntheticsTestVersionActionMetadata: SyntheticsTestVersionActionMetadata, SyntheticsTestVersionAttributes: SyntheticsTestVersionAttributes, SyntheticsTestVersionAuthor: SyntheticsTestVersionAuthor, diff --git a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultAttributes.ts b/packages/datadog-api-client-v2/models/SyntheticsFastTestResultAttributes.ts index 89ed4244ce40..a6ebb22fd354 100644 --- a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultAttributes.ts +++ b/packages/datadog-api-client-v2/models/SyntheticsFastTestResultAttributes.ts @@ -4,9 +4,9 @@ * Copyright 2020-Present Datadog, Inc. */ import { SyntheticsFastTestResultDetail } from "./SyntheticsFastTestResultDetail"; -import { SyntheticsFastTestResultDevice } from "./SyntheticsFastTestResultDevice"; -import { SyntheticsFastTestResultLocation } from "./SyntheticsFastTestResultLocation"; import { SyntheticsFastTestSubType } from "./SyntheticsFastTestSubType"; +import { SyntheticsTestResultDevice } from "./SyntheticsTestResultDevice"; +import { SyntheticsTestResultLocation } from "./SyntheticsTestResultLocation"; import { AttributeTypeMap } from "../../datadog-api-client-common/util"; @@ -15,13 +15,13 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; */ export class SyntheticsFastTestResultAttributes { /** - * Device information for browser-based fast tests. + * Device information for the test result (browser and mobile tests). */ - "device"?: SyntheticsFastTestResultDevice; + "device"?: SyntheticsTestResultDevice; /** - * Location from which the fast test was executed. + * Location information for a Synthetic test result. */ - "location"?: SyntheticsFastTestResultLocation; + "location"?: SyntheticsTestResultLocation; /** * Detailed result data for the fast test run. The exact shape of nested fields * (`request`, `response`, `assertions`, etc.) depends on the test subtype. @@ -58,11 +58,11 @@ export class SyntheticsFastTestResultAttributes { static readonly attributeTypeMap: AttributeTypeMap = { device: { baseName: "device", - type: "SyntheticsFastTestResultDevice", + type: "SyntheticsTestResultDevice", }, location: { baseName: "location", - type: "SyntheticsFastTestResultLocation", + type: "SyntheticsTestResultLocation", }, result: { baseName: "result", diff --git a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultData.ts b/packages/datadog-api-client-v2/models/SyntheticsFastTestResultData.ts index 742608137d18..20c0ef51d0d5 100644 --- a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultData.ts +++ b/packages/datadog-api-client-v2/models/SyntheticsFastTestResultData.ts @@ -4,7 +4,7 @@ * Copyright 2020-Present Datadog, Inc. */ import { SyntheticsFastTestResultAttributes } from "./SyntheticsFastTestResultAttributes"; -import { SyntheticsFastTestResultType } from "./SyntheticsFastTestResultType"; +import { SyntheticsTestResultType } from "./SyntheticsTestResultType"; import { AttributeTypeMap } from "../../datadog-api-client-common/util"; @@ -21,9 +21,9 @@ export class SyntheticsFastTestResultData { */ "id"?: string; /** - * JSON:API type for a fast test result. + * Type of the Synthetic test result resource, `result`. */ - "type"?: SyntheticsFastTestResultType; + "type"?: SyntheticsTestResultType; /** * A container for additional, undeclared properties. @@ -51,7 +51,7 @@ export class SyntheticsFastTestResultData { }, type: { baseName: "type", - type: "SyntheticsFastTestResultType", + type: "SyntheticsTestResultType", }, additionalProperties: { baseName: "additionalProperties", diff --git a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultDetail.ts b/packages/datadog-api-client-v2/models/SyntheticsFastTestResultDetail.ts index e46c20dae568..e11f0e471e84 100644 --- a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultDetail.ts +++ b/packages/datadog-api-client-v2/models/SyntheticsFastTestResultDetail.ts @@ -3,7 +3,14 @@ * This product includes software developed at Datadog (https://www.datadoghq.com/). * Copyright 2020-Present Datadog, Inc. */ -import { SyntheticsFastTestResultFailure } from "./SyntheticsFastTestResultFailure"; +import { SyntheticsTestResultAssertionResult } from "./SyntheticsTestResultAssertionResult"; +import { SyntheticsTestResultCertificate } from "./SyntheticsTestResultCertificate"; +import { SyntheticsTestResultFailure } from "./SyntheticsTestResultFailure"; +import { SyntheticsTestResultRequestInfo } from "./SyntheticsTestResultRequestInfo"; +import { SyntheticsTestResultResponseInfo } from "./SyntheticsTestResultResponseInfo"; +import { SyntheticsTestResultRunType } from "./SyntheticsTestResultRunType"; +import { SyntheticsTestResultStep } from "./SyntheticsTestResultStep"; +import { SyntheticsTestResultTracerouteHop } from "./SyntheticsTestResultTracerouteHop"; import { AttributeTypeMap } from "../../datadog-api-client-common/util"; @@ -15,23 +22,23 @@ export class SyntheticsFastTestResultDetail { /** * Results of each assertion evaluated during the test. */ - "assertions"?: Array<{ [key: string]: any }>; + "assertions"?: Array; /** * gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). */ "callType"?: string; /** - * TLS certificate details, present for SSL tests. + * SSL/TLS certificate information returned from an SSL test. */ - "cert"?: { [key: string]: any }; + "cert"?: SyntheticsTestResultCertificate; /** * Total duration of the test in milliseconds. */ "duration"?: number; /** - * Failure details if the fast test did not pass. + * Details about the failure of a Synthetic test. */ - "failure"?: SyntheticsFastTestResultFailure; + "failure"?: SyntheticsTestResultFailure; /** * Unix timestamp (ms) of when the test finished. */ @@ -45,21 +52,21 @@ export class SyntheticsFastTestResultDetail { */ "isFastRetry"?: boolean; /** - * Details of the outgoing request made during the test. + * Details of the outgoing request made during the test execution. */ - "request"?: { [key: string]: any }; + "request"?: SyntheticsTestResultRequestInfo; /** * IP address resolved for the target host. */ "resolvedIp"?: string; /** - * Details of the response received during the test. + * Details of the response received during the test execution. */ - "response"?: { [key: string]: any }; + "response"?: SyntheticsTestResultResponseInfo; /** - * Run type indicating how this test was triggered (for example, `fast`). + * The type of run for a Synthetic test result. */ - "runType"?: string; + "runType"?: SyntheticsTestResultRunType; /** * Unix timestamp (ms) of when the test started. */ @@ -71,7 +78,7 @@ export class SyntheticsFastTestResultDetail { /** * Step results for multistep API tests. */ - "steps"?: Array<{ [key: string]: any }>; + "steps"?: Array; /** * Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). */ @@ -79,7 +86,7 @@ export class SyntheticsFastTestResultDetail { /** * Traceroute hop results, present for ICMP and TCP tests. */ - "traceroute"?: Array<{ [key: string]: any }>; + "traceroute"?: Array; /** * Unix timestamp (ms) of when the test was triggered. */ @@ -107,7 +114,7 @@ export class SyntheticsFastTestResultDetail { static readonly attributeTypeMap: AttributeTypeMap = { assertions: { baseName: "assertions", - type: "Array<{ [key: string]: any; }>", + type: "Array", }, callType: { baseName: "call_type", @@ -115,7 +122,7 @@ export class SyntheticsFastTestResultDetail { }, cert: { baseName: "cert", - type: "{ [key: string]: any; }", + type: "SyntheticsTestResultCertificate", }, duration: { baseName: "duration", @@ -124,7 +131,7 @@ export class SyntheticsFastTestResultDetail { }, failure: { baseName: "failure", - type: "SyntheticsFastTestResultFailure", + type: "SyntheticsTestResultFailure", }, finishedAt: { baseName: "finished_at", @@ -141,7 +148,7 @@ export class SyntheticsFastTestResultDetail { }, request: { baseName: "request", - type: "{ [key: string]: any; }", + type: "SyntheticsTestResultRequestInfo", }, resolvedIp: { baseName: "resolved_ip", @@ -149,11 +156,11 @@ export class SyntheticsFastTestResultDetail { }, response: { baseName: "response", - type: "{ [key: string]: any; }", + type: "SyntheticsTestResultResponseInfo", }, runType: { baseName: "run_type", - type: "string", + type: "SyntheticsTestResultRunType", }, startedAt: { baseName: "started_at", @@ -166,7 +173,7 @@ export class SyntheticsFastTestResultDetail { }, steps: { baseName: "steps", - type: "Array<{ [key: string]: any; }>", + type: "Array", }, timings: { baseName: "timings", @@ -174,7 +181,7 @@ export class SyntheticsFastTestResultDetail { }, traceroute: { baseName: "traceroute", - type: "Array<{ [key: string]: any; }>", + type: "Array", }, triggeredAt: { baseName: "triggered_at", diff --git a/packages/datadog-api-client-v2/models/SyntheticsPollTestResultsResponse.ts b/packages/datadog-api-client-v2/models/SyntheticsPollTestResultsResponse.ts new file mode 100644 index 000000000000..b8567c55e8b7 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsPollTestResultsResponse.ts @@ -0,0 +1,62 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultData } from "./SyntheticsTestResultData"; +import { SyntheticsTestResultIncludedItem } from "./SyntheticsTestResultIncludedItem"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Response object for polling Synthetic test results. + */ +export class SyntheticsPollTestResultsResponse { + /** + * Array of Synthetic test results. + */ + "data"?: Array; + /** + * Array of included related resources, such as the test definition. + */ + "included"?: Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "Array", + }, + included: { + baseName: "included", + type: "Array", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsPollTestResultsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestLatestResultsResponse.ts b/packages/datadog-api-client-v2/models/SyntheticsTestLatestResultsResponse.ts new file mode 100644 index 000000000000..52d75eecf75b --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestLatestResultsResponse.ts @@ -0,0 +1,62 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultIncludedItem } from "./SyntheticsTestResultIncludedItem"; +import { SyntheticsTestResultSummaryData } from "./SyntheticsTestResultSummaryData"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Response object for a Synthetic test's latest result summaries. + */ +export class SyntheticsTestLatestResultsResponse { + /** + * Array of Synthetic test result summaries. + */ + "data"?: Array; + /** + * Array of included related resources, such as the test definition. + */ + "included"?: Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "Array", + }, + included: { + baseName: "included", + type: "Array", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestLatestResultsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultAssertionResult.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultAssertionResult.ts new file mode 100644 index 000000000000..aa182162c361 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultAssertionResult.ts @@ -0,0 +1,124 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * An individual assertion result from a Synthetic test. + */ +export class SyntheticsTestResultAssertionResult { + /** + * Actual value observed during the test. Its type depends on the assertion type. + */ + "actual"?: any; + /** + * Error message if the assertion failed. + */ + "errorMessage"?: string; + /** + * Expected value for the assertion. Its type depends on the assertion type. + */ + "expected"?: any; + /** + * Operator used for the assertion (for example, `is`, `contains`). + */ + "operator"?: string; + /** + * Property targeted by the assertion, when applicable. + */ + "property"?: string; + /** + * Target value for the assertion. Its type depends on the assertion type. + */ + "target"?: any; + /** + * JSON path or XPath evaluated for the assertion. + */ + "targetPath"?: string; + /** + * Operator used for the target path assertion. + */ + "targetPathOperator"?: string; + /** + * Type of the assertion (for example, `responseTime`, `statusCode`, `body`). + */ + "type"?: string; + /** + * Whether the assertion passed. + */ + "valid"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + actual: { + baseName: "actual", + type: "any", + }, + errorMessage: { + baseName: "error_message", + type: "string", + }, + expected: { + baseName: "expected", + type: "any", + }, + operator: { + baseName: "operator", + type: "string", + }, + property: { + baseName: "property", + type: "string", + }, + target: { + baseName: "target", + type: "any", + }, + targetPath: { + baseName: "target_path", + type: "string", + }, + targetPathOperator: { + baseName: "target_path_operator", + type: "string", + }, + type: { + baseName: "type", + type: "string", + }, + valid: { + baseName: "valid", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultAssertionResult.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultAttributes.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultAttributes.ts new file mode 100644 index 000000000000..c33efa4b445d --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultAttributes.ts @@ -0,0 +1,114 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultBatch } from "./SyntheticsTestResultBatch"; +import { SyntheticsTestResultCI } from "./SyntheticsTestResultCI"; +import { SyntheticsTestResultDetail } from "./SyntheticsTestResultDetail"; +import { SyntheticsTestResultDevice } from "./SyntheticsTestResultDevice"; +import { SyntheticsTestResultGit } from "./SyntheticsTestResultGit"; +import { SyntheticsTestResultLocation } from "./SyntheticsTestResultLocation"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Attributes of a Synthetic test result. + */ +export class SyntheticsTestResultAttributes { + /** + * Batch information for the test result. + */ + "batch"?: SyntheticsTestResultBatch; + /** + * CI information associated with the test result. + */ + "ci"?: SyntheticsTestResultCI; + /** + * Device information for the test result (browser and mobile tests). + */ + "device"?: SyntheticsTestResultDevice; + /** + * Git information associated with the test result. + */ + "git"?: SyntheticsTestResultGit; + /** + * Location information for a Synthetic test result. + */ + "location"?: SyntheticsTestResultLocation; + /** + * Full result details for a Synthetic test execution. + */ + "result"?: SyntheticsTestResultDetail; + /** + * The subtype of the test (for example, `http`, `multi`, `ssl`). + */ + "testSubType"?: string; + /** + * The type of the test (for example, `api` or `browser`). + */ + "testType"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + batch: { + baseName: "batch", + type: "SyntheticsTestResultBatch", + }, + ci: { + baseName: "ci", + type: "SyntheticsTestResultCI", + }, + device: { + baseName: "device", + type: "SyntheticsTestResultDevice", + }, + git: { + baseName: "git", + type: "SyntheticsTestResultGit", + }, + location: { + baseName: "location", + type: "SyntheticsTestResultLocation", + }, + result: { + baseName: "result", + type: "SyntheticsTestResultDetail", + }, + testSubType: { + baseName: "test_sub_type", + type: "string", + }, + testType: { + baseName: "test_type", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultAttributes.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultBatch.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultBatch.ts new file mode 100644 index 000000000000..b0b6ef586296 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultBatch.ts @@ -0,0 +1,52 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Batch information for the test result. + */ +export class SyntheticsTestResultBatch { + /** + * Batch identifier. + */ + "id"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultBatch.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultBounds.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultBounds.ts new file mode 100644 index 000000000000..e1f09b1bc769 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultBounds.ts @@ -0,0 +1,80 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Bounding box of an element on the page. + */ +export class SyntheticsTestResultBounds { + /** + * Height in pixels. + */ + "height"?: number; + /** + * Width in pixels. + */ + "width"?: number; + /** + * Horizontal position in pixels. + */ + "x"?: number; + /** + * Vertical position in pixels. + */ + "y"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + height: { + baseName: "height", + type: "number", + format: "int64", + }, + width: { + baseName: "width", + type: "number", + format: "int64", + }, + x: { + baseName: "x", + type: "number", + format: "int64", + }, + y: { + baseName: "y", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultBounds.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultBrowserError.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultBrowserError.ts new file mode 100644 index 000000000000..06c8441c14ff --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultBrowserError.ts @@ -0,0 +1,93 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A browser error captured during a browser test step. + */ +export class SyntheticsTestResultBrowserError { + /** + * Error description. + */ + "description"?: string; + /** + * HTTP method associated with the error (for network errors). + */ + "method"?: string; + /** + * Error name. + */ + "name"?: string; + /** + * HTTP status code associated with the error (for network errors). + */ + "status"?: number; + /** + * Type of the browser error. + */ + "type"?: string; + /** + * URL associated with the error. + */ + "url"?: { [key: string]: any }; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + description: { + baseName: "description", + type: "string", + }, + method: { + baseName: "method", + type: "string", + }, + name: { + baseName: "name", + type: "string", + }, + status: { + baseName: "status", + type: "number", + format: "int64", + }, + type: { + baseName: "type", + type: "string", + }, + url: { + baseName: "url", + type: "{ [key: string]: any; }", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultBrowserError.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultBucketKeys.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultBucketKeys.ts new file mode 100644 index 000000000000..19e4a9c9593c --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultBucketKeys.ts @@ -0,0 +1,132 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Storage bucket keys for artifacts produced during a step or test. + */ +export class SyntheticsTestResultBucketKeys { + /** + * Key for the screenshot captured after the step (goal-based tests). + */ + "afterStepScreenshot"?: string; + /** + * Key for the screenshot captured after the turn (goal-based tests). + */ + "afterTurnScreenshot"?: string; + /** + * Key for miscellaneous artifacts. + */ + "artifacts"?: string; + /** + * Key for the screenshot captured before the step (goal-based tests). + */ + "beforeStepScreenshot"?: string; + /** + * Key for the screenshot captured before the turn (goal-based tests). + */ + "beforeTurnScreenshot"?: string; + /** + * Key for a captured crash report. + */ + "crashReport"?: string; + /** + * Key for captured device logs. + */ + "deviceLogs"?: string; + /** + * Keys for email message payloads captured by the step. + */ + "emailMessages"?: Array; + /** + * Key for the captured screenshot. + */ + "screenshot"?: string; + /** + * Key for the captured DOM snapshot. + */ + "snapshot"?: string; + /** + * Key for the page source or element source. + */ + "source"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + afterStepScreenshot: { + baseName: "after_step_screenshot", + type: "string", + }, + afterTurnScreenshot: { + baseName: "after_turn_screenshot", + type: "string", + }, + artifacts: { + baseName: "artifacts", + type: "string", + }, + beforeStepScreenshot: { + baseName: "before_step_screenshot", + type: "string", + }, + beforeTurnScreenshot: { + baseName: "before_turn_screenshot", + type: "string", + }, + crashReport: { + baseName: "crash_report", + type: "string", + }, + deviceLogs: { + baseName: "device_logs", + type: "string", + }, + emailMessages: { + baseName: "email_messages", + type: "Array", + }, + screenshot: { + baseName: "screenshot", + type: "string", + }, + snapshot: { + baseName: "snapshot", + type: "string", + }, + source: { + baseName: "source", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultBucketKeys.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCI.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCI.ts new file mode 100644 index 000000000000..d5debc420a7a --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCI.ts @@ -0,0 +1,79 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultCIPipeline } from "./SyntheticsTestResultCIPipeline"; +import { SyntheticsTestResultCIProvider } from "./SyntheticsTestResultCIProvider"; +import { SyntheticsTestResultCIStage } from "./SyntheticsTestResultCIStage"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * CI information associated with the test result. + */ +export class SyntheticsTestResultCI { + /** + * Details of the CI pipeline. + */ + "pipeline"?: SyntheticsTestResultCIPipeline; + /** + * Details of the CI provider. + */ + "provider"?: SyntheticsTestResultCIProvider; + /** + * Details of the CI stage. + */ + "stage"?: SyntheticsTestResultCIStage; + /** + * Path of the workspace that ran the CI job. + */ + "workspacePath"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + pipeline: { + baseName: "pipeline", + type: "SyntheticsTestResultCIPipeline", + }, + provider: { + baseName: "provider", + type: "SyntheticsTestResultCIProvider", + }, + stage: { + baseName: "stage", + type: "SyntheticsTestResultCIStage", + }, + workspacePath: { + baseName: "workspace_path", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCI.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCIPipeline.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCIPipeline.ts new file mode 100644 index 000000000000..1ce9cd7afca9 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCIPipeline.ts @@ -0,0 +1,77 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Details of the CI pipeline. + */ +export class SyntheticsTestResultCIPipeline { + /** + * Pipeline identifier. + */ + "id"?: string; + /** + * Pipeline name. + */ + "name"?: string; + /** + * Pipeline number. + */ + "number"?: number; + /** + * Pipeline URL. + */ + "url"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + }, + name: { + baseName: "name", + type: "string", + }, + number: { + baseName: "number", + type: "number", + format: "int64", + }, + url: { + baseName: "url", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCIPipeline.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCIProvider.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCIProvider.ts new file mode 100644 index 000000000000..cb8c652588e0 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCIProvider.ts @@ -0,0 +1,52 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Details of the CI provider. + */ +export class SyntheticsTestResultCIProvider { + /** + * Provider name. + */ + "name"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + name: { + baseName: "name", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCIProvider.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCIStage.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCIStage.ts new file mode 100644 index 000000000000..831c7d7a96e5 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCIStage.ts @@ -0,0 +1,52 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Details of the CI stage. + */ +export class SyntheticsTestResultCIStage { + /** + * Stage name. + */ + "name"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + name: { + baseName: "name", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCIStage.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnCacheStatus.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnCacheStatus.ts new file mode 100644 index 000000000000..c274c06c302a --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnCacheStatus.ts @@ -0,0 +1,60 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Cache status reported by the CDN for the response. + */ +export class SyntheticsTestResultCdnCacheStatus { + /** + * Whether the response was served from the CDN cache. + */ + "cached"?: boolean; + /** + * Raw cache status string reported by the CDN. + */ + "status"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + cached: { + baseName: "cached", + type: "boolean", + }, + status: { + baseName: "status", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCdnCacheStatus.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnProviderInfo.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnProviderInfo.ts new file mode 100644 index 000000000000..1611936ca45a --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnProviderInfo.ts @@ -0,0 +1,61 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultCdnCacheStatus } from "./SyntheticsTestResultCdnCacheStatus"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * CDN provider details inferred from response headers. + */ +export class SyntheticsTestResultCdnProviderInfo { + /** + * Cache status reported by the CDN for the response. + */ + "cache"?: SyntheticsTestResultCdnCacheStatus; + /** + * Name of the CDN provider. + */ + "provider"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + cache: { + baseName: "cache", + type: "SyntheticsTestResultCdnCacheStatus", + }, + provider: { + baseName: "provider", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCdnProviderInfo.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnResource.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnResource.ts new file mode 100644 index 000000000000..1d3c67f3ae4b --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCdnResource.ts @@ -0,0 +1,78 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultCdnProviderInfo } from "./SyntheticsTestResultCdnProviderInfo"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A CDN resource encountered while executing a browser step. + */ +export class SyntheticsTestResultCdnResource { + /** + * CDN provider details inferred from response headers. + */ + "cdn"?: SyntheticsTestResultCdnProviderInfo; + /** + * Resolved IP address for the CDN resource. + */ + "resolvedIp"?: string; + /** + * Unix timestamp (ms) of when the resource was fetched. + */ + "timestamp"?: number; + /** + * Timing breakdown for fetching the CDN resource. + */ + "timings"?: { [key: string]: any }; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + cdn: { + baseName: "cdn", + type: "SyntheticsTestResultCdnProviderInfo", + }, + resolvedIp: { + baseName: "resolved_ip", + type: "string", + }, + timestamp: { + baseName: "timestamp", + type: "number", + format: "int64", + }, + timings: { + baseName: "timings", + type: "{ [key: string]: any; }", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCdnResource.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCertificate.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCertificate.ts new file mode 100644 index 000000000000..62f75be1c556 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCertificate.ts @@ -0,0 +1,143 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultCertificateValidity } from "./SyntheticsTestResultCertificateValidity"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * SSL/TLS certificate information returned from an SSL test. + */ +export class SyntheticsTestResultCertificate { + /** + * Cipher used for the TLS connection. + */ + "cipher"?: string; + /** + * RSA exponent of the certificate. + */ + "exponent"?: number; + /** + * Extended key usage extensions for the certificate. + */ + "extKeyUsage"?: Array; + /** + * SHA-1 fingerprint of the certificate. + */ + "fingerprint"?: string; + /** + * SHA-256 fingerprint of the certificate. + */ + "fingerprint256"?: string; + /** + * Certificate issuer details. + */ + "issuer"?: { [key: string]: string }; + /** + * RSA modulus of the certificate. + */ + "modulus"?: string; + /** + * TLS protocol used (for example, `TLSv1.2`). + */ + "protocol"?: string; + /** + * Serial number of the certificate. + */ + "serialNumber"?: string; + /** + * Certificate subject details. + */ + "subject"?: { [key: string]: string }; + /** + * TLS protocol version. + */ + "tlsVersion"?: number; + /** + * Validity window of a certificate. + */ + "valid"?: SyntheticsTestResultCertificateValidity; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + cipher: { + baseName: "cipher", + type: "string", + }, + exponent: { + baseName: "exponent", + type: "number", + format: "int64", + }, + extKeyUsage: { + baseName: "ext_key_usage", + type: "Array", + }, + fingerprint: { + baseName: "fingerprint", + type: "string", + }, + fingerprint256: { + baseName: "fingerprint256", + type: "string", + }, + issuer: { + baseName: "issuer", + type: "{ [key: string]: string; }", + }, + modulus: { + baseName: "modulus", + type: "string", + }, + protocol: { + baseName: "protocol", + type: "string", + }, + serialNumber: { + baseName: "serial_number", + type: "string", + }, + subject: { + baseName: "subject", + type: "{ [key: string]: string; }", + }, + tlsVersion: { + baseName: "tls_version", + type: "number", + format: "double", + }, + valid: { + baseName: "valid", + type: "SyntheticsTestResultCertificateValidity", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCertificate.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultCertificateValidity.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultCertificateValidity.ts new file mode 100644 index 000000000000..54f27f47d907 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultCertificateValidity.ts @@ -0,0 +1,62 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Validity window of a certificate. + */ +export class SyntheticsTestResultCertificateValidity { + /** + * Unix timestamp (ms) of when the certificate became valid. + */ + "from"?: number; + /** + * Unix timestamp (ms) of when the certificate expires. + */ + "to"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + from: { + baseName: "from", + type: "number", + format: "int64", + }, + to: { + baseName: "to", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultCertificateValidity.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultData.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultData.ts new file mode 100644 index 000000000000..3c1dbca06ba3 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultData.ts @@ -0,0 +1,79 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultAttributes } from "./SyntheticsTestResultAttributes"; +import { SyntheticsTestResultRelationships } from "./SyntheticsTestResultRelationships"; +import { SyntheticsTestResultType } from "./SyntheticsTestResultType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Wrapper object for a Synthetic test result. + */ +export class SyntheticsTestResultData { + /** + * Attributes of a Synthetic test result. + */ + "attributes"?: SyntheticsTestResultAttributes; + /** + * The result ID. + */ + "id"?: string; + /** + * Relationships for a Synthetic test result. + */ + "relationships"?: SyntheticsTestResultRelationships; + /** + * Type of the Synthetic test result resource, `result`. + */ + "type"?: SyntheticsTestResultType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + attributes: { + baseName: "attributes", + type: "SyntheticsTestResultAttributes", + }, + id: { + baseName: "id", + type: "string", + }, + relationships: { + baseName: "relationships", + type: "SyntheticsTestResultRelationships", + }, + type: { + baseName: "type", + type: "SyntheticsTestResultType", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultData.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultDetail.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultDetail.ts new file mode 100644 index 000000000000..cc4224129c5a --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultDetail.ts @@ -0,0 +1,396 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultAssertionResult } from "./SyntheticsTestResultAssertionResult"; +import { SyntheticsTestResultBucketKeys } from "./SyntheticsTestResultBucketKeys"; +import { SyntheticsTestResultCertificate } from "./SyntheticsTestResultCertificate"; +import { SyntheticsTestResultDnsResolution } from "./SyntheticsTestResultDnsResolution"; +import { SyntheticsTestResultFailure } from "./SyntheticsTestResultFailure"; +import { SyntheticsTestResultHandshake } from "./SyntheticsTestResultHandshake"; +import { SyntheticsTestResultNetpath } from "./SyntheticsTestResultNetpath"; +import { SyntheticsTestResultNetstats } from "./SyntheticsTestResultNetstats"; +import { SyntheticsTestResultOCSPResponse } from "./SyntheticsTestResultOCSPResponse"; +import { SyntheticsTestResultRequestInfo } from "./SyntheticsTestResultRequestInfo"; +import { SyntheticsTestResultResponseInfo } from "./SyntheticsTestResultResponseInfo"; +import { SyntheticsTestResultRunType } from "./SyntheticsTestResultRunType"; +import { SyntheticsTestResultStatus } from "./SyntheticsTestResultStatus"; +import { SyntheticsTestResultStep } from "./SyntheticsTestResultStep"; +import { SyntheticsTestResultTrace } from "./SyntheticsTestResultTrace"; +import { SyntheticsTestResultTracerouteHop } from "./SyntheticsTestResultTracerouteHop"; +import { SyntheticsTestResultTurn } from "./SyntheticsTestResultTurn"; +import { SyntheticsTestResultVariables } from "./SyntheticsTestResultVariables"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Full result details for a Synthetic test execution. + */ +export class SyntheticsTestResultDetail { + /** + * Assertion results produced by the test. + */ + "assertions"?: Array; + /** + * Storage bucket keys for artifacts produced during a step or test. + */ + "bucketKeys"?: SyntheticsTestResultBucketKeys; + /** + * gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + */ + "callType"?: string; + /** + * SSL/TLS certificate information returned from an SSL test. + */ + "cert"?: SyntheticsTestResultCertificate; + /** + * Compressed JSON descriptor for the test (internal format). + */ + "compressedJsonDescriptor"?: string; + /** + * Compressed representation of the test steps (internal format). + */ + "compressedSteps"?: string; + /** + * Outcome of the connection attempt (for example, `established`, `refused`). + */ + "connectionOutcome"?: string; + /** + * DNS resolution details recorded during the test execution. + */ + "dnsResolution"?: SyntheticsTestResultDnsResolution; + /** + * Duration of the test execution (in milliseconds). + */ + "duration"?: number; + /** + * Whether the test exited early because a step marked with `exitIfSucceed` passed. + */ + "exitedOnStepSuccess"?: boolean; + /** + * Details about the failure of a Synthetic test. + */ + "failure"?: SyntheticsTestResultFailure; + /** + * Timestamp of when the test finished (in milliseconds). + */ + "finishedAt"?: number; + /** + * Handshake request and response for protocol-level tests. + */ + "handshake"?: SyntheticsTestResultHandshake; + /** + * The unique identifier for this result. + */ + "id"?: string; + /** + * The initial result ID before any retries. + */ + "initialId"?: string; + /** + * Whether this result is from a fast retry. + */ + "isFastRetry"?: boolean; + /** + * Whether this result is from the last retry. + */ + "isLastRetry"?: boolean; + /** + * Network Path test result capturing the path between source and destination. + */ + "netpath"?: SyntheticsTestResultNetpath; + /** + * Aggregated network statistics from the test execution. + */ + "netstats"?: SyntheticsTestResultNetstats; + /** + * OCSP response received while validating a certificate. + */ + "ocsp"?: SyntheticsTestResultOCSPResponse; + /** + * A network probe result, used for traceroute hops and ping summaries. + */ + "ping"?: SyntheticsTestResultTracerouteHop; + /** + * Number of emails received during the test (email tests). + */ + "receivedEmailCount"?: number; + /** + * Message received from the target (for WebSocket/TCP/UDP tests). + */ + "receivedMessage"?: string; + /** + * Details of the outgoing request made during the test execution. + */ + "request"?: SyntheticsTestResultRequestInfo; + /** + * IP address resolved for the target host. + */ + "resolvedIp"?: string; + /** + * Details of the response received during the test execution. + */ + "response"?: SyntheticsTestResultResponseInfo; + /** + * The type of run for a Synthetic test result. + */ + "runType"?: SyntheticsTestResultRunType; + /** + * Message sent to the target (for WebSocket/TCP/UDP tests). + */ + "sentMessage"?: string; + /** + * Start URL for the test (browser tests). + */ + "startUrl"?: string; + /** + * Timestamp of when the test started (in milliseconds). + */ + "startedAt"?: number; + /** + * Status of a Synthetic test result. + */ + "status"?: SyntheticsTestResultStatus; + /** + * Step results (for browser, mobile, and multistep API tests). + */ + "steps"?: Array; + /** + * Time to interactive in milliseconds (browser tests). + */ + "timeToInteractive"?: number; + /** + * Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). + */ + "timings"?: { [key: string]: any }; + /** + * Trace identifiers associated with a Synthetic test result. + */ + "trace"?: SyntheticsTestResultTrace; + /** + * Traceroute hop results (for network tests). + */ + "traceroute"?: Array; + /** + * Timestamp of when the test was triggered (in milliseconds). + */ + "triggeredAt"?: number; + /** + * Whether the test was executed through a tunnel. + */ + "tunnel"?: boolean; + /** + * Turns executed by a goal-based browser test. + */ + "turns"?: Array; + /** + * Whether the test runner was unhealthy at the time of execution. + */ + "unhealthy"?: boolean; + /** + * Variables captured during a test step. + */ + "variables"?: SyntheticsTestResultVariables; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + assertions: { + baseName: "assertions", + type: "Array", + }, + bucketKeys: { + baseName: "bucket_keys", + type: "SyntheticsTestResultBucketKeys", + }, + callType: { + baseName: "call_type", + type: "string", + }, + cert: { + baseName: "cert", + type: "SyntheticsTestResultCertificate", + }, + compressedJsonDescriptor: { + baseName: "compressed_json_descriptor", + type: "string", + }, + compressedSteps: { + baseName: "compressed_steps", + type: "string", + }, + connectionOutcome: { + baseName: "connection_outcome", + type: "string", + }, + dnsResolution: { + baseName: "dns_resolution", + type: "SyntheticsTestResultDnsResolution", + }, + duration: { + baseName: "duration", + type: "number", + format: "double", + }, + exitedOnStepSuccess: { + baseName: "exited_on_step_success", + type: "boolean", + }, + failure: { + baseName: "failure", + type: "SyntheticsTestResultFailure", + }, + finishedAt: { + baseName: "finished_at", + type: "number", + format: "int64", + }, + handshake: { + baseName: "handshake", + type: "SyntheticsTestResultHandshake", + }, + id: { + baseName: "id", + type: "string", + }, + initialId: { + baseName: "initial_id", + type: "string", + }, + isFastRetry: { + baseName: "is_fast_retry", + type: "boolean", + }, + isLastRetry: { + baseName: "is_last_retry", + type: "boolean", + }, + netpath: { + baseName: "netpath", + type: "SyntheticsTestResultNetpath", + }, + netstats: { + baseName: "netstats", + type: "SyntheticsTestResultNetstats", + }, + ocsp: { + baseName: "ocsp", + type: "SyntheticsTestResultOCSPResponse", + }, + ping: { + baseName: "ping", + type: "SyntheticsTestResultTracerouteHop", + }, + receivedEmailCount: { + baseName: "received_email_count", + type: "number", + format: "int64", + }, + receivedMessage: { + baseName: "received_message", + type: "string", + }, + request: { + baseName: "request", + type: "SyntheticsTestResultRequestInfo", + }, + resolvedIp: { + baseName: "resolved_ip", + type: "string", + }, + response: { + baseName: "response", + type: "SyntheticsTestResultResponseInfo", + }, + runType: { + baseName: "run_type", + type: "SyntheticsTestResultRunType", + }, + sentMessage: { + baseName: "sent_message", + type: "string", + }, + startUrl: { + baseName: "start_url", + type: "string", + }, + startedAt: { + baseName: "started_at", + type: "number", + format: "int64", + }, + status: { + baseName: "status", + type: "SyntheticsTestResultStatus", + }, + steps: { + baseName: "steps", + type: "Array", + }, + timeToInteractive: { + baseName: "time_to_interactive", + type: "number", + format: "int64", + }, + timings: { + baseName: "timings", + type: "{ [key: string]: any; }", + }, + trace: { + baseName: "trace", + type: "SyntheticsTestResultTrace", + }, + traceroute: { + baseName: "traceroute", + type: "Array", + }, + triggeredAt: { + baseName: "triggered_at", + type: "number", + format: "int64", + }, + tunnel: { + baseName: "tunnel", + type: "boolean", + }, + turns: { + baseName: "turns", + type: "Array", + }, + unhealthy: { + baseName: "unhealthy", + type: "boolean", + }, + variables: { + baseName: "variables", + type: "SyntheticsTestResultVariables", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultDetail.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultDevice.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultDevice.ts new file mode 100644 index 000000000000..908a85f52a41 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultDevice.ts @@ -0,0 +1,95 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultDeviceBrowser } from "./SyntheticsTestResultDeviceBrowser"; +import { SyntheticsTestResultDevicePlatform } from "./SyntheticsTestResultDevicePlatform"; +import { SyntheticsTestResultDeviceResolution } from "./SyntheticsTestResultDeviceResolution"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Device information for the test result (browser and mobile tests). + */ +export class SyntheticsTestResultDevice { + /** + * Browser information for the device used to run the test. + */ + "browser"?: SyntheticsTestResultDeviceBrowser; + /** + * Device identifier. + */ + "id"?: string; + /** + * Device name. + */ + "name"?: string; + /** + * Platform information for the device used to run the test. + */ + "platform"?: SyntheticsTestResultDevicePlatform; + /** + * Screen resolution of the device used to run the test. + */ + "resolution"?: SyntheticsTestResultDeviceResolution; + /** + * Device type. + */ + "type"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + browser: { + baseName: "browser", + type: "SyntheticsTestResultDeviceBrowser", + }, + id: { + baseName: "id", + type: "string", + }, + name: { + baseName: "name", + type: "string", + }, + platform: { + baseName: "platform", + type: "SyntheticsTestResultDevicePlatform", + }, + resolution: { + baseName: "resolution", + type: "SyntheticsTestResultDeviceResolution", + }, + type: { + baseName: "type", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultDevice.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultDeviceBrowser.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultDeviceBrowser.ts new file mode 100644 index 000000000000..9bed18284330 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultDeviceBrowser.ts @@ -0,0 +1,68 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Browser information for the device used to run the test. + */ +export class SyntheticsTestResultDeviceBrowser { + /** + * Browser type (for example, `chrome`, `firefox`). + */ + "type"?: string; + /** + * User agent string reported by the browser. + */ + "userAgent"?: string; + /** + * Browser version. + */ + "version"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + type: { + baseName: "type", + type: "string", + }, + userAgent: { + baseName: "user_agent", + type: "string", + }, + version: { + baseName: "version", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultDeviceBrowser.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultFailure.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultDevicePlatform.ts similarity index 73% rename from packages/datadog-api-client-v2/models/SyntheticsFastTestResultFailure.ts rename to packages/datadog-api-client-v2/models/SyntheticsTestResultDevicePlatform.ts index c3d626b00795..bbbec2868cd2 100644 --- a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultFailure.ts +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultDevicePlatform.ts @@ -7,17 +7,17 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; /** - * Failure details if the fast test did not pass. + * Platform information for the device used to run the test. */ -export class SyntheticsFastTestResultFailure { +export class SyntheticsTestResultDevicePlatform { /** - * Error code identifying the failure type. + * Platform name (for example, `linux`, `macos`). */ - "code"?: string; + "name"?: string; /** - * Human-readable description of the failure. + * Platform version. */ - "message"?: string; + "version"?: string; /** * A container for additional, undeclared properties. @@ -35,12 +35,12 @@ export class SyntheticsFastTestResultFailure { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { - code: { - baseName: "code", + name: { + baseName: "name", type: "string", }, - message: { - baseName: "message", + version: { + baseName: "version", type: "string", }, additionalProperties: { @@ -53,7 +53,7 @@ export class SyntheticsFastTestResultFailure { * @ignore */ static getAttributeTypeMap(): AttributeTypeMap { - return SyntheticsFastTestResultFailure.attributeTypeMap; + return SyntheticsTestResultDevicePlatform.attributeTypeMap; } public constructor() {} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultDeviceResolution.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultDeviceResolution.ts new file mode 100644 index 000000000000..a8bd68eeb069 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultDeviceResolution.ts @@ -0,0 +1,71 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Screen resolution of the device used to run the test. + */ +export class SyntheticsTestResultDeviceResolution { + /** + * Viewport height in pixels. + */ + "height"?: number; + /** + * Device pixel ratio. + */ + "pixelRatio"?: number; + /** + * Viewport width in pixels. + */ + "width"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + height: { + baseName: "height", + type: "number", + format: "int64", + }, + pixelRatio: { + baseName: "pixel_ratio", + type: "number", + format: "double", + }, + width: { + baseName: "width", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultDeviceResolution.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultDnsRecord.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultDnsRecord.ts new file mode 100644 index 000000000000..38001112922d --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultDnsRecord.ts @@ -0,0 +1,60 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A DNS record returned in a DNS test response. + */ +export class SyntheticsTestResultDnsRecord { + /** + * DNS record type (for example, `A`, `AAAA`, `CNAME`). + */ + "type"?: string; + /** + * Values associated with the DNS record. + */ + "values"?: Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + type: { + baseName: "type", + type: "string", + }, + values: { + baseName: "values", + type: "Array", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultDnsRecord.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultDnsResolution.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultDnsResolution.ts new file mode 100644 index 000000000000..ea74f3a01a9f --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultDnsResolution.ts @@ -0,0 +1,76 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * DNS resolution details recorded during the test execution. + */ +export class SyntheticsTestResultDnsResolution { + /** + * DNS resolution attempts made during the test. + */ + "attempts"?: Array<{ [key: string]: string }>; + /** + * Resolved IP address for the target host. + */ + "resolvedIp"?: string; + /** + * Resolved port for the target service. + */ + "resolvedPort"?: string; + /** + * DNS server used for the resolution. + */ + "server"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + attempts: { + baseName: "attempts", + type: "Array<{ [key: string]: string; }>", + }, + resolvedIp: { + baseName: "resolved_ip", + type: "string", + }, + resolvedPort: { + baseName: "resolved_port", + type: "string", + }, + server: { + baseName: "server", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultDnsResolution.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultExecutionInfo.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultExecutionInfo.ts new file mode 100644 index 000000000000..527a1c3c6577 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultExecutionInfo.ts @@ -0,0 +1,93 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Execution details for a Synthetic test result. + */ +export class SyntheticsTestResultExecutionInfo { + /** + * Total duration of the test execution in milliseconds. + */ + "duration"?: number; + /** + * Error message if the execution encountered an issue. + */ + "errorMessage"?: string; + /** + * Whether this result is from a fast retry. + */ + "isFastRetry"?: boolean; + /** + * Timing breakdown of the test execution in milliseconds. + */ + "timings"?: { [key: string]: any }; + /** + * Whether the test was executed through a tunnel. + */ + "tunnel"?: boolean; + /** + * Whether the location was unhealthy during execution. + */ + "unhealthy"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + duration: { + baseName: "duration", + type: "number", + format: "double", + }, + errorMessage: { + baseName: "error_message", + type: "string", + }, + isFastRetry: { + baseName: "is_fast_retry", + type: "boolean", + }, + timings: { + baseName: "timings", + type: "{ [key: string]: any; }", + }, + tunnel: { + baseName: "tunnel", + type: "boolean", + }, + unhealthy: { + baseName: "unhealthy", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultExecutionInfo.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultFailure.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultFailure.ts new file mode 100644 index 000000000000..3eada886586e --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultFailure.ts @@ -0,0 +1,76 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Details about the failure of a Synthetic test. + */ +export class SyntheticsTestResultFailure { + /** + * Error code for the failure. + */ + "code"?: string; + /** + * Internal error code used for debugging. + */ + "internalCode"?: string; + /** + * Internal error message used for debugging. + */ + "internalMessage"?: string; + /** + * Error message for the failure. + */ + "message"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + code: { + baseName: "code", + type: "string", + }, + internalCode: { + baseName: "internal_code", + type: "string", + }, + internalMessage: { + baseName: "internal_message", + type: "string", + }, + message: { + baseName: "message", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultFailure.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultFileRef.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultFileRef.ts new file mode 100644 index 000000000000..b543d3407481 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultFileRef.ts @@ -0,0 +1,85 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Reference to a file attached to a Synthetic test request. + */ +export class SyntheticsTestResultFileRef { + /** + * Storage bucket key where the file is stored. + */ + "bucketKey"?: string; + /** + * Encoding of the file contents. + */ + "encoding"?: string; + /** + * File name. + */ + "name"?: string; + /** + * File size in bytes. + */ + "size"?: number; + /** + * File MIME type. + */ + "type"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + bucketKey: { + baseName: "bucket_key", + type: "string", + }, + encoding: { + baseName: "encoding", + type: "string", + }, + name: { + baseName: "name", + type: "string", + }, + size: { + baseName: "size", + type: "number", + format: "int64", + }, + type: { + baseName: "type", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultFileRef.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultGit.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultGit.ts new file mode 100644 index 000000000000..efc657a16e55 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultGit.ts @@ -0,0 +1,69 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultGitCommit } from "./SyntheticsTestResultGitCommit"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Git information associated with the test result. + */ +export class SyntheticsTestResultGit { + /** + * Git branch name. + */ + "branch"?: string; + /** + * Details of the Git commit associated with the test result. + */ + "commit"?: SyntheticsTestResultGitCommit; + /** + * Git repository URL. + */ + "repositoryUrl"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + branch: { + baseName: "branch", + type: "string", + }, + commit: { + baseName: "commit", + type: "SyntheticsTestResultGitCommit", + }, + repositoryUrl: { + baseName: "repository_url", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultGit.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultGitCommit.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultGitCommit.ts new file mode 100644 index 000000000000..ba82fac012cc --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultGitCommit.ts @@ -0,0 +1,85 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultGitUser } from "./SyntheticsTestResultGitUser"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Details of the Git commit associated with the test result. + */ +export class SyntheticsTestResultGitCommit { + /** + * A Git user (author or committer). + */ + "author"?: SyntheticsTestResultGitUser; + /** + * A Git user (author or committer). + */ + "committer"?: SyntheticsTestResultGitUser; + /** + * Commit message. + */ + "message"?: string; + /** + * Commit SHA. + */ + "sha"?: string; + /** + * URL of the commit. + */ + "url"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + author: { + baseName: "author", + type: "SyntheticsTestResultGitUser", + }, + committer: { + baseName: "committer", + type: "SyntheticsTestResultGitUser", + }, + message: { + baseName: "message", + type: "string", + }, + sha: { + baseName: "sha", + type: "string", + }, + url: { + baseName: "url", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultGitCommit.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultGitUser.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultGitUser.ts new file mode 100644 index 000000000000..97149212f9d9 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultGitUser.ts @@ -0,0 +1,68 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A Git user (author or committer). + */ +export class SyntheticsTestResultGitUser { + /** + * Timestamp of the commit action for this user. + */ + "date"?: string; + /** + * Email address of the Git user. + */ + "email"?: string; + /** + * Name of the Git user. + */ + "name"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + date: { + baseName: "date", + type: "string", + }, + email: { + baseName: "email", + type: "string", + }, + name: { + baseName: "name", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultGitUser.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultHandshake.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultHandshake.ts new file mode 100644 index 000000000000..a5177d57b4c0 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultHandshake.ts @@ -0,0 +1,62 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultRequestInfo } from "./SyntheticsTestResultRequestInfo"; +import { SyntheticsTestResultResponseInfo } from "./SyntheticsTestResultResponseInfo"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Handshake request and response for protocol-level tests. + */ +export class SyntheticsTestResultHandshake { + /** + * Details of the outgoing request made during the test execution. + */ + "request"?: SyntheticsTestResultRequestInfo; + /** + * Details of the response received during the test execution. + */ + "response"?: SyntheticsTestResultResponseInfo; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + request: { + baseName: "request", + type: "SyntheticsTestResultRequestInfo", + }, + response: { + baseName: "response", + type: "SyntheticsTestResultResponseInfo", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultHandshake.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultHealthCheck.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultHealthCheck.ts new file mode 100644 index 000000000000..a96471c6233e --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultHealthCheck.ts @@ -0,0 +1,61 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Health check information returned from a gRPC health check call. + */ +export class SyntheticsTestResultHealthCheck { + /** + * Raw health check message payload. + */ + "message"?: { [key: string]: string }; + /** + * Health check status code. + */ + "status"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + message: { + baseName: "message", + type: "{ [key: string]: string; }", + }, + status: { + baseName: "status", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultHealthCheck.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultIncludedItem.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultIncludedItem.ts new file mode 100644 index 000000000000..f185e940f167 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultIncludedItem.ts @@ -0,0 +1,68 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * An included related resource. + */ +export class SyntheticsTestResultIncludedItem { + /** + * Attributes of the included resource. + */ + "attributes"?: { [key: string]: any }; + /** + * ID of the included resource. + */ + "id"?: string; + /** + * Type of the included resource. + */ + "type"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + attributes: { + baseName: "attributes", + type: "{ [key: string]: any; }", + }, + id: { + baseName: "id", + type: "string", + }, + type: { + baseName: "type", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultIncludedItem.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultLocation.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultLocation.ts similarity index 83% rename from packages/datadog-api-client-v2/models/SyntheticsFastTestResultLocation.ts rename to packages/datadog-api-client-v2/models/SyntheticsTestResultLocation.ts index b064130762ab..c3244c000b1c 100644 --- a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultLocation.ts +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultLocation.ts @@ -7,19 +7,19 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; /** - * Location from which the fast test was executed. + * Location information for a Synthetic test result. */ -export class SyntheticsFastTestResultLocation { +export class SyntheticsTestResultLocation { /** - * ID of the location. + * Identifier of the location. */ "id"?: string; /** - * Display name of the location. + * Human-readable name of the location. */ "name"?: string; /** - * Agent version running at this location. + * Version of the worker that ran the test. */ "version"?: string; /** @@ -69,7 +69,7 @@ export class SyntheticsFastTestResultLocation { * @ignore */ static getAttributeTypeMap(): AttributeTypeMap { - return SyntheticsFastTestResultLocation.attributeTypeMap; + return SyntheticsTestResultLocation.attributeTypeMap; } public constructor() {} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpath.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpath.ts new file mode 100644 index 000000000000..af175eeacad1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpath.ts @@ -0,0 +1,112 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultNetpathDestination } from "./SyntheticsTestResultNetpathDestination"; +import { SyntheticsTestResultNetpathEndpoint } from "./SyntheticsTestResultNetpathEndpoint"; +import { SyntheticsTestResultNetpathHop } from "./SyntheticsTestResultNetpathHop"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Network Path test result capturing the path between source and destination. + */ +export class SyntheticsTestResultNetpath { + /** + * Destination endpoint of a network path measurement. + */ + "destination"?: SyntheticsTestResultNetpathDestination; + /** + * Hops along the network path. + */ + "hops"?: Array; + /** + * Origin of the network path (for example, probe source). + */ + "origin"?: string; + /** + * Identifier of the path trace. + */ + "pathtraceId"?: string; + /** + * Protocol used for the path trace (for example, `tcp`, `udp`, `icmp`). + */ + "protocol"?: string; + /** + * Source endpoint of a network path measurement. + */ + "source"?: SyntheticsTestResultNetpathEndpoint; + /** + * Tags associated with the network path measurement. + */ + "tags"?: Array; + /** + * Unix timestamp (ms) of the network path measurement. + */ + "timestamp"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + destination: { + baseName: "destination", + type: "SyntheticsTestResultNetpathDestination", + }, + hops: { + baseName: "hops", + type: "Array", + }, + origin: { + baseName: "origin", + type: "string", + }, + pathtraceId: { + baseName: "pathtrace_id", + type: "string", + }, + protocol: { + baseName: "protocol", + type: "string", + }, + source: { + baseName: "source", + type: "SyntheticsTestResultNetpathEndpoint", + }, + tags: { + baseName: "tags", + type: "Array", + }, + timestamp: { + baseName: "timestamp", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultNetpath.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathDestination.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathDestination.ts new file mode 100644 index 000000000000..682fbd6d4125 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathDestination.ts @@ -0,0 +1,69 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Destination endpoint of a network path measurement. + */ +export class SyntheticsTestResultNetpathDestination { + /** + * Hostname of the destination. + */ + "hostname"?: string; + /** + * IP address of the destination. + */ + "ipAddress"?: string; + /** + * Port of the destination service. + */ + "port"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + hostname: { + baseName: "hostname", + type: "string", + }, + ipAddress: { + baseName: "ip_address", + type: "string", + }, + port: { + baseName: "port", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultNetpathDestination.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathEndpoint.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathEndpoint.ts new file mode 100644 index 000000000000..8a79a9ac792d --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathEndpoint.ts @@ -0,0 +1,52 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Source endpoint of a network path measurement. + */ +export class SyntheticsTestResultNetpathEndpoint { + /** + * Hostname of the endpoint. + */ + "hostname"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + hostname: { + baseName: "hostname", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultNetpathEndpoint.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathHop.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathHop.ts new file mode 100644 index 000000000000..e2b67e78999e --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetpathHop.ts @@ -0,0 +1,86 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A single hop along a network path. + */ +export class SyntheticsTestResultNetpathHop { + /** + * Resolved hostname of the hop. + */ + "hostname"?: string; + /** + * IP address of the hop. + */ + "ipAddress"?: string; + /** + * Whether this hop was reachable. + */ + "reachable"?: boolean; + /** + * Round-trip time to this hop in milliseconds. + */ + "rtt"?: number; + /** + * Time-to-live value of the probe packet at this hop. + */ + "ttl"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + hostname: { + baseName: "hostname", + type: "string", + }, + ipAddress: { + baseName: "ip_address", + type: "string", + }, + reachable: { + baseName: "reachable", + type: "boolean", + }, + rtt: { + baseName: "rtt", + type: "number", + format: "double", + }, + ttl: { + baseName: "ttl", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultNetpathHop.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultNetstats.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetstats.ts new file mode 100644 index 000000000000..d04ba4b323db --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetstats.ts @@ -0,0 +1,98 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultNetstatsHops } from "./SyntheticsTestResultNetstatsHops"; +import { SyntheticsTestResultNetworkLatency } from "./SyntheticsTestResultNetworkLatency"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Aggregated network statistics from the test execution. + */ +export class SyntheticsTestResultNetstats { + /** + * Statistics about the number of hops for a network test. + */ + "hops"?: SyntheticsTestResultNetstatsHops; + /** + * Network jitter in milliseconds. + */ + "jitter"?: number; + /** + * Latency statistics for a network probe. + */ + "latency"?: SyntheticsTestResultNetworkLatency; + /** + * Percentage of probe packets lost. + */ + "packetLossPercentage"?: number; + /** + * Number of probe packets received. + */ + "packetsReceived"?: number; + /** + * Number of probe packets sent. + */ + "packetsSent"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + hops: { + baseName: "hops", + type: "SyntheticsTestResultNetstatsHops", + }, + jitter: { + baseName: "jitter", + type: "number", + format: "double", + }, + latency: { + baseName: "latency", + type: "SyntheticsTestResultNetworkLatency", + }, + packetLossPercentage: { + baseName: "packet_loss_percentage", + type: "number", + format: "double", + }, + packetsReceived: { + baseName: "packets_received", + type: "number", + format: "int64", + }, + packetsSent: { + baseName: "packets_sent", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultNetstats.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultNetstatsHops.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetstatsHops.ts new file mode 100644 index 000000000000..f57e47995996 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetstatsHops.ts @@ -0,0 +1,71 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Statistics about the number of hops for a network test. + */ +export class SyntheticsTestResultNetstatsHops { + /** + * Average number of hops. + */ + "avg"?: number; + /** + * Maximum number of hops. + */ + "max"?: number; + /** + * Minimum number of hops. + */ + "min"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + avg: { + baseName: "avg", + type: "number", + format: "double", + }, + max: { + baseName: "max", + type: "number", + format: "int64", + }, + min: { + baseName: "min", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultNetstatsHops.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultNetworkLatency.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetworkLatency.ts new file mode 100644 index 000000000000..f3d2cde7a7fd --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultNetworkLatency.ts @@ -0,0 +1,71 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Latency statistics for a network probe. + */ +export class SyntheticsTestResultNetworkLatency { + /** + * Average latency in milliseconds. + */ + "avg"?: number; + /** + * Maximum latency in milliseconds. + */ + "max"?: number; + /** + * Minimum latency in milliseconds. + */ + "min"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + avg: { + baseName: "avg", + type: "number", + format: "double", + }, + max: { + baseName: "max", + type: "number", + format: "double", + }, + min: { + baseName: "min", + type: "number", + format: "double", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultNetworkLatency.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPCertificate.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPCertificate.ts new file mode 100644 index 000000000000..8b7f566b1cfe --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPCertificate.ts @@ -0,0 +1,69 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Certificate details returned in an OCSP response. + */ +export class SyntheticsTestResultOCSPCertificate { + /** + * Reason code for the revocation, when applicable. + */ + "revocationReason"?: string; + /** + * Unix timestamp (ms) of the revocation. + */ + "revocationTime"?: number; + /** + * Serial number of the certificate. + */ + "serialNumber"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + revocationReason: { + baseName: "revocation_reason", + type: "string", + }, + revocationTime: { + baseName: "revocation_time", + type: "number", + format: "int64", + }, + serialNumber: { + baseName: "serial_number", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultOCSPCertificate.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPResponse.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPResponse.ts new file mode 100644 index 000000000000..cf1b0fe10363 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPResponse.ts @@ -0,0 +1,70 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultOCSPCertificate } from "./SyntheticsTestResultOCSPCertificate"; +import { SyntheticsTestResultOCSPUpdates } from "./SyntheticsTestResultOCSPUpdates"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * OCSP response received while validating a certificate. + */ +export class SyntheticsTestResultOCSPResponse { + /** + * Certificate details returned in an OCSP response. + */ + "certificate"?: SyntheticsTestResultOCSPCertificate; + /** + * OCSP response status (for example, `good`, `revoked`, `unknown`). + */ + "status"?: string; + /** + * OCSP response update timestamps. + */ + "updates"?: SyntheticsTestResultOCSPUpdates; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + certificate: { + baseName: "certificate", + type: "SyntheticsTestResultOCSPCertificate", + }, + status: { + baseName: "status", + type: "string", + }, + updates: { + baseName: "updates", + type: "SyntheticsTestResultOCSPUpdates", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultOCSPResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPUpdates.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPUpdates.ts new file mode 100644 index 000000000000..9e40b861c1d7 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultOCSPUpdates.ts @@ -0,0 +1,71 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * OCSP response update timestamps. + */ +export class SyntheticsTestResultOCSPUpdates { + /** + * Unix timestamp (ms) of the next expected OCSP update. + */ + "nextUpdate"?: number; + /** + * Unix timestamp (ms) of when the OCSP response was produced. + */ + "producedAt"?: number; + /** + * Unix timestamp (ms) of this OCSP update. + */ + "thisUpdate"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + nextUpdate: { + baseName: "next_update", + type: "number", + format: "int64", + }, + producedAt: { + baseName: "produced_at", + type: "number", + format: "int64", + }, + thisUpdate: { + baseName: "this_update", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultOCSPUpdates.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultParentStep.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultParentStep.ts new file mode 100644 index 000000000000..4ba34d1210aa --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultParentStep.ts @@ -0,0 +1,52 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Reference to the parent step of a sub-step. + */ +export class SyntheticsTestResultParentStep { + /** + * Identifier of the parent step. + */ + "id"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultParentStep.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultParentTest.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultParentTest.ts new file mode 100644 index 000000000000..8128acb8a4e1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultParentTest.ts @@ -0,0 +1,52 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Reference to the parent test of a sub-step. + */ +export class SyntheticsTestResultParentTest { + /** + * Identifier of the parent test. + */ + "id"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultParentTest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultRedirect.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRedirect.ts new file mode 100644 index 000000000000..69f7dc2837f3 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRedirect.ts @@ -0,0 +1,61 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A redirect hop encountered while performing the request. + */ +export class SyntheticsTestResultRedirect { + /** + * Target location of the redirect. + */ + "location"?: string; + /** + * HTTP status code of the redirect response. + */ + "statusCode"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + location: { + baseName: "location", + type: "string", + }, + statusCode: { + baseName: "status_code", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultRedirect.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationshipTest.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationshipTest.ts new file mode 100644 index 000000000000..6e7aabde9a45 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationshipTest.ts @@ -0,0 +1,53 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultRelationshipTestData } from "./SyntheticsTestResultRelationshipTestData"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Relationship to the Synthetic test. + */ +export class SyntheticsTestResultRelationshipTest { + /** + * Data for the test relationship. + */ + "data"?: SyntheticsTestResultRelationshipTestData; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "SyntheticsTestResultRelationshipTestData", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultRelationshipTest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultDevice.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationshipTestData.ts similarity index 79% rename from packages/datadog-api-client-v2/models/SyntheticsFastTestResultDevice.ts rename to packages/datadog-api-client-v2/models/SyntheticsTestResultRelationshipTestData.ts index 565795194987..86c6ab701683 100644 --- a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultDevice.ts +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationshipTestData.ts @@ -7,17 +7,17 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; /** - * Device information for browser-based fast tests. + * Data for the test relationship. */ -export class SyntheticsFastTestResultDevice { +export class SyntheticsTestResultRelationshipTestData { /** - * Device identifier. + * The public ID of the test. */ "id"?: string; /** - * Display name of the device. + * Type of the related resource. */ - "name"?: string; + "type"?: string; /** * A container for additional, undeclared properties. @@ -39,8 +39,8 @@ export class SyntheticsFastTestResultDevice { baseName: "id", type: "string", }, - name: { - baseName: "name", + type: { + baseName: "type", type: "string", }, additionalProperties: { @@ -53,7 +53,7 @@ export class SyntheticsFastTestResultDevice { * @ignore */ static getAttributeTypeMap(): AttributeTypeMap { - return SyntheticsFastTestResultDevice.attributeTypeMap; + return SyntheticsTestResultRelationshipTestData.attributeTypeMap; } public constructor() {} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationships.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationships.ts new file mode 100644 index 000000000000..569b05331c28 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRelationships.ts @@ -0,0 +1,53 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultRelationshipTest } from "./SyntheticsTestResultRelationshipTest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Relationships for a Synthetic test result. + */ +export class SyntheticsTestResultRelationships { + /** + * Relationship to the Synthetic test. + */ + "test"?: SyntheticsTestResultRelationshipTest; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + test: { + baseName: "test", + type: "SyntheticsTestResultRelationshipTest", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultRelationships.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultRequestInfo.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRequestInfo.ts new file mode 100644 index 000000000000..237bbadb8db2 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRequestInfo.ts @@ -0,0 +1,218 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultFileRef } from "./SyntheticsTestResultFileRef"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Details of the outgoing request made during the test execution. + */ +export class SyntheticsTestResultRequestInfo { + /** + * Whether insecure certificates are allowed for this request. + */ + "allowInsecure"?: boolean; + /** + * Body sent with the request. + */ + "body"?: string; + /** + * gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + */ + "callType"?: string; + /** + * Destination service for a Network Path test. + */ + "destinationService"?: string; + /** + * DNS server used to resolve the target host. + */ + "dnsServer"?: string; + /** + * Port of the DNS server used for resolution. + */ + "dnsServerPort"?: number; + /** + * Number of end-to-end probe queries issued. + */ + "e2eQueries"?: number; + /** + * Files attached to the request. + */ + "files"?: Array; + /** + * Headers sent with the request. + */ + "headers"?: { [key: string]: any }; + /** + * Host targeted by the request. + */ + "host"?: string; + /** + * Maximum TTL for network probe packets. + */ + "maxTtl"?: number; + /** + * Message sent with the request (for WebSocket/TCP/UDP tests). + */ + "message"?: string; + /** + * HTTP method used for the request. + */ + "method"?: string; + /** + * Whether the response body was not saved. + */ + "noSavingResponseBody"?: boolean; + /** + * Port targeted by the request. Can be a number or a string variable reference. + */ + "port"?: any; + /** + * Service name targeted by the request (for gRPC tests). + */ + "service"?: string; + /** + * Source service for a Network Path test. + */ + "sourceService"?: string; + /** + * Request timeout in milliseconds. + */ + "timeout"?: number; + /** + * Name of the MCP tool called (MCP tests only). + */ + "toolName"?: string; + /** + * Number of traceroute probe queries issued. + */ + "tracerouteQueries"?: number; + /** + * URL targeted by the request. + */ + "url"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + allowInsecure: { + baseName: "allow_insecure", + type: "boolean", + }, + body: { + baseName: "body", + type: "string", + }, + callType: { + baseName: "call_type", + type: "string", + }, + destinationService: { + baseName: "destination_service", + type: "string", + }, + dnsServer: { + baseName: "dns_server", + type: "string", + }, + dnsServerPort: { + baseName: "dns_server_port", + type: "number", + format: "int64", + }, + e2eQueries: { + baseName: "e2e_queries", + type: "number", + format: "int64", + }, + files: { + baseName: "files", + type: "Array", + }, + headers: { + baseName: "headers", + type: "{ [key: string]: any; }", + }, + host: { + baseName: "host", + type: "string", + }, + maxTtl: { + baseName: "max_ttl", + type: "number", + format: "int64", + }, + message: { + baseName: "message", + type: "string", + }, + method: { + baseName: "method", + type: "string", + }, + noSavingResponseBody: { + baseName: "no_saving_response_body", + type: "boolean", + }, + port: { + baseName: "port", + type: "any", + }, + service: { + baseName: "service", + type: "string", + }, + sourceService: { + baseName: "source_service", + type: "string", + }, + timeout: { + baseName: "timeout", + type: "number", + format: "int64", + }, + toolName: { + baseName: "tool_name", + type: "string", + }, + tracerouteQueries: { + baseName: "traceroute_queries", + type: "number", + format: "int64", + }, + url: { + baseName: "url", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultRequestInfo.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultResponse.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultResponse.ts new file mode 100644 index 000000000000..06fe566fbbe8 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultResponse.ts @@ -0,0 +1,62 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultData } from "./SyntheticsTestResultData"; +import { SyntheticsTestResultIncludedItem } from "./SyntheticsTestResultIncludedItem"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Response object for a Synthetic test result. + */ +export class SyntheticsTestResultResponse { + /** + * Wrapper object for a Synthetic test result. + */ + "data"?: SyntheticsTestResultData; + /** + * Array of included related resources, such as the test definition. + */ + "included"?: Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "SyntheticsTestResultData", + }, + included: { + baseName: "included", + type: "Array", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultResponseInfo.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultResponseInfo.ts new file mode 100644 index 000000000000..c30198adcdb2 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultResponseInfo.ts @@ -0,0 +1,195 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultCdnProviderInfo } from "./SyntheticsTestResultCdnProviderInfo"; +import { SyntheticsTestResultDnsRecord } from "./SyntheticsTestResultDnsRecord"; +import { SyntheticsTestResultHealthCheck } from "./SyntheticsTestResultHealthCheck"; +import { SyntheticsTestResultRedirect } from "./SyntheticsTestResultRedirect"; +import { SyntheticsTestResultWebSocketClose } from "./SyntheticsTestResultWebSocketClose"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Details of the response received during the test execution. + */ +export class SyntheticsTestResultResponseInfo { + /** + * Body of the response. + */ + "body"?: string; + /** + * Compressed representation of the response body. + */ + "bodyCompressed"?: string; + /** + * Hashes computed over the response body. + */ + "bodyHashes"?: string; + /** + * Size of the response body in bytes. + */ + "bodySize"?: number; + /** + * Cache-related response headers. + */ + "cacheHeaders"?: { [key: string]: string }; + /** + * CDN provider details inferred from response headers. + */ + "cdn"?: SyntheticsTestResultCdnProviderInfo; + /** + * WebSocket close frame information for WebSocket test responses. + */ + "close"?: SyntheticsTestResultWebSocketClose; + /** + * Compressed representation of the response message. + */ + "compressedMessage"?: string; + /** + * Response headers. + */ + "headers"?: { [key: string]: any }; + /** + * Health check information returned from a gRPC health check call. + */ + "healthcheck"?: SyntheticsTestResultHealthCheck; + /** + * HTTP version of the response. + */ + "httpVersion"?: string; + /** + * Whether the response body was truncated. + */ + "isBodyTruncated"?: boolean; + /** + * Whether the response message was truncated. + */ + "isMessageTruncated"?: boolean; + /** + * Message received in the response (for WebSocket/TCP/UDP tests). + */ + "message"?: string; + /** + * Additional metadata returned with the response. + */ + "metadata"?: { [key: string]: string }; + /** + * DNS records returned in the response (DNS tests only). + */ + "records"?: Array; + /** + * Redirect hops encountered while performing the request. + */ + "redirects"?: Array; + /** + * HTTP status code of the response. + */ + "statusCode"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + body: { + baseName: "body", + type: "string", + }, + bodyCompressed: { + baseName: "body_compressed", + type: "string", + }, + bodyHashes: { + baseName: "body_hashes", + type: "string", + }, + bodySize: { + baseName: "body_size", + type: "number", + format: "int64", + }, + cacheHeaders: { + baseName: "cache_headers", + type: "{ [key: string]: string; }", + }, + cdn: { + baseName: "cdn", + type: "SyntheticsTestResultCdnProviderInfo", + }, + close: { + baseName: "close", + type: "SyntheticsTestResultWebSocketClose", + }, + compressedMessage: { + baseName: "compressed_message", + type: "string", + }, + headers: { + baseName: "headers", + type: "{ [key: string]: any; }", + }, + healthcheck: { + baseName: "healthcheck", + type: "SyntheticsTestResultHealthCheck", + }, + httpVersion: { + baseName: "http_version", + type: "string", + }, + isBodyTruncated: { + baseName: "is_body_truncated", + type: "boolean", + }, + isMessageTruncated: { + baseName: "is_message_truncated", + type: "boolean", + }, + message: { + baseName: "message", + type: "string", + }, + metadata: { + baseName: "metadata", + type: "{ [key: string]: string; }", + }, + records: { + baseName: "records", + type: "Array", + }, + redirects: { + baseName: "redirects", + type: "Array", + }, + statusCode: { + baseName: "status_code", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultResponseInfo.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultRouter.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRouter.ts new file mode 100644 index 000000000000..5baeff762b7c --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRouter.ts @@ -0,0 +1,60 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A router along the traceroute path. + */ +export class SyntheticsTestResultRouter { + /** + * IP address of the router. + */ + "ip"?: string; + /** + * Resolved hostname of the router. + */ + "resolvedHost"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + ip: { + baseName: "ip", + type: "string", + }, + resolvedHost: { + baseName: "resolved_host", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultRouter.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultRumContext.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRumContext.ts new file mode 100644 index 000000000000..896dc860dcd1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRumContext.ts @@ -0,0 +1,68 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * RUM application context associated with a step or sub-test. + */ +export class SyntheticsTestResultRumContext { + /** + * RUM application identifier. + */ + "applicationId"?: string; + /** + * RUM session identifier. + */ + "sessionId"?: string; + /** + * RUM view identifier. + */ + "viewId"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + applicationId: { + baseName: "application_id", + type: "string", + }, + sessionId: { + baseName: "session_id", + type: "string", + }, + viewId: { + baseName: "view_id", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultRumContext.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultRunType.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultRunType.ts new file mode 100644 index 000000000000..a4593558d7a2 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultRunType.ts @@ -0,0 +1,22 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The type of run for a Synthetic test result. + */ + +export type SyntheticsTestResultRunType = + | typeof SCHEDULED + | typeof FAST + | typeof CI + | typeof TRIGGERED + | UnparsedObject; +export const SCHEDULED = "scheduled"; +export const FAST = "fast"; +export const CI = "ci"; +export const TRIGGERED = "triggered"; diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultStatus.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultStatus.ts new file mode 100644 index 000000000000..218d97f2ce56 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultStatus.ts @@ -0,0 +1,20 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * Status of a Synthetic test result. + */ + +export type SyntheticsTestResultStatus = + | typeof PASSED + | typeof FAILED + | typeof NO_DATA + | UnparsedObject; +export const PASSED = "passed"; +export const FAILED = "failed"; +export const NO_DATA = "no_data"; diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultStep.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultStep.ts new file mode 100644 index 000000000000..69cff1bd7237 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultStep.ts @@ -0,0 +1,410 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultAssertionResult } from "./SyntheticsTestResultAssertionResult"; +import { SyntheticsTestResultBounds } from "./SyntheticsTestResultBounds"; +import { SyntheticsTestResultBrowserError } from "./SyntheticsTestResultBrowserError"; +import { SyntheticsTestResultBucketKeys } from "./SyntheticsTestResultBucketKeys"; +import { SyntheticsTestResultCdnResource } from "./SyntheticsTestResultCdnResource"; +import { SyntheticsTestResultFailure } from "./SyntheticsTestResultFailure"; +import { SyntheticsTestResultRequestInfo } from "./SyntheticsTestResultRequestInfo"; +import { SyntheticsTestResultResponseInfo } from "./SyntheticsTestResultResponseInfo"; +import { SyntheticsTestResultRumContext } from "./SyntheticsTestResultRumContext"; +import { SyntheticsTestResultStepAssertionResult } from "./SyntheticsTestResultStepAssertionResult"; +import { SyntheticsTestResultStepElementUpdates } from "./SyntheticsTestResultStepElementUpdates"; +import { SyntheticsTestResultSubStep } from "./SyntheticsTestResultSubStep"; +import { SyntheticsTestResultSubTest } from "./SyntheticsTestResultSubTest"; +import { SyntheticsTestResultTab } from "./SyntheticsTestResultTab"; +import { SyntheticsTestResultVariable } from "./SyntheticsTestResultVariable"; +import { SyntheticsTestResultVariables } from "./SyntheticsTestResultVariables"; +import { SyntheticsTestResultVitalsMetrics } from "./SyntheticsTestResultVitalsMetrics"; +import { SyntheticsTestResultWarning } from "./SyntheticsTestResultWarning"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A step result from a browser, mobile, or multistep API test. + */ +export class SyntheticsTestResultStep { + /** + * Whether the test continues when this step fails. + */ + "allowFailure"?: boolean; + /** + * Inner API test definition for browser `runApiTest` steps. + */ + "apiTest"?: { [key: string]: any }; + /** + * Assertion result for a browser or mobile step. + */ + "assertionResult"?: SyntheticsTestResultStepAssertionResult; + /** + * Assertion results produced by the step. + */ + "assertions"?: Array; + /** + * URLs of requests blocked during the step. + */ + "blockedRequestsUrls"?: Array; + /** + * Bounding box of an element on the page. + */ + "bounds"?: SyntheticsTestResultBounds; + /** + * Browser errors captured during the step. + */ + "browserErrors"?: Array; + /** + * Storage bucket keys for artifacts produced during a step or test. + */ + "bucketKeys"?: SyntheticsTestResultBucketKeys; + /** + * CDN resources encountered during the step. + */ + "cdnResources"?: Array; + /** + * Click type performed in a browser step. + */ + "clickType"?: string; + /** + * Compressed JSON descriptor for the step (internal format). + */ + "compressedJsonDescriptor"?: string; + /** + * Request configuration executed by this step (API test steps). + */ + "config"?: { [key: string]: any }; + /** + * Human-readable description of the step. + */ + "description"?: string; + /** + * Duration of the step in milliseconds. + */ + "duration"?: number; + /** + * Description of the element interacted with by the step. + */ + "elementDescription"?: string; + /** + * Element locator updates produced during a step. + */ + "elementUpdates"?: SyntheticsTestResultStepElementUpdates; + /** + * A variable used or extracted during a test. + */ + "extractedValue"?: SyntheticsTestResultVariable; + /** + * Details about the failure of a Synthetic test. + */ + "failure"?: SyntheticsTestResultFailure; + /** + * HTTP results produced by an MCP step. + */ + "httpResults"?: Array; + /** + * Identifier of the step. + */ + "id"?: string; + /** + * Whether this step is critical for the test outcome. + */ + "isCritical"?: boolean; + /** + * Whether the step uses a custom JavaScript assertion. + */ + "javascriptCustomAssertionCode"?: boolean; + /** + * Time taken to locate the element in milliseconds. + */ + "locateElementDuration"?: number; + /** + * Name of the step. + */ + "name"?: string; + /** + * Details of the outgoing request made during the test execution. + */ + "request"?: SyntheticsTestResultRequestInfo; + /** + * Details of the response received during the test execution. + */ + "response"?: SyntheticsTestResultResponseInfo; + /** + * Retry results for the step. + */ + "retries"?: Array; + /** + * Number of times this step was retried. + */ + "retryCount"?: number; + /** + * RUM application context associated with a step or sub-test. + */ + "rumContext"?: SyntheticsTestResultRumContext; + /** + * Unix timestamp (ms) of when the step started. + */ + "startedAt"?: number; + /** + * Status of the step (for example, `passed`, `failed`). + */ + "status"?: string; + /** + * Information about a sub-step in a nested test execution. + */ + "subStep"?: SyntheticsTestResultSubStep; + /** + * Information about a sub-test played from a parent browser test. + */ + "subTest"?: SyntheticsTestResultSubTest; + /** + * Subtype of the step. + */ + "subtype"?: string; + /** + * Browser tabs involved in the step. + */ + "tabs"?: Array; + /** + * Timing breakdown of the step execution. + */ + "timings"?: { [key: string]: any }; + /** + * Whether the step was executed through a Synthetics tunnel. + */ + "tunnel"?: boolean; + /** + * Type of the step (for example, `click`, `assertElementContent`, `runApiTest`). + */ + "type"?: string; + /** + * URL associated with the step (for navigation steps). + */ + "url"?: string; + /** + * Step value. Its type depends on the step type. + */ + "value"?: any; + /** + * Variables captured during a test step. + */ + "variables"?: SyntheticsTestResultVariables; + /** + * Web vitals metrics captured during the step. + */ + "vitalsMetrics"?: Array; + /** + * Warnings emitted during the step. + */ + "warnings"?: Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + allowFailure: { + baseName: "allow_failure", + type: "boolean", + }, + apiTest: { + baseName: "api_test", + type: "{ [key: string]: any; }", + }, + assertionResult: { + baseName: "assertion_result", + type: "SyntheticsTestResultStepAssertionResult", + }, + assertions: { + baseName: "assertions", + type: "Array", + }, + blockedRequestsUrls: { + baseName: "blocked_requests_urls", + type: "Array", + }, + bounds: { + baseName: "bounds", + type: "SyntheticsTestResultBounds", + }, + browserErrors: { + baseName: "browser_errors", + type: "Array", + }, + bucketKeys: { + baseName: "bucket_keys", + type: "SyntheticsTestResultBucketKeys", + }, + cdnResources: { + baseName: "cdn_resources", + type: "Array", + }, + clickType: { + baseName: "click_type", + type: "string", + }, + compressedJsonDescriptor: { + baseName: "compressed_json_descriptor", + type: "string", + }, + config: { + baseName: "config", + type: "{ [key: string]: any; }", + }, + description: { + baseName: "description", + type: "string", + }, + duration: { + baseName: "duration", + type: "number", + format: "double", + }, + elementDescription: { + baseName: "element_description", + type: "string", + }, + elementUpdates: { + baseName: "element_updates", + type: "SyntheticsTestResultStepElementUpdates", + }, + extractedValue: { + baseName: "extracted_value", + type: "SyntheticsTestResultVariable", + }, + failure: { + baseName: "failure", + type: "SyntheticsTestResultFailure", + }, + httpResults: { + baseName: "http_results", + type: "Array", + }, + id: { + baseName: "id", + type: "string", + }, + isCritical: { + baseName: "is_critical", + type: "boolean", + }, + javascriptCustomAssertionCode: { + baseName: "javascript_custom_assertion_code", + type: "boolean", + }, + locateElementDuration: { + baseName: "locate_element_duration", + type: "number", + format: "double", + }, + name: { + baseName: "name", + type: "string", + }, + request: { + baseName: "request", + type: "SyntheticsTestResultRequestInfo", + }, + response: { + baseName: "response", + type: "SyntheticsTestResultResponseInfo", + }, + retries: { + baseName: "retries", + type: "Array", + }, + retryCount: { + baseName: "retry_count", + type: "number", + format: "int64", + }, + rumContext: { + baseName: "rum_context", + type: "SyntheticsTestResultRumContext", + }, + startedAt: { + baseName: "started_at", + type: "number", + format: "int64", + }, + status: { + baseName: "status", + type: "string", + }, + subStep: { + baseName: "sub_step", + type: "SyntheticsTestResultSubStep", + }, + subTest: { + baseName: "sub_test", + type: "SyntheticsTestResultSubTest", + }, + subtype: { + baseName: "subtype", + type: "string", + }, + tabs: { + baseName: "tabs", + type: "Array", + }, + timings: { + baseName: "timings", + type: "{ [key: string]: any; }", + }, + tunnel: { + baseName: "tunnel", + type: "boolean", + }, + type: { + baseName: "type", + type: "string", + }, + url: { + baseName: "url", + type: "string", + }, + value: { + baseName: "value", + type: "any", + }, + variables: { + baseName: "variables", + type: "SyntheticsTestResultVariables", + }, + vitalsMetrics: { + baseName: "vitals_metrics", + type: "Array", + }, + warnings: { + baseName: "warnings", + type: "Array", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultStep.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultStepAssertionResult.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultStepAssertionResult.ts new file mode 100644 index 000000000000..73eb1d53e203 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultStepAssertionResult.ts @@ -0,0 +1,76 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Assertion result for a browser or mobile step. + */ +export class SyntheticsTestResultStepAssertionResult { + /** + * Actual value observed during the step assertion. Its type depends on the check type. + */ + "actual"?: any; + /** + * Type of the step assertion check. + */ + "checkType"?: string; + /** + * Expected value for the step assertion. Its type depends on the check type. + */ + "expected"?: any; + /** + * Whether the assertion involves secure variables. + */ + "hasSecureVariables"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + actual: { + baseName: "actual", + type: "any", + }, + checkType: { + baseName: "check_type", + type: "string", + }, + expected: { + baseName: "expected", + type: "any", + }, + hasSecureVariables: { + baseName: "has_secure_variables", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultStepAssertionResult.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultStepElementUpdates.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultStepElementUpdates.ts new file mode 100644 index 000000000000..92d4bbcb3a7c --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultStepElementUpdates.ts @@ -0,0 +1,69 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Element locator updates produced during a step. + */ +export class SyntheticsTestResultStepElementUpdates { + /** + * Updated multi-locator definition. + */ + "multiLocator"?: { [key: string]: string }; + /** + * Updated outer HTML of the targeted element. + */ + "targetOuterHtml"?: string; + /** + * Version of the element locator definition. + */ + "version"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + multiLocator: { + baseName: "multi_locator", + type: "{ [key: string]: string; }", + }, + targetOuterHtml: { + baseName: "target_outer_html", + type: "string", + }, + version: { + baseName: "version", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultStepElementUpdates.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultStepsInfo.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultStepsInfo.ts new file mode 100644 index 000000000000..5e6cf3be2901 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultStepsInfo.ts @@ -0,0 +1,71 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Step execution summary for a Synthetic test result. + */ +export class SyntheticsTestResultStepsInfo { + /** + * Number of completed steps. + */ + "completed"?: number; + /** + * Number of steps with errors. + */ + "errors"?: number; + /** + * Total number of steps. + */ + "total"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + completed: { + baseName: "completed", + type: "number", + format: "int64", + }, + errors: { + baseName: "errors", + type: "number", + format: "int64", + }, + total: { + baseName: "total", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultStepsInfo.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultSubStep.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultSubStep.ts new file mode 100644 index 000000000000..f8aec435d1f4 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultSubStep.ts @@ -0,0 +1,71 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultParentStep } from "./SyntheticsTestResultParentStep"; +import { SyntheticsTestResultParentTest } from "./SyntheticsTestResultParentTest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Information about a sub-step in a nested test execution. + */ +export class SyntheticsTestResultSubStep { + /** + * Depth of the sub-step in the execution tree. + */ + "level"?: number; + /** + * Reference to the parent step of a sub-step. + */ + "parentStep"?: SyntheticsTestResultParentStep; + /** + * Reference to the parent test of a sub-step. + */ + "parentTest"?: SyntheticsTestResultParentTest; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + level: { + baseName: "level", + type: "number", + format: "int64", + }, + parentStep: { + baseName: "parent_step", + type: "SyntheticsTestResultParentStep", + }, + parentTest: { + baseName: "parent_test", + type: "SyntheticsTestResultParentTest", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultSubStep.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultSubTest.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultSubTest.ts new file mode 100644 index 000000000000..cf94a4a14402 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultSubTest.ts @@ -0,0 +1,70 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultRumContext } from "./SyntheticsTestResultRumContext"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Information about a sub-test played from a parent browser test. + */ +export class SyntheticsTestResultSubTest { + /** + * Identifier of the sub-test. + */ + "id"?: string; + /** + * Index of the browser tab playing the sub-test. + */ + "playingTab"?: number; + /** + * RUM application context associated with a step or sub-test. + */ + "rumContext"?: SyntheticsTestResultRumContext; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + }, + playingTab: { + baseName: "playing_tab", + type: "number", + format: "int64", + }, + rumContext: { + baseName: "rum_context", + type: "SyntheticsTestResultRumContext", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultSubTest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryAttributes.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryAttributes.ts new file mode 100644 index 000000000000..bf35c4caa36e --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryAttributes.ts @@ -0,0 +1,132 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultDevice } from "./SyntheticsTestResultDevice"; +import { SyntheticsTestResultExecutionInfo } from "./SyntheticsTestResultExecutionInfo"; +import { SyntheticsTestResultLocation } from "./SyntheticsTestResultLocation"; +import { SyntheticsTestResultRunType } from "./SyntheticsTestResultRunType"; +import { SyntheticsTestResultStatus } from "./SyntheticsTestResultStatus"; +import { SyntheticsTestResultStepsInfo } from "./SyntheticsTestResultStepsInfo"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Attributes of a Synthetic test result summary. + */ +export class SyntheticsTestResultSummaryAttributes { + /** + * Device information for the test result (browser and mobile tests). + */ + "device"?: SyntheticsTestResultDevice; + /** + * Execution details for a Synthetic test result. + */ + "executionInfo"?: SyntheticsTestResultExecutionInfo; + /** + * Timestamp of when the test finished (in milliseconds). + */ + "finishedAt"?: number; + /** + * Location information for a Synthetic test result. + */ + "location"?: SyntheticsTestResultLocation; + /** + * The type of run for a Synthetic test result. + */ + "runType"?: SyntheticsTestResultRunType; + /** + * Timestamp of when the test started (in milliseconds). + */ + "startedAt"?: number; + /** + * Status of a Synthetic test result. + */ + "status"?: SyntheticsTestResultStatus; + /** + * Step execution summary for a Synthetic test result. + */ + "stepsInfo"?: SyntheticsTestResultStepsInfo; + /** + * The subtype of the test (for example, `http`, `multi`, `ssl`). + */ + "testSubType"?: string; + /** + * The type of the test (for example, `api` or `browser`). + */ + "testType"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + device: { + baseName: "device", + type: "SyntheticsTestResultDevice", + }, + executionInfo: { + baseName: "execution_info", + type: "SyntheticsTestResultExecutionInfo", + }, + finishedAt: { + baseName: "finished_at", + type: "number", + format: "int64", + }, + location: { + baseName: "location", + type: "SyntheticsTestResultLocation", + }, + runType: { + baseName: "run_type", + type: "SyntheticsTestResultRunType", + }, + startedAt: { + baseName: "started_at", + type: "number", + format: "int64", + }, + status: { + baseName: "status", + type: "SyntheticsTestResultStatus", + }, + stepsInfo: { + baseName: "steps_info", + type: "SyntheticsTestResultStepsInfo", + }, + testSubType: { + baseName: "test_sub_type", + type: "string", + }, + testType: { + baseName: "test_type", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultSummaryAttributes.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryData.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryData.ts new file mode 100644 index 000000000000..a08496b73f6d --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryData.ts @@ -0,0 +1,79 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultRelationships } from "./SyntheticsTestResultRelationships"; +import { SyntheticsTestResultSummaryAttributes } from "./SyntheticsTestResultSummaryAttributes"; +import { SyntheticsTestResultSummaryType } from "./SyntheticsTestResultSummaryType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Wrapper object for a Synthetic test result summary. + */ +export class SyntheticsTestResultSummaryData { + /** + * Attributes of a Synthetic test result summary. + */ + "attributes"?: SyntheticsTestResultSummaryAttributes; + /** + * The result ID. + */ + "id"?: string; + /** + * Relationships for a Synthetic test result. + */ + "relationships"?: SyntheticsTestResultRelationships; + /** + * Type of the Synthetic test result summary resource, `result_summary`. + */ + "type"?: SyntheticsTestResultSummaryType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + attributes: { + baseName: "attributes", + type: "SyntheticsTestResultSummaryAttributes", + }, + id: { + baseName: "id", + type: "string", + }, + relationships: { + baseName: "relationships", + type: "SyntheticsTestResultRelationships", + }, + type: { + baseName: "type", + type: "SyntheticsTestResultSummaryType", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultSummaryData.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryType.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryType.ts new file mode 100644 index 000000000000..248464b8594a --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultSummaryType.ts @@ -0,0 +1,16 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * Type of the Synthetic test result summary resource, `result_summary`. + */ + +export type SyntheticsTestResultSummaryType = + | typeof RESULT_SUMMARY + | UnparsedObject; +export const RESULT_SUMMARY = "result_summary"; diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultTab.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultTab.ts new file mode 100644 index 000000000000..f3247c1f593a --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultTab.ts @@ -0,0 +1,68 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Information about a browser tab involved in a step. + */ +export class SyntheticsTestResultTab { + /** + * Whether the tab was focused during the step. + */ + "focused"?: boolean; + /** + * Title of the tab. + */ + "title"?: string; + /** + * URL loaded in the tab. + */ + "url"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + focused: { + baseName: "focused", + type: "boolean", + }, + title: { + baseName: "title", + type: "string", + }, + url: { + baseName: "url", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultTab.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultTrace.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultTrace.ts new file mode 100644 index 000000000000..e3998e0ab214 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultTrace.ts @@ -0,0 +1,60 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Trace identifiers associated with a Synthetic test result. + */ +export class SyntheticsTestResultTrace { + /** + * Datadog APM trace identifier. + */ + "id"?: string; + /** + * OpenTelemetry trace identifier. + */ + "otelId"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + }, + otelId: { + baseName: "otel_id", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultTrace.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultTracerouteHop.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultTracerouteHop.ts new file mode 100644 index 000000000000..246169a189ba --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultTracerouteHop.ts @@ -0,0 +1,114 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultNetworkLatency } from "./SyntheticsTestResultNetworkLatency"; +import { SyntheticsTestResultRouter } from "./SyntheticsTestResultRouter"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A network probe result, used for traceroute hops and ping summaries. + */ +export class SyntheticsTestResultTracerouteHop { + /** + * Target hostname. + */ + "host"?: string; + /** + * Latency statistics for a network probe. + */ + "latency"?: SyntheticsTestResultNetworkLatency; + /** + * Percentage of probe packets lost. + */ + "packetLossPercentage"?: number; + /** + * Size of each probe packet in bytes. + */ + "packetSize"?: number; + /** + * Number of probe packets received. + */ + "packetsReceived"?: number; + /** + * Number of probe packets sent. + */ + "packetsSent"?: number; + /** + * Resolved IP address for the target. + */ + "resolvedIp"?: string; + /** + * List of intermediate routers for the traceroute. + */ + "routers"?: Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + host: { + baseName: "host", + type: "string", + }, + latency: { + baseName: "latency", + type: "SyntheticsTestResultNetworkLatency", + }, + packetLossPercentage: { + baseName: "packet_loss_percentage", + type: "number", + format: "double", + }, + packetSize: { + baseName: "packet_size", + type: "number", + format: "int64", + }, + packetsReceived: { + baseName: "packets_received", + type: "number", + format: "int64", + }, + packetsSent: { + baseName: "packets_sent", + type: "number", + format: "int64", + }, + resolvedIp: { + baseName: "resolved_ip", + type: "string", + }, + routers: { + baseName: "routers", + type: "Array", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultTracerouteHop.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultTurn.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultTurn.ts new file mode 100644 index 000000000000..85b0aee81be1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultTurn.ts @@ -0,0 +1,104 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultBucketKeys } from "./SyntheticsTestResultBucketKeys"; +import { SyntheticsTestResultTurnStep } from "./SyntheticsTestResultTurnStep"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A turn in a goal-based browser test, grouping steps and reasoning. + */ +export class SyntheticsTestResultTurn { + /** + * Storage bucket keys for artifacts produced during a step or test. + */ + "bucketKeys"?: SyntheticsTestResultBucketKeys; + /** + * Name of the turn. + */ + "name"?: string; + /** + * Agent reasoning produced for this turn. + */ + "reasoning"?: string; + /** + * Status of the turn (for example, `passed`, `failed`). + */ + "status"?: string; + /** + * Steps executed during the turn. + */ + "steps"?: Array; + /** + * Unix timestamp (ms) of when the turn finished. + */ + "turnFinishedAt"?: number; + /** + * Unix timestamp (ms) of when the turn started. + */ + "turnStartedAt"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + bucketKeys: { + baseName: "bucket_keys", + type: "SyntheticsTestResultBucketKeys", + }, + name: { + baseName: "name", + type: "string", + }, + reasoning: { + baseName: "reasoning", + type: "string", + }, + status: { + baseName: "status", + type: "string", + }, + steps: { + baseName: "steps", + type: "Array", + }, + turnFinishedAt: { + baseName: "turn_finished_at", + type: "number", + format: "int64", + }, + turnStartedAt: { + baseName: "turn_started_at", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultTurn.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultTurnStep.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultTurnStep.ts new file mode 100644 index 000000000000..df410e7069f0 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultTurnStep.ts @@ -0,0 +1,61 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultBucketKeys } from "./SyntheticsTestResultBucketKeys"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A step executed during a goal-based browser test turn. + */ +export class SyntheticsTestResultTurnStep { + /** + * Storage bucket keys for artifacts produced during a step or test. + */ + "bucketKeys"?: SyntheticsTestResultBucketKeys; + /** + * Browser step configuration for this turn step. + */ + "config"?: { [key: string]: any }; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + bucketKeys: { + baseName: "bucket_keys", + type: "SyntheticsTestResultBucketKeys", + }, + config: { + baseName: "config", + type: "{ [key: string]: any; }", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultTurnStep.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultType.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultType.ts similarity index 73% rename from packages/datadog-api-client-v2/models/SyntheticsFastTestResultType.ts rename to packages/datadog-api-client-v2/models/SyntheticsTestResultType.ts index 90e81febd600..eb6cd06cb227 100644 --- a/packages/datadog-api-client-v2/models/SyntheticsFastTestResultType.ts +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultType.ts @@ -7,8 +7,8 @@ import { UnparsedObject } from "../../datadog-api-client-common/util"; /** - * JSON:API type for a fast test result. + * Type of the Synthetic test result resource, `result`. */ -export type SyntheticsFastTestResultType = typeof RESULT | UnparsedObject; +export type SyntheticsTestResultType = typeof RESULT | UnparsedObject; export const RESULT = "result"; diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultVariable.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultVariable.ts new file mode 100644 index 000000000000..74e3e3ba1ad2 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultVariable.ts @@ -0,0 +1,124 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A variable used or extracted during a test. + */ +export class SyntheticsTestResultVariable { + /** + * Error encountered when evaluating the variable. + */ + "err"?: string; + /** + * Human-readable error message for variable evaluation. + */ + "errorMessage"?: string; + /** + * Example value for the variable. + */ + "example"?: string; + /** + * Variable identifier. + */ + "id"?: string; + /** + * Variable name. + */ + "name"?: string; + /** + * Pattern used to extract the variable. + */ + "pattern"?: string; + /** + * Whether the variable holds a secure value. + */ + "secure"?: boolean; + /** + * Variable type. + */ + "type"?: string; + /** + * Evaluated value of the variable. + */ + "val"?: string; + /** + * Current value of the variable. + */ + "value"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + err: { + baseName: "err", + type: "string", + }, + errorMessage: { + baseName: "error_message", + type: "string", + }, + example: { + baseName: "example", + type: "string", + }, + id: { + baseName: "id", + type: "string", + }, + name: { + baseName: "name", + type: "string", + }, + pattern: { + baseName: "pattern", + type: "string", + }, + secure: { + baseName: "secure", + type: "boolean", + }, + type: { + baseName: "type", + type: "string", + }, + val: { + baseName: "val", + type: "string", + }, + value: { + baseName: "value", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultVariable.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultVariables.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultVariables.ts new file mode 100644 index 000000000000..a5c283dd36a3 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultVariables.ts @@ -0,0 +1,61 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultVariable } from "./SyntheticsTestResultVariable"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Variables captured during a test step. + */ +export class SyntheticsTestResultVariables { + /** + * Variables defined in the test configuration. + */ + "config"?: Array; + /** + * Variables extracted during the test execution. + */ + "extracted"?: Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + config: { + baseName: "config", + type: "Array", + }, + extracted: { + baseName: "extracted", + type: "Array", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultVariables.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultVitalsMetrics.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultVitalsMetrics.ts new file mode 100644 index 000000000000..85317b677977 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultVitalsMetrics.ts @@ -0,0 +1,97 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Web vitals metrics captured during a browser test step. + */ +export class SyntheticsTestResultVitalsMetrics { + /** + * Cumulative Layout Shift score. + */ + "cls"?: number; + /** + * First Contentful Paint in milliseconds. + */ + "fcp"?: number; + /** + * Interaction to Next Paint in milliseconds. + */ + "inp"?: number; + /** + * Largest Contentful Paint in milliseconds. + */ + "lcp"?: number; + /** + * Time To First Byte in milliseconds. + */ + "ttfb"?: number; + /** + * URL that produced the metrics. + */ + "url"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + cls: { + baseName: "cls", + type: "number", + format: "double", + }, + fcp: { + baseName: "fcp", + type: "number", + format: "double", + }, + inp: { + baseName: "inp", + type: "number", + format: "double", + }, + lcp: { + baseName: "lcp", + type: "number", + format: "double", + }, + ttfb: { + baseName: "ttfb", + type: "number", + format: "double", + }, + url: { + baseName: "url", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultVitalsMetrics.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultWarning.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultWarning.ts new file mode 100644 index 000000000000..94cdfbe4d825 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultWarning.ts @@ -0,0 +1,69 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { SyntheticsTestResultBounds } from "./SyntheticsTestResultBounds"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * A warning captured during a browser test step. + */ +export class SyntheticsTestResultWarning { + /** + * Bounds of elements related to the warning. + */ + "elementBounds"?: Array; + /** + * Warning message. + */ + "message"?: string; + /** + * Type of the warning. + */ + "type"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + elementBounds: { + baseName: "element_bounds", + type: "Array", + }, + message: { + baseName: "message", + type: "string", + }, + type: { + baseName: "type", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultWarning.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/SyntheticsTestResultWebSocketClose.ts b/packages/datadog-api-client-v2/models/SyntheticsTestResultWebSocketClose.ts new file mode 100644 index 000000000000..e027d41f6471 --- /dev/null +++ b/packages/datadog-api-client-v2/models/SyntheticsTestResultWebSocketClose.ts @@ -0,0 +1,61 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * WebSocket close frame information for WebSocket test responses. + */ +export class SyntheticsTestResultWebSocketClose { + /** + * Reason string received in the close frame. + */ + "reason"?: string; + /** + * Status code received in the close frame. + */ + "statusCode"?: number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + reason: { + baseName: "reason", + type: "string", + }, + statusCode: { + baseName: "status_code", + type: "number", + format: "int64", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return SyntheticsTestResultWebSocketClose.attributeTypeMap; + } + + public constructor() {} +}