datadog.SyntheticsTest
Explore with Pulumi AI
Provides a Datadog synthetics test resource. This can be used to create and manage Datadog synthetics test.
Warning
Starting from version 3.1.0+, the direct usage of global variables in the configuration is deprecated, in favor of
local variables of type global. As an example, if you were previously using {{ GLOBAL_VAR }} directly in your
configuration, add a config_variable of type global with the id matching the id of the global variable GLOBAL_VAR, which can be found in the Synthetics UI or from the output of the datadog.SyntheticsGlobalVariable resource. The name can be chosen freely.
In practice, it means going from (simplified configuration):
url = https://{{ GLOBAL_VAR }}
to
config_variable {
  name = "LOCAL_VAR"
  id = [your_global_variable_id]
  type = "global"
}
which you can now use in your request definition:
url = https://{{ LOCAL_VAR }}
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as datadog from "@pulumi/datadog";
// Example Usage (Synthetics API test)
// Create a new Datadog Synthetics API/HTTP test on https://www.example.org
const testUptime = new datadog.SyntheticsTest("test_uptime", {
    name: "An Uptime test on example.org",
    type: "api",
    subtype: "http",
    status: "live",
    message: "Notify @pagerduty",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    requestDefinition: {
        method: "GET",
        url: "https://www.example.org",
    },
    requestHeaders: {
        "Content-Type": "application/json",
    },
    assertions: [{
        type: "statusCode",
        operator: "is",
        target: "200",
    }],
    optionsList: {
        tickEvery: 900,
        retry: {
            count: 2,
            interval: 300,
        },
        monitorOptions: {
            renotifyInterval: 120,
        },
    },
});
// Example Usage (Authenticated API test)
// Create a new Datadog Synthetics API/HTTP test on https://www.example.org
const testApi = new datadog.SyntheticsTest("test_api", {
    name: "An API test on example.org",
    type: "api",
    subtype: "http",
    status: "live",
    message: "Notify @pagerduty",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    requestDefinition: {
        method: "GET",
        url: "https://www.example.org",
    },
    requestHeaders: {
        "Content-Type": "application/json",
        Authentication: "Token: 1234566789",
    },
    assertions: [{
        type: "statusCode",
        operator: "is",
        target: "200",
    }],
    optionsList: {
        tickEvery: 900,
        retry: {
            count: 2,
            interval: 300,
        },
        monitorOptions: {
            renotifyInterval: 120,
        },
    },
});
// Example Usage (Synthetics SSL test)
// Create a new Datadog Synthetics API/SSL test on example.org
const testSsl = new datadog.SyntheticsTest("test_ssl", {
    name: "An API test on example.org",
    type: "api",
    subtype: "ssl",
    status: "live",
    message: "Notify @pagerduty",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    requestDefinition: {
        host: "example.org",
        port: "443",
    },
    assertions: [{
        type: "certificate",
        operator: "isInMoreThan",
        target: "30",
    }],
    optionsList: {
        tickEvery: 900,
        acceptSelfSigned: true,
    },
});
// Example Usage (Synthetics TCP test)
// Create a new Datadog Synthetics API/TCP test on example.org
const testTcp = new datadog.SyntheticsTest("test_tcp", {
    name: "An API test on example.org",
    type: "api",
    subtype: "tcp",
    status: "live",
    message: "Notify @pagerduty",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    requestDefinition: {
        host: "example.org",
        port: "443",
    },
    assertions: [{
        type: "responseTime",
        operator: "lessThan",
        target: "2000",
    }],
    configVariables: [{
        type: "global",
        name: "MY_GLOBAL_VAR",
        id: "76636cd1-82e2-4aeb-9cfe-51366a8198a2",
    }],
    optionsList: {
        tickEvery: 900,
    },
});
// Example Usage (Synthetics DNS test)
// Create a new Datadog Synthetics API/DNS test on example.org
const testDns = new datadog.SyntheticsTest("test_dns", {
    name: "An API test on example.org",
    type: "api",
    subtype: "dns",
    status: "live",
    message: "Notify @pagerduty",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    requestDefinition: {
        host: "example.org",
    },
    assertions: [{
        type: "recordSome",
        operator: "is",
        property: "A",
        target: "0.0.0.0",
    }],
    optionsList: {
        tickEvery: 900,
    },
});
// Example Usage (Synthetics Multistep API test)
// Create a new Datadog Synthetics Multistep API test
const testMultiStep = new datadog.SyntheticsTest("test_multi_step", {
    name: "Multistep API test",
    type: "api",
    subtype: "multi",
    status: "live",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    apiSteps: [
        {
            name: "An API test on example.org",
            subtype: "http",
            assertions: [{
                type: "statusCode",
                operator: "is",
                target: "200",
            }],
            requestDefinition: {
                method: "GET",
                url: "https://www.example.org",
            },
            requestHeaders: {
                "Content-Type": "application/json",
                Authentication: "Token: 1234566789",
            },
        },
        {
            name: "An API test on example.org",
            subtype: "http",
            assertions: [{
                type: "statusCode",
                operator: "is",
                target: "200",
            }],
            requestDefinition: {
                method: "GET",
                url: "http://example.org",
            },
        },
        {
            name: "A gRPC health check on example.org",
            subtype: "grpc",
            assertions: [{
                type: "statusCode",
                operator: "is",
                target: "200",
            }],
            requestDefinition: {
                host: "example.org",
                port: "443",
                callType: "healthcheck",
                service: "greeter.Greeter",
            },
        },
        {
            name: "A gRPC behavior check on example.org",
            subtype: "grpc",
            assertions: [{
                type: "statusCode",
                operator: "is",
                target: "200",
            }],
            requestDefinition: {
                host: "example.org",
                port: "443",
                callType: "unary",
                service: "greeter.Greeter",
                method: "SayHello",
                message: "{\"name\": \"John\"}",
                plainProtoFile: `syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
`,
            },
        },
    ],
    optionsList: {
        tickEvery: 900,
        acceptSelfSigned: true,
    },
});
// Example Usage (Synthetics Browser test)
// Create a new Datadog Synthetics Browser test starting on https://www.example.org
const testBrowser = new datadog.SyntheticsTest("test_browser", {
    name: "A Browser test on example.org",
    type: "browser",
    status: "paused",
    message: "Notify @qa",
    deviceIds: ["laptop_large"],
    locations: ["aws:eu-central-1"],
    tags: [],
    requestDefinition: {
        method: "GET",
        url: "https://www.example.org",
    },
    browserSteps: [
        {
            name: "Check current url",
            type: "assertCurrentUrl",
            params: {
                check: "contains",
                value: "datadoghq",
            },
        },
        {
            name: "Test a downloaded file",
            type: "assertFileDownload",
            params: {
                file: JSON.stringify({
                    md5: "abcdef1234567890",
                    sizeCheck: {
                        type: "equals",
                        value: 1,
                    },
                    nameCheck: {
                        type: "contains",
                        value: ".xls",
                    },
                }),
            },
        },
        {
            name: "Upload a file",
            type: "uploadFiles",
            params: {
                files: JSON.stringify([{
                    name: "hello.txt",
                    size: 11,
                    content: "Hello world",
                }]),
                element: "*[@id='simple-file-upload']",
                elementUserLocator: {
                    value: {
                        type: "css",
                        value: "#simple-file-upload",
                    },
                },
            },
        },
    ],
    browserVariables: [
        {
            type: "text",
            name: "MY_PATTERN_VAR",
            pattern: "{{numeric(3)}}",
            example: "597",
        },
        {
            type: "email",
            name: "MY_EMAIL_VAR",
            pattern: "jd8-afe-ydv.{{ numeric(10) }}@synthetics.dtdg.co",
            example: "jd8-afe-ydv.4546132139@synthetics.dtdg.co",
        },
        {
            type: "global",
            name: "MY_GLOBAL_VAR",
            id: "76636cd1-82e2-4aeb-9cfe-51366a8198a2",
        },
    ],
    optionsList: {
        tickEvery: 3600,
    },
});
// Example Usage (Synthetics Mobile test)
// Create a new Datadog Synthetics Mobile test starting on https://www.example.org
const testMobile = new datadog.SyntheticsTest("test_mobile", {
    type: "mobile",
    name: "A Mobile test on example.org",
    status: "paused",
    message: "Notify @datadog.user",
    tags: [
        "foo:bar",
        "baz",
    ],
    configVariables: [{
        example: "123",
        name: "VARIABLE_NAME",
        pattern: "{{numeric(3)}}",
        type: "text",
        secure: false,
    }],
    configInitialApplicationArguments: {
        test_process_argument: "test1",
    },
    deviceIds: ["synthetics:mobile:device:apple_iphone_14_plus_ios_16"],
    locations: ["aws:eu-central-1"],
    mobileOptionsList: {
        minFailureDuration: 0,
        retry: {
            count: 0,
            interval: 300,
        },
        tickEvery: 43200,
        scheduling: {
            timeframes: [
                {
                    day: 5,
                    from: "07:00",
                    to: "16:00",
                },
                {
                    day: 7,
                    from: "07:00",
                    to: "16:00",
                },
            ],
            timezone: "UTC",
        },
        monitorName: "mobile-test-monitor",
        monitorOptions: {
            renotifyInterval: 10,
            escalationMessage: "test escalation message",
            renotifyOccurrences: 3,
            notificationPresetName: "show_all",
        },
        monitorPriority: 5,
        ci: {
            executionRule: "blocking",
        },
        defaultStepTimeout: 10,
        deviceIds: ["synthetics:mobile:device:apple_iphone_14_plus_ios_16"],
        noScreenshot: true,
        allowApplicationCrash: false,
        disableAutoAcceptAlert: true,
        mobileApplication: {
            applicationId: "5f055d15-0000-aaaa-zzzz-6739f83346aa",
            referenceId: "434d4719-0000-aaaa-zzzz-31082b544718",
            referenceType: "version",
        },
    },
    mobileSteps: [
        {
            name: "Tap on StaticText \"Tap\"",
            params: {
                element: {
                    context: "NATIVE_APP",
                    viewName: "StaticText",
                    contextType: "native",
                    textContent: "Tap",
                    multiLocator: {},
                    relativePosition: {
                        x: 0.07256155303030302,
                        y: 0.41522381756756754,
                    },
                    userLocator: {
                        failTestOnCannotLocate: false,
                        values: [{
                            type: "id",
                            value: "some_id",
                        }],
                    },
                    elementDescription: "<XCUIElementTypeStaticText value=\"Tap\" name=\"Tap\" label=\"Tap\">",
                },
            },
            timeout: 100,
            type: "tap",
            allowFailure: false,
            isCritical: true,
            noScreenshot: false,
            hasNewStepElement: false,
        },
        {
            name: "Test View \"Tap\" content",
            params: {
                check: "contains",
                value: "Tap",
                element: {
                    context: "NATIVE_APP",
                    viewName: "View",
                    contextType: "native",
                    textContent: "Tap",
                    multiLocator: {},
                    relativePosition: {
                        x: 0.27660448306074764,
                        y: 0.6841517857142857,
                    },
                    userLocator: {
                        failTestOnCannotLocate: false,
                        values: [{
                            type: "id",
                            value: "some_id",
                        }],
                    },
                    elementDescription: "<XCUIElementTypeOther name=\"Tap\" label=\"Tap\">",
                },
            },
            timeout: 100,
            type: "assertElementContent",
            allowFailure: false,
            isCritical: true,
            noScreenshot: false,
            hasNewStepElement: false,
        },
    ],
});
// Example Usage (GRPC API behavior check test)
// Create a new Datadog GRPC API test calling host example.org on port 443
// targeting service `greeter.Greeter` with the method `SayHello`
// and the message {"name": "John"}
const testGrpcUnary = new datadog.SyntheticsTest("test_grpc_unary", {
    name: "GRPC API behavior check test",
    type: "api",
    subtype: "grpc",
    status: "live",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    requestDefinition: {
        host: "example.org",
        port: "443",
        callType: "unary",
        service: "greeter.Greeter",
        method: "SayHello",
        message: "{\"name\": \"John\"}",
        plainProtoFile: `syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
`,
    },
    requestMetadata: {
        header: "value",
    },
    assertions: [
        {
            type: "responseTime",
            operator: "lessThan",
            target: "2000",
        },
        {
            operator: "is",
            type: "grpcHealthcheckStatus",
            target: "1",
        },
        {
            operator: "is",
            type: "grpcProto",
            target: "proto target",
        },
        {
            operator: "is",
            property: "property",
            type: "grpcMetadata",
            target: "123",
        },
    ],
    optionsList: {
        tickEvery: 900,
    },
});
// Example Usage (GRPC API health check test)
// Create a new Datadog GRPC API test calling host example.org on port 443
// testing the overall health of the service
const testGrpcHealth = new datadog.SyntheticsTest("test_grpc_health", {
    name: "GRPC API health check test",
    type: "api",
    subtype: "grpc",
    status: "live",
    locations: ["aws:eu-central-1"],
    tags: [
        "foo:bar",
        "foo",
        "env:test",
    ],
    requestDefinition: {
        host: "example.org",
        port: "443",
        callType: "healthcheck",
        service: "greeter.Greeter",
    },
    assertions: [
        {
            type: "responseTime",
            operator: "lessThan",
            target: "2000",
        },
        {
            operator: "is",
            type: "grpcHealthcheckStatus",
            target: "1",
        },
    ],
    optionsList: {
        tickEvery: 900,
    },
});
import pulumi
import json
import pulumi_datadog as datadog
# Example Usage (Synthetics API test)
# Create a new Datadog Synthetics API/HTTP test on https://www.example.org
test_uptime = datadog.SyntheticsTest("test_uptime",
    name="An Uptime test on example.org",
    type="api",
    subtype="http",
    status="live",
    message="Notify @pagerduty",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    request_definition={
        "method": "GET",
        "url": "https://www.example.org",
    },
    request_headers={
        "Content-Type": "application/json",
    },
    assertions=[{
        "type": "statusCode",
        "operator": "is",
        "target": "200",
    }],
    options_list={
        "tick_every": 900,
        "retry": {
            "count": 2,
            "interval": 300,
        },
        "monitor_options": {
            "renotify_interval": 120,
        },
    })
# Example Usage (Authenticated API test)
# Create a new Datadog Synthetics API/HTTP test on https://www.example.org
test_api = datadog.SyntheticsTest("test_api",
    name="An API test on example.org",
    type="api",
    subtype="http",
    status="live",
    message="Notify @pagerduty",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    request_definition={
        "method": "GET",
        "url": "https://www.example.org",
    },
    request_headers={
        "Content-Type": "application/json",
        "Authentication": "Token: 1234566789",
    },
    assertions=[{
        "type": "statusCode",
        "operator": "is",
        "target": "200",
    }],
    options_list={
        "tick_every": 900,
        "retry": {
            "count": 2,
            "interval": 300,
        },
        "monitor_options": {
            "renotify_interval": 120,
        },
    })
# Example Usage (Synthetics SSL test)
# Create a new Datadog Synthetics API/SSL test on example.org
test_ssl = datadog.SyntheticsTest("test_ssl",
    name="An API test on example.org",
    type="api",
    subtype="ssl",
    status="live",
    message="Notify @pagerduty",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    request_definition={
        "host": "example.org",
        "port": "443",
    },
    assertions=[{
        "type": "certificate",
        "operator": "isInMoreThan",
        "target": "30",
    }],
    options_list={
        "tick_every": 900,
        "accept_self_signed": True,
    })
# Example Usage (Synthetics TCP test)
# Create a new Datadog Synthetics API/TCP test on example.org
test_tcp = datadog.SyntheticsTest("test_tcp",
    name="An API test on example.org",
    type="api",
    subtype="tcp",
    status="live",
    message="Notify @pagerduty",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    request_definition={
        "host": "example.org",
        "port": "443",
    },
    assertions=[{
        "type": "responseTime",
        "operator": "lessThan",
        "target": "2000",
    }],
    config_variables=[{
        "type": "global",
        "name": "MY_GLOBAL_VAR",
        "id": "76636cd1-82e2-4aeb-9cfe-51366a8198a2",
    }],
    options_list={
        "tick_every": 900,
    })
# Example Usage (Synthetics DNS test)
# Create a new Datadog Synthetics API/DNS test on example.org
test_dns = datadog.SyntheticsTest("test_dns",
    name="An API test on example.org",
    type="api",
    subtype="dns",
    status="live",
    message="Notify @pagerduty",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    request_definition={
        "host": "example.org",
    },
    assertions=[{
        "type": "recordSome",
        "operator": "is",
        "property": "A",
        "target": "0.0.0.0",
    }],
    options_list={
        "tick_every": 900,
    })
# Example Usage (Synthetics Multistep API test)
# Create a new Datadog Synthetics Multistep API test
test_multi_step = datadog.SyntheticsTest("test_multi_step",
    name="Multistep API test",
    type="api",
    subtype="multi",
    status="live",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    api_steps=[
        {
            "name": "An API test on example.org",
            "subtype": "http",
            "assertions": [{
                "type": "statusCode",
                "operator": "is",
                "target": "200",
            }],
            "request_definition": {
                "method": "GET",
                "url": "https://www.example.org",
            },
            "request_headers": {
                "Content-Type": "application/json",
                "Authentication": "Token: 1234566789",
            },
        },
        {
            "name": "An API test on example.org",
            "subtype": "http",
            "assertions": [{
                "type": "statusCode",
                "operator": "is",
                "target": "200",
            }],
            "request_definition": {
                "method": "GET",
                "url": "http://example.org",
            },
        },
        {
            "name": "A gRPC health check on example.org",
            "subtype": "grpc",
            "assertions": [{
                "type": "statusCode",
                "operator": "is",
                "target": "200",
            }],
            "request_definition": {
                "host": "example.org",
                "port": "443",
                "call_type": "healthcheck",
                "service": "greeter.Greeter",
            },
        },
        {
            "name": "A gRPC behavior check on example.org",
            "subtype": "grpc",
            "assertions": [{
                "type": "statusCode",
                "operator": "is",
                "target": "200",
            }],
            "request_definition": {
                "host": "example.org",
                "port": "443",
                "call_type": "unary",
                "service": "greeter.Greeter",
                "method": "SayHello",
                "message": "{\"name\": \"John\"}",
                "plain_proto_file": """syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
""",
            },
        },
    ],
    options_list={
        "tick_every": 900,
        "accept_self_signed": True,
    })
# Example Usage (Synthetics Browser test)
# Create a new Datadog Synthetics Browser test starting on https://www.example.org
test_browser = datadog.SyntheticsTest("test_browser",
    name="A Browser test on example.org",
    type="browser",
    status="paused",
    message="Notify @qa",
    device_ids=["laptop_large"],
    locations=["aws:eu-central-1"],
    tags=[],
    request_definition={
        "method": "GET",
        "url": "https://www.example.org",
    },
    browser_steps=[
        {
            "name": "Check current url",
            "type": "assertCurrentUrl",
            "params": {
                "check": "contains",
                "value": "datadoghq",
            },
        },
        {
            "name": "Test a downloaded file",
            "type": "assertFileDownload",
            "params": {
                "file": json.dumps({
                    "md5": "abcdef1234567890",
                    "sizeCheck": {
                        "type": "equals",
                        "value": 1,
                    },
                    "nameCheck": {
                        "type": "contains",
                        "value": ".xls",
                    },
                }),
            },
        },
        {
            "name": "Upload a file",
            "type": "uploadFiles",
            "params": {
                "files": json.dumps([{
                    "name": "hello.txt",
                    "size": 11,
                    "content": "Hello world",
                }]),
                "element": "*[@id='simple-file-upload']",
                "element_user_locator": {
                    "value": {
                        "type": "css",
                        "value": "#simple-file-upload",
                    },
                },
            },
        },
    ],
    browser_variables=[
        {
            "type": "text",
            "name": "MY_PATTERN_VAR",
            "pattern": "{{numeric(3)}}",
            "example": "597",
        },
        {
            "type": "email",
            "name": "MY_EMAIL_VAR",
            "pattern": "jd8-afe-ydv.{{ numeric(10) }}@synthetics.dtdg.co",
            "example": "jd8-afe-ydv.4546132139@synthetics.dtdg.co",
        },
        {
            "type": "global",
            "name": "MY_GLOBAL_VAR",
            "id": "76636cd1-82e2-4aeb-9cfe-51366a8198a2",
        },
    ],
    options_list={
        "tick_every": 3600,
    })
# Example Usage (Synthetics Mobile test)
# Create a new Datadog Synthetics Mobile test starting on https://www.example.org
test_mobile = datadog.SyntheticsTest("test_mobile",
    type="mobile",
    name="A Mobile test on example.org",
    status="paused",
    message="Notify @datadog.user",
    tags=[
        "foo:bar",
        "baz",
    ],
    config_variables=[{
        "example": "123",
        "name": "VARIABLE_NAME",
        "pattern": "{{numeric(3)}}",
        "type": "text",
        "secure": False,
    }],
    config_initial_application_arguments={
        "test_process_argument": "test1",
    },
    device_ids=["synthetics:mobile:device:apple_iphone_14_plus_ios_16"],
    locations=["aws:eu-central-1"],
    mobile_options_list={
        "min_failure_duration": 0,
        "retry": {
            "count": 0,
            "interval": 300,
        },
        "tick_every": 43200,
        "scheduling": {
            "timeframes": [
                {
                    "day": 5,
                    "from_": "07:00",
                    "to": "16:00",
                },
                {
                    "day": 7,
                    "from_": "07:00",
                    "to": "16:00",
                },
            ],
            "timezone": "UTC",
        },
        "monitor_name": "mobile-test-monitor",
        "monitor_options": {
            "renotify_interval": 10,
            "escalation_message": "test escalation message",
            "renotify_occurrences": 3,
            "notification_preset_name": "show_all",
        },
        "monitor_priority": 5,
        "ci": {
            "execution_rule": "blocking",
        },
        "default_step_timeout": 10,
        "device_ids": ["synthetics:mobile:device:apple_iphone_14_plus_ios_16"],
        "no_screenshot": True,
        "allow_application_crash": False,
        "disable_auto_accept_alert": True,
        "mobile_application": {
            "application_id": "5f055d15-0000-aaaa-zzzz-6739f83346aa",
            "reference_id": "434d4719-0000-aaaa-zzzz-31082b544718",
            "reference_type": "version",
        },
    },
    mobile_steps=[
        {
            "name": "Tap on StaticText \"Tap\"",
            "params": {
                "element": {
                    "context": "NATIVE_APP",
                    "view_name": "StaticText",
                    "context_type": "native",
                    "text_content": "Tap",
                    "multi_locator": {},
                    "relative_position": {
                        "x": 0.07256155303030302,
                        "y": 0.41522381756756754,
                    },
                    "user_locator": {
                        "fail_test_on_cannot_locate": False,
                        "values": [{
                            "type": "id",
                            "value": "some_id",
                        }],
                    },
                    "element_description": "<XCUIElementTypeStaticText value=\"Tap\" name=\"Tap\" label=\"Tap\">",
                },
            },
            "timeout": 100,
            "type": "tap",
            "allow_failure": False,
            "is_critical": True,
            "no_screenshot": False,
            "has_new_step_element": False,
        },
        {
            "name": "Test View \"Tap\" content",
            "params": {
                "check": "contains",
                "value": "Tap",
                "element": {
                    "context": "NATIVE_APP",
                    "view_name": "View",
                    "context_type": "native",
                    "text_content": "Tap",
                    "multi_locator": {},
                    "relative_position": {
                        "x": 0.27660448306074764,
                        "y": 0.6841517857142857,
                    },
                    "user_locator": {
                        "fail_test_on_cannot_locate": False,
                        "values": [{
                            "type": "id",
                            "value": "some_id",
                        }],
                    },
                    "element_description": "<XCUIElementTypeOther name=\"Tap\" label=\"Tap\">",
                },
            },
            "timeout": 100,
            "type": "assertElementContent",
            "allow_failure": False,
            "is_critical": True,
            "no_screenshot": False,
            "has_new_step_element": False,
        },
    ])
# Example Usage (GRPC API behavior check test)
# Create a new Datadog GRPC API test calling host example.org on port 443
# targeting service `greeter.Greeter` with the method `SayHello`
# and the message {"name": "John"}
test_grpc_unary = datadog.SyntheticsTest("test_grpc_unary",
    name="GRPC API behavior check test",
    type="api",
    subtype="grpc",
    status="live",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    request_definition={
        "host": "example.org",
        "port": "443",
        "call_type": "unary",
        "service": "greeter.Greeter",
        "method": "SayHello",
        "message": "{\"name\": \"John\"}",
        "plain_proto_file": """syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
""",
    },
    request_metadata={
        "header": "value",
    },
    assertions=[
        {
            "type": "responseTime",
            "operator": "lessThan",
            "target": "2000",
        },
        {
            "operator": "is",
            "type": "grpcHealthcheckStatus",
            "target": "1",
        },
        {
            "operator": "is",
            "type": "grpcProto",
            "target": "proto target",
        },
        {
            "operator": "is",
            "property": "property",
            "type": "grpcMetadata",
            "target": "123",
        },
    ],
    options_list={
        "tick_every": 900,
    })
# Example Usage (GRPC API health check test)
# Create a new Datadog GRPC API test calling host example.org on port 443
# testing the overall health of the service
test_grpc_health = datadog.SyntheticsTest("test_grpc_health",
    name="GRPC API health check test",
    type="api",
    subtype="grpc",
    status="live",
    locations=["aws:eu-central-1"],
    tags=[
        "foo:bar",
        "foo",
        "env:test",
    ],
    request_definition={
        "host": "example.org",
        "port": "443",
        "call_type": "healthcheck",
        "service": "greeter.Greeter",
    },
    assertions=[
        {
            "type": "responseTime",
            "operator": "lessThan",
            "target": "2000",
        },
        {
            "operator": "is",
            "type": "grpcHealthcheckStatus",
            "target": "1",
        },
    ],
    options_list={
        "tick_every": 900,
    })
package main
import (
	"encoding/json"
	"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// Example Usage (Synthetics API test)
		// Create a new Datadog Synthetics API/HTTP test on https://www.example.org
		_, err := datadog.NewSyntheticsTest(ctx, "test_uptime", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("An Uptime test on example.org"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("http"),
			Status:  pulumi.String("live"),
			Message: pulumi.String("Notify @pagerduty"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Method: pulumi.String("GET"),
				Url:    pulumi.String("https://www.example.org"),
			},
			RequestHeaders: pulumi.StringMap{
				"Content-Type": pulumi.String("application/json"),
			},
			Assertions: datadog.SyntheticsTestAssertionArray{
				&datadog.SyntheticsTestAssertionArgs{
					Type:     pulumi.String("statusCode"),
					Operator: pulumi.String("is"),
					Target:   pulumi.String("200"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery: pulumi.Int(900),
				Retry: &datadog.SyntheticsTestOptionsListRetryArgs{
					Count:    pulumi.Int(2),
					Interval: pulumi.Int(300),
				},
				MonitorOptions: &datadog.SyntheticsTestOptionsListMonitorOptionsArgs{
					RenotifyInterval: pulumi.Int(120),
				},
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (Authenticated API test)
		// Create a new Datadog Synthetics API/HTTP test on https://www.example.org
		_, err = datadog.NewSyntheticsTest(ctx, "test_api", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("An API test on example.org"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("http"),
			Status:  pulumi.String("live"),
			Message: pulumi.String("Notify @pagerduty"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Method: pulumi.String("GET"),
				Url:    pulumi.String("https://www.example.org"),
			},
			RequestHeaders: pulumi.StringMap{
				"Content-Type":   pulumi.String("application/json"),
				"Authentication": pulumi.String("Token: 1234566789"),
			},
			Assertions: datadog.SyntheticsTestAssertionArray{
				&datadog.SyntheticsTestAssertionArgs{
					Type:     pulumi.String("statusCode"),
					Operator: pulumi.String("is"),
					Target:   pulumi.String("200"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery: pulumi.Int(900),
				Retry: &datadog.SyntheticsTestOptionsListRetryArgs{
					Count:    pulumi.Int(2),
					Interval: pulumi.Int(300),
				},
				MonitorOptions: &datadog.SyntheticsTestOptionsListMonitorOptionsArgs{
					RenotifyInterval: pulumi.Int(120),
				},
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (Synthetics SSL test)
		// Create a new Datadog Synthetics API/SSL test on example.org
		_, err = datadog.NewSyntheticsTest(ctx, "test_ssl", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("An API test on example.org"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("ssl"),
			Status:  pulumi.String("live"),
			Message: pulumi.String("Notify @pagerduty"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Host: pulumi.String("example.org"),
				Port: pulumi.String("443"),
			},
			Assertions: datadog.SyntheticsTestAssertionArray{
				&datadog.SyntheticsTestAssertionArgs{
					Type:     pulumi.String("certificate"),
					Operator: pulumi.String("isInMoreThan"),
					Target:   pulumi.String("30"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery:        pulumi.Int(900),
				AcceptSelfSigned: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (Synthetics TCP test)
		// Create a new Datadog Synthetics API/TCP test on example.org
		_, err = datadog.NewSyntheticsTest(ctx, "test_tcp", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("An API test on example.org"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("tcp"),
			Status:  pulumi.String("live"),
			Message: pulumi.String("Notify @pagerduty"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Host: pulumi.String("example.org"),
				Port: pulumi.String("443"),
			},
			Assertions: datadog.SyntheticsTestAssertionArray{
				&datadog.SyntheticsTestAssertionArgs{
					Type:     pulumi.String("responseTime"),
					Operator: pulumi.String("lessThan"),
					Target:   pulumi.String("2000"),
				},
			},
			ConfigVariables: datadog.SyntheticsTestConfigVariableArray{
				&datadog.SyntheticsTestConfigVariableArgs{
					Type: pulumi.String("global"),
					Name: pulumi.String("MY_GLOBAL_VAR"),
					Id:   pulumi.String("76636cd1-82e2-4aeb-9cfe-51366a8198a2"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery: pulumi.Int(900),
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (Synthetics DNS test)
		// Create a new Datadog Synthetics API/DNS test on example.org
		_, err = datadog.NewSyntheticsTest(ctx, "test_dns", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("An API test on example.org"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("dns"),
			Status:  pulumi.String("live"),
			Message: pulumi.String("Notify @pagerduty"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Host: pulumi.String("example.org"),
			},
			Assertions: datadog.SyntheticsTestAssertionArray{
				&datadog.SyntheticsTestAssertionArgs{
					Type:     pulumi.String("recordSome"),
					Operator: pulumi.String("is"),
					Property: pulumi.String("A"),
					Target:   pulumi.String("0.0.0.0"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery: pulumi.Int(900),
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (Synthetics Multistep API test)
		// Create a new Datadog Synthetics Multistep API test
		_, err = datadog.NewSyntheticsTest(ctx, "test_multi_step", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("Multistep API test"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("multi"),
			Status:  pulumi.String("live"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			ApiSteps: datadog.SyntheticsTestApiStepArray{
				&datadog.SyntheticsTestApiStepArgs{
					Name:    pulumi.String("An API test on example.org"),
					Subtype: pulumi.String("http"),
					Assertions: datadog.SyntheticsTestApiStepAssertionArray{
						&datadog.SyntheticsTestApiStepAssertionArgs{
							Type:     pulumi.String("statusCode"),
							Operator: pulumi.String("is"),
							Target:   pulumi.String("200"),
						},
					},
					RequestDefinition: &datadog.SyntheticsTestApiStepRequestDefinitionArgs{
						Method: pulumi.String("GET"),
						Url:    pulumi.String("https://www.example.org"),
					},
					RequestHeaders: pulumi.StringMap{
						"Content-Type":   pulumi.String("application/json"),
						"Authentication": pulumi.String("Token: 1234566789"),
					},
				},
				&datadog.SyntheticsTestApiStepArgs{
					Name:    pulumi.String("An API test on example.org"),
					Subtype: pulumi.String("http"),
					Assertions: datadog.SyntheticsTestApiStepAssertionArray{
						&datadog.SyntheticsTestApiStepAssertionArgs{
							Type:     pulumi.String("statusCode"),
							Operator: pulumi.String("is"),
							Target:   pulumi.String("200"),
						},
					},
					RequestDefinition: &datadog.SyntheticsTestApiStepRequestDefinitionArgs{
						Method: pulumi.String("GET"),
						Url:    pulumi.String("http://example.org"),
					},
				},
				&datadog.SyntheticsTestApiStepArgs{
					Name:    pulumi.String("A gRPC health check on example.org"),
					Subtype: pulumi.String("grpc"),
					Assertions: datadog.SyntheticsTestApiStepAssertionArray{
						&datadog.SyntheticsTestApiStepAssertionArgs{
							Type:     pulumi.String("statusCode"),
							Operator: pulumi.String("is"),
							Target:   pulumi.String("200"),
						},
					},
					RequestDefinition: &datadog.SyntheticsTestApiStepRequestDefinitionArgs{
						Host:     pulumi.String("example.org"),
						Port:     pulumi.String("443"),
						CallType: pulumi.String("healthcheck"),
						Service:  pulumi.String("greeter.Greeter"),
					},
				},
				&datadog.SyntheticsTestApiStepArgs{
					Name:    pulumi.String("A gRPC behavior check on example.org"),
					Subtype: pulumi.String("grpc"),
					Assertions: datadog.SyntheticsTestApiStepAssertionArray{
						&datadog.SyntheticsTestApiStepAssertionArgs{
							Type:     pulumi.String("statusCode"),
							Operator: pulumi.String("is"),
							Target:   pulumi.String("200"),
						},
					},
					RequestDefinition: &datadog.SyntheticsTestApiStepRequestDefinitionArgs{
						Host:     pulumi.String("example.org"),
						Port:     pulumi.String("443"),
						CallType: pulumi.String("unary"),
						Service:  pulumi.String("greeter.Greeter"),
						Method:   pulumi.String("SayHello"),
						Message:  pulumi.String("{\"name\": \"John\"}"),
						PlainProtoFile: pulumi.String(`syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
`),
					},
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery:        pulumi.Int(900),
				AcceptSelfSigned: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"md5": "abcdef1234567890",
			"sizeCheck": map[string]interface{}{
				"type":  "equals",
				"value": 1,
			},
			"nameCheck": map[string]interface{}{
				"type":  "contains",
				"value": ".xls",
			},
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		tmpJSON1, err := json.Marshal([]map[string]interface{}{
			map[string]interface{}{
				"name":    "hello.txt",
				"size":    11,
				"content": "Hello world",
			},
		})
		if err != nil {
			return err
		}
		json1 := string(tmpJSON1)
		// Example Usage (Synthetics Browser test)
		// Create a new Datadog Synthetics Browser test starting on https://www.example.org
		_, err = datadog.NewSyntheticsTest(ctx, "test_browser", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("A Browser test on example.org"),
			Type:    pulumi.String("browser"),
			Status:  pulumi.String("paused"),
			Message: pulumi.String("Notify @qa"),
			DeviceIds: pulumi.StringArray{
				pulumi.String("laptop_large"),
			},
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Method: pulumi.String("GET"),
				Url:    pulumi.String("https://www.example.org"),
			},
			BrowserSteps: datadog.SyntheticsTestBrowserStepArray{
				&datadog.SyntheticsTestBrowserStepArgs{
					Name: pulumi.String("Check current url"),
					Type: pulumi.String("assertCurrentUrl"),
					Params: &datadog.SyntheticsTestBrowserStepParamsArgs{
						Check: pulumi.String("contains"),
						Value: pulumi.String("datadoghq"),
					},
				},
				&datadog.SyntheticsTestBrowserStepArgs{
					Name: pulumi.String("Test a downloaded file"),
					Type: pulumi.String("assertFileDownload"),
					Params: &datadog.SyntheticsTestBrowserStepParamsArgs{
						File: pulumi.String(json0),
					},
				},
				&datadog.SyntheticsTestBrowserStepArgs{
					Name: pulumi.String("Upload a file"),
					Type: pulumi.String("uploadFiles"),
					Params: &datadog.SyntheticsTestBrowserStepParamsArgs{
						Files:   pulumi.String(json1),
						Element: pulumi.String("*[@id='simple-file-upload']"),
						ElementUserLocator: &datadog.SyntheticsTestBrowserStepParamsElementUserLocatorArgs{
							Value: &datadog.SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs{
								Type:  pulumi.String("css"),
								Value: pulumi.String("#simple-file-upload"),
							},
						},
					},
				},
			},
			BrowserVariables: datadog.SyntheticsTestBrowserVariableArray{
				&datadog.SyntheticsTestBrowserVariableArgs{
					Type:    pulumi.String("text"),
					Name:    pulumi.String("MY_PATTERN_VAR"),
					Pattern: pulumi.String("{{numeric(3)}}"),
					Example: pulumi.String("597"),
				},
				&datadog.SyntheticsTestBrowserVariableArgs{
					Type:    pulumi.String("email"),
					Name:    pulumi.String("MY_EMAIL_VAR"),
					Pattern: pulumi.String("jd8-afe-ydv.{{ numeric(10) }}@synthetics.dtdg.co"),
					Example: pulumi.String("jd8-afe-ydv.4546132139@synthetics.dtdg.co"),
				},
				&datadog.SyntheticsTestBrowserVariableArgs{
					Type: pulumi.String("global"),
					Name: pulumi.String("MY_GLOBAL_VAR"),
					Id:   pulumi.String("76636cd1-82e2-4aeb-9cfe-51366a8198a2"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery: pulumi.Int(3600),
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (Synthetics Mobile test)
		// Create a new Datadog Synthetics Mobile test starting on https://www.example.org
		_, err = datadog.NewSyntheticsTest(ctx, "test_mobile", &datadog.SyntheticsTestArgs{
			Type:    pulumi.String("mobile"),
			Name:    pulumi.String("A Mobile test on example.org"),
			Status:  pulumi.String("paused"),
			Message: pulumi.String("Notify @datadog.user"),
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("baz"),
			},
			ConfigVariables: datadog.SyntheticsTestConfigVariableArray{
				&datadog.SyntheticsTestConfigVariableArgs{
					Example: pulumi.String("123"),
					Name:    pulumi.String("VARIABLE_NAME"),
					Pattern: pulumi.String("{{numeric(3)}}"),
					Type:    pulumi.String("text"),
					Secure:  pulumi.Bool(false),
				},
			},
			ConfigInitialApplicationArguments: pulumi.StringMap{
				"test_process_argument": pulumi.String("test1"),
			},
			DeviceIds: pulumi.StringArray{
				pulumi.String("synthetics:mobile:device:apple_iphone_14_plus_ios_16"),
			},
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			MobileOptionsList: &datadog.SyntheticsTestMobileOptionsListArgs{
				MinFailureDuration: pulumi.Int(0),
				Retry: &datadog.SyntheticsTestMobileOptionsListRetryArgs{
					Count:    pulumi.Int(0),
					Interval: pulumi.Int(300),
				},
				TickEvery: pulumi.Int(43200),
				Scheduling: &datadog.SyntheticsTestMobileOptionsListSchedulingArgs{
					Timeframes: datadog.SyntheticsTestMobileOptionsListSchedulingTimeframeArray{
						&datadog.SyntheticsTestMobileOptionsListSchedulingTimeframeArgs{
							Day:  pulumi.Int(5),
							From: pulumi.String("07:00"),
							To:   pulumi.String("16:00"),
						},
						&datadog.SyntheticsTestMobileOptionsListSchedulingTimeframeArgs{
							Day:  pulumi.Int(7),
							From: pulumi.String("07:00"),
							To:   pulumi.String("16:00"),
						},
					},
					Timezone: pulumi.String("UTC"),
				},
				MonitorName: pulumi.String("mobile-test-monitor"),
				MonitorOptions: &datadog.SyntheticsTestMobileOptionsListMonitorOptionsArgs{
					RenotifyInterval:       pulumi.Int(10),
					EscalationMessage:      pulumi.String("test escalation message"),
					RenotifyOccurrences:    pulumi.Int(3),
					NotificationPresetName: pulumi.String("show_all"),
				},
				MonitorPriority: pulumi.Int(5),
				Ci: &datadog.SyntheticsTestMobileOptionsListCiArgs{
					ExecutionRule: pulumi.String("blocking"),
				},
				DefaultStepTimeout: pulumi.Int(10),
				DeviceIds: pulumi.StringArray{
					pulumi.String("synthetics:mobile:device:apple_iphone_14_plus_ios_16"),
				},
				NoScreenshot:           pulumi.Bool(true),
				AllowApplicationCrash:  pulumi.Bool(false),
				DisableAutoAcceptAlert: pulumi.Bool(true),
				MobileApplication: &datadog.SyntheticsTestMobileOptionsListMobileApplicationArgs{
					ApplicationId: pulumi.String("5f055d15-0000-aaaa-zzzz-6739f83346aa"),
					ReferenceId:   pulumi.String("434d4719-0000-aaaa-zzzz-31082b544718"),
					ReferenceType: pulumi.String("version"),
				},
			},
			MobileSteps: datadog.SyntheticsTestMobileStepArray{
				&datadog.SyntheticsTestMobileStepArgs{
					Name: pulumi.String("Tap on StaticText \"Tap\""),
					Params: &datadog.SyntheticsTestMobileStepParamsArgs{
						Element: &datadog.SyntheticsTestMobileStepParamsElementArgs{
							Context:      pulumi.String("NATIVE_APP"),
							ViewName:     pulumi.String("StaticText"),
							ContextType:  pulumi.String("native"),
							TextContent:  pulumi.String("Tap"),
							MultiLocator: pulumi.StringMap{},
							RelativePosition: &datadog.SyntheticsTestMobileStepParamsElementRelativePositionArgs{
								X: pulumi.Float64(0.07256155303030302),
								Y: pulumi.Float64(0.41522381756756754),
							},
							UserLocator: &datadog.SyntheticsTestMobileStepParamsElementUserLocatorArgs{
								FailTestOnCannotLocate: pulumi.Bool(false),
								Values: datadog.SyntheticsTestMobileStepParamsElementUserLocatorValueArray{
									&datadog.SyntheticsTestMobileStepParamsElementUserLocatorValueArgs{
										Type:  pulumi.String("id"),
										Value: pulumi.String("some_id"),
									},
								},
							},
							ElementDescription: pulumi.String("<XCUIElementTypeStaticText value=\"Tap\" name=\"Tap\" label=\"Tap\">"),
						},
					},
					Timeout:           pulumi.Int(100),
					Type:              pulumi.String("tap"),
					AllowFailure:      pulumi.Bool(false),
					IsCritical:        pulumi.Bool(true),
					NoScreenshot:      pulumi.Bool(false),
					HasNewStepElement: pulumi.Bool(false),
				},
				&datadog.SyntheticsTestMobileStepArgs{
					Name: pulumi.String("Test View \"Tap\" content"),
					Params: &datadog.SyntheticsTestMobileStepParamsArgs{
						Check: pulumi.String("contains"),
						Value: pulumi.String("Tap"),
						Element: &datadog.SyntheticsTestMobileStepParamsElementArgs{
							Context:      pulumi.String("NATIVE_APP"),
							ViewName:     pulumi.String("View"),
							ContextType:  pulumi.String("native"),
							TextContent:  pulumi.String("Tap"),
							MultiLocator: pulumi.StringMap{},
							RelativePosition: &datadog.SyntheticsTestMobileStepParamsElementRelativePositionArgs{
								X: pulumi.Float64(0.27660448306074764),
								Y: pulumi.Float64(0.6841517857142857),
							},
							UserLocator: &datadog.SyntheticsTestMobileStepParamsElementUserLocatorArgs{
								FailTestOnCannotLocate: pulumi.Bool(false),
								Values: datadog.SyntheticsTestMobileStepParamsElementUserLocatorValueArray{
									&datadog.SyntheticsTestMobileStepParamsElementUserLocatorValueArgs{
										Type:  pulumi.String("id"),
										Value: pulumi.String("some_id"),
									},
								},
							},
							ElementDescription: pulumi.String("<XCUIElementTypeOther name=\"Tap\" label=\"Tap\">"),
						},
					},
					Timeout:           pulumi.Int(100),
					Type:              pulumi.String("assertElementContent"),
					AllowFailure:      pulumi.Bool(false),
					IsCritical:        pulumi.Bool(true),
					NoScreenshot:      pulumi.Bool(false),
					HasNewStepElement: pulumi.Bool(false),
				},
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (GRPC API behavior check test)
		// Create a new Datadog GRPC API test calling host example.org on port 443
		// targeting service `greeter.Greeter` with the method `SayHello`
		// and the message {"name": "John"}
		_, err = datadog.NewSyntheticsTest(ctx, "test_grpc_unary", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("GRPC API behavior check test"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("grpc"),
			Status:  pulumi.String("live"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Host:     pulumi.String("example.org"),
				Port:     pulumi.String("443"),
				CallType: pulumi.String("unary"),
				Service:  pulumi.String("greeter.Greeter"),
				Method:   pulumi.String("SayHello"),
				Message:  pulumi.String("{\"name\": \"John\"}"),
				PlainProtoFile: pulumi.String(`syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
`),
			},
			RequestMetadata: pulumi.StringMap{
				"header": pulumi.String("value"),
			},
			Assertions: datadog.SyntheticsTestAssertionArray{
				&datadog.SyntheticsTestAssertionArgs{
					Type:     pulumi.String("responseTime"),
					Operator: pulumi.String("lessThan"),
					Target:   pulumi.String("2000"),
				},
				&datadog.SyntheticsTestAssertionArgs{
					Operator: pulumi.String("is"),
					Type:     pulumi.String("grpcHealthcheckStatus"),
					Target:   pulumi.String("1"),
				},
				&datadog.SyntheticsTestAssertionArgs{
					Operator: pulumi.String("is"),
					Type:     pulumi.String("grpcProto"),
					Target:   pulumi.String("proto target"),
				},
				&datadog.SyntheticsTestAssertionArgs{
					Operator: pulumi.String("is"),
					Property: pulumi.String("property"),
					Type:     pulumi.String("grpcMetadata"),
					Target:   pulumi.String("123"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery: pulumi.Int(900),
			},
		})
		if err != nil {
			return err
		}
		// Example Usage (GRPC API health check test)
		// Create a new Datadog GRPC API test calling host example.org on port 443
		// testing the overall health of the service
		_, err = datadog.NewSyntheticsTest(ctx, "test_grpc_health", &datadog.SyntheticsTestArgs{
			Name:    pulumi.String("GRPC API health check test"),
			Type:    pulumi.String("api"),
			Subtype: pulumi.String("grpc"),
			Status:  pulumi.String("live"),
			Locations: pulumi.StringArray{
				pulumi.String("aws:eu-central-1"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("foo"),
				pulumi.String("env:test"),
			},
			RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
				Host:     pulumi.String("example.org"),
				Port:     pulumi.String("443"),
				CallType: pulumi.String("healthcheck"),
				Service:  pulumi.String("greeter.Greeter"),
			},
			Assertions: datadog.SyntheticsTestAssertionArray{
				&datadog.SyntheticsTestAssertionArgs{
					Type:     pulumi.String("responseTime"),
					Operator: pulumi.String("lessThan"),
					Target:   pulumi.String("2000"),
				},
				&datadog.SyntheticsTestAssertionArgs{
					Operator: pulumi.String("is"),
					Type:     pulumi.String("grpcHealthcheckStatus"),
					Target:   pulumi.String("1"),
				},
			},
			OptionsList: &datadog.SyntheticsTestOptionsListArgs{
				TickEvery: pulumi.Int(900),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Datadog = Pulumi.Datadog;
return await Deployment.RunAsync(() => 
{
    // Example Usage (Synthetics API test)
    // Create a new Datadog Synthetics API/HTTP test on https://www.example.org
    var testUptime = new Datadog.SyntheticsTest("test_uptime", new()
    {
        Name = "An Uptime test on example.org",
        Type = "api",
        Subtype = "http",
        Status = "live",
        Message = "Notify @pagerduty",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Method = "GET",
            Url = "https://www.example.org",
        },
        RequestHeaders = 
        {
            { "Content-Type", "application/json" },
        },
        Assertions = new[]
        {
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Type = "statusCode",
                Operator = "is",
                Target = "200",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
            Retry = new Datadog.Inputs.SyntheticsTestOptionsListRetryArgs
            {
                Count = 2,
                Interval = 300,
            },
            MonitorOptions = new Datadog.Inputs.SyntheticsTestOptionsListMonitorOptionsArgs
            {
                RenotifyInterval = 120,
            },
        },
    });
    // Example Usage (Authenticated API test)
    // Create a new Datadog Synthetics API/HTTP test on https://www.example.org
    var testApi = new Datadog.SyntheticsTest("test_api", new()
    {
        Name = "An API test on example.org",
        Type = "api",
        Subtype = "http",
        Status = "live",
        Message = "Notify @pagerduty",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Method = "GET",
            Url = "https://www.example.org",
        },
        RequestHeaders = 
        {
            { "Content-Type", "application/json" },
            { "Authentication", "Token: 1234566789" },
        },
        Assertions = new[]
        {
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Type = "statusCode",
                Operator = "is",
                Target = "200",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
            Retry = new Datadog.Inputs.SyntheticsTestOptionsListRetryArgs
            {
                Count = 2,
                Interval = 300,
            },
            MonitorOptions = new Datadog.Inputs.SyntheticsTestOptionsListMonitorOptionsArgs
            {
                RenotifyInterval = 120,
            },
        },
    });
    // Example Usage (Synthetics SSL test)
    // Create a new Datadog Synthetics API/SSL test on example.org
    var testSsl = new Datadog.SyntheticsTest("test_ssl", new()
    {
        Name = "An API test on example.org",
        Type = "api",
        Subtype = "ssl",
        Status = "live",
        Message = "Notify @pagerduty",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Host = "example.org",
            Port = "443",
        },
        Assertions = new[]
        {
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Type = "certificate",
                Operator = "isInMoreThan",
                Target = "30",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
            AcceptSelfSigned = true,
        },
    });
    // Example Usage (Synthetics TCP test)
    // Create a new Datadog Synthetics API/TCP test on example.org
    var testTcp = new Datadog.SyntheticsTest("test_tcp", new()
    {
        Name = "An API test on example.org",
        Type = "api",
        Subtype = "tcp",
        Status = "live",
        Message = "Notify @pagerduty",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Host = "example.org",
            Port = "443",
        },
        Assertions = new[]
        {
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Type = "responseTime",
                Operator = "lessThan",
                Target = "2000",
            },
        },
        ConfigVariables = new[]
        {
            new Datadog.Inputs.SyntheticsTestConfigVariableArgs
            {
                Type = "global",
                Name = "MY_GLOBAL_VAR",
                Id = "76636cd1-82e2-4aeb-9cfe-51366a8198a2",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
        },
    });
    // Example Usage (Synthetics DNS test)
    // Create a new Datadog Synthetics API/DNS test on example.org
    var testDns = new Datadog.SyntheticsTest("test_dns", new()
    {
        Name = "An API test on example.org",
        Type = "api",
        Subtype = "dns",
        Status = "live",
        Message = "Notify @pagerduty",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Host = "example.org",
        },
        Assertions = new[]
        {
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Type = "recordSome",
                Operator = "is",
                Property = "A",
                Target = "0.0.0.0",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
        },
    });
    // Example Usage (Synthetics Multistep API test)
    // Create a new Datadog Synthetics Multistep API test
    var testMultiStep = new Datadog.SyntheticsTest("test_multi_step", new()
    {
        Name = "Multistep API test",
        Type = "api",
        Subtype = "multi",
        Status = "live",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        ApiSteps = new[]
        {
            new Datadog.Inputs.SyntheticsTestApiStepArgs
            {
                Name = "An API test on example.org",
                Subtype = "http",
                Assertions = new[]
                {
                    new Datadog.Inputs.SyntheticsTestApiStepAssertionArgs
                    {
                        Type = "statusCode",
                        Operator = "is",
                        Target = "200",
                    },
                },
                RequestDefinition = new Datadog.Inputs.SyntheticsTestApiStepRequestDefinitionArgs
                {
                    Method = "GET",
                    Url = "https://www.example.org",
                },
                RequestHeaders = 
                {
                    { "Content-Type", "application/json" },
                    { "Authentication", "Token: 1234566789" },
                },
            },
            new Datadog.Inputs.SyntheticsTestApiStepArgs
            {
                Name = "An API test on example.org",
                Subtype = "http",
                Assertions = new[]
                {
                    new Datadog.Inputs.SyntheticsTestApiStepAssertionArgs
                    {
                        Type = "statusCode",
                        Operator = "is",
                        Target = "200",
                    },
                },
                RequestDefinition = new Datadog.Inputs.SyntheticsTestApiStepRequestDefinitionArgs
                {
                    Method = "GET",
                    Url = "http://example.org",
                },
            },
            new Datadog.Inputs.SyntheticsTestApiStepArgs
            {
                Name = "A gRPC health check on example.org",
                Subtype = "grpc",
                Assertions = new[]
                {
                    new Datadog.Inputs.SyntheticsTestApiStepAssertionArgs
                    {
                        Type = "statusCode",
                        Operator = "is",
                        Target = "200",
                    },
                },
                RequestDefinition = new Datadog.Inputs.SyntheticsTestApiStepRequestDefinitionArgs
                {
                    Host = "example.org",
                    Port = "443",
                    CallType = "healthcheck",
                    Service = "greeter.Greeter",
                },
            },
            new Datadog.Inputs.SyntheticsTestApiStepArgs
            {
                Name = "A gRPC behavior check on example.org",
                Subtype = "grpc",
                Assertions = new[]
                {
                    new Datadog.Inputs.SyntheticsTestApiStepAssertionArgs
                    {
                        Type = "statusCode",
                        Operator = "is",
                        Target = "200",
                    },
                },
                RequestDefinition = new Datadog.Inputs.SyntheticsTestApiStepRequestDefinitionArgs
                {
                    Host = "example.org",
                    Port = "443",
                    CallType = "unary",
                    Service = "greeter.Greeter",
                    Method = "SayHello",
                    Message = "{\"name\": \"John\"}",
                    PlainProtoFile = @"syntax = ""proto3"";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
",
                },
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
            AcceptSelfSigned = true,
        },
    });
    // Example Usage (Synthetics Browser test)
    // Create a new Datadog Synthetics Browser test starting on https://www.example.org
    var testBrowser = new Datadog.SyntheticsTest("test_browser", new()
    {
        Name = "A Browser test on example.org",
        Type = "browser",
        Status = "paused",
        Message = "Notify @qa",
        DeviceIds = new[]
        {
            "laptop_large",
        },
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[] {},
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Method = "GET",
            Url = "https://www.example.org",
        },
        BrowserSteps = new[]
        {
            new Datadog.Inputs.SyntheticsTestBrowserStepArgs
            {
                Name = "Check current url",
                Type = "assertCurrentUrl",
                Params = new Datadog.Inputs.SyntheticsTestBrowserStepParamsArgs
                {
                    Check = "contains",
                    Value = "datadoghq",
                },
            },
            new Datadog.Inputs.SyntheticsTestBrowserStepArgs
            {
                Name = "Test a downloaded file",
                Type = "assertFileDownload",
                Params = new Datadog.Inputs.SyntheticsTestBrowserStepParamsArgs
                {
                    File = JsonSerializer.Serialize(new Dictionary<string, object?>
                    {
                        ["md5"] = "abcdef1234567890",
                        ["sizeCheck"] = new Dictionary<string, object?>
                        {
                            ["type"] = "equals",
                            ["value"] = 1,
                        },
                        ["nameCheck"] = new Dictionary<string, object?>
                        {
                            ["type"] = "contains",
                            ["value"] = ".xls",
                        },
                    }),
                },
            },
            new Datadog.Inputs.SyntheticsTestBrowserStepArgs
            {
                Name = "Upload a file",
                Type = "uploadFiles",
                Params = new Datadog.Inputs.SyntheticsTestBrowserStepParamsArgs
                {
                    Files = JsonSerializer.Serialize(new[]
                    {
                        new Dictionary<string, object?>
                        {
                            ["name"] = "hello.txt",
                            ["size"] = 11,
                            ["content"] = "Hello world",
                        },
                    }),
                    Element = "*[@id='simple-file-upload']",
                    ElementUserLocator = new Datadog.Inputs.SyntheticsTestBrowserStepParamsElementUserLocatorArgs
                    {
                        Value = new Datadog.Inputs.SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs
                        {
                            Type = "css",
                            Value = "#simple-file-upload",
                        },
                    },
                },
            },
        },
        BrowserVariables = new[]
        {
            new Datadog.Inputs.SyntheticsTestBrowserVariableArgs
            {
                Type = "text",
                Name = "MY_PATTERN_VAR",
                Pattern = "{{numeric(3)}}",
                Example = "597",
            },
            new Datadog.Inputs.SyntheticsTestBrowserVariableArgs
            {
                Type = "email",
                Name = "MY_EMAIL_VAR",
                Pattern = "jd8-afe-ydv.{{ numeric(10) }}@synthetics.dtdg.co",
                Example = "jd8-afe-ydv.4546132139@synthetics.dtdg.co",
            },
            new Datadog.Inputs.SyntheticsTestBrowserVariableArgs
            {
                Type = "global",
                Name = "MY_GLOBAL_VAR",
                Id = "76636cd1-82e2-4aeb-9cfe-51366a8198a2",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 3600,
        },
    });
    // Example Usage (Synthetics Mobile test)
    // Create a new Datadog Synthetics Mobile test starting on https://www.example.org
    var testMobile = new Datadog.SyntheticsTest("test_mobile", new()
    {
        Type = "mobile",
        Name = "A Mobile test on example.org",
        Status = "paused",
        Message = "Notify @datadog.user",
        Tags = new[]
        {
            "foo:bar",
            "baz",
        },
        ConfigVariables = new[]
        {
            new Datadog.Inputs.SyntheticsTestConfigVariableArgs
            {
                Example = "123",
                Name = "VARIABLE_NAME",
                Pattern = "{{numeric(3)}}",
                Type = "text",
                Secure = false,
            },
        },
        ConfigInitialApplicationArguments = 
        {
            { "test_process_argument", "test1" },
        },
        DeviceIds = new[]
        {
            "synthetics:mobile:device:apple_iphone_14_plus_ios_16",
        },
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        MobileOptionsList = new Datadog.Inputs.SyntheticsTestMobileOptionsListArgs
        {
            MinFailureDuration = 0,
            Retry = new Datadog.Inputs.SyntheticsTestMobileOptionsListRetryArgs
            {
                Count = 0,
                Interval = 300,
            },
            TickEvery = 43200,
            Scheduling = new Datadog.Inputs.SyntheticsTestMobileOptionsListSchedulingArgs
            {
                Timeframes = new[]
                {
                    new Datadog.Inputs.SyntheticsTestMobileOptionsListSchedulingTimeframeArgs
                    {
                        Day = 5,
                        From = "07:00",
                        To = "16:00",
                    },
                    new Datadog.Inputs.SyntheticsTestMobileOptionsListSchedulingTimeframeArgs
                    {
                        Day = 7,
                        From = "07:00",
                        To = "16:00",
                    },
                },
                Timezone = "UTC",
            },
            MonitorName = "mobile-test-monitor",
            MonitorOptions = new Datadog.Inputs.SyntheticsTestMobileOptionsListMonitorOptionsArgs
            {
                RenotifyInterval = 10,
                EscalationMessage = "test escalation message",
                RenotifyOccurrences = 3,
                NotificationPresetName = "show_all",
            },
            MonitorPriority = 5,
            Ci = new Datadog.Inputs.SyntheticsTestMobileOptionsListCiArgs
            {
                ExecutionRule = "blocking",
            },
            DefaultStepTimeout = 10,
            DeviceIds = new[]
            {
                "synthetics:mobile:device:apple_iphone_14_plus_ios_16",
            },
            NoScreenshot = true,
            AllowApplicationCrash = false,
            DisableAutoAcceptAlert = true,
            MobileApplication = new Datadog.Inputs.SyntheticsTestMobileOptionsListMobileApplicationArgs
            {
                ApplicationId = "5f055d15-0000-aaaa-zzzz-6739f83346aa",
                ReferenceId = "434d4719-0000-aaaa-zzzz-31082b544718",
                ReferenceType = "version",
            },
        },
        MobileSteps = new[]
        {
            new Datadog.Inputs.SyntheticsTestMobileStepArgs
            {
                Name = "Tap on StaticText \"Tap\"",
                Params = new Datadog.Inputs.SyntheticsTestMobileStepParamsArgs
                {
                    Element = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementArgs
                    {
                        Context = "NATIVE_APP",
                        ViewName = "StaticText",
                        ContextType = "native",
                        TextContent = "Tap",
                        MultiLocator = null,
                        RelativePosition = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementRelativePositionArgs
                        {
                            X = 0.07256155303030302,
                            Y = 0.41522381756756754,
                        },
                        UserLocator = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementUserLocatorArgs
                        {
                            FailTestOnCannotLocate = false,
                            Values = new[]
                            {
                                new Datadog.Inputs.SyntheticsTestMobileStepParamsElementUserLocatorValueArgs
                                {
                                    Type = "id",
                                    Value = "some_id",
                                },
                            },
                        },
                        ElementDescription = "<XCUIElementTypeStaticText value=\"Tap\" name=\"Tap\" label=\"Tap\">",
                    },
                },
                Timeout = 100,
                Type = "tap",
                AllowFailure = false,
                IsCritical = true,
                NoScreenshot = false,
                HasNewStepElement = false,
            },
            new Datadog.Inputs.SyntheticsTestMobileStepArgs
            {
                Name = "Test View \"Tap\" content",
                Params = new Datadog.Inputs.SyntheticsTestMobileStepParamsArgs
                {
                    Check = "contains",
                    Value = "Tap",
                    Element = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementArgs
                    {
                        Context = "NATIVE_APP",
                        ViewName = "View",
                        ContextType = "native",
                        TextContent = "Tap",
                        MultiLocator = null,
                        RelativePosition = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementRelativePositionArgs
                        {
                            X = 0.27660448306074764,
                            Y = 0.6841517857142857,
                        },
                        UserLocator = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementUserLocatorArgs
                        {
                            FailTestOnCannotLocate = false,
                            Values = new[]
                            {
                                new Datadog.Inputs.SyntheticsTestMobileStepParamsElementUserLocatorValueArgs
                                {
                                    Type = "id",
                                    Value = "some_id",
                                },
                            },
                        },
                        ElementDescription = "<XCUIElementTypeOther name=\"Tap\" label=\"Tap\">",
                    },
                },
                Timeout = 100,
                Type = "assertElementContent",
                AllowFailure = false,
                IsCritical = true,
                NoScreenshot = false,
                HasNewStepElement = false,
            },
        },
    });
    // Example Usage (GRPC API behavior check test)
    // Create a new Datadog GRPC API test calling host example.org on port 443
    // targeting service `greeter.Greeter` with the method `SayHello`
    // and the message {"name": "John"}
    var testGrpcUnary = new Datadog.SyntheticsTest("test_grpc_unary", new()
    {
        Name = "GRPC API behavior check test",
        Type = "api",
        Subtype = "grpc",
        Status = "live",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Host = "example.org",
            Port = "443",
            CallType = "unary",
            Service = "greeter.Greeter",
            Method = "SayHello",
            Message = "{\"name\": \"John\"}",
            PlainProtoFile = @"syntax = ""proto3"";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
",
        },
        RequestMetadata = 
        {
            { "header", "value" },
        },
        Assertions = new[]
        {
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Type = "responseTime",
                Operator = "lessThan",
                Target = "2000",
            },
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Operator = "is",
                Type = "grpcHealthcheckStatus",
                Target = "1",
            },
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Operator = "is",
                Type = "grpcProto",
                Target = "proto target",
            },
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Operator = "is",
                Property = "property",
                Type = "grpcMetadata",
                Target = "123",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
        },
    });
    // Example Usage (GRPC API health check test)
    // Create a new Datadog GRPC API test calling host example.org on port 443
    // testing the overall health of the service
    var testGrpcHealth = new Datadog.SyntheticsTest("test_grpc_health", new()
    {
        Name = "GRPC API health check test",
        Type = "api",
        Subtype = "grpc",
        Status = "live",
        Locations = new[]
        {
            "aws:eu-central-1",
        },
        Tags = new[]
        {
            "foo:bar",
            "foo",
            "env:test",
        },
        RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
        {
            Host = "example.org",
            Port = "443",
            CallType = "healthcheck",
            Service = "greeter.Greeter",
        },
        Assertions = new[]
        {
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Type = "responseTime",
                Operator = "lessThan",
                Target = "2000",
            },
            new Datadog.Inputs.SyntheticsTestAssertionArgs
            {
                Operator = "is",
                Type = "grpcHealthcheckStatus",
                Target = "1",
            },
        },
        OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
        {
            TickEvery = 900,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.datadog.SyntheticsTest;
import com.pulumi.datadog.SyntheticsTestArgs;
import com.pulumi.datadog.inputs.SyntheticsTestRequestDefinitionArgs;
import com.pulumi.datadog.inputs.SyntheticsTestAssertionArgs;
import com.pulumi.datadog.inputs.SyntheticsTestOptionsListArgs;
import com.pulumi.datadog.inputs.SyntheticsTestOptionsListRetryArgs;
import com.pulumi.datadog.inputs.SyntheticsTestOptionsListMonitorOptionsArgs;
import com.pulumi.datadog.inputs.SyntheticsTestConfigVariableArgs;
import com.pulumi.datadog.inputs.SyntheticsTestApiStepArgs;
import com.pulumi.datadog.inputs.SyntheticsTestApiStepRequestDefinitionArgs;
import com.pulumi.datadog.inputs.SyntheticsTestBrowserStepArgs;
import com.pulumi.datadog.inputs.SyntheticsTestBrowserStepParamsArgs;
import com.pulumi.datadog.inputs.SyntheticsTestBrowserStepParamsElementUserLocatorArgs;
import com.pulumi.datadog.inputs.SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs;
import com.pulumi.datadog.inputs.SyntheticsTestBrowserVariableArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileOptionsListArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileOptionsListRetryArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileOptionsListSchedulingArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileOptionsListMonitorOptionsArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileOptionsListCiArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileOptionsListMobileApplicationArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileStepArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileStepParamsArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileStepParamsElementArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileStepParamsElementRelativePositionArgs;
import com.pulumi.datadog.inputs.SyntheticsTestMobileStepParamsElementUserLocatorArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        // Example Usage (Synthetics API test)
        // Create a new Datadog Synthetics API/HTTP test on https://www.example.org
        var testUptime = new SyntheticsTest("testUptime", SyntheticsTestArgs.builder()
            .name("An Uptime test on example.org")
            .type("api")
            .subtype("http")
            .status("live")
            .message("Notify @pagerduty")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .method("GET")
                .url("https://www.example.org")
                .build())
            .requestHeaders(Map.of("Content-Type", "application/json"))
            .assertions(SyntheticsTestAssertionArgs.builder()
                .type("statusCode")
                .operator("is")
                .target("200")
                .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .retry(SyntheticsTestOptionsListRetryArgs.builder()
                    .count(2)
                    .interval(300)
                    .build())
                .monitorOptions(SyntheticsTestOptionsListMonitorOptionsArgs.builder()
                    .renotifyInterval(120)
                    .build())
                .build())
            .build());
        // Example Usage (Authenticated API test)
        // Create a new Datadog Synthetics API/HTTP test on https://www.example.org
        var testApi = new SyntheticsTest("testApi", SyntheticsTestArgs.builder()
            .name("An API test on example.org")
            .type("api")
            .subtype("http")
            .status("live")
            .message("Notify @pagerduty")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .method("GET")
                .url("https://www.example.org")
                .build())
            .requestHeaders(Map.ofEntries(
                Map.entry("Content-Type", "application/json"),
                Map.entry("Authentication", "Token: 1234566789")
            ))
            .assertions(SyntheticsTestAssertionArgs.builder()
                .type("statusCode")
                .operator("is")
                .target("200")
                .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .retry(SyntheticsTestOptionsListRetryArgs.builder()
                    .count(2)
                    .interval(300)
                    .build())
                .monitorOptions(SyntheticsTestOptionsListMonitorOptionsArgs.builder()
                    .renotifyInterval(120)
                    .build())
                .build())
            .build());
        // Example Usage (Synthetics SSL test)
        // Create a new Datadog Synthetics API/SSL test on example.org
        var testSsl = new SyntheticsTest("testSsl", SyntheticsTestArgs.builder()
            .name("An API test on example.org")
            .type("api")
            .subtype("ssl")
            .status("live")
            .message("Notify @pagerduty")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .host("example.org")
                .port("443")
                .build())
            .assertions(SyntheticsTestAssertionArgs.builder()
                .type("certificate")
                .operator("isInMoreThan")
                .target(30)
                .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .acceptSelfSigned(true)
                .build())
            .build());
        // Example Usage (Synthetics TCP test)
        // Create a new Datadog Synthetics API/TCP test on example.org
        var testTcp = new SyntheticsTest("testTcp", SyntheticsTestArgs.builder()
            .name("An API test on example.org")
            .type("api")
            .subtype("tcp")
            .status("live")
            .message("Notify @pagerduty")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .host("example.org")
                .port("443")
                .build())
            .assertions(SyntheticsTestAssertionArgs.builder()
                .type("responseTime")
                .operator("lessThan")
                .target(2000)
                .build())
            .configVariables(SyntheticsTestConfigVariableArgs.builder()
                .type("global")
                .name("MY_GLOBAL_VAR")
                .id("76636cd1-82e2-4aeb-9cfe-51366a8198a2")
                .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .build())
            .build());
        // Example Usage (Synthetics DNS test)
        // Create a new Datadog Synthetics API/DNS test on example.org
        var testDns = new SyntheticsTest("testDns", SyntheticsTestArgs.builder()
            .name("An API test on example.org")
            .type("api")
            .subtype("dns")
            .status("live")
            .message("Notify @pagerduty")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .host("example.org")
                .build())
            .assertions(SyntheticsTestAssertionArgs.builder()
                .type("recordSome")
                .operator("is")
                .property("A")
                .target("0.0.0.0")
                .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .build())
            .build());
        // Example Usage (Synthetics Multistep API test)
        // Create a new Datadog Synthetics Multistep API test
        var testMultiStep = new SyntheticsTest("testMultiStep", SyntheticsTestArgs.builder()
            .name("Multistep API test")
            .type("api")
            .subtype("multi")
            .status("live")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .apiSteps(            
                SyntheticsTestApiStepArgs.builder()
                    .name("An API test on example.org")
                    .subtype("http")
                    .assertions(SyntheticsTestApiStepAssertionArgs.builder()
                        .type("statusCode")
                        .operator("is")
                        .target("200")
                        .build())
                    .requestDefinition(SyntheticsTestApiStepRequestDefinitionArgs.builder()
                        .method("GET")
                        .url("https://www.example.org")
                        .build())
                    .requestHeaders(Map.ofEntries(
                        Map.entry("Content-Type", "application/json"),
                        Map.entry("Authentication", "Token: 1234566789")
                    ))
                    .build(),
                SyntheticsTestApiStepArgs.builder()
                    .name("An API test on example.org")
                    .subtype("http")
                    .assertions(SyntheticsTestApiStepAssertionArgs.builder()
                        .type("statusCode")
                        .operator("is")
                        .target("200")
                        .build())
                    .requestDefinition(SyntheticsTestApiStepRequestDefinitionArgs.builder()
                        .method("GET")
                        .url("http://example.org")
                        .build())
                    .build(),
                SyntheticsTestApiStepArgs.builder()
                    .name("A gRPC health check on example.org")
                    .subtype("grpc")
                    .assertions(SyntheticsTestApiStepAssertionArgs.builder()
                        .type("statusCode")
                        .operator("is")
                        .target("200")
                        .build())
                    .requestDefinition(SyntheticsTestApiStepRequestDefinitionArgs.builder()
                        .host("example.org")
                        .port("443")
                        .callType("healthcheck")
                        .service("greeter.Greeter")
                        .build())
                    .build(),
                SyntheticsTestApiStepArgs.builder()
                    .name("A gRPC behavior check on example.org")
                    .subtype("grpc")
                    .assertions(SyntheticsTestApiStepAssertionArgs.builder()
                        .type("statusCode")
                        .operator("is")
                        .target("200")
                        .build())
                    .requestDefinition(SyntheticsTestApiStepRequestDefinitionArgs.builder()
                        .host("example.org")
                        .port("443")
                        .callType("unary")
                        .service("greeter.Greeter")
                        .method("SayHello")
                        .message("{\"name\": \"John\"}")
                        .plainProtoFile("""
syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
                        """)
                        .build())
                    .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .acceptSelfSigned(true)
                .build())
            .build());
        // Example Usage (Synthetics Browser test)
        // Create a new Datadog Synthetics Browser test starting on https://www.example.org
        var testBrowser = new SyntheticsTest("testBrowser", SyntheticsTestArgs.builder()
            .name("A Browser test on example.org")
            .type("browser")
            .status("paused")
            .message("Notify @qa")
            .deviceIds("laptop_large")
            .locations("aws:eu-central-1")
            .tags()
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .method("GET")
                .url("https://www.example.org")
                .build())
            .browserSteps(            
                SyntheticsTestBrowserStepArgs.builder()
                    .name("Check current url")
                    .type("assertCurrentUrl")
                    .params(SyntheticsTestBrowserStepParamsArgs.builder()
                        .check("contains")
                        .value("datadoghq")
                        .build())
                    .build(),
                SyntheticsTestBrowserStepArgs.builder()
                    .name("Test a downloaded file")
                    .type("assertFileDownload")
                    .params(SyntheticsTestBrowserStepParamsArgs.builder()
                        .file(serializeJson(
                            jsonObject(
                                jsonProperty("md5", "abcdef1234567890"),
                                jsonProperty("sizeCheck", jsonObject(
                                    jsonProperty("type", "equals"),
                                    jsonProperty("value", 1)
                                )),
                                jsonProperty("nameCheck", jsonObject(
                                    jsonProperty("type", "contains"),
                                    jsonProperty("value", ".xls")
                                ))
                            )))
                        .build())
                    .build(),
                SyntheticsTestBrowserStepArgs.builder()
                    .name("Upload a file")
                    .type("uploadFiles")
                    .params(SyntheticsTestBrowserStepParamsArgs.builder()
                        .files(serializeJson(
                            jsonArray(jsonObject(
                                jsonProperty("name", "hello.txt"),
                                jsonProperty("size", 11),
                                jsonProperty("content", "Hello world")
                            ))))
                        .element("*[@id='simple-file-upload']")
                        .elementUserLocator(SyntheticsTestBrowserStepParamsElementUserLocatorArgs.builder()
                            .value(SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs.builder()
                                .type("css")
                                .value("#simple-file-upload")
                                .build())
                            .build())
                        .build())
                    .build())
            .browserVariables(            
                SyntheticsTestBrowserVariableArgs.builder()
                    .type("text")
                    .name("MY_PATTERN_VAR")
                    .pattern("{{numeric(3)}}")
                    .example("597")
                    .build(),
                SyntheticsTestBrowserVariableArgs.builder()
                    .type("email")
                    .name("MY_EMAIL_VAR")
                    .pattern("jd8-afe-ydv.{{ numeric(10) }}@synthetics.dtdg.co")
                    .example("jd8-afe-ydv.4546132139@synthetics.dtdg.co")
                    .build(),
                SyntheticsTestBrowserVariableArgs.builder()
                    .type("global")
                    .name("MY_GLOBAL_VAR")
                    .id("76636cd1-82e2-4aeb-9cfe-51366a8198a2")
                    .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(3600)
                .build())
            .build());
        // Example Usage (Synthetics Mobile test)
        // Create a new Datadog Synthetics Mobile test starting on https://www.example.org
        var testMobile = new SyntheticsTest("testMobile", SyntheticsTestArgs.builder()
            .type("mobile")
            .name("A Mobile test on example.org")
            .status("paused")
            .message("Notify @datadog.user")
            .tags(            
                "foo:bar",
                "baz")
            .configVariables(SyntheticsTestConfigVariableArgs.builder()
                .example("123")
                .name("VARIABLE_NAME")
                .pattern("{{numeric(3)}}")
                .type("text")
                .secure(false)
                .build())
            .configInitialApplicationArguments(Map.of("test_process_argument", "test1"))
            .deviceIds("synthetics:mobile:device:apple_iphone_14_plus_ios_16")
            .locations("aws:eu-central-1")
            .mobileOptionsList(SyntheticsTestMobileOptionsListArgs.builder()
                .minFailureDuration(0)
                .retry(SyntheticsTestMobileOptionsListRetryArgs.builder()
                    .count(0)
                    .interval(300)
                    .build())
                .tickEvery(43200)
                .scheduling(SyntheticsTestMobileOptionsListSchedulingArgs.builder()
                    .timeframes(                    
                        SyntheticsTestMobileOptionsListSchedulingTimeframeArgs.builder()
                            .day(5)
                            .from("07:00")
                            .to("16:00")
                            .build(),
                        SyntheticsTestMobileOptionsListSchedulingTimeframeArgs.builder()
                            .day(7)
                            .from("07:00")
                            .to("16:00")
                            .build())
                    .timezone("UTC")
                    .build())
                .monitorName("mobile-test-monitor")
                .monitorOptions(SyntheticsTestMobileOptionsListMonitorOptionsArgs.builder()
                    .renotifyInterval(10)
                    .escalationMessage("test escalation message")
                    .renotifyOccurrences(3)
                    .notificationPresetName("show_all")
                    .build())
                .monitorPriority(5)
                .ci(SyntheticsTestMobileOptionsListCiArgs.builder()
                    .executionRule("blocking")
                    .build())
                .defaultStepTimeout(10)
                .deviceIds("synthetics:mobile:device:apple_iphone_14_plus_ios_16")
                .noScreenshot(true)
                .allowApplicationCrash(false)
                .disableAutoAcceptAlert(true)
                .mobileApplication(SyntheticsTestMobileOptionsListMobileApplicationArgs.builder()
                    .applicationId("5f055d15-0000-aaaa-zzzz-6739f83346aa")
                    .referenceId("434d4719-0000-aaaa-zzzz-31082b544718")
                    .referenceType("version")
                    .build())
                .build())
            .mobileSteps(            
                SyntheticsTestMobileStepArgs.builder()
                    .name("Tap on StaticText \"Tap\"")
                    .params(SyntheticsTestMobileStepParamsArgs.builder()
                        .element(SyntheticsTestMobileStepParamsElementArgs.builder()
                            .context("NATIVE_APP")
                            .viewName("StaticText")
                            .contextType("native")
                            .textContent("Tap")
                            .multiLocator()
                            .relativePosition(SyntheticsTestMobileStepParamsElementRelativePositionArgs.builder()
                                .x(0.07256155303030302)
                                .y(0.41522381756756754)
                                .build())
                            .userLocator(SyntheticsTestMobileStepParamsElementUserLocatorArgs.builder()
                                .failTestOnCannotLocate(false)
                                .values(SyntheticsTestMobileStepParamsElementUserLocatorValueArgs.builder()
                                    .type("id")
                                    .value("some_id")
                                    .build())
                                .build())
                            .elementDescription("<XCUIElementTypeStaticText value=\"Tap\" name=\"Tap\" label=\"Tap\">")
                            .build())
                        .build())
                    .timeout(100)
                    .type("tap")
                    .allowFailure(false)
                    .isCritical(true)
                    .noScreenshot(false)
                    .hasNewStepElement(false)
                    .build(),
                SyntheticsTestMobileStepArgs.builder()
                    .name("Test View \"Tap\" content")
                    .params(SyntheticsTestMobileStepParamsArgs.builder()
                        .check("contains")
                        .value("Tap")
                        .element(SyntheticsTestMobileStepParamsElementArgs.builder()
                            .context("NATIVE_APP")
                            .viewName("View")
                            .contextType("native")
                            .textContent("Tap")
                            .multiLocator()
                            .relativePosition(SyntheticsTestMobileStepParamsElementRelativePositionArgs.builder()
                                .x(0.27660448306074764)
                                .y(0.6841517857142857)
                                .build())
                            .userLocator(SyntheticsTestMobileStepParamsElementUserLocatorArgs.builder()
                                .failTestOnCannotLocate(false)
                                .values(SyntheticsTestMobileStepParamsElementUserLocatorValueArgs.builder()
                                    .type("id")
                                    .value("some_id")
                                    .build())
                                .build())
                            .elementDescription("<XCUIElementTypeOther name=\"Tap\" label=\"Tap\">")
                            .build())
                        .build())
                    .timeout(100)
                    .type("assertElementContent")
                    .allowFailure(false)
                    .isCritical(true)
                    .noScreenshot(false)
                    .hasNewStepElement(false)
                    .build())
            .build());
        // Example Usage (GRPC API behavior check test)
        // Create a new Datadog GRPC API test calling host example.org on port 443
        // targeting service `greeter.Greeter` with the method `SayHello`
        // and the message {"name": "John"}
        var testGrpcUnary = new SyntheticsTest("testGrpcUnary", SyntheticsTestArgs.builder()
            .name("GRPC API behavior check test")
            .type("api")
            .subtype("grpc")
            .status("live")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .host("example.org")
                .port("443")
                .callType("unary")
                .service("greeter.Greeter")
                .method("SayHello")
                .message("{\"name\": \"John\"}")
                .plainProtoFile("""
syntax = "proto3";
package greeter;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings
message HelloReply {
  string message = 1;
}
                """)
                .build())
            .requestMetadata(Map.of("header", "value"))
            .assertions(            
                SyntheticsTestAssertionArgs.builder()
                    .type("responseTime")
                    .operator("lessThan")
                    .target("2000")
                    .build(),
                SyntheticsTestAssertionArgs.builder()
                    .operator("is")
                    .type("grpcHealthcheckStatus")
                    .target(1)
                    .build(),
                SyntheticsTestAssertionArgs.builder()
                    .operator("is")
                    .type("grpcProto")
                    .target("proto target")
                    .build(),
                SyntheticsTestAssertionArgs.builder()
                    .operator("is")
                    .property("property")
                    .type("grpcMetadata")
                    .target("123")
                    .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .build())
            .build());
        // Example Usage (GRPC API health check test)
        // Create a new Datadog GRPC API test calling host example.org on port 443
        // testing the overall health of the service
        var testGrpcHealth = new SyntheticsTest("testGrpcHealth", SyntheticsTestArgs.builder()
            .name("GRPC API health check test")
            .type("api")
            .subtype("grpc")
            .status("live")
            .locations("aws:eu-central-1")
            .tags(            
                "foo:bar",
                "foo",
                "env:test")
            .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
                .host("example.org")
                .port("443")
                .callType("healthcheck")
                .service("greeter.Greeter")
                .build())
            .assertions(            
                SyntheticsTestAssertionArgs.builder()
                    .type("responseTime")
                    .operator("lessThan")
                    .target("2000")
                    .build(),
                SyntheticsTestAssertionArgs.builder()
                    .operator("is")
                    .type("grpcHealthcheckStatus")
                    .target(1)
                    .build())
            .optionsList(SyntheticsTestOptionsListArgs.builder()
                .tickEvery(900)
                .build())
            .build());
    }
}
resources:
  # Example Usage (Synthetics API test)
  # Create a new Datadog Synthetics API/HTTP test on https://www.example.org
  testUptime:
    type: datadog:SyntheticsTest
    name: test_uptime
    properties:
      name: An Uptime test on example.org
      type: api
      subtype: http
      status: live
      message: Notify @pagerduty
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      requestDefinition:
        method: GET
        url: https://www.example.org
      requestHeaders:
        Content-Type: application/json
      assertions:
        - type: statusCode
          operator: is
          target: '200'
      optionsList:
        tickEvery: 900
        retry:
          count: 2
          interval: 300
        monitorOptions:
          renotifyInterval: 120
  # Example Usage (Authenticated API test)
  # Create a new Datadog Synthetics API/HTTP test on https://www.example.org
  testApi:
    type: datadog:SyntheticsTest
    name: test_api
    properties:
      name: An API test on example.org
      type: api
      subtype: http
      status: live
      message: Notify @pagerduty
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      requestDefinition:
        method: GET
        url: https://www.example.org
      requestHeaders:
        Content-Type: application/json
        Authentication: 'Token: 1234566789'
      assertions:
        - type: statusCode
          operator: is
          target: '200'
      optionsList:
        tickEvery: 900
        retry:
          count: 2
          interval: 300
        monitorOptions:
          renotifyInterval: 120
  # Example Usage (Synthetics SSL test)
  # Create a new Datadog Synthetics API/SSL test on example.org
  testSsl:
    type: datadog:SyntheticsTest
    name: test_ssl
    properties:
      name: An API test on example.org
      type: api
      subtype: ssl
      status: live
      message: Notify @pagerduty
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      requestDefinition:
        host: example.org
        port: '443'
      assertions:
        - type: certificate
          operator: isInMoreThan
          target: 30
      optionsList:
        tickEvery: 900
        acceptSelfSigned: true
  # Example Usage (Synthetics TCP test)
  # Create a new Datadog Synthetics API/TCP test on example.org
  testTcp:
    type: datadog:SyntheticsTest
    name: test_tcp
    properties:
      name: An API test on example.org
      type: api
      subtype: tcp
      status: live
      message: Notify @pagerduty
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      requestDefinition:
        host: example.org
        port: '443'
      assertions:
        - type: responseTime
          operator: lessThan
          target: 2000
      configVariables:
        - type: global
          name: MY_GLOBAL_VAR
          id: 76636cd1-82e2-4aeb-9cfe-51366a8198a2
      optionsList:
        tickEvery: 900
  # Example Usage (Synthetics DNS test)
  # Create a new Datadog Synthetics API/DNS test on example.org
  testDns:
    type: datadog:SyntheticsTest
    name: test_dns
    properties:
      name: An API test on example.org
      type: api
      subtype: dns
      status: live
      message: Notify @pagerduty
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      requestDefinition:
        host: example.org
      assertions:
        - type: recordSome
          operator: is
          property: A
          target: 0.0.0.0
      optionsList:
        tickEvery: 900
  # Example Usage (Synthetics Multistep API test)
  # Create a new Datadog Synthetics Multistep API test
  testMultiStep:
    type: datadog:SyntheticsTest
    name: test_multi_step
    properties:
      name: Multistep API test
      type: api
      subtype: multi
      status: live
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      apiSteps:
        - name: An API test on example.org
          subtype: http
          assertions:
            - type: statusCode
              operator: is
              target: '200'
          requestDefinition:
            method: GET
            url: https://www.example.org
          requestHeaders:
            Content-Type: application/json
            Authentication: 'Token: 1234566789'
        - name: An API test on example.org
          subtype: http
          assertions:
            - type: statusCode
              operator: is
              target: '200'
          requestDefinition:
            method: GET
            url: http://example.org
        - name: A gRPC health check on example.org
          subtype: grpc
          assertions:
            - type: statusCode
              operator: is
              target: '200'
          requestDefinition:
            host: example.org
            port: '443'
            callType: healthcheck
            service: greeter.Greeter
        - name: A gRPC behavior check on example.org
          subtype: grpc
          assertions:
            - type: statusCode
              operator: is
              target: '200'
          requestDefinition:
            host: example.org
            port: '443'
            callType: unary
            service: greeter.Greeter
            method: SayHello
            message: '{"name": "John"}'
            plainProtoFile: |
              syntax = "proto3";
              package greeter;
              // The greeting service definition.
              service Greeter {
                // Sends a greeting
                rpc SayHello (HelloRequest) returns (HelloReply) {}
              }
              // The request message containing the user's name.
              message HelloRequest {
                string name = 1;
              }
              // The response message containing the greetings
              message HelloReply {
                string message = 1;
              }
      optionsList:
        tickEvery: 900
        acceptSelfSigned: true
  # Example Usage (Synthetics Browser test)
  # Create a new Datadog Synthetics Browser test starting on https://www.example.org
  testBrowser:
    type: datadog:SyntheticsTest
    name: test_browser
    properties:
      name: A Browser test on example.org
      type: browser
      status: paused
      message: Notify @qa
      deviceIds:
        - laptop_large
      locations:
        - aws:eu-central-1
      tags: []
      requestDefinition:
        method: GET
        url: https://www.example.org
      browserSteps:
        - name: Check current url
          type: assertCurrentUrl
          params:
            check: contains
            value: datadoghq
        - name: Test a downloaded file
          type: assertFileDownload
          params:
            file:
              fn::toJSON:
                md5: abcdef1234567890
                sizeCheck:
                  type: equals
                  value: 1
                nameCheck:
                  type: contains
                  value: .xls
        - name: Upload a file
          type: uploadFiles
          params:
            files:
              fn::toJSON:
                - name: hello.txt
                  size: 11
                  content: Hello world
            element: '*[@id=''simple-file-upload'']'
            elementUserLocator:
              value:
                type: css
                value: '#simple-file-upload'
      browserVariables:
        - type: text
          name: MY_PATTERN_VAR
          pattern: '{{numeric(3)}}'
          example: '597'
        - type: email
          name: MY_EMAIL_VAR
          pattern: jd8-afe-ydv.{{ numeric(10) }}@synthetics.dtdg.co
          example: jd8-afe-ydv.4546132139@synthetics.dtdg.co
        - type: global
          name: MY_GLOBAL_VAR
          id: 76636cd1-82e2-4aeb-9cfe-51366a8198a2
      optionsList:
        tickEvery: 3600
  # Example Usage (Synthetics Mobile test)
  # Create a new Datadog Synthetics Mobile test starting on https://www.example.org
  testMobile:
    type: datadog:SyntheticsTest
    name: test_mobile
    properties:
      type: mobile
      name: A Mobile test on example.org
      status: paused
      message: Notify @datadog.user
      tags:
        - foo:bar
        - baz
      configVariables:
        - example: '123'
          name: VARIABLE_NAME
          pattern: '{{numeric(3)}}'
          type: text
          secure: false
      configInitialApplicationArguments:
        test_process_argument: test1
      deviceIds:
        - synthetics:mobile:device:apple_iphone_14_plus_ios_16
      locations:
        - aws:eu-central-1
      mobileOptionsList:
        minFailureDuration: 0
        retry:
          count: 0
          interval: 300
        tickEvery: 43200
        scheduling:
          timeframes:
            - day: 5
              from: 07:00
              to: 16:00
            - day: 7
              from: 07:00
              to: 16:00
          timezone: UTC
        monitorName: mobile-test-monitor
        monitorOptions:
          renotifyInterval: 10
          escalationMessage: test escalation message
          renotifyOccurrences: 3
          notificationPresetName: show_all
        monitorPriority: 5
        ci:
          executionRule: blocking
        defaultStepTimeout: 10
        deviceIds:
          - synthetics:mobile:device:apple_iphone_14_plus_ios_16
        noScreenshot: true
        allowApplicationCrash: false
        disableAutoAcceptAlert: true
        mobileApplication:
          applicationId: 5f055d15-0000-aaaa-zzzz-6739f83346aa
          referenceId: 434d4719-0000-aaaa-zzzz-31082b544718
          referenceType: version
      mobileSteps:
        - name: Tap on StaticText "Tap"
          params:
            element:
              context: NATIVE_APP
              viewName: StaticText
              contextType: native
              textContent: Tap
              multiLocator: {}
              relativePosition:
                x: 0.07256155303030302
                y: 0.41522381756756754
              userLocator:
                failTestOnCannotLocate: false
                values:
                  - type: id
                    value: some_id
              elementDescription: <XCUIElementTypeStaticText value="Tap" name="Tap" label="Tap">
          timeout: 100
          type: tap
          allowFailure: false
          isCritical: true
          noScreenshot: false
          hasNewStepElement: false
        - name: Test View "Tap" content
          params:
            check: contains
            value: Tap
            element:
              context: NATIVE_APP
              viewName: View
              contextType: native
              textContent: Tap
              multiLocator: {}
              relativePosition:
                x: 0.27660448306074764
                y: 0.6841517857142857
              userLocator:
                failTestOnCannotLocate: false
                values:
                  - type: id
                    value: some_id
              elementDescription: <XCUIElementTypeOther name="Tap" label="Tap">
          timeout: 100
          type: assertElementContent
          allowFailure: false
          isCritical: true
          noScreenshot: false
          hasNewStepElement: false
  # Example Usage (GRPC API behavior check test)
  # Create a new Datadog GRPC API test calling host example.org on port 443
  # targeting service `greeter.Greeter` with the method `SayHello`
  # and the message {"name": "John"}
  testGrpcUnary:
    type: datadog:SyntheticsTest
    name: test_grpc_unary
    properties:
      name: GRPC API behavior check test
      type: api
      subtype: grpc
      status: live
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      requestDefinition:
        host: example.org
        port: '443'
        callType: unary
        service: greeter.Greeter
        method: SayHello
        message: '{"name": "John"}'
        plainProtoFile: |
          syntax = "proto3";
          package greeter;
          // The greeting service definition.
          service Greeter {
            // Sends a greeting
            rpc SayHello (HelloRequest) returns (HelloReply) {}
          }
          // The request message containing the user's name.
          message HelloRequest {
            string name = 1;
          }
          // The response message containing the greetings
          message HelloReply {
            string message = 1;
          }          
      requestMetadata:
        header: value
      assertions:
        - type: responseTime
          operator: lessThan
          target: '2000'
        - operator: is
          type: grpcHealthcheckStatus
          target: 1
        - operator: is
          type: grpcProto
          target: proto target
        - operator: is
          property: property
          type: grpcMetadata
          target: '123'
      optionsList:
        tickEvery: 900
  # Example Usage (GRPC API health check test)
  # Create a new Datadog GRPC API test calling host example.org on port 443
  # testing the overall health of the service
  testGrpcHealth:
    type: datadog:SyntheticsTest
    name: test_grpc_health
    properties:
      name: GRPC API health check test
      type: api
      subtype: grpc
      status: live
      locations:
        - aws:eu-central-1
      tags:
        - foo:bar
        - foo
        - env:test
      requestDefinition:
        host: example.org
        port: '443'
        callType: healthcheck
        service: greeter.Greeter
      assertions:
        - type: responseTime
          operator: lessThan
          target: '2000'
        - operator: is
          type: grpcHealthcheckStatus
          target: 1
      optionsList:
        tickEvery: 900
Create SyntheticsTest Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new SyntheticsTest(name: string, args: SyntheticsTestArgs, opts?: CustomResourceOptions);@overload
def SyntheticsTest(resource_name: str,
                   args: SyntheticsTestArgs,
                   opts: Optional[ResourceOptions] = None)
@overload
def SyntheticsTest(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   locations: Optional[Sequence[str]] = None,
                   type: Optional[str] = None,
                   status: Optional[str] = None,
                   name: Optional[str] = None,
                   request_basicauth: Optional[SyntheticsTestRequestBasicauthArgs] = None,
                   request_client_certificate: Optional[SyntheticsTestRequestClientCertificateArgs] = None,
                   device_ids: Optional[Sequence[str]] = None,
                   force_delete_dependencies: Optional[bool] = None,
                   config_initial_application_arguments: Optional[Mapping[str, str]] = None,
                   message: Optional[str] = None,
                   mobile_options_list: Optional[SyntheticsTestMobileOptionsListArgs] = None,
                   mobile_steps: Optional[Sequence[SyntheticsTestMobileStepArgs]] = None,
                   browser_variables: Optional[Sequence[SyntheticsTestBrowserVariableArgs]] = None,
                   options_list: Optional[SyntheticsTestOptionsListArgs] = None,
                   api_steps: Optional[Sequence[SyntheticsTestApiStepArgs]] = None,
                   config_variables: Optional[Sequence[SyntheticsTestConfigVariableArgs]] = None,
                   request_definition: Optional[SyntheticsTestRequestDefinitionArgs] = None,
                   request_files: Optional[Sequence[SyntheticsTestRequestFileArgs]] = None,
                   request_headers: Optional[Mapping[str, str]] = None,
                   request_metadata: Optional[Mapping[str, str]] = None,
                   request_proxy: Optional[SyntheticsTestRequestProxyArgs] = None,
                   request_query: Optional[Mapping[str, str]] = None,
                   set_cookie: Optional[str] = None,
                   browser_steps: Optional[Sequence[SyntheticsTestBrowserStepArgs]] = None,
                   subtype: Optional[str] = None,
                   tags: Optional[Sequence[str]] = None,
                   assertions: Optional[Sequence[SyntheticsTestAssertionArgs]] = None,
                   variables_from_script: Optional[str] = None)func NewSyntheticsTest(ctx *Context, name string, args SyntheticsTestArgs, opts ...ResourceOption) (*SyntheticsTest, error)public SyntheticsTest(string name, SyntheticsTestArgs args, CustomResourceOptions? opts = null)
public SyntheticsTest(String name, SyntheticsTestArgs args)
public SyntheticsTest(String name, SyntheticsTestArgs args, CustomResourceOptions options)
type: datadog:SyntheticsTest
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args SyntheticsTestArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args SyntheticsTestArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args SyntheticsTestArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args SyntheticsTestArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args SyntheticsTestArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var syntheticsTestResource = new Datadog.SyntheticsTest("syntheticsTestResource", new()
{
    Locations = new[]
    {
        "string",
    },
    Type = "string",
    Status = "string",
    Name = "string",
    RequestBasicauth = new Datadog.Inputs.SyntheticsTestRequestBasicauthArgs
    {
        AccessKey = "string",
        AccessTokenUrl = "string",
        Audience = "string",
        ClientId = "string",
        ClientSecret = "string",
        Domain = "string",
        Password = "string",
        Region = "string",
        Resource = "string",
        Scope = "string",
        SecretKey = "string",
        ServiceName = "string",
        SessionToken = "string",
        TokenApiAuthentication = "string",
        Type = "string",
        Username = "string",
        Workstation = "string",
    },
    RequestClientCertificate = new Datadog.Inputs.SyntheticsTestRequestClientCertificateArgs
    {
        Cert = new Datadog.Inputs.SyntheticsTestRequestClientCertificateCertArgs
        {
            Content = "string",
            Filename = "string",
        },
        Key = new Datadog.Inputs.SyntheticsTestRequestClientCertificateKeyArgs
        {
            Content = "string",
            Filename = "string",
        },
    },
    DeviceIds = new[]
    {
        "string",
    },
    ForceDeleteDependencies = false,
    ConfigInitialApplicationArguments = 
    {
        { "string", "string" },
    },
    Message = "string",
    MobileOptionsList = new Datadog.Inputs.SyntheticsTestMobileOptionsListArgs
    {
        DeviceIds = new[]
        {
            "string",
        },
        TickEvery = 0,
        MobileApplication = new Datadog.Inputs.SyntheticsTestMobileOptionsListMobileApplicationArgs
        {
            ApplicationId = "string",
            ReferenceId = "string",
            ReferenceType = "string",
        },
        MonitorName = "string",
        MonitorPriority = 0,
        DisableAutoAcceptAlert = false,
        MinFailureDuration = 0,
        Ci = new Datadog.Inputs.SyntheticsTestMobileOptionsListCiArgs
        {
            ExecutionRule = "string",
        },
        AllowApplicationCrash = false,
        MonitorOptions = new Datadog.Inputs.SyntheticsTestMobileOptionsListMonitorOptionsArgs
        {
            EscalationMessage = "string",
            NotificationPresetName = "string",
            RenotifyInterval = 0,
            RenotifyOccurrences = 0,
        },
        DefaultStepTimeout = 0,
        NoScreenshot = false,
        Retry = new Datadog.Inputs.SyntheticsTestMobileOptionsListRetryArgs
        {
            Count = 0,
            Interval = 0,
        },
        Scheduling = new Datadog.Inputs.SyntheticsTestMobileOptionsListSchedulingArgs
        {
            Timeframes = new[]
            {
                new Datadog.Inputs.SyntheticsTestMobileOptionsListSchedulingTimeframeArgs
                {
                    Day = 0,
                    From = "string",
                    To = "string",
                },
            },
            Timezone = "string",
        },
        Bindings = new[]
        {
            new Datadog.Inputs.SyntheticsTestMobileOptionsListBindingArgs
            {
                Principals = new[]
                {
                    "string",
                },
                Relation = "string",
            },
        },
        Verbosity = 0,
    },
    MobileSteps = new[]
    {
        new Datadog.Inputs.SyntheticsTestMobileStepArgs
        {
            Name = "string",
            Params = new Datadog.Inputs.SyntheticsTestMobileStepParamsArgs
            {
                Check = "string",
                Delay = 0,
                Direction = "string",
                Element = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementArgs
                {
                    Context = "string",
                    ContextType = "string",
                    ElementDescription = "string",
                    MultiLocator = 
                    {
                        { "string", "string" },
                    },
                    RelativePosition = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementRelativePositionArgs
                    {
                        X = 0,
                        Y = 0,
                    },
                    TextContent = "string",
                    UserLocator = new Datadog.Inputs.SyntheticsTestMobileStepParamsElementUserLocatorArgs
                    {
                        FailTestOnCannotLocate = false,
                        Values = new[]
                        {
                            new Datadog.Inputs.SyntheticsTestMobileStepParamsElementUserLocatorValueArgs
                            {
                                Type = "string",
                                Value = "string",
                            },
                        },
                    },
                    ViewName = "string",
                },
                Enable = false,
                MaxScrolls = 0,
                Positions = new[]
                {
                    new Datadog.Inputs.SyntheticsTestMobileStepParamsPositionArgs
                    {
                        X = 0,
                        Y = 0,
                    },
                },
                SubtestPublicId = "string",
                Value = "string",
                Variable = new Datadog.Inputs.SyntheticsTestMobileStepParamsVariableArgs
                {
                    Name = "string",
                    Example = "string",
                },
                WithEnter = false,
                X = 0,
                Y = 0,
            },
            Type = "string",
            AllowFailure = false,
            HasNewStepElement = false,
            IsCritical = false,
            NoScreenshot = false,
            PublicId = "string",
            Timeout = 0,
        },
    },
    BrowserVariables = new[]
    {
        new Datadog.Inputs.SyntheticsTestBrowserVariableArgs
        {
            Name = "string",
            Type = "string",
            Example = "string",
            Id = "string",
            Pattern = "string",
            Secure = false,
        },
    },
    OptionsList = new Datadog.Inputs.SyntheticsTestOptionsListArgs
    {
        TickEvery = 0,
        MinFailureDuration = 0,
        RumSettings = new Datadog.Inputs.SyntheticsTestOptionsListRumSettingsArgs
        {
            IsEnabled = false,
            ApplicationId = "string",
            ClientTokenId = 0,
        },
        Ci = new Datadog.Inputs.SyntheticsTestOptionsListCiArgs
        {
            ExecutionRule = "string",
        },
        DisableCors = false,
        DisableCsp = false,
        FollowRedirects = false,
        HttpVersion = "string",
        MinLocationFailed = 0,
        AllowInsecure = false,
        CheckCertificateRevocation = false,
        IgnoreServerCertificateError = false,
        MonitorName = "string",
        MonitorOptions = new Datadog.Inputs.SyntheticsTestOptionsListMonitorOptionsArgs
        {
            RenotifyInterval = 0,
            RenotifyOccurrences = 0,
        },
        MonitorPriority = 0,
        NoScreenshot = false,
        Retry = new Datadog.Inputs.SyntheticsTestOptionsListRetryArgs
        {
            Count = 0,
            Interval = 0,
        },
        AcceptSelfSigned = false,
        Scheduling = new Datadog.Inputs.SyntheticsTestOptionsListSchedulingArgs
        {
            Timeframes = new[]
            {
                new Datadog.Inputs.SyntheticsTestOptionsListSchedulingTimeframeArgs
                {
                    Day = 0,
                    From = "string",
                    To = "string",
                },
            },
            Timezone = "string",
        },
        InitialNavigationTimeout = 0,
    },
    ApiSteps = new[]
    {
        new Datadog.Inputs.SyntheticsTestApiStepArgs
        {
            Name = "string",
            RequestClientCertificate = new Datadog.Inputs.SyntheticsTestApiStepRequestClientCertificateArgs
            {
                Cert = new Datadog.Inputs.SyntheticsTestApiStepRequestClientCertificateCertArgs
                {
                    Content = "string",
                    Filename = "string",
                },
                Key = new Datadog.Inputs.SyntheticsTestApiStepRequestClientCertificateKeyArgs
                {
                    Content = "string",
                    Filename = "string",
                },
            },
            IsCritical = false,
            RequestDefinition = new Datadog.Inputs.SyntheticsTestApiStepRequestDefinitionArgs
            {
                AllowInsecure = false,
                Body = "string",
                BodyType = "string",
                CallType = "string",
                CertificateDomains = new[]
                {
                    "string",
                },
                DnsServer = "string",
                DnsServerPort = "string",
                FollowRedirects = false,
                Host = "string",
                HttpVersion = "string",
                Message = "string",
                Method = "string",
                NoSavingResponseBody = false,
                NumberOfPackets = 0,
                PersistCookies = false,
                PlainProtoFile = "string",
                Port = "string",
                Servername = "string",
                Service = "string",
                ShouldTrackHops = false,
                Timeout = 0,
                Url = "string",
            },
            ExtractedValuesFromScript = "string",
            RequestFiles = new[]
            {
                new Datadog.Inputs.SyntheticsTestApiStepRequestFileArgs
                {
                    Name = "string",
                    Size = 0,
                    Type = "string",
                    BucketKey = "string",
                    Content = "string",
                    OriginalFileName = "string",
                },
            },
            Assertions = new[]
            {
                new Datadog.Inputs.SyntheticsTestApiStepAssertionArgs
                {
                    Type = "string",
                    Code = "string",
                    Operator = "string",
                    Property = "string",
                    Target = "string",
                    Targetjsonpath = new Datadog.Inputs.SyntheticsTestApiStepAssertionTargetjsonpathArgs
                    {
                        Jsonpath = "string",
                        Operator = "string",
                        Elementsoperator = "string",
                        Targetvalue = "string",
                    },
                    Targetjsonschema = new Datadog.Inputs.SyntheticsTestApiStepAssertionTargetjsonschemaArgs
                    {
                        Jsonschema = "string",
                        Metaschema = "string",
                    },
                    Targetxpath = new Datadog.Inputs.SyntheticsTestApiStepAssertionTargetxpathArgs
                    {
                        Operator = "string",
                        Xpath = "string",
                        Targetvalue = "string",
                    },
                    TimingsScope = "string",
                },
            },
            RequestBasicauth = new Datadog.Inputs.SyntheticsTestApiStepRequestBasicauthArgs
            {
                AccessKey = "string",
                AccessTokenUrl = "string",
                Audience = "string",
                ClientId = "string",
                ClientSecret = "string",
                Domain = "string",
                Password = "string",
                Region = "string",
                Resource = "string",
                Scope = "string",
                SecretKey = "string",
                ServiceName = "string",
                SessionToken = "string",
                TokenApiAuthentication = "string",
                Type = "string",
                Username = "string",
                Workstation = "string",
            },
            RequestHeaders = 
            {
                { "string", "string" },
            },
            ExtractedValues = new[]
            {
                new Datadog.Inputs.SyntheticsTestApiStepExtractedValueArgs
                {
                    Name = "string",
                    Parser = new Datadog.Inputs.SyntheticsTestApiStepExtractedValueParserArgs
                    {
                        Type = "string",
                        Value = "string",
                    },
                    Type = "string",
                    Field = "string",
                    Secure = false,
                },
            },
            ExitIfSucceed = false,
            AllowFailure = false,
            RequestMetadata = 
            {
                { "string", "string" },
            },
            RequestProxy = new Datadog.Inputs.SyntheticsTestApiStepRequestProxyArgs
            {
                Url = "string",
                Headers = 
                {
                    { "string", "string" },
                },
            },
            RequestQuery = 
            {
                { "string", "string" },
            },
            Retry = new Datadog.Inputs.SyntheticsTestApiStepRetryArgs
            {
                Count = 0,
                Interval = 0,
            },
            Subtype = "string",
            Value = 0,
        },
    },
    ConfigVariables = new[]
    {
        new Datadog.Inputs.SyntheticsTestConfigVariableArgs
        {
            Name = "string",
            Type = "string",
            Example = "string",
            Id = "string",
            Pattern = "string",
            Secure = false,
        },
    },
    RequestDefinition = new Datadog.Inputs.SyntheticsTestRequestDefinitionArgs
    {
        Body = "string",
        BodyType = "string",
        CallType = "string",
        CertificateDomains = new[]
        {
            "string",
        },
        DnsServer = "string",
        DnsServerPort = "string",
        Host = "string",
        Message = "string",
        Method = "string",
        NoSavingResponseBody = false,
        NumberOfPackets = 0,
        PersistCookies = false,
        PlainProtoFile = "string",
        Port = "string",
        Servername = "string",
        Service = "string",
        ShouldTrackHops = false,
        Timeout = 0,
        Url = "string",
    },
    RequestFiles = new[]
    {
        new Datadog.Inputs.SyntheticsTestRequestFileArgs
        {
            Name = "string",
            Size = 0,
            Type = "string",
            BucketKey = "string",
            Content = "string",
            OriginalFileName = "string",
        },
    },
    RequestHeaders = 
    {
        { "string", "string" },
    },
    RequestMetadata = 
    {
        { "string", "string" },
    },
    RequestProxy = new Datadog.Inputs.SyntheticsTestRequestProxyArgs
    {
        Url = "string",
        Headers = 
        {
            { "string", "string" },
        },
    },
    RequestQuery = 
    {
        { "string", "string" },
    },
    SetCookie = "string",
    BrowserSteps = new[]
    {
        new Datadog.Inputs.SyntheticsTestBrowserStepArgs
        {
            Name = "string",
            Params = new Datadog.Inputs.SyntheticsTestBrowserStepParamsArgs
            {
                Attribute = "string",
                Check = "string",
                ClickType = "string",
                Code = "string",
                Delay = 0,
                Element = "string",
                ElementUserLocator = new Datadog.Inputs.SyntheticsTestBrowserStepParamsElementUserLocatorArgs
                {
                    Value = new Datadog.Inputs.SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs
                    {
                        Value = "string",
                        Type = "string",
                    },
                    FailTestOnCannotLocate = false,
                },
                Email = "string",
                File = "string",
                Files = "string",
                Modifiers = new[]
                {
                    "string",
                },
                PlayingTabId = "string",
                Request = "string",
                SubtestPublicId = "string",
                Value = "string",
                Variable = new Datadog.Inputs.SyntheticsTestBrowserStepParamsVariableArgs
                {
                    Example = "string",
                    Name = "string",
                    Secure = false,
                },
                WithClick = false,
                X = 0,
                Y = 0,
            },
            Type = "string",
            AllowFailure = false,
            AlwaysExecute = false,
            ExitIfSucceed = false,
            ForceElementUpdate = false,
            IsCritical = false,
            LocalKey = "string",
            NoScreenshot = false,
            PublicId = "string",
            Timeout = 0,
        },
    },
    Subtype = "string",
    Tags = new[]
    {
        "string",
    },
    Assertions = new[]
    {
        new Datadog.Inputs.SyntheticsTestAssertionArgs
        {
            Type = "string",
            Code = "string",
            Operator = "string",
            Property = "string",
            Target = "string",
            Targetjsonpath = new Datadog.Inputs.SyntheticsTestAssertionTargetjsonpathArgs
            {
                Jsonpath = "string",
                Operator = "string",
                Elementsoperator = "string",
                Targetvalue = "string",
            },
            Targetjsonschema = new Datadog.Inputs.SyntheticsTestAssertionTargetjsonschemaArgs
            {
                Jsonschema = "string",
                Metaschema = "string",
            },
            Targetxpath = new Datadog.Inputs.SyntheticsTestAssertionTargetxpathArgs
            {
                Operator = "string",
                Xpath = "string",
                Targetvalue = "string",
            },
            TimingsScope = "string",
        },
    },
    VariablesFromScript = "string",
});
example, err := datadog.NewSyntheticsTest(ctx, "syntheticsTestResource", &datadog.SyntheticsTestArgs{
	Locations: pulumi.StringArray{
		pulumi.String("string"),
	},
	Type:   pulumi.String("string"),
	Status: pulumi.String("string"),
	Name:   pulumi.String("string"),
	RequestBasicauth: &datadog.SyntheticsTestRequestBasicauthArgs{
		AccessKey:              pulumi.String("string"),
		AccessTokenUrl:         pulumi.String("string"),
		Audience:               pulumi.String("string"),
		ClientId:               pulumi.String("string"),
		ClientSecret:           pulumi.String("string"),
		Domain:                 pulumi.String("string"),
		Password:               pulumi.String("string"),
		Region:                 pulumi.String("string"),
		Resource:               pulumi.String("string"),
		Scope:                  pulumi.String("string"),
		SecretKey:              pulumi.String("string"),
		ServiceName:            pulumi.String("string"),
		SessionToken:           pulumi.String("string"),
		TokenApiAuthentication: pulumi.String("string"),
		Type:                   pulumi.String("string"),
		Username:               pulumi.String("string"),
		Workstation:            pulumi.String("string"),
	},
	RequestClientCertificate: &datadog.SyntheticsTestRequestClientCertificateArgs{
		Cert: &datadog.SyntheticsTestRequestClientCertificateCertArgs{
			Content:  pulumi.String("string"),
			Filename: pulumi.String("string"),
		},
		Key: &datadog.SyntheticsTestRequestClientCertificateKeyArgs{
			Content:  pulumi.String("string"),
			Filename: pulumi.String("string"),
		},
	},
	DeviceIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	ForceDeleteDependencies: pulumi.Bool(false),
	ConfigInitialApplicationArguments: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Message: pulumi.String("string"),
	MobileOptionsList: &datadog.SyntheticsTestMobileOptionsListArgs{
		DeviceIds: pulumi.StringArray{
			pulumi.String("string"),
		},
		TickEvery: pulumi.Int(0),
		MobileApplication: &datadog.SyntheticsTestMobileOptionsListMobileApplicationArgs{
			ApplicationId: pulumi.String("string"),
			ReferenceId:   pulumi.String("string"),
			ReferenceType: pulumi.String("string"),
		},
		MonitorName:            pulumi.String("string"),
		MonitorPriority:        pulumi.Int(0),
		DisableAutoAcceptAlert: pulumi.Bool(false),
		MinFailureDuration:     pulumi.Int(0),
		Ci: &datadog.SyntheticsTestMobileOptionsListCiArgs{
			ExecutionRule: pulumi.String("string"),
		},
		AllowApplicationCrash: pulumi.Bool(false),
		MonitorOptions: &datadog.SyntheticsTestMobileOptionsListMonitorOptionsArgs{
			EscalationMessage:      pulumi.String("string"),
			NotificationPresetName: pulumi.String("string"),
			RenotifyInterval:       pulumi.Int(0),
			RenotifyOccurrences:    pulumi.Int(0),
		},
		DefaultStepTimeout: pulumi.Int(0),
		NoScreenshot:       pulumi.Bool(false),
		Retry: &datadog.SyntheticsTestMobileOptionsListRetryArgs{
			Count:    pulumi.Int(0),
			Interval: pulumi.Int(0),
		},
		Scheduling: &datadog.SyntheticsTestMobileOptionsListSchedulingArgs{
			Timeframes: datadog.SyntheticsTestMobileOptionsListSchedulingTimeframeArray{
				&datadog.SyntheticsTestMobileOptionsListSchedulingTimeframeArgs{
					Day:  pulumi.Int(0),
					From: pulumi.String("string"),
					To:   pulumi.String("string"),
				},
			},
			Timezone: pulumi.String("string"),
		},
		Bindings: datadog.SyntheticsTestMobileOptionsListBindingArray{
			&datadog.SyntheticsTestMobileOptionsListBindingArgs{
				Principals: pulumi.StringArray{
					pulumi.String("string"),
				},
				Relation: pulumi.String("string"),
			},
		},
		Verbosity: pulumi.Int(0),
	},
	MobileSteps: datadog.SyntheticsTestMobileStepArray{
		&datadog.SyntheticsTestMobileStepArgs{
			Name: pulumi.String("string"),
			Params: &datadog.SyntheticsTestMobileStepParamsArgs{
				Check:     pulumi.String("string"),
				Delay:     pulumi.Int(0),
				Direction: pulumi.String("string"),
				Element: &datadog.SyntheticsTestMobileStepParamsElementArgs{
					Context:            pulumi.String("string"),
					ContextType:        pulumi.String("string"),
					ElementDescription: pulumi.String("string"),
					MultiLocator: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
					RelativePosition: &datadog.SyntheticsTestMobileStepParamsElementRelativePositionArgs{
						X: pulumi.Float64(0),
						Y: pulumi.Float64(0),
					},
					TextContent: pulumi.String("string"),
					UserLocator: &datadog.SyntheticsTestMobileStepParamsElementUserLocatorArgs{
						FailTestOnCannotLocate: pulumi.Bool(false),
						Values: datadog.SyntheticsTestMobileStepParamsElementUserLocatorValueArray{
							&datadog.SyntheticsTestMobileStepParamsElementUserLocatorValueArgs{
								Type:  pulumi.String("string"),
								Value: pulumi.String("string"),
							},
						},
					},
					ViewName: pulumi.String("string"),
				},
				Enable:     pulumi.Bool(false),
				MaxScrolls: pulumi.Int(0),
				Positions: datadog.SyntheticsTestMobileStepParamsPositionArray{
					&datadog.SyntheticsTestMobileStepParamsPositionArgs{
						X: pulumi.Float64(0),
						Y: pulumi.Float64(0),
					},
				},
				SubtestPublicId: pulumi.String("string"),
				Value:           pulumi.String("string"),
				Variable: &datadog.SyntheticsTestMobileStepParamsVariableArgs{
					Name:    pulumi.String("string"),
					Example: pulumi.String("string"),
				},
				WithEnter: pulumi.Bool(false),
				X:         pulumi.Float64(0),
				Y:         pulumi.Float64(0),
			},
			Type:              pulumi.String("string"),
			AllowFailure:      pulumi.Bool(false),
			HasNewStepElement: pulumi.Bool(false),
			IsCritical:        pulumi.Bool(false),
			NoScreenshot:      pulumi.Bool(false),
			PublicId:          pulumi.String("string"),
			Timeout:           pulumi.Int(0),
		},
	},
	BrowserVariables: datadog.SyntheticsTestBrowserVariableArray{
		&datadog.SyntheticsTestBrowserVariableArgs{
			Name:    pulumi.String("string"),
			Type:    pulumi.String("string"),
			Example: pulumi.String("string"),
			Id:      pulumi.String("string"),
			Pattern: pulumi.String("string"),
			Secure:  pulumi.Bool(false),
		},
	},
	OptionsList: &datadog.SyntheticsTestOptionsListArgs{
		TickEvery:          pulumi.Int(0),
		MinFailureDuration: pulumi.Int(0),
		RumSettings: &datadog.SyntheticsTestOptionsListRumSettingsArgs{
			IsEnabled:     pulumi.Bool(false),
			ApplicationId: pulumi.String("string"),
			ClientTokenId: pulumi.Int(0),
		},
		Ci: &datadog.SyntheticsTestOptionsListCiArgs{
			ExecutionRule: pulumi.String("string"),
		},
		DisableCors:                  pulumi.Bool(false),
		DisableCsp:                   pulumi.Bool(false),
		FollowRedirects:              pulumi.Bool(false),
		HttpVersion:                  pulumi.String("string"),
		MinLocationFailed:            pulumi.Int(0),
		AllowInsecure:                pulumi.Bool(false),
		CheckCertificateRevocation:   pulumi.Bool(false),
		IgnoreServerCertificateError: pulumi.Bool(false),
		MonitorName:                  pulumi.String("string"),
		MonitorOptions: &datadog.SyntheticsTestOptionsListMonitorOptionsArgs{
			RenotifyInterval:    pulumi.Int(0),
			RenotifyOccurrences: pulumi.Int(0),
		},
		MonitorPriority: pulumi.Int(0),
		NoScreenshot:    pulumi.Bool(false),
		Retry: &datadog.SyntheticsTestOptionsListRetryArgs{
			Count:    pulumi.Int(0),
			Interval: pulumi.Int(0),
		},
		AcceptSelfSigned: pulumi.Bool(false),
		Scheduling: &datadog.SyntheticsTestOptionsListSchedulingArgs{
			Timeframes: datadog.SyntheticsTestOptionsListSchedulingTimeframeArray{
				&datadog.SyntheticsTestOptionsListSchedulingTimeframeArgs{
					Day:  pulumi.Int(0),
					From: pulumi.String("string"),
					To:   pulumi.String("string"),
				},
			},
			Timezone: pulumi.String("string"),
		},
		InitialNavigationTimeout: pulumi.Int(0),
	},
	ApiSteps: datadog.SyntheticsTestApiStepArray{
		&datadog.SyntheticsTestApiStepArgs{
			Name: pulumi.String("string"),
			RequestClientCertificate: &datadog.SyntheticsTestApiStepRequestClientCertificateArgs{
				Cert: &datadog.SyntheticsTestApiStepRequestClientCertificateCertArgs{
					Content:  pulumi.String("string"),
					Filename: pulumi.String("string"),
				},
				Key: &datadog.SyntheticsTestApiStepRequestClientCertificateKeyArgs{
					Content:  pulumi.String("string"),
					Filename: pulumi.String("string"),
				},
			},
			IsCritical: pulumi.Bool(false),
			RequestDefinition: &datadog.SyntheticsTestApiStepRequestDefinitionArgs{
				AllowInsecure: pulumi.Bool(false),
				Body:          pulumi.String("string"),
				BodyType:      pulumi.String("string"),
				CallType:      pulumi.String("string"),
				CertificateDomains: pulumi.StringArray{
					pulumi.String("string"),
				},
				DnsServer:            pulumi.String("string"),
				DnsServerPort:        pulumi.String("string"),
				FollowRedirects:      pulumi.Bool(false),
				Host:                 pulumi.String("string"),
				HttpVersion:          pulumi.String("string"),
				Message:              pulumi.String("string"),
				Method:               pulumi.String("string"),
				NoSavingResponseBody: pulumi.Bool(false),
				NumberOfPackets:      pulumi.Int(0),
				PersistCookies:       pulumi.Bool(false),
				PlainProtoFile:       pulumi.String("string"),
				Port:                 pulumi.String("string"),
				Servername:           pulumi.String("string"),
				Service:              pulumi.String("string"),
				ShouldTrackHops:      pulumi.Bool(false),
				Timeout:              pulumi.Int(0),
				Url:                  pulumi.String("string"),
			},
			ExtractedValuesFromScript: pulumi.String("string"),
			RequestFiles: datadog.SyntheticsTestApiStepRequestFileArray{
				&datadog.SyntheticsTestApiStepRequestFileArgs{
					Name:             pulumi.String("string"),
					Size:             pulumi.Int(0),
					Type:             pulumi.String("string"),
					BucketKey:        pulumi.String("string"),
					Content:          pulumi.String("string"),
					OriginalFileName: pulumi.String("string"),
				},
			},
			Assertions: datadog.SyntheticsTestApiStepAssertionArray{
				&datadog.SyntheticsTestApiStepAssertionArgs{
					Type:     pulumi.String("string"),
					Code:     pulumi.String("string"),
					Operator: pulumi.String("string"),
					Property: pulumi.String("string"),
					Target:   pulumi.String("string"),
					Targetjsonpath: &datadog.SyntheticsTestApiStepAssertionTargetjsonpathArgs{
						Jsonpath:         pulumi.String("string"),
						Operator:         pulumi.String("string"),
						Elementsoperator: pulumi.String("string"),
						Targetvalue:      pulumi.String("string"),
					},
					Targetjsonschema: &datadog.SyntheticsTestApiStepAssertionTargetjsonschemaArgs{
						Jsonschema: pulumi.String("string"),
						Metaschema: pulumi.String("string"),
					},
					Targetxpath: &datadog.SyntheticsTestApiStepAssertionTargetxpathArgs{
						Operator:    pulumi.String("string"),
						Xpath:       pulumi.String("string"),
						Targetvalue: pulumi.String("string"),
					},
					TimingsScope: pulumi.String("string"),
				},
			},
			RequestBasicauth: &datadog.SyntheticsTestApiStepRequestBasicauthArgs{
				AccessKey:              pulumi.String("string"),
				AccessTokenUrl:         pulumi.String("string"),
				Audience:               pulumi.String("string"),
				ClientId:               pulumi.String("string"),
				ClientSecret:           pulumi.String("string"),
				Domain:                 pulumi.String("string"),
				Password:               pulumi.String("string"),
				Region:                 pulumi.String("string"),
				Resource:               pulumi.String("string"),
				Scope:                  pulumi.String("string"),
				SecretKey:              pulumi.String("string"),
				ServiceName:            pulumi.String("string"),
				SessionToken:           pulumi.String("string"),
				TokenApiAuthentication: pulumi.String("string"),
				Type:                   pulumi.String("string"),
				Username:               pulumi.String("string"),
				Workstation:            pulumi.String("string"),
			},
			RequestHeaders: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ExtractedValues: datadog.SyntheticsTestApiStepExtractedValueArray{
				&datadog.SyntheticsTestApiStepExtractedValueArgs{
					Name: pulumi.String("string"),
					Parser: &datadog.SyntheticsTestApiStepExtractedValueParserArgs{
						Type:  pulumi.String("string"),
						Value: pulumi.String("string"),
					},
					Type:   pulumi.String("string"),
					Field:  pulumi.String("string"),
					Secure: pulumi.Bool(false),
				},
			},
			ExitIfSucceed: pulumi.Bool(false),
			AllowFailure:  pulumi.Bool(false),
			RequestMetadata: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			RequestProxy: &datadog.SyntheticsTestApiStepRequestProxyArgs{
				Url: pulumi.String("string"),
				Headers: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
			},
			RequestQuery: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			Retry: &datadog.SyntheticsTestApiStepRetryArgs{
				Count:    pulumi.Int(0),
				Interval: pulumi.Int(0),
			},
			Subtype: pulumi.String("string"),
			Value:   pulumi.Int(0),
		},
	},
	ConfigVariables: datadog.SyntheticsTestConfigVariableArray{
		&datadog.SyntheticsTestConfigVariableArgs{
			Name:    pulumi.String("string"),
			Type:    pulumi.String("string"),
			Example: pulumi.String("string"),
			Id:      pulumi.String("string"),
			Pattern: pulumi.String("string"),
			Secure:  pulumi.Bool(false),
		},
	},
	RequestDefinition: &datadog.SyntheticsTestRequestDefinitionArgs{
		Body:     pulumi.String("string"),
		BodyType: pulumi.String("string"),
		CallType: pulumi.String("string"),
		CertificateDomains: pulumi.StringArray{
			pulumi.String("string"),
		},
		DnsServer:            pulumi.String("string"),
		DnsServerPort:        pulumi.String("string"),
		Host:                 pulumi.String("string"),
		Message:              pulumi.String("string"),
		Method:               pulumi.String("string"),
		NoSavingResponseBody: pulumi.Bool(false),
		NumberOfPackets:      pulumi.Int(0),
		PersistCookies:       pulumi.Bool(false),
		PlainProtoFile:       pulumi.String("string"),
		Port:                 pulumi.String("string"),
		Servername:           pulumi.String("string"),
		Service:              pulumi.String("string"),
		ShouldTrackHops:      pulumi.Bool(false),
		Timeout:              pulumi.Int(0),
		Url:                  pulumi.String("string"),
	},
	RequestFiles: datadog.SyntheticsTestRequestFileArray{
		&datadog.SyntheticsTestRequestFileArgs{
			Name:             pulumi.String("string"),
			Size:             pulumi.Int(0),
			Type:             pulumi.String("string"),
			BucketKey:        pulumi.String("string"),
			Content:          pulumi.String("string"),
			OriginalFileName: pulumi.String("string"),
		},
	},
	RequestHeaders: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	RequestMetadata: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	RequestProxy: &datadog.SyntheticsTestRequestProxyArgs{
		Url: pulumi.String("string"),
		Headers: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
	},
	RequestQuery: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	SetCookie: pulumi.String("string"),
	BrowserSteps: datadog.SyntheticsTestBrowserStepArray{
		&datadog.SyntheticsTestBrowserStepArgs{
			Name: pulumi.String("string"),
			Params: &datadog.SyntheticsTestBrowserStepParamsArgs{
				Attribute: pulumi.String("string"),
				Check:     pulumi.String("string"),
				ClickType: pulumi.String("string"),
				Code:      pulumi.String("string"),
				Delay:     pulumi.Int(0),
				Element:   pulumi.String("string"),
				ElementUserLocator: &datadog.SyntheticsTestBrowserStepParamsElementUserLocatorArgs{
					Value: &datadog.SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs{
						Value: pulumi.String("string"),
						Type:  pulumi.String("string"),
					},
					FailTestOnCannotLocate: pulumi.Bool(false),
				},
				Email: pulumi.String("string"),
				File:  pulumi.String("string"),
				Files: pulumi.String("string"),
				Modifiers: pulumi.StringArray{
					pulumi.String("string"),
				},
				PlayingTabId:    pulumi.String("string"),
				Request:         pulumi.String("string"),
				SubtestPublicId: pulumi.String("string"),
				Value:           pulumi.String("string"),
				Variable: &datadog.SyntheticsTestBrowserStepParamsVariableArgs{
					Example: pulumi.String("string"),
					Name:    pulumi.String("string"),
					Secure:  pulumi.Bool(false),
				},
				WithClick: pulumi.Bool(false),
				X:         pulumi.Int(0),
				Y:         pulumi.Int(0),
			},
			Type:               pulumi.String("string"),
			AllowFailure:       pulumi.Bool(false),
			AlwaysExecute:      pulumi.Bool(false),
			ExitIfSucceed:      pulumi.Bool(false),
			ForceElementUpdate: pulumi.Bool(false),
			IsCritical:         pulumi.Bool(false),
			LocalKey:           pulumi.String("string"),
			NoScreenshot:       pulumi.Bool(false),
			PublicId:           pulumi.String("string"),
			Timeout:            pulumi.Int(0),
		},
	},
	Subtype: pulumi.String("string"),
	Tags: pulumi.StringArray{
		pulumi.String("string"),
	},
	Assertions: datadog.SyntheticsTestAssertionArray{
		&datadog.SyntheticsTestAssertionArgs{
			Type:     pulumi.String("string"),
			Code:     pulumi.String("string"),
			Operator: pulumi.String("string"),
			Property: pulumi.String("string"),
			Target:   pulumi.String("string"),
			Targetjsonpath: &datadog.SyntheticsTestAssertionTargetjsonpathArgs{
				Jsonpath:         pulumi.String("string"),
				Operator:         pulumi.String("string"),
				Elementsoperator: pulumi.String("string"),
				Targetvalue:      pulumi.String("string"),
			},
			Targetjsonschema: &datadog.SyntheticsTestAssertionTargetjsonschemaArgs{
				Jsonschema: pulumi.String("string"),
				Metaschema: pulumi.String("string"),
			},
			Targetxpath: &datadog.SyntheticsTestAssertionTargetxpathArgs{
				Operator:    pulumi.String("string"),
				Xpath:       pulumi.String("string"),
				Targetvalue: pulumi.String("string"),
			},
			TimingsScope: pulumi.String("string"),
		},
	},
	VariablesFromScript: pulumi.String("string"),
})
var syntheticsTestResource = new SyntheticsTest("syntheticsTestResource", SyntheticsTestArgs.builder()
    .locations("string")
    .type("string")
    .status("string")
    .name("string")
    .requestBasicauth(SyntheticsTestRequestBasicauthArgs.builder()
        .accessKey("string")
        .accessTokenUrl("string")
        .audience("string")
        .clientId("string")
        .clientSecret("string")
        .domain("string")
        .password("string")
        .region("string")
        .resource("string")
        .scope("string")
        .secretKey("string")
        .serviceName("string")
        .sessionToken("string")
        .tokenApiAuthentication("string")
        .type("string")
        .username("string")
        .workstation("string")
        .build())
    .requestClientCertificate(SyntheticsTestRequestClientCertificateArgs.builder()
        .cert(SyntheticsTestRequestClientCertificateCertArgs.builder()
            .content("string")
            .filename("string")
            .build())
        .key(SyntheticsTestRequestClientCertificateKeyArgs.builder()
            .content("string")
            .filename("string")
            .build())
        .build())
    .deviceIds("string")
    .forceDeleteDependencies(false)
    .configInitialApplicationArguments(Map.of("string", "string"))
    .message("string")
    .mobileOptionsList(SyntheticsTestMobileOptionsListArgs.builder()
        .deviceIds("string")
        .tickEvery(0)
        .mobileApplication(SyntheticsTestMobileOptionsListMobileApplicationArgs.builder()
            .applicationId("string")
            .referenceId("string")
            .referenceType("string")
            .build())
        .monitorName("string")
        .monitorPriority(0)
        .disableAutoAcceptAlert(false)
        .minFailureDuration(0)
        .ci(SyntheticsTestMobileOptionsListCiArgs.builder()
            .executionRule("string")
            .build())
        .allowApplicationCrash(false)
        .monitorOptions(SyntheticsTestMobileOptionsListMonitorOptionsArgs.builder()
            .escalationMessage("string")
            .notificationPresetName("string")
            .renotifyInterval(0)
            .renotifyOccurrences(0)
            .build())
        .defaultStepTimeout(0)
        .noScreenshot(false)
        .retry(SyntheticsTestMobileOptionsListRetryArgs.builder()
            .count(0)
            .interval(0)
            .build())
        .scheduling(SyntheticsTestMobileOptionsListSchedulingArgs.builder()
            .timeframes(SyntheticsTestMobileOptionsListSchedulingTimeframeArgs.builder()
                .day(0)
                .from("string")
                .to("string")
                .build())
            .timezone("string")
            .build())
        .bindings(SyntheticsTestMobileOptionsListBindingArgs.builder()
            .principals("string")
            .relation("string")
            .build())
        .verbosity(0)
        .build())
    .mobileSteps(SyntheticsTestMobileStepArgs.builder()
        .name("string")
        .params(SyntheticsTestMobileStepParamsArgs.builder()
            .check("string")
            .delay(0)
            .direction("string")
            .element(SyntheticsTestMobileStepParamsElementArgs.builder()
                .context("string")
                .contextType("string")
                .elementDescription("string")
                .multiLocator(Map.of("string", "string"))
                .relativePosition(SyntheticsTestMobileStepParamsElementRelativePositionArgs.builder()
                    .x(0)
                    .y(0)
                    .build())
                .textContent("string")
                .userLocator(SyntheticsTestMobileStepParamsElementUserLocatorArgs.builder()
                    .failTestOnCannotLocate(false)
                    .values(SyntheticsTestMobileStepParamsElementUserLocatorValueArgs.builder()
                        .type("string")
                        .value("string")
                        .build())
                    .build())
                .viewName("string")
                .build())
            .enable(false)
            .maxScrolls(0)
            .positions(SyntheticsTestMobileStepParamsPositionArgs.builder()
                .x(0)
                .y(0)
                .build())
            .subtestPublicId("string")
            .value("string")
            .variable(SyntheticsTestMobileStepParamsVariableArgs.builder()
                .name("string")
                .example("string")
                .build())
            .withEnter(false)
            .x(0)
            .y(0)
            .build())
        .type("string")
        .allowFailure(false)
        .hasNewStepElement(false)
        .isCritical(false)
        .noScreenshot(false)
        .publicId("string")
        .timeout(0)
        .build())
    .browserVariables(SyntheticsTestBrowserVariableArgs.builder()
        .name("string")
        .type("string")
        .example("string")
        .id("string")
        .pattern("string")
        .secure(false)
        .build())
    .optionsList(SyntheticsTestOptionsListArgs.builder()
        .tickEvery(0)
        .minFailureDuration(0)
        .rumSettings(SyntheticsTestOptionsListRumSettingsArgs.builder()
            .isEnabled(false)
            .applicationId("string")
            .clientTokenId(0)
            .build())
        .ci(SyntheticsTestOptionsListCiArgs.builder()
            .executionRule("string")
            .build())
        .disableCors(false)
        .disableCsp(false)
        .followRedirects(false)
        .httpVersion("string")
        .minLocationFailed(0)
        .allowInsecure(false)
        .checkCertificateRevocation(false)
        .ignoreServerCertificateError(false)
        .monitorName("string")
        .monitorOptions(SyntheticsTestOptionsListMonitorOptionsArgs.builder()
            .renotifyInterval(0)
            .renotifyOccurrences(0)
            .build())
        .monitorPriority(0)
        .noScreenshot(false)
        .retry(SyntheticsTestOptionsListRetryArgs.builder()
            .count(0)
            .interval(0)
            .build())
        .acceptSelfSigned(false)
        .scheduling(SyntheticsTestOptionsListSchedulingArgs.builder()
            .timeframes(SyntheticsTestOptionsListSchedulingTimeframeArgs.builder()
                .day(0)
                .from("string")
                .to("string")
                .build())
            .timezone("string")
            .build())
        .initialNavigationTimeout(0)
        .build())
    .apiSteps(SyntheticsTestApiStepArgs.builder()
        .name("string")
        .requestClientCertificate(SyntheticsTestApiStepRequestClientCertificateArgs.builder()
            .cert(SyntheticsTestApiStepRequestClientCertificateCertArgs.builder()
                .content("string")
                .filename("string")
                .build())
            .key(SyntheticsTestApiStepRequestClientCertificateKeyArgs.builder()
                .content("string")
                .filename("string")
                .build())
            .build())
        .isCritical(false)
        .requestDefinition(SyntheticsTestApiStepRequestDefinitionArgs.builder()
            .allowInsecure(false)
            .body("string")
            .bodyType("string")
            .callType("string")
            .certificateDomains("string")
            .dnsServer("string")
            .dnsServerPort("string")
            .followRedirects(false)
            .host("string")
            .httpVersion("string")
            .message("string")
            .method("string")
            .noSavingResponseBody(false)
            .numberOfPackets(0)
            .persistCookies(false)
            .plainProtoFile("string")
            .port("string")
            .servername("string")
            .service("string")
            .shouldTrackHops(false)
            .timeout(0)
            .url("string")
            .build())
        .extractedValuesFromScript("string")
        .requestFiles(SyntheticsTestApiStepRequestFileArgs.builder()
            .name("string")
            .size(0)
            .type("string")
            .bucketKey("string")
            .content("string")
            .originalFileName("string")
            .build())
        .assertions(SyntheticsTestApiStepAssertionArgs.builder()
            .type("string")
            .code("string")
            .operator("string")
            .property("string")
            .target("string")
            .targetjsonpath(SyntheticsTestApiStepAssertionTargetjsonpathArgs.builder()
                .jsonpath("string")
                .operator("string")
                .elementsoperator("string")
                .targetvalue("string")
                .build())
            .targetjsonschema(SyntheticsTestApiStepAssertionTargetjsonschemaArgs.builder()
                .jsonschema("string")
                .metaschema("string")
                .build())
            .targetxpath(SyntheticsTestApiStepAssertionTargetxpathArgs.builder()
                .operator("string")
                .xpath("string")
                .targetvalue("string")
                .build())
            .timingsScope("string")
            .build())
        .requestBasicauth(SyntheticsTestApiStepRequestBasicauthArgs.builder()
            .accessKey("string")
            .accessTokenUrl("string")
            .audience("string")
            .clientId("string")
            .clientSecret("string")
            .domain("string")
            .password("string")
            .region("string")
            .resource("string")
            .scope("string")
            .secretKey("string")
            .serviceName("string")
            .sessionToken("string")
            .tokenApiAuthentication("string")
            .type("string")
            .username("string")
            .workstation("string")
            .build())
        .requestHeaders(Map.of("string", "string"))
        .extractedValues(SyntheticsTestApiStepExtractedValueArgs.builder()
            .name("string")
            .parser(SyntheticsTestApiStepExtractedValueParserArgs.builder()
                .type("string")
                .value("string")
                .build())
            .type("string")
            .field("string")
            .secure(false)
            .build())
        .exitIfSucceed(false)
        .allowFailure(false)
        .requestMetadata(Map.of("string", "string"))
        .requestProxy(SyntheticsTestApiStepRequestProxyArgs.builder()
            .url("string")
            .headers(Map.of("string", "string"))
            .build())
        .requestQuery(Map.of("string", "string"))
        .retry(SyntheticsTestApiStepRetryArgs.builder()
            .count(0)
            .interval(0)
            .build())
        .subtype("string")
        .value(0)
        .build())
    .configVariables(SyntheticsTestConfigVariableArgs.builder()
        .name("string")
        .type("string")
        .example("string")
        .id("string")
        .pattern("string")
        .secure(false)
        .build())
    .requestDefinition(SyntheticsTestRequestDefinitionArgs.builder()
        .body("string")
        .bodyType("string")
        .callType("string")
        .certificateDomains("string")
        .dnsServer("string")
        .dnsServerPort("string")
        .host("string")
        .message("string")
        .method("string")
        .noSavingResponseBody(false)
        .numberOfPackets(0)
        .persistCookies(false)
        .plainProtoFile("string")
        .port("string")
        .servername("string")
        .service("string")
        .shouldTrackHops(false)
        .timeout(0)
        .url("string")
        .build())
    .requestFiles(SyntheticsTestRequestFileArgs.builder()
        .name("string")
        .size(0)
        .type("string")
        .bucketKey("string")
        .content("string")
        .originalFileName("string")
        .build())
    .requestHeaders(Map.of("string", "string"))
    .requestMetadata(Map.of("string", "string"))
    .requestProxy(SyntheticsTestRequestProxyArgs.builder()
        .url("string")
        .headers(Map.of("string", "string"))
        .build())
    .requestQuery(Map.of("string", "string"))
    .setCookie("string")
    .browserSteps(SyntheticsTestBrowserStepArgs.builder()
        .name("string")
        .params(SyntheticsTestBrowserStepParamsArgs.builder()
            .attribute("string")
            .check("string")
            .clickType("string")
            .code("string")
            .delay(0)
            .element("string")
            .elementUserLocator(SyntheticsTestBrowserStepParamsElementUserLocatorArgs.builder()
                .value(SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs.builder()
                    .value("string")
                    .type("string")
                    .build())
                .failTestOnCannotLocate(false)
                .build())
            .email("string")
            .file("string")
            .files("string")
            .modifiers("string")
            .playingTabId("string")
            .request("string")
            .subtestPublicId("string")
            .value("string")
            .variable(SyntheticsTestBrowserStepParamsVariableArgs.builder()
                .example("string")
                .name("string")
                .secure(false)
                .build())
            .withClick(false)
            .x(0)
            .y(0)
            .build())
        .type("string")
        .allowFailure(false)
        .alwaysExecute(false)
        .exitIfSucceed(false)
        .forceElementUpdate(false)
        .isCritical(false)
        .localKey("string")
        .noScreenshot(false)
        .publicId("string")
        .timeout(0)
        .build())
    .subtype("string")
    .tags("string")
    .assertions(SyntheticsTestAssertionArgs.builder()
        .type("string")
        .code("string")
        .operator("string")
        .property("string")
        .target("string")
        .targetjsonpath(SyntheticsTestAssertionTargetjsonpathArgs.builder()
            .jsonpath("string")
            .operator("string")
            .elementsoperator("string")
            .targetvalue("string")
            .build())
        .targetjsonschema(SyntheticsTestAssertionTargetjsonschemaArgs.builder()
            .jsonschema("string")
            .metaschema("string")
            .build())
        .targetxpath(SyntheticsTestAssertionTargetxpathArgs.builder()
            .operator("string")
            .xpath("string")
            .targetvalue("string")
            .build())
        .timingsScope("string")
        .build())
    .variablesFromScript("string")
    .build());
synthetics_test_resource = datadog.SyntheticsTest("syntheticsTestResource",
    locations=["string"],
    type="string",
    status="string",
    name="string",
    request_basicauth={
        "access_key": "string",
        "access_token_url": "string",
        "audience": "string",
        "client_id": "string",
        "client_secret": "string",
        "domain": "string",
        "password": "string",
        "region": "string",
        "resource": "string",
        "scope": "string",
        "secret_key": "string",
        "service_name": "string",
        "session_token": "string",
        "token_api_authentication": "string",
        "type": "string",
        "username": "string",
        "workstation": "string",
    },
    request_client_certificate={
        "cert": {
            "content": "string",
            "filename": "string",
        },
        "key": {
            "content": "string",
            "filename": "string",
        },
    },
    device_ids=["string"],
    force_delete_dependencies=False,
    config_initial_application_arguments={
        "string": "string",
    },
    message="string",
    mobile_options_list={
        "device_ids": ["string"],
        "tick_every": 0,
        "mobile_application": {
            "application_id": "string",
            "reference_id": "string",
            "reference_type": "string",
        },
        "monitor_name": "string",
        "monitor_priority": 0,
        "disable_auto_accept_alert": False,
        "min_failure_duration": 0,
        "ci": {
            "execution_rule": "string",
        },
        "allow_application_crash": False,
        "monitor_options": {
            "escalation_message": "string",
            "notification_preset_name": "string",
            "renotify_interval": 0,
            "renotify_occurrences": 0,
        },
        "default_step_timeout": 0,
        "no_screenshot": False,
        "retry": {
            "count": 0,
            "interval": 0,
        },
        "scheduling": {
            "timeframes": [{
                "day": 0,
                "from_": "string",
                "to": "string",
            }],
            "timezone": "string",
        },
        "bindings": [{
            "principals": ["string"],
            "relation": "string",
        }],
        "verbosity": 0,
    },
    mobile_steps=[{
        "name": "string",
        "params": {
            "check": "string",
            "delay": 0,
            "direction": "string",
            "element": {
                "context": "string",
                "context_type": "string",
                "element_description": "string",
                "multi_locator": {
                    "string": "string",
                },
                "relative_position": {
                    "x": 0,
                    "y": 0,
                },
                "text_content": "string",
                "user_locator": {
                    "fail_test_on_cannot_locate": False,
                    "values": [{
                        "type": "string",
                        "value": "string",
                    }],
                },
                "view_name": "string",
            },
            "enable": False,
            "max_scrolls": 0,
            "positions": [{
                "x": 0,
                "y": 0,
            }],
            "subtest_public_id": "string",
            "value": "string",
            "variable": {
                "name": "string",
                "example": "string",
            },
            "with_enter": False,
            "x": 0,
            "y": 0,
        },
        "type": "string",
        "allow_failure": False,
        "has_new_step_element": False,
        "is_critical": False,
        "no_screenshot": False,
        "public_id": "string",
        "timeout": 0,
    }],
    browser_variables=[{
        "name": "string",
        "type": "string",
        "example": "string",
        "id": "string",
        "pattern": "string",
        "secure": False,
    }],
    options_list={
        "tick_every": 0,
        "min_failure_duration": 0,
        "rum_settings": {
            "is_enabled": False,
            "application_id": "string",
            "client_token_id": 0,
        },
        "ci": {
            "execution_rule": "string",
        },
        "disable_cors": False,
        "disable_csp": False,
        "follow_redirects": False,
        "http_version": "string",
        "min_location_failed": 0,
        "allow_insecure": False,
        "check_certificate_revocation": False,
        "ignore_server_certificate_error": False,
        "monitor_name": "string",
        "monitor_options": {
            "renotify_interval": 0,
            "renotify_occurrences": 0,
        },
        "monitor_priority": 0,
        "no_screenshot": False,
        "retry": {
            "count": 0,
            "interval": 0,
        },
        "accept_self_signed": False,
        "scheduling": {
            "timeframes": [{
                "day": 0,
                "from_": "string",
                "to": "string",
            }],
            "timezone": "string",
        },
        "initial_navigation_timeout": 0,
    },
    api_steps=[{
        "name": "string",
        "request_client_certificate": {
            "cert": {
                "content": "string",
                "filename": "string",
            },
            "key": {
                "content": "string",
                "filename": "string",
            },
        },
        "is_critical": False,
        "request_definition": {
            "allow_insecure": False,
            "body": "string",
            "body_type": "string",
            "call_type": "string",
            "certificate_domains": ["string"],
            "dns_server": "string",
            "dns_server_port": "string",
            "follow_redirects": False,
            "host": "string",
            "http_version": "string",
            "message": "string",
            "method": "string",
            "no_saving_response_body": False,
            "number_of_packets": 0,
            "persist_cookies": False,
            "plain_proto_file": "string",
            "port": "string",
            "servername": "string",
            "service": "string",
            "should_track_hops": False,
            "timeout": 0,
            "url": "string",
        },
        "extracted_values_from_script": "string",
        "request_files": [{
            "name": "string",
            "size": 0,
            "type": "string",
            "bucket_key": "string",
            "content": "string",
            "original_file_name": "string",
        }],
        "assertions": [{
            "type": "string",
            "code": "string",
            "operator": "string",
            "property": "string",
            "target": "string",
            "targetjsonpath": {
                "jsonpath": "string",
                "operator": "string",
                "elementsoperator": "string",
                "targetvalue": "string",
            },
            "targetjsonschema": {
                "jsonschema": "string",
                "metaschema": "string",
            },
            "targetxpath": {
                "operator": "string",
                "xpath": "string",
                "targetvalue": "string",
            },
            "timings_scope": "string",
        }],
        "request_basicauth": {
            "access_key": "string",
            "access_token_url": "string",
            "audience": "string",
            "client_id": "string",
            "client_secret": "string",
            "domain": "string",
            "password": "string",
            "region": "string",
            "resource": "string",
            "scope": "string",
            "secret_key": "string",
            "service_name": "string",
            "session_token": "string",
            "token_api_authentication": "string",
            "type": "string",
            "username": "string",
            "workstation": "string",
        },
        "request_headers": {
            "string": "string",
        },
        "extracted_values": [{
            "name": "string",
            "parser": {
                "type": "string",
                "value": "string",
            },
            "type": "string",
            "field": "string",
            "secure": False,
        }],
        "exit_if_succeed": False,
        "allow_failure": False,
        "request_metadata": {
            "string": "string",
        },
        "request_proxy": {
            "url": "string",
            "headers": {
                "string": "string",
            },
        },
        "request_query": {
            "string": "string",
        },
        "retry": {
            "count": 0,
            "interval": 0,
        },
        "subtype": "string",
        "value": 0,
    }],
    config_variables=[{
        "name": "string",
        "type": "string",
        "example": "string",
        "id": "string",
        "pattern": "string",
        "secure": False,
    }],
    request_definition={
        "body": "string",
        "body_type": "string",
        "call_type": "string",
        "certificate_domains": ["string"],
        "dns_server": "string",
        "dns_server_port": "string",
        "host": "string",
        "message": "string",
        "method": "string",
        "no_saving_response_body": False,
        "number_of_packets": 0,
        "persist_cookies": False,
        "plain_proto_file": "string",
        "port": "string",
        "servername": "string",
        "service": "string",
        "should_track_hops": False,
        "timeout": 0,
        "url": "string",
    },
    request_files=[{
        "name": "string",
        "size": 0,
        "type": "string",
        "bucket_key": "string",
        "content": "string",
        "original_file_name": "string",
    }],
    request_headers={
        "string": "string",
    },
    request_metadata={
        "string": "string",
    },
    request_proxy={
        "url": "string",
        "headers": {
            "string": "string",
        },
    },
    request_query={
        "string": "string",
    },
    set_cookie="string",
    browser_steps=[{
        "name": "string",
        "params": {
            "attribute": "string",
            "check": "string",
            "click_type": "string",
            "code": "string",
            "delay": 0,
            "element": "string",
            "element_user_locator": {
                "value": {
                    "value": "string",
                    "type": "string",
                },
                "fail_test_on_cannot_locate": False,
            },
            "email": "string",
            "file": "string",
            "files": "string",
            "modifiers": ["string"],
            "playing_tab_id": "string",
            "request": "string",
            "subtest_public_id": "string",
            "value": "string",
            "variable": {
                "example": "string",
                "name": "string",
                "secure": False,
            },
            "with_click": False,
            "x": 0,
            "y": 0,
        },
        "type": "string",
        "allow_failure": False,
        "always_execute": False,
        "exit_if_succeed": False,
        "force_element_update": False,
        "is_critical": False,
        "local_key": "string",
        "no_screenshot": False,
        "public_id": "string",
        "timeout": 0,
    }],
    subtype="string",
    tags=["string"],
    assertions=[{
        "type": "string",
        "code": "string",
        "operator": "string",
        "property": "string",
        "target": "string",
        "targetjsonpath": {
            "jsonpath": "string",
            "operator": "string",
            "elementsoperator": "string",
            "targetvalue": "string",
        },
        "targetjsonschema": {
            "jsonschema": "string",
            "metaschema": "string",
        },
        "targetxpath": {
            "operator": "string",
            "xpath": "string",
            "targetvalue": "string",
        },
        "timings_scope": "string",
    }],
    variables_from_script="string")
const syntheticsTestResource = new datadog.SyntheticsTest("syntheticsTestResource", {
    locations: ["string"],
    type: "string",
    status: "string",
    name: "string",
    requestBasicauth: {
        accessKey: "string",
        accessTokenUrl: "string",
        audience: "string",
        clientId: "string",
        clientSecret: "string",
        domain: "string",
        password: "string",
        region: "string",
        resource: "string",
        scope: "string",
        secretKey: "string",
        serviceName: "string",
        sessionToken: "string",
        tokenApiAuthentication: "string",
        type: "string",
        username: "string",
        workstation: "string",
    },
    requestClientCertificate: {
        cert: {
            content: "string",
            filename: "string",
        },
        key: {
            content: "string",
            filename: "string",
        },
    },
    deviceIds: ["string"],
    forceDeleteDependencies: false,
    configInitialApplicationArguments: {
        string: "string",
    },
    message: "string",
    mobileOptionsList: {
        deviceIds: ["string"],
        tickEvery: 0,
        mobileApplication: {
            applicationId: "string",
            referenceId: "string",
            referenceType: "string",
        },
        monitorName: "string",
        monitorPriority: 0,
        disableAutoAcceptAlert: false,
        minFailureDuration: 0,
        ci: {
            executionRule: "string",
        },
        allowApplicationCrash: false,
        monitorOptions: {
            escalationMessage: "string",
            notificationPresetName: "string",
            renotifyInterval: 0,
            renotifyOccurrences: 0,
        },
        defaultStepTimeout: 0,
        noScreenshot: false,
        retry: {
            count: 0,
            interval: 0,
        },
        scheduling: {
            timeframes: [{
                day: 0,
                from: "string",
                to: "string",
            }],
            timezone: "string",
        },
        bindings: [{
            principals: ["string"],
            relation: "string",
        }],
        verbosity: 0,
    },
    mobileSteps: [{
        name: "string",
        params: {
            check: "string",
            delay: 0,
            direction: "string",
            element: {
                context: "string",
                contextType: "string",
                elementDescription: "string",
                multiLocator: {
                    string: "string",
                },
                relativePosition: {
                    x: 0,
                    y: 0,
                },
                textContent: "string",
                userLocator: {
                    failTestOnCannotLocate: false,
                    values: [{
                        type: "string",
                        value: "string",
                    }],
                },
                viewName: "string",
            },
            enable: false,
            maxScrolls: 0,
            positions: [{
                x: 0,
                y: 0,
            }],
            subtestPublicId: "string",
            value: "string",
            variable: {
                name: "string",
                example: "string",
            },
            withEnter: false,
            x: 0,
            y: 0,
        },
        type: "string",
        allowFailure: false,
        hasNewStepElement: false,
        isCritical: false,
        noScreenshot: false,
        publicId: "string",
        timeout: 0,
    }],
    browserVariables: [{
        name: "string",
        type: "string",
        example: "string",
        id: "string",
        pattern: "string",
        secure: false,
    }],
    optionsList: {
        tickEvery: 0,
        minFailureDuration: 0,
        rumSettings: {
            isEnabled: false,
            applicationId: "string",
            clientTokenId: 0,
        },
        ci: {
            executionRule: "string",
        },
        disableCors: false,
        disableCsp: false,
        followRedirects: false,
        httpVersion: "string",
        minLocationFailed: 0,
        allowInsecure: false,
        checkCertificateRevocation: false,
        ignoreServerCertificateError: false,
        monitorName: "string",
        monitorOptions: {
            renotifyInterval: 0,
            renotifyOccurrences: 0,
        },
        monitorPriority: 0,
        noScreenshot: false,
        retry: {
            count: 0,
            interval: 0,
        },
        acceptSelfSigned: false,
        scheduling: {
            timeframes: [{
                day: 0,
                from: "string",
                to: "string",
            }],
            timezone: "string",
        },
        initialNavigationTimeout: 0,
    },
    apiSteps: [{
        name: "string",
        requestClientCertificate: {
            cert: {
                content: "string",
                filename: "string",
            },
            key: {
                content: "string",
                filename: "string",
            },
        },
        isCritical: false,
        requestDefinition: {
            allowInsecure: false,
            body: "string",
            bodyType: "string",
            callType: "string",
            certificateDomains: ["string"],
            dnsServer: "string",
            dnsServerPort: "string",
            followRedirects: false,
            host: "string",
            httpVersion: "string",
            message: "string",
            method: "string",
            noSavingResponseBody: false,
            numberOfPackets: 0,
            persistCookies: false,
            plainProtoFile: "string",
            port: "string",
            servername: "string",
            service: "string",
            shouldTrackHops: false,
            timeout: 0,
            url: "string",
        },
        extractedValuesFromScript: "string",
        requestFiles: [{
            name: "string",
            size: 0,
            type: "string",
            bucketKey: "string",
            content: "string",
            originalFileName: "string",
        }],
        assertions: [{
            type: "string",
            code: "string",
            operator: "string",
            property: "string",
            target: "string",
            targetjsonpath: {
                jsonpath: "string",
                operator: "string",
                elementsoperator: "string",
                targetvalue: "string",
            },
            targetjsonschema: {
                jsonschema: "string",
                metaschema: "string",
            },
            targetxpath: {
                operator: "string",
                xpath: "string",
                targetvalue: "string",
            },
            timingsScope: "string",
        }],
        requestBasicauth: {
            accessKey: "string",
            accessTokenUrl: "string",
            audience: "string",
            clientId: "string",
            clientSecret: "string",
            domain: "string",
            password: "string",
            region: "string",
            resource: "string",
            scope: "string",
            secretKey: "string",
            serviceName: "string",
            sessionToken: "string",
            tokenApiAuthentication: "string",
            type: "string",
            username: "string",
            workstation: "string",
        },
        requestHeaders: {
            string: "string",
        },
        extractedValues: [{
            name: "string",
            parser: {
                type: "string",
                value: "string",
            },
            type: "string",
            field: "string",
            secure: false,
        }],
        exitIfSucceed: false,
        allowFailure: false,
        requestMetadata: {
            string: "string",
        },
        requestProxy: {
            url: "string",
            headers: {
                string: "string",
            },
        },
        requestQuery: {
            string: "string",
        },
        retry: {
            count: 0,
            interval: 0,
        },
        subtype: "string",
        value: 0,
    }],
    configVariables: [{
        name: "string",
        type: "string",
        example: "string",
        id: "string",
        pattern: "string",
        secure: false,
    }],
    requestDefinition: {
        body: "string",
        bodyType: "string",
        callType: "string",
        certificateDomains: ["string"],
        dnsServer: "string",
        dnsServerPort: "string",
        host: "string",
        message: "string",
        method: "string",
        noSavingResponseBody: false,
        numberOfPackets: 0,
        persistCookies: false,
        plainProtoFile: "string",
        port: "string",
        servername: "string",
        service: "string",
        shouldTrackHops: false,
        timeout: 0,
        url: "string",
    },
    requestFiles: [{
        name: "string",
        size: 0,
        type: "string",
        bucketKey: "string",
        content: "string",
        originalFileName: "string",
    }],
    requestHeaders: {
        string: "string",
    },
    requestMetadata: {
        string: "string",
    },
    requestProxy: {
        url: "string",
        headers: {
            string: "string",
        },
    },
    requestQuery: {
        string: "string",
    },
    setCookie: "string",
    browserSteps: [{
        name: "string",
        params: {
            attribute: "string",
            check: "string",
            clickType: "string",
            code: "string",
            delay: 0,
            element: "string",
            elementUserLocator: {
                value: {
                    value: "string",
                    type: "string",
                },
                failTestOnCannotLocate: false,
            },
            email: "string",
            file: "string",
            files: "string",
            modifiers: ["string"],
            playingTabId: "string",
            request: "string",
            subtestPublicId: "string",
            value: "string",
            variable: {
                example: "string",
                name: "string",
                secure: false,
            },
            withClick: false,
            x: 0,
            y: 0,
        },
        type: "string",
        allowFailure: false,
        alwaysExecute: false,
        exitIfSucceed: false,
        forceElementUpdate: false,
        isCritical: false,
        localKey: "string",
        noScreenshot: false,
        publicId: "string",
        timeout: 0,
    }],
    subtype: "string",
    tags: ["string"],
    assertions: [{
        type: "string",
        code: "string",
        operator: "string",
        property: "string",
        target: "string",
        targetjsonpath: {
            jsonpath: "string",
            operator: "string",
            elementsoperator: "string",
            targetvalue: "string",
        },
        targetjsonschema: {
            jsonschema: "string",
            metaschema: "string",
        },
        targetxpath: {
            operator: "string",
            xpath: "string",
            targetvalue: "string",
        },
        timingsScope: "string",
    }],
    variablesFromScript: "string",
});
type: datadog:SyntheticsTest
properties:
    apiSteps:
        - allowFailure: false
          assertions:
            - code: string
              operator: string
              property: string
              target: string
              targetjsonpath:
                elementsoperator: string
                jsonpath: string
                operator: string
                targetvalue: string
              targetjsonschema:
                jsonschema: string
                metaschema: string
              targetxpath:
                operator: string
                targetvalue: string
                xpath: string
              timingsScope: string
              type: string
          exitIfSucceed: false
          extractedValues:
            - field: string
              name: string
              parser:
                type: string
                value: string
              secure: false
              type: string
          extractedValuesFromScript: string
          isCritical: false
          name: string
          requestBasicauth:
            accessKey: string
            accessTokenUrl: string
            audience: string
            clientId: string
            clientSecret: string
            domain: string
            password: string
            region: string
            resource: string
            scope: string
            secretKey: string
            serviceName: string
            sessionToken: string
            tokenApiAuthentication: string
            type: string
            username: string
            workstation: string
          requestClientCertificate:
            cert:
                content: string
                filename: string
            key:
                content: string
                filename: string
          requestDefinition:
            allowInsecure: false
            body: string
            bodyType: string
            callType: string
            certificateDomains:
                - string
            dnsServer: string
            dnsServerPort: string
            followRedirects: false
            host: string
            httpVersion: string
            message: string
            method: string
            noSavingResponseBody: false
            numberOfPackets: 0
            persistCookies: false
            plainProtoFile: string
            port: string
            servername: string
            service: string
            shouldTrackHops: false
            timeout: 0
            url: string
          requestFiles:
            - bucketKey: string
              content: string
              name: string
              originalFileName: string
              size: 0
              type: string
          requestHeaders:
            string: string
          requestMetadata:
            string: string
          requestProxy:
            headers:
                string: string
            url: string
          requestQuery:
            string: string
          retry:
            count: 0
            interval: 0
          subtype: string
          value: 0
    assertions:
        - code: string
          operator: string
          property: string
          target: string
          targetjsonpath:
            elementsoperator: string
            jsonpath: string
            operator: string
            targetvalue: string
          targetjsonschema:
            jsonschema: string
            metaschema: string
          targetxpath:
            operator: string
            targetvalue: string
            xpath: string
          timingsScope: string
          type: string
    browserSteps:
        - allowFailure: false
          alwaysExecute: false
          exitIfSucceed: false
          forceElementUpdate: false
          isCritical: false
          localKey: string
          name: string
          noScreenshot: false
          params:
            attribute: string
            check: string
            clickType: string
            code: string
            delay: 0
            element: string
            elementUserLocator:
                failTestOnCannotLocate: false
                value:
                    type: string
                    value: string
            email: string
            file: string
            files: string
            modifiers:
                - string
            playingTabId: string
            request: string
            subtestPublicId: string
            value: string
            variable:
                example: string
                name: string
                secure: false
            withClick: false
            x: 0
            "y": 0
          publicId: string
          timeout: 0
          type: string
    browserVariables:
        - example: string
          id: string
          name: string
          pattern: string
          secure: false
          type: string
    configInitialApplicationArguments:
        string: string
    configVariables:
        - example: string
          id: string
          name: string
          pattern: string
          secure: false
          type: string
    deviceIds:
        - string
    forceDeleteDependencies: false
    locations:
        - string
    message: string
    mobileOptionsList:
        allowApplicationCrash: false
        bindings:
            - principals:
                - string
              relation: string
        ci:
            executionRule: string
        defaultStepTimeout: 0
        deviceIds:
            - string
        disableAutoAcceptAlert: false
        minFailureDuration: 0
        mobileApplication:
            applicationId: string
            referenceId: string
            referenceType: string
        monitorName: string
        monitorOptions:
            escalationMessage: string
            notificationPresetName: string
            renotifyInterval: 0
            renotifyOccurrences: 0
        monitorPriority: 0
        noScreenshot: false
        retry:
            count: 0
            interval: 0
        scheduling:
            timeframes:
                - day: 0
                  from: string
                  to: string
            timezone: string
        tickEvery: 0
        verbosity: 0
    mobileSteps:
        - allowFailure: false
          hasNewStepElement: false
          isCritical: false
          name: string
          noScreenshot: false
          params:
            check: string
            delay: 0
            direction: string
            element:
                context: string
                contextType: string
                elementDescription: string
                multiLocator:
                    string: string
                relativePosition:
                    x: 0
                    "y": 0
                textContent: string
                userLocator:
                    failTestOnCannotLocate: false
                    values:
                        - type: string
                          value: string
                viewName: string
            enable: false
            maxScrolls: 0
            positions:
                - x: 0
                  "y": 0
            subtestPublicId: string
            value: string
            variable:
                example: string
                name: string
            withEnter: false
            x: 0
            "y": 0
          publicId: string
          timeout: 0
          type: string
    name: string
    optionsList:
        acceptSelfSigned: false
        allowInsecure: false
        checkCertificateRevocation: false
        ci:
            executionRule: string
        disableCors: false
        disableCsp: false
        followRedirects: false
        httpVersion: string
        ignoreServerCertificateError: false
        initialNavigationTimeout: 0
        minFailureDuration: 0
        minLocationFailed: 0
        monitorName: string
        monitorOptions:
            renotifyInterval: 0
            renotifyOccurrences: 0
        monitorPriority: 0
        noScreenshot: false
        retry:
            count: 0
            interval: 0
        rumSettings:
            applicationId: string
            clientTokenId: 0
            isEnabled: false
        scheduling:
            timeframes:
                - day: 0
                  from: string
                  to: string
            timezone: string
        tickEvery: 0
    requestBasicauth:
        accessKey: string
        accessTokenUrl: string
        audience: string
        clientId: string
        clientSecret: string
        domain: string
        password: string
        region: string
        resource: string
        scope: string
        secretKey: string
        serviceName: string
        sessionToken: string
        tokenApiAuthentication: string
        type: string
        username: string
        workstation: string
    requestClientCertificate:
        cert:
            content: string
            filename: string
        key:
            content: string
            filename: string
    requestDefinition:
        body: string
        bodyType: string
        callType: string
        certificateDomains:
            - string
        dnsServer: string
        dnsServerPort: string
        host: string
        message: string
        method: string
        noSavingResponseBody: false
        numberOfPackets: 0
        persistCookies: false
        plainProtoFile: string
        port: string
        servername: string
        service: string
        shouldTrackHops: false
        timeout: 0
        url: string
    requestFiles:
        - bucketKey: string
          content: string
          name: string
          originalFileName: string
          size: 0
          type: string
    requestHeaders:
        string: string
    requestMetadata:
        string: string
    requestProxy:
        headers:
            string: string
        url: string
    requestQuery:
        string: string
    setCookie: string
    status: string
    subtype: string
    tags:
        - string
    type: string
    variablesFromScript: string
SyntheticsTest Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The SyntheticsTest resource accepts the following input properties:
- Locations List<string>
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- Name string
- Name of Datadog synthetics test.
- Status string
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- Type string
- Synthetics test type. Valid values are api,browser,mobile.
- ApiSteps List<SyntheticsTest Api Step> 
- Steps for multi-step api tests
- Assertions
List<SyntheticsTest Assertion> 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- BrowserSteps List<SyntheticsTest Browser Step> 
- Steps for browser tests.
- BrowserVariables List<SyntheticsTest Browser Variable> 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- ConfigInitial Dictionary<string, string>Application Arguments 
- Initial application arguments for the mobile test.
- ConfigVariables List<SyntheticsTest Config Variable> 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- DeviceIds List<string>
- Required if type = "browser". Array with the different device IDs used to run the test.
- ForceDelete boolDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- Message string
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- MobileOptions SyntheticsList Test Mobile Options List 
- MobileSteps List<SyntheticsTest Mobile Step> 
- Steps for mobile tests
- OptionsList SyntheticsTest Options List 
- RequestBasicauth SyntheticsTest Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- RequestClient SyntheticsCertificate Test Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- RequestDefinition SyntheticsTest Request Definition 
- Required if type = "api". The synthetics test request.
- RequestFiles List<SyntheticsTest Request File> 
- Files to be used as part of the request in the test.
- RequestHeaders Dictionary<string, string>
- Header name and value map.
- RequestMetadata Dictionary<string, string>
- Metadata to include when performing the gRPC request.
- RequestProxy SyntheticsTest Request Proxy 
- The proxy to perform the test.
- RequestQuery Dictionary<string, string>
- Query arguments name and value map.
- string
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- Subtype string
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- List<string>
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- VariablesFrom stringScript 
- Variables defined from JavaScript code for API HTTP tests.
- Locations []string
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- Name string
- Name of Datadog synthetics test.
- Status string
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- Type string
- Synthetics test type. Valid values are api,browser,mobile.
- ApiSteps []SyntheticsTest Api Step Args 
- Steps for multi-step api tests
- Assertions
[]SyntheticsTest Assertion Args 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- BrowserSteps []SyntheticsTest Browser Step Args 
- Steps for browser tests.
- BrowserVariables []SyntheticsTest Browser Variable Args 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- ConfigInitial map[string]stringApplication Arguments 
- Initial application arguments for the mobile test.
- ConfigVariables []SyntheticsTest Config Variable Args 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- DeviceIds []string
- Required if type = "browser". Array with the different device IDs used to run the test.
- ForceDelete boolDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- Message string
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- MobileOptions SyntheticsList Test Mobile Options List Args 
- MobileSteps []SyntheticsTest Mobile Step Args 
- Steps for mobile tests
- OptionsList SyntheticsTest Options List Args 
- RequestBasicauth SyntheticsTest Request Basicauth Args 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- RequestClient SyntheticsCertificate Test Request Client Certificate Args 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- RequestDefinition SyntheticsTest Request Definition Args 
- Required if type = "api". The synthetics test request.
- RequestFiles []SyntheticsTest Request File Args 
- Files to be used as part of the request in the test.
- RequestHeaders map[string]string
- Header name and value map.
- RequestMetadata map[string]string
- Metadata to include when performing the gRPC request.
- RequestProxy SyntheticsTest Request Proxy Args 
- The proxy to perform the test.
- RequestQuery map[string]string
- Query arguments name and value map.
- string
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- Subtype string
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- []string
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- VariablesFrom stringScript 
- Variables defined from JavaScript code for API HTTP tests.
- locations List<String>
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- name String
- Name of Datadog synthetics test.
- status String
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- type String
- Synthetics test type. Valid values are api,browser,mobile.
- apiSteps List<SyntheticsTest Api Step> 
- Steps for multi-step api tests
- assertions
List<SyntheticsTest Assertion> 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browserSteps List<SyntheticsTest Browser Step> 
- Steps for browser tests.
- browserVariables List<SyntheticsTest Browser Variable> 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- configInitial Map<String,String>Application Arguments 
- Initial application arguments for the mobile test.
- configVariables List<SyntheticsTest Config Variable> 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- deviceIds List<String>
- Required if type = "browser". Array with the different device IDs used to run the test.
- forceDelete BooleanDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- message String
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobileOptions SyntheticsList Test Mobile Options List 
- mobileSteps List<SyntheticsTest Mobile Step> 
- Steps for mobile tests
- optionsList SyntheticsTest Options List 
- requestBasicauth SyntheticsTest Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient SyntheticsCertificate Test Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition SyntheticsTest Request Definition 
- Required if type = "api". The synthetics test request.
- requestFiles List<SyntheticsTest Request File> 
- Files to be used as part of the request in the test.
- requestHeaders Map<String,String>
- Header name and value map.
- requestMetadata Map<String,String>
- Metadata to include when performing the gRPC request.
- requestProxy SyntheticsTest Request Proxy 
- The proxy to perform the test.
- requestQuery Map<String,String>
- Query arguments name and value map.
- String
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- subtype String
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- List<String>
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- variablesFrom StringScript 
- Variables defined from JavaScript code for API HTTP tests.
- locations string[]
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- name string
- Name of Datadog synthetics test.
- status string
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- type string
- Synthetics test type. Valid values are api,browser,mobile.
- apiSteps SyntheticsTest Api Step[] 
- Steps for multi-step api tests
- assertions
SyntheticsTest Assertion[] 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browserSteps SyntheticsTest Browser Step[] 
- Steps for browser tests.
- browserVariables SyntheticsTest Browser Variable[] 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- configInitial {[key: string]: string}Application Arguments 
- Initial application arguments for the mobile test.
- configVariables SyntheticsTest Config Variable[] 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- deviceIds string[]
- Required if type = "browser". Array with the different device IDs used to run the test.
- forceDelete booleanDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- message string
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobileOptions SyntheticsList Test Mobile Options List 
- mobileSteps SyntheticsTest Mobile Step[] 
- Steps for mobile tests
- optionsList SyntheticsTest Options List 
- requestBasicauth SyntheticsTest Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient SyntheticsCertificate Test Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition SyntheticsTest Request Definition 
- Required if type = "api". The synthetics test request.
- requestFiles SyntheticsTest Request File[] 
- Files to be used as part of the request in the test.
- requestHeaders {[key: string]: string}
- Header name and value map.
- requestMetadata {[key: string]: string}
- Metadata to include when performing the gRPC request.
- requestProxy SyntheticsTest Request Proxy 
- The proxy to perform the test.
- requestQuery {[key: string]: string}
- Query arguments name and value map.
- string
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- subtype string
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- string[]
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- variablesFrom stringScript 
- Variables defined from JavaScript code for API HTTP tests.
- locations Sequence[str]
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- name str
- Name of Datadog synthetics test.
- status str
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- type str
- Synthetics test type. Valid values are api,browser,mobile.
- api_steps Sequence[SyntheticsTest Api Step Args] 
- Steps for multi-step api tests
- assertions
Sequence[SyntheticsTest Assertion Args] 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browser_steps Sequence[SyntheticsTest Browser Step Args] 
- Steps for browser tests.
- browser_variables Sequence[SyntheticsTest Browser Variable Args] 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- config_initial_ Mapping[str, str]application_ arguments 
- Initial application arguments for the mobile test.
- config_variables Sequence[SyntheticsTest Config Variable Args] 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- device_ids Sequence[str]
- Required if type = "browser". Array with the different device IDs used to run the test.
- force_delete_ booldependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- message str
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobile_options_ Syntheticslist Test Mobile Options List Args 
- mobile_steps Sequence[SyntheticsTest Mobile Step Args] 
- Steps for mobile tests
- options_list SyntheticsTest Options List Args 
- request_basicauth SyntheticsTest Request Basicauth Args 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- request_client_ Syntheticscertificate Test Request Client Certificate Args 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- request_definition SyntheticsTest Request Definition Args 
- Required if type = "api". The synthetics test request.
- request_files Sequence[SyntheticsTest Request File Args] 
- Files to be used as part of the request in the test.
- request_headers Mapping[str, str]
- Header name and value map.
- request_metadata Mapping[str, str]
- Metadata to include when performing the gRPC request.
- request_proxy SyntheticsTest Request Proxy Args 
- The proxy to perform the test.
- request_query Mapping[str, str]
- Query arguments name and value map.
- str
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- subtype str
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- Sequence[str]
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- variables_from_ strscript 
- Variables defined from JavaScript code for API HTTP tests.
- locations List<String>
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- name String
- Name of Datadog synthetics test.
- status String
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- type String
- Synthetics test type. Valid values are api,browser,mobile.
- apiSteps List<Property Map>
- Steps for multi-step api tests
- assertions List<Property Map>
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browserSteps List<Property Map>
- Steps for browser tests.
- browserVariables List<Property Map>
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- configInitial Map<String>Application Arguments 
- Initial application arguments for the mobile test.
- configVariables List<Property Map>
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- deviceIds List<String>
- Required if type = "browser". Array with the different device IDs used to run the test.
- forceDelete BooleanDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- message String
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobileOptions Property MapList 
- mobileSteps List<Property Map>
- Steps for mobile tests
- optionsList Property Map
- requestBasicauth Property Map
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient Property MapCertificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition Property Map
- Required if type = "api". The synthetics test request.
- requestFiles List<Property Map>
- Files to be used as part of the request in the test.
- requestHeaders Map<String>
- Header name and value map.
- requestMetadata Map<String>
- Metadata to include when performing the gRPC request.
- requestProxy Property Map
- The proxy to perform the test.
- requestQuery Map<String>
- Query arguments name and value map.
- String
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- subtype String
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- List<String>
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- variablesFrom StringScript 
- Variables defined from JavaScript code for API HTTP tests.
Outputs
All input properties are implicitly available as output properties. Additionally, the SyntheticsTest resource produces the following output properties:
- id str
- The provider-assigned unique ID for this managed resource.
- monitor_id int
- ID of the monitor associated with the Datadog synthetics test.
Look up Existing SyntheticsTest Resource
Get an existing SyntheticsTest resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: SyntheticsTestState, opts?: CustomResourceOptions): SyntheticsTest@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        api_steps: Optional[Sequence[SyntheticsTestApiStepArgs]] = None,
        assertions: Optional[Sequence[SyntheticsTestAssertionArgs]] = None,
        browser_steps: Optional[Sequence[SyntheticsTestBrowserStepArgs]] = None,
        browser_variables: Optional[Sequence[SyntheticsTestBrowserVariableArgs]] = None,
        config_initial_application_arguments: Optional[Mapping[str, str]] = None,
        config_variables: Optional[Sequence[SyntheticsTestConfigVariableArgs]] = None,
        device_ids: Optional[Sequence[str]] = None,
        force_delete_dependencies: Optional[bool] = None,
        locations: Optional[Sequence[str]] = None,
        message: Optional[str] = None,
        mobile_options_list: Optional[SyntheticsTestMobileOptionsListArgs] = None,
        mobile_steps: Optional[Sequence[SyntheticsTestMobileStepArgs]] = None,
        monitor_id: Optional[int] = None,
        name: Optional[str] = None,
        options_list: Optional[SyntheticsTestOptionsListArgs] = None,
        request_basicauth: Optional[SyntheticsTestRequestBasicauthArgs] = None,
        request_client_certificate: Optional[SyntheticsTestRequestClientCertificateArgs] = None,
        request_definition: Optional[SyntheticsTestRequestDefinitionArgs] = None,
        request_files: Optional[Sequence[SyntheticsTestRequestFileArgs]] = None,
        request_headers: Optional[Mapping[str, str]] = None,
        request_metadata: Optional[Mapping[str, str]] = None,
        request_proxy: Optional[SyntheticsTestRequestProxyArgs] = None,
        request_query: Optional[Mapping[str, str]] = None,
        set_cookie: Optional[str] = None,
        status: Optional[str] = None,
        subtype: Optional[str] = None,
        tags: Optional[Sequence[str]] = None,
        type: Optional[str] = None,
        variables_from_script: Optional[str] = None) -> SyntheticsTestfunc GetSyntheticsTest(ctx *Context, name string, id IDInput, state *SyntheticsTestState, opts ...ResourceOption) (*SyntheticsTest, error)public static SyntheticsTest Get(string name, Input<string> id, SyntheticsTestState? state, CustomResourceOptions? opts = null)public static SyntheticsTest get(String name, Output<String> id, SyntheticsTestState state, CustomResourceOptions options)resources:  _:    type: datadog:SyntheticsTest    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- ApiSteps List<SyntheticsTest Api Step> 
- Steps for multi-step api tests
- Assertions
List<SyntheticsTest Assertion> 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- BrowserSteps List<SyntheticsTest Browser Step> 
- Steps for browser tests.
- BrowserVariables List<SyntheticsTest Browser Variable> 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- ConfigInitial Dictionary<string, string>Application Arguments 
- Initial application arguments for the mobile test.
- ConfigVariables List<SyntheticsTest Config Variable> 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- DeviceIds List<string>
- Required if type = "browser". Array with the different device IDs used to run the test.
- ForceDelete boolDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- Locations List<string>
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- Message string
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- MobileOptions SyntheticsList Test Mobile Options List 
- MobileSteps List<SyntheticsTest Mobile Step> 
- Steps for mobile tests
- MonitorId int
- ID of the monitor associated with the Datadog synthetics test.
- Name string
- Name of Datadog synthetics test.
- OptionsList SyntheticsTest Options List 
- RequestBasicauth SyntheticsTest Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- RequestClient SyntheticsCertificate Test Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- RequestDefinition SyntheticsTest Request Definition 
- Required if type = "api". The synthetics test request.
- RequestFiles List<SyntheticsTest Request File> 
- Files to be used as part of the request in the test.
- RequestHeaders Dictionary<string, string>
- Header name and value map.
- RequestMetadata Dictionary<string, string>
- Metadata to include when performing the gRPC request.
- RequestProxy SyntheticsTest Request Proxy 
- The proxy to perform the test.
- RequestQuery Dictionary<string, string>
- Query arguments name and value map.
- string
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- Status string
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- Subtype string
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- List<string>
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- Type string
- Synthetics test type. Valid values are api,browser,mobile.
- VariablesFrom stringScript 
- Variables defined from JavaScript code for API HTTP tests.
- ApiSteps []SyntheticsTest Api Step Args 
- Steps for multi-step api tests
- Assertions
[]SyntheticsTest Assertion Args 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- BrowserSteps []SyntheticsTest Browser Step Args 
- Steps for browser tests.
- BrowserVariables []SyntheticsTest Browser Variable Args 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- ConfigInitial map[string]stringApplication Arguments 
- Initial application arguments for the mobile test.
- ConfigVariables []SyntheticsTest Config Variable Args 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- DeviceIds []string
- Required if type = "browser". Array with the different device IDs used to run the test.
- ForceDelete boolDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- Locations []string
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- Message string
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- MobileOptions SyntheticsList Test Mobile Options List Args 
- MobileSteps []SyntheticsTest Mobile Step Args 
- Steps for mobile tests
- MonitorId int
- ID of the monitor associated with the Datadog synthetics test.
- Name string
- Name of Datadog synthetics test.
- OptionsList SyntheticsTest Options List Args 
- RequestBasicauth SyntheticsTest Request Basicauth Args 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- RequestClient SyntheticsCertificate Test Request Client Certificate Args 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- RequestDefinition SyntheticsTest Request Definition Args 
- Required if type = "api". The synthetics test request.
- RequestFiles []SyntheticsTest Request File Args 
- Files to be used as part of the request in the test.
- RequestHeaders map[string]string
- Header name and value map.
- RequestMetadata map[string]string
- Metadata to include when performing the gRPC request.
- RequestProxy SyntheticsTest Request Proxy Args 
- The proxy to perform the test.
- RequestQuery map[string]string
- Query arguments name and value map.
- string
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- Status string
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- Subtype string
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- []string
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- Type string
- Synthetics test type. Valid values are api,browser,mobile.
- VariablesFrom stringScript 
- Variables defined from JavaScript code for API HTTP tests.
- apiSteps List<SyntheticsTest Api Step> 
- Steps for multi-step api tests
- assertions
List<SyntheticsTest Assertion> 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browserSteps List<SyntheticsTest Browser Step> 
- Steps for browser tests.
- browserVariables List<SyntheticsTest Browser Variable> 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- configInitial Map<String,String>Application Arguments 
- Initial application arguments for the mobile test.
- configVariables List<SyntheticsTest Config Variable> 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- deviceIds List<String>
- Required if type = "browser". Array with the different device IDs used to run the test.
- forceDelete BooleanDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- locations List<String>
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- message String
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobileOptions SyntheticsList Test Mobile Options List 
- mobileSteps List<SyntheticsTest Mobile Step> 
- Steps for mobile tests
- monitorId Integer
- ID of the monitor associated with the Datadog synthetics test.
- name String
- Name of Datadog synthetics test.
- optionsList SyntheticsTest Options List 
- requestBasicauth SyntheticsTest Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient SyntheticsCertificate Test Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition SyntheticsTest Request Definition 
- Required if type = "api". The synthetics test request.
- requestFiles List<SyntheticsTest Request File> 
- Files to be used as part of the request in the test.
- requestHeaders Map<String,String>
- Header name and value map.
- requestMetadata Map<String,String>
- Metadata to include when performing the gRPC request.
- requestProxy SyntheticsTest Request Proxy 
- The proxy to perform the test.
- requestQuery Map<String,String>
- Query arguments name and value map.
- String
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- status String
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- subtype String
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- List<String>
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- type String
- Synthetics test type. Valid values are api,browser,mobile.
- variablesFrom StringScript 
- Variables defined from JavaScript code for API HTTP tests.
- apiSteps SyntheticsTest Api Step[] 
- Steps for multi-step api tests
- assertions
SyntheticsTest Assertion[] 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browserSteps SyntheticsTest Browser Step[] 
- Steps for browser tests.
- browserVariables SyntheticsTest Browser Variable[] 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- configInitial {[key: string]: string}Application Arguments 
- Initial application arguments for the mobile test.
- configVariables SyntheticsTest Config Variable[] 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- deviceIds string[]
- Required if type = "browser". Array with the different device IDs used to run the test.
- forceDelete booleanDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- locations string[]
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- message string
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobileOptions SyntheticsList Test Mobile Options List 
- mobileSteps SyntheticsTest Mobile Step[] 
- Steps for mobile tests
- monitorId number
- ID of the monitor associated with the Datadog synthetics test.
- name string
- Name of Datadog synthetics test.
- optionsList SyntheticsTest Options List 
- requestBasicauth SyntheticsTest Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient SyntheticsCertificate Test Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition SyntheticsTest Request Definition 
- Required if type = "api". The synthetics test request.
- requestFiles SyntheticsTest Request File[] 
- Files to be used as part of the request in the test.
- requestHeaders {[key: string]: string}
- Header name and value map.
- requestMetadata {[key: string]: string}
- Metadata to include when performing the gRPC request.
- requestProxy SyntheticsTest Request Proxy 
- The proxy to perform the test.
- requestQuery {[key: string]: string}
- Query arguments name and value map.
- string
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- status string
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- subtype string
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- string[]
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- type string
- Synthetics test type. Valid values are api,browser,mobile.
- variablesFrom stringScript 
- Variables defined from JavaScript code for API HTTP tests.
- api_steps Sequence[SyntheticsTest Api Step Args] 
- Steps for multi-step api tests
- assertions
Sequence[SyntheticsTest Assertion Args] 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browser_steps Sequence[SyntheticsTest Browser Step Args] 
- Steps for browser tests.
- browser_variables Sequence[SyntheticsTest Browser Variable Args] 
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- config_initial_ Mapping[str, str]application_ arguments 
- Initial application arguments for the mobile test.
- config_variables Sequence[SyntheticsTest Config Variable Args] 
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- device_ids Sequence[str]
- Required if type = "browser". Array with the different device IDs used to run the test.
- force_delete_ booldependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- locations Sequence[str]
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- message str
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobile_options_ Syntheticslist Test Mobile Options List Args 
- mobile_steps Sequence[SyntheticsTest Mobile Step Args] 
- Steps for mobile tests
- monitor_id int
- ID of the monitor associated with the Datadog synthetics test.
- name str
- Name of Datadog synthetics test.
- options_list SyntheticsTest Options List Args 
- request_basicauth SyntheticsTest Request Basicauth Args 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- request_client_ Syntheticscertificate Test Request Client Certificate Args 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- request_definition SyntheticsTest Request Definition Args 
- Required if type = "api". The synthetics test request.
- request_files Sequence[SyntheticsTest Request File Args] 
- Files to be used as part of the request in the test.
- request_headers Mapping[str, str]
- Header name and value map.
- request_metadata Mapping[str, str]
- Metadata to include when performing the gRPC request.
- request_proxy SyntheticsTest Request Proxy Args 
- The proxy to perform the test.
- request_query Mapping[str, str]
- Query arguments name and value map.
- str
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- status str
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- subtype str
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- Sequence[str]
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- type str
- Synthetics test type. Valid values are api,browser,mobile.
- variables_from_ strscript 
- Variables defined from JavaScript code for API HTTP tests.
- apiSteps List<Property Map>
- Steps for multi-step api tests
- assertions List<Property Map>
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- browserSteps List<Property Map>
- Steps for browser tests.
- browserVariables List<Property Map>
- Variables used for a browser test steps. Multiple variableblocks are allowed with the structure below.
- configInitial Map<String>Application Arguments 
- Initial application arguments for the mobile test.
- configVariables List<Property Map>
- Variables used for the test configuration. Multiple config_variableblocks are allowed with the structure below.
- deviceIds List<String>
- Required if type = "browser". Array with the different device IDs used to run the test.
- forceDelete BooleanDependencies 
- A boolean indicating whether this synthetics test can be deleted even if it's referenced by other resources (for example, SLOs and composite monitors).
- locations List<String>
- Array of locations used to run the test. Refer to the Datadog Synthetics location data source to retrieve the list of locations.
- message String
- A message to include with notifications for this synthetics test. Email notifications can be sent to specific users by using the same @usernamenotation as events. Defaults to"".
- mobileOptions Property MapList 
- mobileSteps List<Property Map>
- Steps for mobile tests
- monitorId Number
- ID of the monitor associated with the Datadog synthetics test.
- name String
- Name of Datadog synthetics test.
- optionsList Property Map
- requestBasicauth Property Map
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient Property MapCertificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition Property Map
- Required if type = "api". The synthetics test request.
- requestFiles List<Property Map>
- Files to be used as part of the request in the test.
- requestHeaders Map<String>
- Header name and value map.
- requestMetadata Map<String>
- Metadata to include when performing the gRPC request.
- requestProxy Property Map
- The proxy to perform the test.
- requestQuery Map<String>
- Query arguments name and value map.
- String
- Cookies to be used for a browser test request, using the Set-Cookie syntax.
- status String
- Define whether you want to start (live) or pause (paused) a Synthetic test. Valid values arelive,paused.
- subtype String
- The subtype of the Synthetic API test. Defaults to http. Valid values arehttp,ssl,tcp,dns,multi,icmp,udp,websocket,grpc.
- List<String>
- A list of tags to associate with your synthetics test. This can help you categorize and filter tests in the manage synthetics page of the UI. Default is an empty list ([]).
- type String
- Synthetics test type. Valid values are api,browser,mobile.
- variablesFrom StringScript 
- Variables defined from JavaScript code for API HTTP tests.
Supporting Types
SyntheticsTestApiStep, SyntheticsTestApiStepArgs        
- Name string
- The name of the step.
- AllowFailure bool
- Determines whether or not to continue with test if this step fails.
- Assertions
List<SyntheticsTest Api Step Assertion> 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- ExitIf boolSucceed 
- Determines whether or not to exit the test if the step succeeds.
- ExtractedValues List<SyntheticsTest Api Step Extracted Value> 
- Values to parse and save as variables from the response.
- ExtractedValues stringFrom Script 
- Generate variables using JavaScript.
- IsCritical bool
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- RequestBasicauth SyntheticsTest Api Step Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- RequestClient SyntheticsCertificate Test Api Step Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- RequestDefinition SyntheticsTest Api Step Request Definition 
- The request for the api step.
- RequestFiles List<SyntheticsTest Api Step Request File> 
- Files to be used as part of the request in the test.
- RequestHeaders Dictionary<string, string>
- Header name and value map.
- RequestMetadata Dictionary<string, string>
- Metadata to include when performing the gRPC request.
- RequestProxy SyntheticsTest Api Step Request Proxy 
- The proxy to perform the test.
- RequestQuery Dictionary<string, string>
- Query arguments name and value map.
- Retry
SyntheticsTest Api Step Retry 
- Subtype string
- The subtype of the Synthetic multi-step API test step. Valid values are http,grpc,wait. Defaults to"http".
- Value int
- The time to wait in seconds. Minimum value: 0. Maximum value: 180.
- Name string
- The name of the step.
- AllowFailure bool
- Determines whether or not to continue with test if this step fails.
- Assertions
[]SyntheticsTest Api Step Assertion 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- ExitIf boolSucceed 
- Determines whether or not to exit the test if the step succeeds.
- ExtractedValues []SyntheticsTest Api Step Extracted Value 
- Values to parse and save as variables from the response.
- ExtractedValues stringFrom Script 
- Generate variables using JavaScript.
- IsCritical bool
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- RequestBasicauth SyntheticsTest Api Step Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- RequestClient SyntheticsCertificate Test Api Step Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- RequestDefinition SyntheticsTest Api Step Request Definition 
- The request for the api step.
- RequestFiles []SyntheticsTest Api Step Request File 
- Files to be used as part of the request in the test.
- RequestHeaders map[string]string
- Header name and value map.
- RequestMetadata map[string]string
- Metadata to include when performing the gRPC request.
- RequestProxy SyntheticsTest Api Step Request Proxy 
- The proxy to perform the test.
- RequestQuery map[string]string
- Query arguments name and value map.
- Retry
SyntheticsTest Api Step Retry 
- Subtype string
- The subtype of the Synthetic multi-step API test step. Valid values are http,grpc,wait. Defaults to"http".
- Value int
- The time to wait in seconds. Minimum value: 0. Maximum value: 180.
- name String
- The name of the step.
- allowFailure Boolean
- Determines whether or not to continue with test if this step fails.
- assertions
List<SyntheticsTest Api Step Assertion> 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- exitIf BooleanSucceed 
- Determines whether or not to exit the test if the step succeeds.
- extractedValues List<SyntheticsTest Api Step Extracted Value> 
- Values to parse and save as variables from the response.
- extractedValues StringFrom Script 
- Generate variables using JavaScript.
- isCritical Boolean
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- requestBasicauth SyntheticsTest Api Step Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient SyntheticsCertificate Test Api Step Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition SyntheticsTest Api Step Request Definition 
- The request for the api step.
- requestFiles List<SyntheticsTest Api Step Request File> 
- Files to be used as part of the request in the test.
- requestHeaders Map<String,String>
- Header name and value map.
- requestMetadata Map<String,String>
- Metadata to include when performing the gRPC request.
- requestProxy SyntheticsTest Api Step Request Proxy 
- The proxy to perform the test.
- requestQuery Map<String,String>
- Query arguments name and value map.
- retry
SyntheticsTest Api Step Retry 
- subtype String
- The subtype of the Synthetic multi-step API test step. Valid values are http,grpc,wait. Defaults to"http".
- value Integer
- The time to wait in seconds. Minimum value: 0. Maximum value: 180.
- name string
- The name of the step.
- allowFailure boolean
- Determines whether or not to continue with test if this step fails.
- assertions
SyntheticsTest Api Step Assertion[] 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- exitIf booleanSucceed 
- Determines whether or not to exit the test if the step succeeds.
- extractedValues SyntheticsTest Api Step Extracted Value[] 
- Values to parse and save as variables from the response.
- extractedValues stringFrom Script 
- Generate variables using JavaScript.
- isCritical boolean
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- requestBasicauth SyntheticsTest Api Step Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient SyntheticsCertificate Test Api Step Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition SyntheticsTest Api Step Request Definition 
- The request for the api step.
- requestFiles SyntheticsTest Api Step Request File[] 
- Files to be used as part of the request in the test.
- requestHeaders {[key: string]: string}
- Header name and value map.
- requestMetadata {[key: string]: string}
- Metadata to include when performing the gRPC request.
- requestProxy SyntheticsTest Api Step Request Proxy 
- The proxy to perform the test.
- requestQuery {[key: string]: string}
- Query arguments name and value map.
- retry
SyntheticsTest Api Step Retry 
- subtype string
- The subtype of the Synthetic multi-step API test step. Valid values are http,grpc,wait. Defaults to"http".
- value number
- The time to wait in seconds. Minimum value: 0. Maximum value: 180.
- name str
- The name of the step.
- allow_failure bool
- Determines whether or not to continue with test if this step fails.
- assertions
Sequence[SyntheticsTest Api Step Assertion] 
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- exit_if_ boolsucceed 
- Determines whether or not to exit the test if the step succeeds.
- extracted_values Sequence[SyntheticsTest Api Step Extracted Value] 
- Values to parse and save as variables from the response.
- extracted_values_ strfrom_ script 
- Generate variables using JavaScript.
- is_critical bool
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- request_basicauth SyntheticsTest Api Step Request Basicauth 
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- request_client_ Syntheticscertificate Test Api Step Request Client Certificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- request_definition SyntheticsTest Api Step Request Definition 
- The request for the api step.
- request_files Sequence[SyntheticsTest Api Step Request File] 
- Files to be used as part of the request in the test.
- request_headers Mapping[str, str]
- Header name and value map.
- request_metadata Mapping[str, str]
- Metadata to include when performing the gRPC request.
- request_proxy SyntheticsTest Api Step Request Proxy 
- The proxy to perform the test.
- request_query Mapping[str, str]
- Query arguments name and value map.
- retry
SyntheticsTest Api Step Retry 
- subtype str
- The subtype of the Synthetic multi-step API test step. Valid values are http,grpc,wait. Defaults to"http".
- value int
- The time to wait in seconds. Minimum value: 0. Maximum value: 180.
- name String
- The name of the step.
- allowFailure Boolean
- Determines whether or not to continue with test if this step fails.
- assertions List<Property Map>
- Assertions used for the test. Multiple assertionblocks are allowed with the structure below.
- exitIf BooleanSucceed 
- Determines whether or not to exit the test if the step succeeds.
- extractedValues List<Property Map>
- Values to parse and save as variables from the response.
- extractedValues StringFrom Script 
- Generate variables using JavaScript.
- isCritical Boolean
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- requestBasicauth Property Map
- The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.
- requestClient Property MapCertificate 
- Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.
- requestDefinition Property Map
- The request for the api step.
- requestFiles List<Property Map>
- Files to be used as part of the request in the test.
- requestHeaders Map<String>
- Header name and value map.
- requestMetadata Map<String>
- Metadata to include when performing the gRPC request.
- requestProxy Property Map
- The proxy to perform the test.
- requestQuery Map<String>
- Query arguments name and value map.
- retry Property Map
- subtype String
- The subtype of the Synthetic multi-step API test step. Valid values are http,grpc,wait. Defaults to"http".
- value Number
- The time to wait in seconds. Minimum value: 0. Maximum value: 180.
SyntheticsTestApiStepAssertion, SyntheticsTestApiStepAssertionArgs          
- Type string
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- Code string
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- Operator string
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- Property string
- If assertion type is header, this is the header name.
- Target string
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- Targetjsonpath
SyntheticsTest Api Step Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- Targetjsonschema
SyntheticsTest Api Step Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- Targetxpath
SyntheticsTest Api Step Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- TimingsScope string
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- Type string
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- Code string
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- Operator string
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- Property string
- If assertion type is header, this is the header name.
- Target string
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- Targetjsonpath
SyntheticsTest Api Step Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- Targetjsonschema
SyntheticsTest Api Step Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- Targetxpath
SyntheticsTest Api Step Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- TimingsScope string
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type String
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code String
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator String
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property String
- If assertion type is header, this is the header name.
- target String
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath
SyntheticsTest Api Step Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema
SyntheticsTest Api Step Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath
SyntheticsTest Api Step Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timingsScope String
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type string
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code string
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator string
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property string
- If assertion type is header, this is the header name.
- target string
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath
SyntheticsTest Api Step Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema
SyntheticsTest Api Step Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath
SyntheticsTest Api Step Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timingsScope string
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type str
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code str
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator str
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property str
- If assertion type is header, this is the header name.
- target str
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath
SyntheticsTest Api Step Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema
SyntheticsTest Api Step Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath
SyntheticsTest Api Step Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timings_scope str
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type String
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code String
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator String
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property String
- If assertion type is header, this is the header name.
- target String
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath Property Map
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema Property Map
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath Property Map
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timingsScope String
- Timings scope for response time assertions. Valid values are all,withoutDNS.
SyntheticsTestApiStepAssertionTargetjsonpath, SyntheticsTestApiStepAssertionTargetjsonpathArgs            
- Jsonpath string
- The JSON path to assert.
- Operator string
- The specific operator to use on the path.
- Elementsoperator string
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- Targetvalue string
- Expected matching value.
- Jsonpath string
- The JSON path to assert.
- Operator string
- The specific operator to use on the path.
- Elementsoperator string
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- Targetvalue string
- Expected matching value.
- jsonpath String
- The JSON path to assert.
- operator String
- The specific operator to use on the path.
- elementsoperator String
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue String
- Expected matching value.
- jsonpath string
- The JSON path to assert.
- operator string
- The specific operator to use on the path.
- elementsoperator string
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue string
- Expected matching value.
- jsonpath str
- The JSON path to assert.
- operator str
- The specific operator to use on the path.
- elementsoperator str
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue str
- Expected matching value.
- jsonpath String
- The JSON path to assert.
- operator String
- The specific operator to use on the path.
- elementsoperator String
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue String
- Expected matching value.
SyntheticsTestApiStepAssertionTargetjsonschema, SyntheticsTestApiStepAssertionTargetjsonschemaArgs            
- Jsonschema string
- The JSON Schema to validate the body against.
- Metaschema string
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- Jsonschema string
- The JSON Schema to validate the body against.
- Metaschema string
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema String
- The JSON Schema to validate the body against.
- metaschema String
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema string
- The JSON Schema to validate the body against.
- metaschema string
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema str
- The JSON Schema to validate the body against.
- metaschema str
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema String
- The JSON Schema to validate the body against.
- metaschema String
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
SyntheticsTestApiStepAssertionTargetxpath, SyntheticsTestApiStepAssertionTargetxpathArgs            
- Operator string
- The specific operator to use on the path.
- Xpath string
- The xpath to assert.
- Targetvalue string
- Expected matching value.
- Operator string
- The specific operator to use on the path.
- Xpath string
- The xpath to assert.
- Targetvalue string
- Expected matching value.
- operator String
- The specific operator to use on the path.
- xpath String
- The xpath to assert.
- targetvalue String
- Expected matching value.
- operator string
- The specific operator to use on the path.
- xpath string
- The xpath to assert.
- targetvalue string
- Expected matching value.
- operator str
- The specific operator to use on the path.
- xpath str
- The xpath to assert.
- targetvalue str
- Expected matching value.
- operator String
- The specific operator to use on the path.
- xpath String
- The xpath to assert.
- targetvalue String
- Expected matching value.
SyntheticsTestApiStepExtractedValue, SyntheticsTestApiStepExtractedValueArgs            
- Name string
- Parser
SyntheticsTest Api Step Extracted Value Parser 
- Type string
- Property of the Synthetics Test Response to use for the variable. Valid values are grpc_message,grpc_metadata,http_body,http_header,http_status_code.
- Field string
- When type is http_headerorgrpc_metadata, name of the header or metadatum to extract.
- Secure bool
- Determines whether or not the extracted value will be obfuscated.
- Name string
- Parser
SyntheticsTest Api Step Extracted Value Parser 
- Type string
- Property of the Synthetics Test Response to use for the variable. Valid values are grpc_message,grpc_metadata,http_body,http_header,http_status_code.
- Field string
- When type is http_headerorgrpc_metadata, name of the header or metadatum to extract.
- Secure bool
- Determines whether or not the extracted value will be obfuscated.
- name String
- parser
SyntheticsTest Api Step Extracted Value Parser 
- type String
- Property of the Synthetics Test Response to use for the variable. Valid values are grpc_message,grpc_metadata,http_body,http_header,http_status_code.
- field String
- When type is http_headerorgrpc_metadata, name of the header or metadatum to extract.
- secure Boolean
- Determines whether or not the extracted value will be obfuscated.
- name string
- parser
SyntheticsTest Api Step Extracted Value Parser 
- type string
- Property of the Synthetics Test Response to use for the variable. Valid values are grpc_message,grpc_metadata,http_body,http_header,http_status_code.
- field string
- When type is http_headerorgrpc_metadata, name of the header or metadatum to extract.
- secure boolean
- Determines whether or not the extracted value will be obfuscated.
- name str
- parser
SyntheticsTest Api Step Extracted Value Parser 
- type str
- Property of the Synthetics Test Response to use for the variable. Valid values are grpc_message,grpc_metadata,http_body,http_header,http_status_code.
- field str
- When type is http_headerorgrpc_metadata, name of the header or metadatum to extract.
- secure bool
- Determines whether or not the extracted value will be obfuscated.
- name String
- parser Property Map
- type String
- Property of the Synthetics Test Response to use for the variable. Valid values are grpc_message,grpc_metadata,http_body,http_header,http_status_code.
- field String
- When type is http_headerorgrpc_metadata, name of the header or metadatum to extract.
- secure Boolean
- Determines whether or not the extracted value will be obfuscated.
SyntheticsTestApiStepExtractedValueParser, SyntheticsTestApiStepExtractedValueParserArgs              
SyntheticsTestApiStepRequestBasicauth, SyntheticsTestApiStepRequestBasicauthArgs            
- AccessKey string
- Access key for SIGV4authentication.
- AccessToken stringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- Audience string
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- ClientId string
- Client ID for oauth-clientoroauth-ropauthentication.
- ClientSecret string
- Client secret for oauth-clientoroauth-ropauthentication.
- Domain string
- Domain for ntlmauthentication.
- Password string
- Password for authentication.
- Region string
- Region for SIGV4authentication.
- Resource string
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- Scope string
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- SecretKey string
- Secret key for SIGV4authentication.
- ServiceName string
- Service name for SIGV4authentication.
- SessionToken string
- Session token for SIGV4authentication.
- TokenApi stringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- Type string
- Type of basic authentication to use when performing the test. Defaults to "web".
- Username string
- Username for authentication.
- Workstation string
- Workstation for ntlmauthentication.
- AccessKey string
- Access key for SIGV4authentication.
- AccessToken stringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- Audience string
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- ClientId string
- Client ID for oauth-clientoroauth-ropauthentication.
- ClientSecret string
- Client secret for oauth-clientoroauth-ropauthentication.
- Domain string
- Domain for ntlmauthentication.
- Password string
- Password for authentication.
- Region string
- Region for SIGV4authentication.
- Resource string
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- Scope string
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- SecretKey string
- Secret key for SIGV4authentication.
- ServiceName string
- Service name for SIGV4authentication.
- SessionToken string
- Session token for SIGV4authentication.
- TokenApi stringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- Type string
- Type of basic authentication to use when performing the test. Defaults to "web".
- Username string
- Username for authentication.
- Workstation string
- Workstation for ntlmauthentication.
- accessKey String
- Access key for SIGV4authentication.
- accessToken StringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience String
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- clientId String
- Client ID for oauth-clientoroauth-ropauthentication.
- clientSecret String
- Client secret for oauth-clientoroauth-ropauthentication.
- domain String
- Domain for ntlmauthentication.
- password String
- Password for authentication.
- region String
- Region for SIGV4authentication.
- resource String
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope String
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secretKey String
- Secret key for SIGV4authentication.
- serviceName String
- Service name for SIGV4authentication.
- sessionToken String
- Session token for SIGV4authentication.
- tokenApi StringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type String
- Type of basic authentication to use when performing the test. Defaults to "web".
- username String
- Username for authentication.
- workstation String
- Workstation for ntlmauthentication.
- accessKey string
- Access key for SIGV4authentication.
- accessToken stringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience string
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- clientId string
- Client ID for oauth-clientoroauth-ropauthentication.
- clientSecret string
- Client secret for oauth-clientoroauth-ropauthentication.
- domain string
- Domain for ntlmauthentication.
- password string
- Password for authentication.
- region string
- Region for SIGV4authentication.
- resource string
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope string
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secretKey string
- Secret key for SIGV4authentication.
- serviceName string
- Service name for SIGV4authentication.
- sessionToken string
- Session token for SIGV4authentication.
- tokenApi stringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type string
- Type of basic authentication to use when performing the test. Defaults to "web".
- username string
- Username for authentication.
- workstation string
- Workstation for ntlmauthentication.
- access_key str
- Access key for SIGV4authentication.
- access_token_ strurl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience str
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- client_id str
- Client ID for oauth-clientoroauth-ropauthentication.
- client_secret str
- Client secret for oauth-clientoroauth-ropauthentication.
- domain str
- Domain for ntlmauthentication.
- password str
- Password for authentication.
- region str
- Region for SIGV4authentication.
- resource str
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope str
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secret_key str
- Secret key for SIGV4authentication.
- service_name str
- Service name for SIGV4authentication.
- session_token str
- Session token for SIGV4authentication.
- token_api_ strauthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type str
- Type of basic authentication to use when performing the test. Defaults to "web".
- username str
- Username for authentication.
- workstation str
- Workstation for ntlmauthentication.
- accessKey String
- Access key for SIGV4authentication.
- accessToken StringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience String
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- clientId String
- Client ID for oauth-clientoroauth-ropauthentication.
- clientSecret String
- Client secret for oauth-clientoroauth-ropauthentication.
- domain String
- Domain for ntlmauthentication.
- password String
- Password for authentication.
- region String
- Region for SIGV4authentication.
- resource String
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope String
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secretKey String
- Secret key for SIGV4authentication.
- serviceName String
- Service name for SIGV4authentication.
- sessionToken String
- Session token for SIGV4authentication.
- tokenApi StringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type String
- Type of basic authentication to use when performing the test. Defaults to "web".
- username String
- Username for authentication.
- workstation String
- Workstation for ntlmauthentication.
SyntheticsTestApiStepRequestClientCertificate, SyntheticsTestApiStepRequestClientCertificateArgs              
SyntheticsTestApiStepRequestClientCertificateCert, SyntheticsTestApiStepRequestClientCertificateCertArgs                
SyntheticsTestApiStepRequestClientCertificateKey, SyntheticsTestApiStepRequestClientCertificateKeyArgs                
SyntheticsTestApiStepRequestDefinition, SyntheticsTestApiStepRequestDefinitionArgs            
- AllowInsecure bool
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- Body string
- The request body.
- BodyType string
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- CallType string
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- CertificateDomains List<string>
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- DnsServer string
- DNS server to use for DNS tests (subtype = "dns").
- DnsServer stringPort 
- DNS server port to use for DNS tests.
- FollowRedirects bool
- Determines whether or not the API HTTP test should follow redirects.
- Host string
- Host name to perform the test with.
- HttpVersion string
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- Message string
- For UDP and websocket tests, message to send with the request.
- Method string
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- NoSaving boolResponse Body 
- Determines whether or not to save the response body.
- NumberOf intPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- bool
- Persist cookies across redirects.
- PlainProto stringFile 
- The content of a proto file as a string.
- Port string
- Port to use when performing the test.
- ProtoJson stringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- Servername string
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- Service string
- The gRPC service on which you want to perform the gRPC call.
- ShouldTrack boolHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- Timeout int
- Timeout in seconds for the test.
- Url string
- The URL to send the request to.
- AllowInsecure bool
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- Body string
- The request body.
- BodyType string
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- CallType string
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- CertificateDomains []string
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- DnsServer string
- DNS server to use for DNS tests (subtype = "dns").
- DnsServer stringPort 
- DNS server port to use for DNS tests.
- FollowRedirects bool
- Determines whether or not the API HTTP test should follow redirects.
- Host string
- Host name to perform the test with.
- HttpVersion string
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- Message string
- For UDP and websocket tests, message to send with the request.
- Method string
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- NoSaving boolResponse Body 
- Determines whether or not to save the response body.
- NumberOf intPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- bool
- Persist cookies across redirects.
- PlainProto stringFile 
- The content of a proto file as a string.
- Port string
- Port to use when performing the test.
- ProtoJson stringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- Servername string
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- Service string
- The gRPC service on which you want to perform the gRPC call.
- ShouldTrack boolHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- Timeout int
- Timeout in seconds for the test.
- Url string
- The URL to send the request to.
- allowInsecure Boolean
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- body String
- The request body.
- bodyType String
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- callType String
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificateDomains List<String>
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dnsServer String
- DNS server to use for DNS tests (subtype = "dns").
- dnsServer StringPort 
- DNS server port to use for DNS tests.
- followRedirects Boolean
- Determines whether or not the API HTTP test should follow redirects.
- host String
- Host name to perform the test with.
- httpVersion String
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- message String
- For UDP and websocket tests, message to send with the request.
- method String
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- noSaving BooleanResponse Body 
- Determines whether or not to save the response body.
- numberOf IntegerPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- Boolean
- Persist cookies across redirects.
- plainProto StringFile 
- The content of a proto file as a string.
- port String
- Port to use when performing the test.
- protoJson StringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername String
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service String
- The gRPC service on which you want to perform the gRPC call.
- shouldTrack BooleanHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout Integer
- Timeout in seconds for the test.
- url String
- The URL to send the request to.
- allowInsecure boolean
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- body string
- The request body.
- bodyType string
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- callType string
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificateDomains string[]
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dnsServer string
- DNS server to use for DNS tests (subtype = "dns").
- dnsServer stringPort 
- DNS server port to use for DNS tests.
- followRedirects boolean
- Determines whether or not the API HTTP test should follow redirects.
- host string
- Host name to perform the test with.
- httpVersion string
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- message string
- For UDP and websocket tests, message to send with the request.
- method string
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- noSaving booleanResponse Body 
- Determines whether or not to save the response body.
- numberOf numberPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- boolean
- Persist cookies across redirects.
- plainProto stringFile 
- The content of a proto file as a string.
- port string
- Port to use when performing the test.
- protoJson stringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername string
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service string
- The gRPC service on which you want to perform the gRPC call.
- shouldTrack booleanHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout number
- Timeout in seconds for the test.
- url string
- The URL to send the request to.
- allow_insecure bool
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- body str
- The request body.
- body_type str
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- call_type str
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificate_domains Sequence[str]
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dns_server str
- DNS server to use for DNS tests (subtype = "dns").
- dns_server_ strport 
- DNS server port to use for DNS tests.
- follow_redirects bool
- Determines whether or not the API HTTP test should follow redirects.
- host str
- Host name to perform the test with.
- http_version str
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- message str
- For UDP and websocket tests, message to send with the request.
- method str
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- no_saving_ boolresponse_ body 
- Determines whether or not to save the response body.
- number_of_ intpackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- bool
- Persist cookies across redirects.
- plain_proto_ strfile 
- The content of a proto file as a string.
- port str
- Port to use when performing the test.
- proto_json_ strdescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername str
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service str
- The gRPC service on which you want to perform the gRPC call.
- should_track_ boolhops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout int
- Timeout in seconds for the test.
- url str
- The URL to send the request to.
- allowInsecure Boolean
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- body String
- The request body.
- bodyType String
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- callType String
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificateDomains List<String>
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dnsServer String
- DNS server to use for DNS tests (subtype = "dns").
- dnsServer StringPort 
- DNS server port to use for DNS tests.
- followRedirects Boolean
- Determines whether or not the API HTTP test should follow redirects.
- host String
- Host name to perform the test with.
- httpVersion String
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- message String
- For UDP and websocket tests, message to send with the request.
- method String
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- noSaving BooleanResponse Body 
- Determines whether or not to save the response body.
- numberOf NumberPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- Boolean
- Persist cookies across redirects.
- plainProto StringFile 
- The content of a proto file as a string.
- port String
- Port to use when performing the test.
- protoJson StringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername String
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service String
- The gRPC service on which you want to perform the gRPC call.
- shouldTrack BooleanHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout Number
- Timeout in seconds for the test.
- url String
- The URL to send the request to.
SyntheticsTestApiStepRequestFile, SyntheticsTestApiStepRequestFileArgs            
- name str
- Name of the file.
- size int
- Size of the file.
- type str
- Type of the file.
- bucket_key str
- Bucket key of the file.
- content str
- Content of the file.
- original_file_ strname 
- Original name of the file.
SyntheticsTestApiStepRequestProxy, SyntheticsTestApiStepRequestProxyArgs            
SyntheticsTestApiStepRetry, SyntheticsTestApiStepRetryArgs          
SyntheticsTestAssertion, SyntheticsTestAssertionArgs      
- Type string
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- Code string
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- Operator string
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- Property string
- If assertion type is header, this is the header name.
- Target string
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- Targetjsonpath
SyntheticsTest Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- Targetjsonschema
SyntheticsTest Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- Targetxpath
SyntheticsTest Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- TimingsScope string
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- Type string
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- Code string
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- Operator string
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- Property string
- If assertion type is header, this is the header name.
- Target string
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- Targetjsonpath
SyntheticsTest Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- Targetjsonschema
SyntheticsTest Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- Targetxpath
SyntheticsTest Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- TimingsScope string
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type String
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code String
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator String
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property String
- If assertion type is header, this is the header name.
- target String
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath
SyntheticsTest Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema
SyntheticsTest Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath
SyntheticsTest Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timingsScope String
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type string
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code string
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator string
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property string
- If assertion type is header, this is the header name.
- target string
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath
SyntheticsTest Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema
SyntheticsTest Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath
SyntheticsTest Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timingsScope string
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type str
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code str
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator str
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property str
- If assertion type is header, this is the header name.
- target str
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath
SyntheticsTest Assertion Targetjsonpath 
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema
SyntheticsTest Assertion Targetjsonschema 
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath
SyntheticsTest Assertion Targetxpath 
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timings_scope str
- Timings scope for response time assertions. Valid values are all,withoutDNS.
- type String
- Type of assertion. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation). Valid values arebody,header,statusCode,certificate,responseTime,property,recordEvery,recordSome,tlsVersion,minTlsVersion,latency,packetLossPercentage,packetsReceived,networkHop,receivedMessage,grpcHealthcheckStatus,grpcMetadata,grpcProto,connection,bodyHash,javascript.
- code String
- If assertion type is javascript, this is the JavaScript code that performs the assertions.
- operator String
- Assertion operator. Note Only some combinations of typeandoperatorare valid (please refer to Datadog documentation).
- property String
- If assertion type is header, this is the header name.
- target String
- Expected value. Depends on the assertion type, refer to Datadog documentation for details.
- targetjsonpath Property Map
- Expected structure if operatorisvalidatesJSONPath. Exactly one nested block is allowed with the structure below.
- targetjsonschema Property Map
- Expected structure if operatorisvalidatesJSONSchema. Exactly one nested block is allowed with the structure below.
- targetxpath Property Map
- Expected structure if operatorisvalidatesXPath. Exactly one nested block is allowed with the structure below.
- timingsScope String
- Timings scope for response time assertions. Valid values are all,withoutDNS.
SyntheticsTestAssertionTargetjsonpath, SyntheticsTestAssertionTargetjsonpathArgs        
- Jsonpath string
- The JSON path to assert.
- Operator string
- The specific operator to use on the path.
- Elementsoperator string
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- Targetvalue string
- Expected matching value.
- Jsonpath string
- The JSON path to assert.
- Operator string
- The specific operator to use on the path.
- Elementsoperator string
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- Targetvalue string
- Expected matching value.
- jsonpath String
- The JSON path to assert.
- operator String
- The specific operator to use on the path.
- elementsoperator String
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue String
- Expected matching value.
- jsonpath string
- The JSON path to assert.
- operator string
- The specific operator to use on the path.
- elementsoperator string
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue string
- Expected matching value.
- jsonpath str
- The JSON path to assert.
- operator str
- The specific operator to use on the path.
- elementsoperator str
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue str
- Expected matching value.
- jsonpath String
- The JSON path to assert.
- operator String
- The specific operator to use on the path.
- elementsoperator String
- The element from the list of results to assert on. Select from firstElementMatches(the first element in the list),everyElementMatches(every element in the list),atLeastOneElementMatches(at least one element in the list), orserializationMatches(the serialized value of the list). Defaults to"firstElementMatches".
- targetvalue String
- Expected matching value.
SyntheticsTestAssertionTargetjsonschema, SyntheticsTestAssertionTargetjsonschemaArgs        
- Jsonschema string
- The JSON Schema to validate the body against.
- Metaschema string
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- Jsonschema string
- The JSON Schema to validate the body against.
- Metaschema string
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema String
- The JSON Schema to validate the body against.
- metaschema String
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema string
- The JSON Schema to validate the body against.
- metaschema string
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema str
- The JSON Schema to validate the body against.
- metaschema str
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
- jsonschema String
- The JSON Schema to validate the body against.
- metaschema String
- The meta schema to use for the JSON Schema. Defaults to "draft-07".
SyntheticsTestAssertionTargetxpath, SyntheticsTestAssertionTargetxpathArgs        
- Operator string
- The specific operator to use on the path.
- Xpath string
- The xpath to assert.
- Targetvalue string
- Expected matching value.
- Operator string
- The specific operator to use on the path.
- Xpath string
- The xpath to assert.
- Targetvalue string
- Expected matching value.
- operator String
- The specific operator to use on the path.
- xpath String
- The xpath to assert.
- targetvalue String
- Expected matching value.
- operator string
- The specific operator to use on the path.
- xpath string
- The xpath to assert.
- targetvalue string
- Expected matching value.
- operator str
- The specific operator to use on the path.
- xpath str
- The xpath to assert.
- targetvalue str
- Expected matching value.
- operator String
- The specific operator to use on the path.
- xpath String
- The xpath to assert.
- targetvalue String
- Expected matching value.
SyntheticsTestBrowserStep, SyntheticsTestBrowserStepArgs        
- Name string
- Name of the step.
- Params
SyntheticsTest Browser Step Params 
- Parameters for the step.
- Type string
- Type of the step. Valid values are assertCurrentUrl,assertElementAttribute,assertElementContent,assertElementPresent,assertEmail,assertFileDownload,assertFromJavascript,assertPageContains,assertPageLacks,click,extractFromJavascript,extractVariable,goToEmailLink,goToUrl,goToUrlAndMeasureTti,hover,playSubTest,pressKey,refresh,runApiTest,scroll,selectOption,typeText,uploadFiles,wait.
- AllowFailure bool
- Determines if the step should be allowed to fail.
- AlwaysExecute bool
- Determines whether or not to always execute this step even if the previous step failed or was skipped.
- ExitIf boolSucceed 
- Determines whether or not to exit the test if the step succeeds.
- ForceElement boolUpdate 
- Force update of the "element" parameter for the step
- IsCritical bool
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- LocalKey string
- A unique identifier used to track steps after reordering.
- NoScreenshot bool
- Prevents saving screenshots of the step.
- PublicId string
- The identifier of the step on the backend.
- Timeout int
- Used to override the default timeout of a step.
- Name string
- Name of the step.
- Params
SyntheticsTest Browser Step Params 
- Parameters for the step.
- Type string
- Type of the step. Valid values are assertCurrentUrl,assertElementAttribute,assertElementContent,assertElementPresent,assertEmail,assertFileDownload,assertFromJavascript,assertPageContains,assertPageLacks,click,extractFromJavascript,extractVariable,goToEmailLink,goToUrl,goToUrlAndMeasureTti,hover,playSubTest,pressKey,refresh,runApiTest,scroll,selectOption,typeText,uploadFiles,wait.
- AllowFailure bool
- Determines if the step should be allowed to fail.
- AlwaysExecute bool
- Determines whether or not to always execute this step even if the previous step failed or was skipped.
- ExitIf boolSucceed 
- Determines whether or not to exit the test if the step succeeds.
- ForceElement boolUpdate 
- Force update of the "element" parameter for the step
- IsCritical bool
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- LocalKey string
- A unique identifier used to track steps after reordering.
- NoScreenshot bool
- Prevents saving screenshots of the step.
- PublicId string
- The identifier of the step on the backend.
- Timeout int
- Used to override the default timeout of a step.
- name String
- Name of the step.
- params
SyntheticsTest Browser Step Params 
- Parameters for the step.
- type String
- Type of the step. Valid values are assertCurrentUrl,assertElementAttribute,assertElementContent,assertElementPresent,assertEmail,assertFileDownload,assertFromJavascript,assertPageContains,assertPageLacks,click,extractFromJavascript,extractVariable,goToEmailLink,goToUrl,goToUrlAndMeasureTti,hover,playSubTest,pressKey,refresh,runApiTest,scroll,selectOption,typeText,uploadFiles,wait.
- allowFailure Boolean
- Determines if the step should be allowed to fail.
- alwaysExecute Boolean
- Determines whether or not to always execute this step even if the previous step failed or was skipped.
- exitIf BooleanSucceed 
- Determines whether or not to exit the test if the step succeeds.
- forceElement BooleanUpdate 
- Force update of the "element" parameter for the step
- isCritical Boolean
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- localKey String
- A unique identifier used to track steps after reordering.
- noScreenshot Boolean
- Prevents saving screenshots of the step.
- publicId String
- The identifier of the step on the backend.
- timeout Integer
- Used to override the default timeout of a step.
- name string
- Name of the step.
- params
SyntheticsTest Browser Step Params 
- Parameters for the step.
- type string
- Type of the step. Valid values are assertCurrentUrl,assertElementAttribute,assertElementContent,assertElementPresent,assertEmail,assertFileDownload,assertFromJavascript,assertPageContains,assertPageLacks,click,extractFromJavascript,extractVariable,goToEmailLink,goToUrl,goToUrlAndMeasureTti,hover,playSubTest,pressKey,refresh,runApiTest,scroll,selectOption,typeText,uploadFiles,wait.
- allowFailure boolean
- Determines if the step should be allowed to fail.
- alwaysExecute boolean
- Determines whether or not to always execute this step even if the previous step failed or was skipped.
- exitIf booleanSucceed 
- Determines whether or not to exit the test if the step succeeds.
- forceElement booleanUpdate 
- Force update of the "element" parameter for the step
- isCritical boolean
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- localKey string
- A unique identifier used to track steps after reordering.
- noScreenshot boolean
- Prevents saving screenshots of the step.
- publicId string
- The identifier of the step on the backend.
- timeout number
- Used to override the default timeout of a step.
- name str
- Name of the step.
- params
SyntheticsTest Browser Step Params 
- Parameters for the step.
- type str
- Type of the step. Valid values are assertCurrentUrl,assertElementAttribute,assertElementContent,assertElementPresent,assertEmail,assertFileDownload,assertFromJavascript,assertPageContains,assertPageLacks,click,extractFromJavascript,extractVariable,goToEmailLink,goToUrl,goToUrlAndMeasureTti,hover,playSubTest,pressKey,refresh,runApiTest,scroll,selectOption,typeText,uploadFiles,wait.
- allow_failure bool
- Determines if the step should be allowed to fail.
- always_execute bool
- Determines whether or not to always execute this step even if the previous step failed or was skipped.
- exit_if_ boolsucceed 
- Determines whether or not to exit the test if the step succeeds.
- force_element_ boolupdate 
- Force update of the "element" parameter for the step
- is_critical bool
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- local_key str
- A unique identifier used to track steps after reordering.
- no_screenshot bool
- Prevents saving screenshots of the step.
- public_id str
- The identifier of the step on the backend.
- timeout int
- Used to override the default timeout of a step.
- name String
- Name of the step.
- params Property Map
- Parameters for the step.
- type String
- Type of the step. Valid values are assertCurrentUrl,assertElementAttribute,assertElementContent,assertElementPresent,assertEmail,assertFileDownload,assertFromJavascript,assertPageContains,assertPageLacks,click,extractFromJavascript,extractVariable,goToEmailLink,goToUrl,goToUrlAndMeasureTti,hover,playSubTest,pressKey,refresh,runApiTest,scroll,selectOption,typeText,uploadFiles,wait.
- allowFailure Boolean
- Determines if the step should be allowed to fail.
- alwaysExecute Boolean
- Determines whether or not to always execute this step even if the previous step failed or was skipped.
- exitIf BooleanSucceed 
- Determines whether or not to exit the test if the step succeeds.
- forceElement BooleanUpdate 
- Force update of the "element" parameter for the step
- isCritical Boolean
- Determines whether or not to consider the entire test as failed if this step fails. Can be used only if allow_failureistrue.
- localKey String
- A unique identifier used to track steps after reordering.
- noScreenshot Boolean
- Prevents saving screenshots of the step.
- publicId String
- The identifier of the step on the backend.
- timeout Number
- Used to override the default timeout of a step.
SyntheticsTestBrowserStepParams, SyntheticsTestBrowserStepParamsArgs          
- Attribute string
- Name of the attribute to use for an "assert attribute" step.
- Check string
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- ClickType string
- Type of click to use for a "click" step.
- Code string
- Javascript code to use for the step.
- Delay int
- Delay between each key stroke for a "type test" step.
- Element string
- Element to use for the step, JSON encoded string.
- ElementUser SyntheticsLocator Test Browser Step Params Element User Locator 
- Custom user selector to use for the step.
- Email string
- Details of the email for an "assert email" step, JSON encoded string.
- File string
- JSON encoded string used for an "assert download" step. Refer to the examples for a usage example showing the schema.
- Files string
- Details of the files for an "upload files" step, JSON encoded string. Refer to the examples for a usage example showing the schema.
- Modifiers List<string>
- Modifier to use for a "press key" step.
- PlayingTab stringId 
- ID of the tab to play the subtest.
- Request string
- Request for an API step.
- SubtestPublic stringId 
- ID of the Synthetics test to use as subtest.
- Value string
- Value of the step.
- Variable
SyntheticsTest Browser Step Params Variable 
- Details of the variable to extract.
- WithClick bool
- For "file upload" steps.
- X int
- X coordinates for a "scroll step".
- Y int
- Y coordinates for a "scroll step".
- Attribute string
- Name of the attribute to use for an "assert attribute" step.
- Check string
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- ClickType string
- Type of click to use for a "click" step.
- Code string
- Javascript code to use for the step.
- Delay int
- Delay between each key stroke for a "type test" step.
- Element string
- Element to use for the step, JSON encoded string.
- ElementUser SyntheticsLocator Test Browser Step Params Element User Locator 
- Custom user selector to use for the step.
- Email string
- Details of the email for an "assert email" step, JSON encoded string.
- File string
- JSON encoded string used for an "assert download" step. Refer to the examples for a usage example showing the schema.
- Files string
- Details of the files for an "upload files" step, JSON encoded string. Refer to the examples for a usage example showing the schema.
- Modifiers []string
- Modifier to use for a "press key" step.
- PlayingTab stringId 
- ID of the tab to play the subtest.
- Request string
- Request for an API step.
- SubtestPublic stringId 
- ID of the Synthetics test to use as subtest.
- Value string
- Value of the step.
- Variable
SyntheticsTest Browser Step Params Variable 
- Details of the variable to extract.
- WithClick bool
- For "file upload" steps.
- X int
- X coordinates for a "scroll step".
- Y int
- Y coordinates for a "scroll step".
- attribute String
- Name of the attribute to use for an "assert attribute" step.
- check String
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- clickType String
- Type of click to use for a "click" step.
- code String
- Javascript code to use for the step.
- delay Integer
- Delay between each key stroke for a "type test" step.
- element String
- Element to use for the step, JSON encoded string.
- elementUser SyntheticsLocator Test Browser Step Params Element User Locator 
- Custom user selector to use for the step.
- email String
- Details of the email for an "assert email" step, JSON encoded string.
- file String
- JSON encoded string used for an "assert download" step. Refer to the examples for a usage example showing the schema.
- files String
- Details of the files for an "upload files" step, JSON encoded string. Refer to the examples for a usage example showing the schema.
- modifiers List<String>
- Modifier to use for a "press key" step.
- playingTab StringId 
- ID of the tab to play the subtest.
- request String
- Request for an API step.
- subtestPublic StringId 
- ID of the Synthetics test to use as subtest.
- value String
- Value of the step.
- variable
SyntheticsTest Browser Step Params Variable 
- Details of the variable to extract.
- withClick Boolean
- For "file upload" steps.
- x Integer
- X coordinates for a "scroll step".
- y Integer
- Y coordinates for a "scroll step".
- attribute string
- Name of the attribute to use for an "assert attribute" step.
- check string
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- clickType string
- Type of click to use for a "click" step.
- code string
- Javascript code to use for the step.
- delay number
- Delay between each key stroke for a "type test" step.
- element string
- Element to use for the step, JSON encoded string.
- elementUser SyntheticsLocator Test Browser Step Params Element User Locator 
- Custom user selector to use for the step.
- email string
- Details of the email for an "assert email" step, JSON encoded string.
- file string
- JSON encoded string used for an "assert download" step. Refer to the examples for a usage example showing the schema.
- files string
- Details of the files for an "upload files" step, JSON encoded string. Refer to the examples for a usage example showing the schema.
- modifiers string[]
- Modifier to use for a "press key" step.
- playingTab stringId 
- ID of the tab to play the subtest.
- request string
- Request for an API step.
- subtestPublic stringId 
- ID of the Synthetics test to use as subtest.
- value string
- Value of the step.
- variable
SyntheticsTest Browser Step Params Variable 
- Details of the variable to extract.
- withClick boolean
- For "file upload" steps.
- x number
- X coordinates for a "scroll step".
- y number
- Y coordinates for a "scroll step".
- attribute str
- Name of the attribute to use for an "assert attribute" step.
- check str
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- click_type str
- Type of click to use for a "click" step.
- code str
- Javascript code to use for the step.
- delay int
- Delay between each key stroke for a "type test" step.
- element str
- Element to use for the step, JSON encoded string.
- element_user_ Syntheticslocator Test Browser Step Params Element User Locator 
- Custom user selector to use for the step.
- email str
- Details of the email for an "assert email" step, JSON encoded string.
- file str
- JSON encoded string used for an "assert download" step. Refer to the examples for a usage example showing the schema.
- files str
- Details of the files for an "upload files" step, JSON encoded string. Refer to the examples for a usage example showing the schema.
- modifiers Sequence[str]
- Modifier to use for a "press key" step.
- playing_tab_ strid 
- ID of the tab to play the subtest.
- request str
- Request for an API step.
- subtest_public_ strid 
- ID of the Synthetics test to use as subtest.
- value str
- Value of the step.
- variable
SyntheticsTest Browser Step Params Variable 
- Details of the variable to extract.
- with_click bool
- For "file upload" steps.
- x int
- X coordinates for a "scroll step".
- y int
- Y coordinates for a "scroll step".
- attribute String
- Name of the attribute to use for an "assert attribute" step.
- check String
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- clickType String
- Type of click to use for a "click" step.
- code String
- Javascript code to use for the step.
- delay Number
- Delay between each key stroke for a "type test" step.
- element String
- Element to use for the step, JSON encoded string.
- elementUser Property MapLocator 
- Custom user selector to use for the step.
- email String
- Details of the email for an "assert email" step, JSON encoded string.
- file String
- JSON encoded string used for an "assert download" step. Refer to the examples for a usage example showing the schema.
- files String
- Details of the files for an "upload files" step, JSON encoded string. Refer to the examples for a usage example showing the schema.
- modifiers List<String>
- Modifier to use for a "press key" step.
- playingTab StringId 
- ID of the tab to play the subtest.
- request String
- Request for an API step.
- subtestPublic StringId 
- ID of the Synthetics test to use as subtest.
- value String
- Value of the step.
- variable Property Map
- Details of the variable to extract.
- withClick Boolean
- For "file upload" steps.
- x Number
- X coordinates for a "scroll step".
- y Number
- Y coordinates for a "scroll step".
SyntheticsTestBrowserStepParamsElementUserLocator, SyntheticsTestBrowserStepParamsElementUserLocatorArgs                
- Value
SyntheticsTest Browser Step Params Element User Locator Value 
- FailTest boolOn Cannot Locate 
- Defaults to false.
- Value
SyntheticsTest Browser Step Params Element User Locator Value 
- FailTest boolOn Cannot Locate 
- Defaults to false.
- value
SyntheticsTest Browser Step Params Element User Locator Value 
- failTest BooleanOn Cannot Locate 
- Defaults to false.
- value
SyntheticsTest Browser Step Params Element User Locator Value 
- failTest booleanOn Cannot Locate 
- Defaults to false.
- value
SyntheticsTest Browser Step Params Element User Locator Value 
- fail_test_ boolon_ cannot_ locate 
- Defaults to false.
- value Property Map
- failTest BooleanOn Cannot Locate 
- Defaults to false.
SyntheticsTestBrowserStepParamsElementUserLocatorValue, SyntheticsTestBrowserStepParamsElementUserLocatorValueArgs                  
SyntheticsTestBrowserStepParamsVariable, SyntheticsTestBrowserStepParamsVariableArgs            
SyntheticsTestBrowserVariable, SyntheticsTestBrowserVariableArgs        
- Name string
- Name of the variable.
- Type string
- Type of browser test variable. Valid values are element,email,global,text.
- Example string
- Example for the variable. Defaults to "".
- Id string
- ID of the global variable to use. This is actually only used (and required) in the case of using a variable of type global.
- Pattern string
- Pattern of the variable. Defaults to "".
- Secure bool
- Determines whether or not the browser test variable is obfuscated. Can only be used with a browser variable of type text
- Name string
- Name of the variable.
- Type string
- Type of browser test variable. Valid values are element,email,global,text.
- Example string
- Example for the variable. Defaults to "".
- Id string
- ID of the global variable to use. This is actually only used (and required) in the case of using a variable of type global.
- Pattern string
- Pattern of the variable. Defaults to "".
- Secure bool
- Determines whether or not the browser test variable is obfuscated. Can only be used with a browser variable of type text
- name String
- Name of the variable.
- type String
- Type of browser test variable. Valid values are element,email,global,text.
- example String
- Example for the variable. Defaults to "".
- id String
- ID of the global variable to use. This is actually only used (and required) in the case of using a variable of type global.
- pattern String
- Pattern of the variable. Defaults to "".
- secure Boolean
- Determines whether or not the browser test variable is obfuscated. Can only be used with a browser variable of type text
- name string
- Name of the variable.
- type string
- Type of browser test variable. Valid values are element,email,global,text.
- example string
- Example for the variable. Defaults to "".
- id string
- ID of the global variable to use. This is actually only used (and required) in the case of using a variable of type global.
- pattern string
- Pattern of the variable. Defaults to "".
- secure boolean
- Determines whether or not the browser test variable is obfuscated. Can only be used with a browser variable of type text
- name str
- Name of the variable.
- type str
- Type of browser test variable. Valid values are element,email,global,text.
- example str
- Example for the variable. Defaults to "".
- id str
- ID of the global variable to use. This is actually only used (and required) in the case of using a variable of type global.
- pattern str
- Pattern of the variable. Defaults to "".
- secure bool
- Determines whether or not the browser test variable is obfuscated. Can only be used with a browser variable of type text
- name String
- Name of the variable.
- type String
- Type of browser test variable. Valid values are element,email,global,text.
- example String
- Example for the variable. Defaults to "".
- id String
- ID of the global variable to use. This is actually only used (and required) in the case of using a variable of type global.
- pattern String
- Pattern of the variable. Defaults to "".
- secure Boolean
- Determines whether or not the browser test variable is obfuscated. Can only be used with a browser variable of type text
SyntheticsTestConfigVariable, SyntheticsTestConfigVariableArgs        
- Name string
- Name of the variable.
- Type string
- Type of test configuration variable. Valid values are global,text,email.
- Example string
- Id string
- When type = global, ID of the global variable to use.
- Pattern string
- Secure bool
- Whether the value of this variable will be obfuscated in test results. Defaults to false.
- Name string
- Name of the variable.
- Type string
- Type of test configuration variable. Valid values are global,text,email.
- Example string
- Id string
- When type = global, ID of the global variable to use.
- Pattern string
- Secure bool
- Whether the value of this variable will be obfuscated in test results. Defaults to false.
- name String
- Name of the variable.
- type String
- Type of test configuration variable. Valid values are global,text,email.
- example String
- id String
- When type = global, ID of the global variable to use.
- pattern String
- secure Boolean
- Whether the value of this variable will be obfuscated in test results. Defaults to false.
- name string
- Name of the variable.
- type string
- Type of test configuration variable. Valid values are global,text,email.
- example string
- id string
- When type = global, ID of the global variable to use.
- pattern string
- secure boolean
- Whether the value of this variable will be obfuscated in test results. Defaults to false.
- name String
- Name of the variable.
- type String
- Type of test configuration variable. Valid values are global,text,email.
- example String
- id String
- When type = global, ID of the global variable to use.
- pattern String
- secure Boolean
- Whether the value of this variable will be obfuscated in test results. Defaults to false.
SyntheticsTestMobileOptionsList, SyntheticsTestMobileOptionsListArgs          
- DeviceIds List<string>
- MobileApplication SyntheticsTest Mobile Options List Mobile Application 
- TickEvery int
- How often the test should run (in seconds).
- AllowApplication boolCrash 
- Bindings
List<SyntheticsTest Mobile Options List Binding> 
- Restriction policy bindings for the Synthetic mobile test. Should not be used in parallel with a datadog.RestrictionPolicyresource
- Ci
SyntheticsTest Mobile Options List Ci 
- CI/CD options for a Synthetic test.
- DefaultStep intTimeout 
- DisableAuto boolAccept Alert 
- MinFailure intDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- MonitorName string
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- MonitorOptions SyntheticsTest Mobile Options List Monitor Options 
- MonitorPriority int
- NoScreenshot bool
- Prevents saving screenshots of the steps.
- RestrictedRoles List<string>
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- Retry
SyntheticsTest Mobile Options List Retry 
- Scheduling
SyntheticsTest Mobile Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- Verbosity int
- DeviceIds []string
- MobileApplication SyntheticsTest Mobile Options List Mobile Application 
- TickEvery int
- How often the test should run (in seconds).
- AllowApplication boolCrash 
- Bindings
[]SyntheticsTest Mobile Options List Binding 
- Restriction policy bindings for the Synthetic mobile test. Should not be used in parallel with a datadog.RestrictionPolicyresource
- Ci
SyntheticsTest Mobile Options List Ci 
- CI/CD options for a Synthetic test.
- DefaultStep intTimeout 
- DisableAuto boolAccept Alert 
- MinFailure intDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- MonitorName string
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- MonitorOptions SyntheticsTest Mobile Options List Monitor Options 
- MonitorPriority int
- NoScreenshot bool
- Prevents saving screenshots of the steps.
- RestrictedRoles []string
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- Retry
SyntheticsTest Mobile Options List Retry 
- Scheduling
SyntheticsTest Mobile Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- Verbosity int
- deviceIds List<String>
- mobileApplication SyntheticsTest Mobile Options List Mobile Application 
- tickEvery Integer
- How often the test should run (in seconds).
- allowApplication BooleanCrash 
- bindings
List<SyntheticsTest Mobile Options List Binding> 
- Restriction policy bindings for the Synthetic mobile test. Should not be used in parallel with a datadog.RestrictionPolicyresource
- ci
SyntheticsTest Mobile Options List Ci 
- CI/CD options for a Synthetic test.
- defaultStep IntegerTimeout 
- disableAuto BooleanAccept Alert 
- minFailure IntegerDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- monitorName String
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitorOptions SyntheticsTest Mobile Options List Monitor Options 
- monitorPriority Integer
- noScreenshot Boolean
- Prevents saving screenshots of the steps.
- restrictedRoles List<String>
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry
SyntheticsTest Mobile Options List Retry 
- scheduling
SyntheticsTest Mobile Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- verbosity Integer
- deviceIds string[]
- mobileApplication SyntheticsTest Mobile Options List Mobile Application 
- tickEvery number
- How often the test should run (in seconds).
- allowApplication booleanCrash 
- bindings
SyntheticsTest Mobile Options List Binding[] 
- Restriction policy bindings for the Synthetic mobile test. Should not be used in parallel with a datadog.RestrictionPolicyresource
- ci
SyntheticsTest Mobile Options List Ci 
- CI/CD options for a Synthetic test.
- defaultStep numberTimeout 
- disableAuto booleanAccept Alert 
- minFailure numberDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- monitorName string
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitorOptions SyntheticsTest Mobile Options List Monitor Options 
- monitorPriority number
- noScreenshot boolean
- Prevents saving screenshots of the steps.
- restrictedRoles string[]
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry
SyntheticsTest Mobile Options List Retry 
- scheduling
SyntheticsTest Mobile Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- verbosity number
- device_ids Sequence[str]
- mobile_application SyntheticsTest Mobile Options List Mobile Application 
- tick_every int
- How often the test should run (in seconds).
- allow_application_ boolcrash 
- bindings
Sequence[SyntheticsTest Mobile Options List Binding] 
- Restriction policy bindings for the Synthetic mobile test. Should not be used in parallel with a datadog.RestrictionPolicyresource
- ci
SyntheticsTest Mobile Options List Ci 
- CI/CD options for a Synthetic test.
- default_step_ inttimeout 
- disable_auto_ boolaccept_ alert 
- min_failure_ intduration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- monitor_name str
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitor_options SyntheticsTest Mobile Options List Monitor Options 
- monitor_priority int
- no_screenshot bool
- Prevents saving screenshots of the steps.
- restricted_roles Sequence[str]
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry
SyntheticsTest Mobile Options List Retry 
- scheduling
SyntheticsTest Mobile Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- verbosity int
- deviceIds List<String>
- mobileApplication Property Map
- tickEvery Number
- How often the test should run (in seconds).
- allowApplication BooleanCrash 
- bindings List<Property Map>
- Restriction policy bindings for the Synthetic mobile test. Should not be used in parallel with a datadog.RestrictionPolicyresource
- ci Property Map
- CI/CD options for a Synthetic test.
- defaultStep NumberTimeout 
- disableAuto BooleanAccept Alert 
- minFailure NumberDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- monitorName String
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitorOptions Property Map
- monitorPriority Number
- noScreenshot Boolean
- Prevents saving screenshots of the steps.
- restrictedRoles List<String>
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry Property Map
- scheduling Property Map
- Object containing timeframes and timezone used for advanced scheduling.
- verbosity Number
SyntheticsTestMobileOptionsListBinding, SyntheticsTestMobileOptionsListBindingArgs            
- Principals List<string>
- Relation string
- Valid values are editor,viewer.
- Principals []string
- Relation string
- Valid values are editor,viewer.
- principals List<String>
- relation String
- Valid values are editor,viewer.
- principals string[]
- relation string
- Valid values are editor,viewer.
- principals Sequence[str]
- relation str
- Valid values are editor,viewer.
- principals List<String>
- relation String
- Valid values are editor,viewer.
SyntheticsTestMobileOptionsListCi, SyntheticsTestMobileOptionsListCiArgs            
- ExecutionRule string
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- ExecutionRule string
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- executionRule String
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- executionRule string
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- execution_rule str
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- executionRule String
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
SyntheticsTestMobileOptionsListMobileApplication, SyntheticsTestMobileOptionsListMobileApplicationArgs              
- ApplicationId string
- ReferenceId string
- ReferenceType string
- Valid values are latest,version.
- ApplicationId string
- ReferenceId string
- ReferenceType string
- Valid values are latest,version.
- applicationId String
- referenceId String
- referenceType String
- Valid values are latest,version.
- applicationId string
- referenceId string
- referenceType string
- Valid values are latest,version.
- application_id str
- reference_id str
- reference_type str
- Valid values are latest,version.
- applicationId String
- referenceId String
- referenceType String
- Valid values are latest,version.
SyntheticsTestMobileOptionsListMonitorOptions, SyntheticsTestMobileOptionsListMonitorOptionsArgs              
- EscalationMessage string
- NotificationPreset stringName 
- Valid values are show_all,hide_all,hide_query,hide_handles.
- RenotifyInterval int
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- RenotifyOccurrences int
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- EscalationMessage string
- NotificationPreset stringName 
- Valid values are show_all,hide_all,hide_query,hide_handles.
- RenotifyInterval int
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- RenotifyOccurrences int
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- escalationMessage String
- notificationPreset StringName 
- Valid values are show_all,hide_all,hide_query,hide_handles.
- renotifyInterval Integer
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotifyOccurrences Integer
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- escalationMessage string
- notificationPreset stringName 
- Valid values are show_all,hide_all,hide_query,hide_handles.
- renotifyInterval number
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotifyOccurrences number
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- escalation_message str
- notification_preset_ strname 
- Valid values are show_all,hide_all,hide_query,hide_handles.
- renotify_interval int
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotify_occurrences int
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- escalationMessage String
- notificationPreset StringName 
- Valid values are show_all,hide_all,hide_query,hide_handles.
- renotifyInterval Number
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotifyOccurrences Number
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
SyntheticsTestMobileOptionsListRetry, SyntheticsTestMobileOptionsListRetryArgs            
SyntheticsTestMobileOptionsListScheduling, SyntheticsTestMobileOptionsListSchedulingArgs            
- Timeframes
List<SyntheticsTest Mobile Options List Scheduling Timeframe> 
- Array containing objects describing the scheduling pattern to apply to each day.
- Timezone string
- Timezone in which the timeframe is based.
- Timeframes
[]SyntheticsTest Mobile Options List Scheduling Timeframe 
- Array containing objects describing the scheduling pattern to apply to each day.
- Timezone string
- Timezone in which the timeframe is based.
- timeframes
List<SyntheticsTest Mobile Options List Scheduling Timeframe> 
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone String
- Timezone in which the timeframe is based.
- timeframes
SyntheticsTest Mobile Options List Scheduling Timeframe[] 
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone string
- Timezone in which the timeframe is based.
- timeframes
Sequence[SyntheticsTest Mobile Options List Scheduling Timeframe] 
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone str
- Timezone in which the timeframe is based.
- timeframes List<Property Map>
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone String
- Timezone in which the timeframe is based.
SyntheticsTestMobileOptionsListSchedulingTimeframe, SyntheticsTestMobileOptionsListSchedulingTimeframeArgs              
SyntheticsTestMobileStep, SyntheticsTestMobileStepArgs        
- Name string
- The name of the step.
- Params
SyntheticsTest Mobile Step Params 
- Parameters for the step.
- Type string
- The type of the step. Valid values are assertElementContent,assertScreenContains,assertScreenLacks,doubleTap,extractVariable,flick,openDeeplink,playSubTest,pressBack,restartApplication,rotate,scroll,scrollToElement,tap,toggleWiFi,typeText,wait.
- AllowFailure bool
- A boolean set to allow this step to fail.
- HasNew boolStep Element 
- A boolean set to determine if the step has a new step element.
- IsCritical bool
- A boolean to use in addition to allowFailureto determine if the test should be marked as failed when the step fails.
- NoScreenshot bool
- A boolean set to not take a screenshot for the step.
- PublicId string
- The public ID of the step.
- Timeout int
- The time before declaring a step failed.
- Name string
- The name of the step.
- Params
SyntheticsTest Mobile Step Params 
- Parameters for the step.
- Type string
- The type of the step. Valid values are assertElementContent,assertScreenContains,assertScreenLacks,doubleTap,extractVariable,flick,openDeeplink,playSubTest,pressBack,restartApplication,rotate,scroll,scrollToElement,tap,toggleWiFi,typeText,wait.
- AllowFailure bool
- A boolean set to allow this step to fail.
- HasNew boolStep Element 
- A boolean set to determine if the step has a new step element.
- IsCritical bool
- A boolean to use in addition to allowFailureto determine if the test should be marked as failed when the step fails.
- NoScreenshot bool
- A boolean set to not take a screenshot for the step.
- PublicId string
- The public ID of the step.
- Timeout int
- The time before declaring a step failed.
- name String
- The name of the step.
- params
SyntheticsTest Mobile Step Params 
- Parameters for the step.
- type String
- The type of the step. Valid values are assertElementContent,assertScreenContains,assertScreenLacks,doubleTap,extractVariable,flick,openDeeplink,playSubTest,pressBack,restartApplication,rotate,scroll,scrollToElement,tap,toggleWiFi,typeText,wait.
- allowFailure Boolean
- A boolean set to allow this step to fail.
- hasNew BooleanStep Element 
- A boolean set to determine if the step has a new step element.
- isCritical Boolean
- A boolean to use in addition to allowFailureto determine if the test should be marked as failed when the step fails.
- noScreenshot Boolean
- A boolean set to not take a screenshot for the step.
- publicId String
- The public ID of the step.
- timeout Integer
- The time before declaring a step failed.
- name string
- The name of the step.
- params
SyntheticsTest Mobile Step Params 
- Parameters for the step.
- type string
- The type of the step. Valid values are assertElementContent,assertScreenContains,assertScreenLacks,doubleTap,extractVariable,flick,openDeeplink,playSubTest,pressBack,restartApplication,rotate,scroll,scrollToElement,tap,toggleWiFi,typeText,wait.
- allowFailure boolean
- A boolean set to allow this step to fail.
- hasNew booleanStep Element 
- A boolean set to determine if the step has a new step element.
- isCritical boolean
- A boolean to use in addition to allowFailureto determine if the test should be marked as failed when the step fails.
- noScreenshot boolean
- A boolean set to not take a screenshot for the step.
- publicId string
- The public ID of the step.
- timeout number
- The time before declaring a step failed.
- name str
- The name of the step.
- params
SyntheticsTest Mobile Step Params 
- Parameters for the step.
- type str
- The type of the step. Valid values are assertElementContent,assertScreenContains,assertScreenLacks,doubleTap,extractVariable,flick,openDeeplink,playSubTest,pressBack,restartApplication,rotate,scroll,scrollToElement,tap,toggleWiFi,typeText,wait.
- allow_failure bool
- A boolean set to allow this step to fail.
- has_new_ boolstep_ element 
- A boolean set to determine if the step has a new step element.
- is_critical bool
- A boolean to use in addition to allowFailureto determine if the test should be marked as failed when the step fails.
- no_screenshot bool
- A boolean set to not take a screenshot for the step.
- public_id str
- The public ID of the step.
- timeout int
- The time before declaring a step failed.
- name String
- The name of the step.
- params Property Map
- Parameters for the step.
- type String
- The type of the step. Valid values are assertElementContent,assertScreenContains,assertScreenLacks,doubleTap,extractVariable,flick,openDeeplink,playSubTest,pressBack,restartApplication,rotate,scroll,scrollToElement,tap,toggleWiFi,typeText,wait.
- allowFailure Boolean
- A boolean set to allow this step to fail.
- hasNew BooleanStep Element 
- A boolean set to determine if the step has a new step element.
- isCritical Boolean
- A boolean to use in addition to allowFailureto determine if the test should be marked as failed when the step fails.
- noScreenshot Boolean
- A boolean set to not take a screenshot for the step.
- publicId String
- The public ID of the step.
- timeout Number
- The time before declaring a step failed.
SyntheticsTestMobileStepParams, SyntheticsTestMobileStepParamsArgs          
- Check string
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- Delay int
- Delay between each key stroke for a "type test" step.
- Direction string
- Valid values are up,down,left,right.
- Element
SyntheticsTest Mobile Step Params Element 
- Element to use for the step, JSON encoded string.
- Enable bool
- MaxScrolls int
- Positions
List<SyntheticsTest Mobile Step Params Position> 
- SubtestPublic stringId 
- ID of the Synthetics test to use as subtest.
- Value string
- Value of the step.
- Variable
SyntheticsTest Mobile Step Params Variable 
- Details of the variable to extract.
- WithEnter bool
- X double
- X coordinates for a "scroll step".
- Y double
- Y coordinates for a "scroll step".
- Check string
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- Delay int
- Delay between each key stroke for a "type test" step.
- Direction string
- Valid values are up,down,left,right.
- Element
SyntheticsTest Mobile Step Params Element 
- Element to use for the step, JSON encoded string.
- Enable bool
- MaxScrolls int
- Positions
[]SyntheticsTest Mobile Step Params Position 
- SubtestPublic stringId 
- ID of the Synthetics test to use as subtest.
- Value string
- Value of the step.
- Variable
SyntheticsTest Mobile Step Params Variable 
- Details of the variable to extract.
- WithEnter bool
- X float64
- X coordinates for a "scroll step".
- Y float64
- Y coordinates for a "scroll step".
- check String
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- delay Integer
- Delay between each key stroke for a "type test" step.
- direction String
- Valid values are up,down,left,right.
- element
SyntheticsTest Mobile Step Params Element 
- Element to use for the step, JSON encoded string.
- enable Boolean
- maxScrolls Integer
- positions
List<SyntheticsTest Mobile Step Params Position> 
- subtestPublic StringId 
- ID of the Synthetics test to use as subtest.
- value String
- Value of the step.
- variable
SyntheticsTest Mobile Step Params Variable 
- Details of the variable to extract.
- withEnter Boolean
- x Double
- X coordinates for a "scroll step".
- y Double
- Y coordinates for a "scroll step".
- check string
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- delay number
- Delay between each key stroke for a "type test" step.
- direction string
- Valid values are up,down,left,right.
- element
SyntheticsTest Mobile Step Params Element 
- Element to use for the step, JSON encoded string.
- enable boolean
- maxScrolls number
- positions
SyntheticsTest Mobile Step Params Position[] 
- subtestPublic stringId 
- ID of the Synthetics test to use as subtest.
- value string
- Value of the step.
- variable
SyntheticsTest Mobile Step Params Variable 
- Details of the variable to extract.
- withEnter boolean
- x number
- X coordinates for a "scroll step".
- y number
- Y coordinates for a "scroll step".
- check str
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- delay int
- Delay between each key stroke for a "type test" step.
- direction str
- Valid values are up,down,left,right.
- element
SyntheticsTest Mobile Step Params Element 
- Element to use for the step, JSON encoded string.
- enable bool
- max_scrolls int
- positions
Sequence[SyntheticsTest Mobile Step Params Position] 
- subtest_public_ strid 
- ID of the Synthetics test to use as subtest.
- value str
- Value of the step.
- variable
SyntheticsTest Mobile Step Params Variable 
- Details of the variable to extract.
- with_enter bool
- x float
- X coordinates for a "scroll step".
- y float
- Y coordinates for a "scroll step".
- check String
- Check type to use for an assertion step. Valid values are equals,notEquals,contains,notContains,startsWith,notStartsWith,greater,lower,greaterEquals,lowerEquals,matchRegex,between,isEmpty,notIsEmpty.
- delay Number
- Delay between each key stroke for a "type test" step.
- direction String
- Valid values are up,down,left,right.
- element Property Map
- Element to use for the step, JSON encoded string.
- enable Boolean
- maxScrolls Number
- positions List<Property Map>
- subtestPublic StringId 
- ID of the Synthetics test to use as subtest.
- value String
- Value of the step.
- variable Property Map
- Details of the variable to extract.
- withEnter Boolean
- x Number
- X coordinates for a "scroll step".
- y Number
- Y coordinates for a "scroll step".
SyntheticsTestMobileStepParamsElement, SyntheticsTestMobileStepParamsElementArgs            
- Context string
- ContextType string
- Valid values are native,web.
- ElementDescription string
- MultiLocator Dictionary<string, string>
- RelativePosition SyntheticsTest Mobile Step Params Element Relative Position 
- TextContent string
- UserLocator SyntheticsTest Mobile Step Params Element User Locator 
- ViewName string
- Context string
- ContextType string
- Valid values are native,web.
- ElementDescription string
- MultiLocator map[string]string
- RelativePosition SyntheticsTest Mobile Step Params Element Relative Position 
- TextContent string
- UserLocator SyntheticsTest Mobile Step Params Element User Locator 
- ViewName string
- context String
- contextType String
- Valid values are native,web.
- elementDescription String
- multiLocator Map<String,String>
- relativePosition SyntheticsTest Mobile Step Params Element Relative Position 
- textContent String
- userLocator SyntheticsTest Mobile Step Params Element User Locator 
- viewName String
- context string
- contextType string
- Valid values are native,web.
- elementDescription string
- multiLocator {[key: string]: string}
- relativePosition SyntheticsTest Mobile Step Params Element Relative Position 
- textContent string
- userLocator SyntheticsTest Mobile Step Params Element User Locator 
- viewName string
- context str
- context_type str
- Valid values are native,web.
- element_description str
- multi_locator Mapping[str, str]
- relative_position SyntheticsTest Mobile Step Params Element Relative Position 
- text_content str
- user_locator SyntheticsTest Mobile Step Params Element User Locator 
- view_name str
- context String
- contextType String
- Valid values are native,web.
- elementDescription String
- multiLocator Map<String>
- relativePosition Property Map
- textContent String
- userLocator Property Map
- viewName String
SyntheticsTestMobileStepParamsElementRelativePosition, SyntheticsTestMobileStepParamsElementRelativePositionArgs                
SyntheticsTestMobileStepParamsElementUserLocator, SyntheticsTestMobileStepParamsElementUserLocatorArgs                
SyntheticsTestMobileStepParamsElementUserLocatorValue, SyntheticsTestMobileStepParamsElementUserLocatorValueArgs                  
SyntheticsTestMobileStepParamsPosition, SyntheticsTestMobileStepParamsPositionArgs            
SyntheticsTestMobileStepParamsVariable, SyntheticsTestMobileStepParamsVariableArgs            
SyntheticsTestOptionsList, SyntheticsTestOptionsListArgs        
- TickEvery int
- How often the test should run (in seconds).
- AcceptSelf boolSigned 
- For SSL test, whether or not the test should allow self signed certificates.
- AllowInsecure bool
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- CheckCertificate boolRevocation 
- For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP.
- Ci
SyntheticsTest Options List Ci 
- CI/CD options for a Synthetic test.
- DisableCors bool
- Disable Cross-Origin Resource Sharing for browser tests.
- DisableCsp bool
- Disable Content Security Policy for browser tests.
- FollowRedirects bool
- Determines whether or not the API HTTP test should follow redirects.
- HttpVersion string
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- IgnoreServer boolCertificate Error 
- Ignore server certificate error for browser tests.
- int
- Timeout before declaring the initial step as failed (in seconds) for browser tests.
- MinFailure intDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- MinLocation intFailed 
- Minimum number of locations in failure required to trigger an alert. Defaults to 1.
- MonitorName string
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- MonitorOptions SyntheticsTest Options List Monitor Options 
- MonitorPriority int
- NoScreenshot bool
- Prevents saving screenshots of the steps.
- RestrictedRoles List<string>
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- Retry
SyntheticsTest Options List Retry 
- RumSettings SyntheticsTest Options List Rum Settings 
- The RUM data collection settings for the Synthetic browser test.
- Scheduling
SyntheticsTest Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- TickEvery int
- How often the test should run (in seconds).
- AcceptSelf boolSigned 
- For SSL test, whether or not the test should allow self signed certificates.
- AllowInsecure bool
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- CheckCertificate boolRevocation 
- For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP.
- Ci
SyntheticsTest Options List Ci 
- CI/CD options for a Synthetic test.
- DisableCors bool
- Disable Cross-Origin Resource Sharing for browser tests.
- DisableCsp bool
- Disable Content Security Policy for browser tests.
- FollowRedirects bool
- Determines whether or not the API HTTP test should follow redirects.
- HttpVersion string
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- IgnoreServer boolCertificate Error 
- Ignore server certificate error for browser tests.
- int
- Timeout before declaring the initial step as failed (in seconds) for browser tests.
- MinFailure intDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- MinLocation intFailed 
- Minimum number of locations in failure required to trigger an alert. Defaults to 1.
- MonitorName string
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- MonitorOptions SyntheticsTest Options List Monitor Options 
- MonitorPriority int
- NoScreenshot bool
- Prevents saving screenshots of the steps.
- RestrictedRoles []string
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- Retry
SyntheticsTest Options List Retry 
- RumSettings SyntheticsTest Options List Rum Settings 
- The RUM data collection settings for the Synthetic browser test.
- Scheduling
SyntheticsTest Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- tickEvery Integer
- How often the test should run (in seconds).
- acceptSelf BooleanSigned 
- For SSL test, whether or not the test should allow self signed certificates.
- allowInsecure Boolean
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- checkCertificate BooleanRevocation 
- For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP.
- ci
SyntheticsTest Options List Ci 
- CI/CD options for a Synthetic test.
- disableCors Boolean
- Disable Cross-Origin Resource Sharing for browser tests.
- disableCsp Boolean
- Disable Content Security Policy for browser tests.
- followRedirects Boolean
- Determines whether or not the API HTTP test should follow redirects.
- httpVersion String
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- ignoreServer BooleanCertificate Error 
- Ignore server certificate error for browser tests.
- Integer
- Timeout before declaring the initial step as failed (in seconds) for browser tests.
- minFailure IntegerDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- minLocation IntegerFailed 
- Minimum number of locations in failure required to trigger an alert. Defaults to 1.
- monitorName String
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitorOptions SyntheticsTest Options List Monitor Options 
- monitorPriority Integer
- noScreenshot Boolean
- Prevents saving screenshots of the steps.
- restrictedRoles List<String>
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry
SyntheticsTest Options List Retry 
- rumSettings SyntheticsTest Options List Rum Settings 
- The RUM data collection settings for the Synthetic browser test.
- scheduling
SyntheticsTest Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- tickEvery number
- How often the test should run (in seconds).
- acceptSelf booleanSigned 
- For SSL test, whether or not the test should allow self signed certificates.
- allowInsecure boolean
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- checkCertificate booleanRevocation 
- For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP.
- ci
SyntheticsTest Options List Ci 
- CI/CD options for a Synthetic test.
- disableCors boolean
- Disable Cross-Origin Resource Sharing for browser tests.
- disableCsp boolean
- Disable Content Security Policy for browser tests.
- followRedirects boolean
- Determines whether or not the API HTTP test should follow redirects.
- httpVersion string
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- ignoreServer booleanCertificate Error 
- Ignore server certificate error for browser tests.
- number
- Timeout before declaring the initial step as failed (in seconds) for browser tests.
- minFailure numberDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- minLocation numberFailed 
- Minimum number of locations in failure required to trigger an alert. Defaults to 1.
- monitorName string
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitorOptions SyntheticsTest Options List Monitor Options 
- monitorPriority number
- noScreenshot boolean
- Prevents saving screenshots of the steps.
- restrictedRoles string[]
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry
SyntheticsTest Options List Retry 
- rumSettings SyntheticsTest Options List Rum Settings 
- The RUM data collection settings for the Synthetic browser test.
- scheduling
SyntheticsTest Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- tick_every int
- How often the test should run (in seconds).
- accept_self_ boolsigned 
- For SSL test, whether or not the test should allow self signed certificates.
- allow_insecure bool
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- check_certificate_ boolrevocation 
- For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP.
- ci
SyntheticsTest Options List Ci 
- CI/CD options for a Synthetic test.
- disable_cors bool
- Disable Cross-Origin Resource Sharing for browser tests.
- disable_csp bool
- Disable Content Security Policy for browser tests.
- follow_redirects bool
- Determines whether or not the API HTTP test should follow redirects.
- http_version str
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- ignore_server_ boolcertificate_ error 
- Ignore server certificate error for browser tests.
- int
- Timeout before declaring the initial step as failed (in seconds) for browser tests.
- min_failure_ intduration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- min_location_ intfailed 
- Minimum number of locations in failure required to trigger an alert. Defaults to 1.
- monitor_name str
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitor_options SyntheticsTest Options List Monitor Options 
- monitor_priority int
- no_screenshot bool
- Prevents saving screenshots of the steps.
- restricted_roles Sequence[str]
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry
SyntheticsTest Options List Retry 
- rum_settings SyntheticsTest Options List Rum Settings 
- The RUM data collection settings for the Synthetic browser test.
- scheduling
SyntheticsTest Options List Scheduling 
- Object containing timeframes and timezone used for advanced scheduling.
- tickEvery Number
- How often the test should run (in seconds).
- acceptSelf BooleanSigned 
- For SSL test, whether or not the test should allow self signed certificates.
- allowInsecure Boolean
- Allows loading insecure content for a request in an API test or in a multistep API test step.
- checkCertificate BooleanRevocation 
- For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP.
- ci Property Map
- CI/CD options for a Synthetic test.
- disableCors Boolean
- Disable Cross-Origin Resource Sharing for browser tests.
- disableCsp Boolean
- Disable Content Security Policy for browser tests.
- followRedirects Boolean
- Determines whether or not the API HTTP test should follow redirects.
- httpVersion String
- HTTP version to use for an HTTP request in an API test or step. Valid values are http1,http2,any. Defaults to"any".
- ignoreServer BooleanCertificate Error 
- Ignore server certificate error for browser tests.
- Number
- Timeout before declaring the initial step as failed (in seconds) for browser tests.
- minFailure NumberDuration 
- Minimum amount of time in failure required to trigger an alert (in seconds). Default is 0.
- minLocation NumberFailed 
- Minimum number of locations in failure required to trigger an alert. Defaults to 1.
- monitorName String
- The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.
- monitorOptions Property Map
- monitorPriority Number
- noScreenshot Boolean
- Prevents saving screenshots of the steps.
- restrictedRoles List<String>
- A list of role identifiers pulled from the Roles API to restrict read and write access. Deprecated. This field is no longer supported by the Datadog API. Please use datadog.RestrictionPolicyinstead.
- retry Property Map
- rumSettings Property Map
- The RUM data collection settings for the Synthetic browser test.
- scheduling Property Map
- Object containing timeframes and timezone used for advanced scheduling.
SyntheticsTestOptionsListCi, SyntheticsTestOptionsListCiArgs          
- ExecutionRule string
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- ExecutionRule string
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- executionRule String
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- executionRule string
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- execution_rule str
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
- executionRule String
- Execution rule for a Synthetics test. Valid values are blocking,non_blocking,skipped.
SyntheticsTestOptionsListMonitorOptions, SyntheticsTestOptionsListMonitorOptionsArgs            
- RenotifyInterval int
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- RenotifyOccurrences int
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- RenotifyInterval int
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- RenotifyOccurrences int
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- renotifyInterval Integer
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotifyOccurrences Integer
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- renotifyInterval number
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotifyOccurrences number
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- renotify_interval int
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotify_occurrences int
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
- renotifyInterval Number
- Specify a renotification frequency in minutes. Values available by default are 0,10,20,30,40,50,60,90,120,180,240,300,360,720,1440. Defaults to0.
- renotifyOccurrences Number
- The number of times a monitor renotifies. It can only be set if renotify_intervalis set.
SyntheticsTestOptionsListRetry, SyntheticsTestOptionsListRetryArgs          
SyntheticsTestOptionsListRumSettings, SyntheticsTestOptionsListRumSettingsArgs            
- IsEnabled bool
- Determines whether RUM data is collected during test runs.
- ApplicationId string
- RUM application ID used to collect RUM data for the browser test.
- ClientToken intId 
- RUM application API key ID used to collect RUM data for the browser test.
- IsEnabled bool
- Determines whether RUM data is collected during test runs.
- ApplicationId string
- RUM application ID used to collect RUM data for the browser test.
- ClientToken intId 
- RUM application API key ID used to collect RUM data for the browser test.
- isEnabled Boolean
- Determines whether RUM data is collected during test runs.
- applicationId String
- RUM application ID used to collect RUM data for the browser test.
- clientToken IntegerId 
- RUM application API key ID used to collect RUM data for the browser test.
- isEnabled boolean
- Determines whether RUM data is collected during test runs.
- applicationId string
- RUM application ID used to collect RUM data for the browser test.
- clientToken numberId 
- RUM application API key ID used to collect RUM data for the browser test.
- is_enabled bool
- Determines whether RUM data is collected during test runs.
- application_id str
- RUM application ID used to collect RUM data for the browser test.
- client_token_ intid 
- RUM application API key ID used to collect RUM data for the browser test.
- isEnabled Boolean
- Determines whether RUM data is collected during test runs.
- applicationId String
- RUM application ID used to collect RUM data for the browser test.
- clientToken NumberId 
- RUM application API key ID used to collect RUM data for the browser test.
SyntheticsTestOptionsListScheduling, SyntheticsTestOptionsListSchedulingArgs          
- Timeframes
List<SyntheticsTest Options List Scheduling Timeframe> 
- Array containing objects describing the scheduling pattern to apply to each day.
- Timezone string
- Timezone in which the timeframe is based.
- Timeframes
[]SyntheticsTest Options List Scheduling Timeframe 
- Array containing objects describing the scheduling pattern to apply to each day.
- Timezone string
- Timezone in which the timeframe is based.
- timeframes
List<SyntheticsTest Options List Scheduling Timeframe> 
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone String
- Timezone in which the timeframe is based.
- timeframes
SyntheticsTest Options List Scheduling Timeframe[] 
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone string
- Timezone in which the timeframe is based.
- timeframes
Sequence[SyntheticsTest Options List Scheduling Timeframe] 
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone str
- Timezone in which the timeframe is based.
- timeframes List<Property Map>
- Array containing objects describing the scheduling pattern to apply to each day.
- timezone String
- Timezone in which the timeframe is based.
SyntheticsTestOptionsListSchedulingTimeframe, SyntheticsTestOptionsListSchedulingTimeframeArgs            
SyntheticsTestRequestBasicauth, SyntheticsTestRequestBasicauthArgs        
- AccessKey string
- Access key for SIGV4authentication.
- AccessToken stringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- Audience string
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- ClientId string
- Client ID for oauth-clientoroauth-ropauthentication.
- ClientSecret string
- Client secret for oauth-clientoroauth-ropauthentication.
- Domain string
- Domain for ntlmauthentication.
- Password string
- Password for authentication.
- Region string
- Region for SIGV4authentication.
- Resource string
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- Scope string
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- SecretKey string
- Secret key for SIGV4authentication.
- ServiceName string
- Service name for SIGV4authentication.
- SessionToken string
- Session token for SIGV4authentication.
- TokenApi stringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- Type string
- Type of basic authentication to use when performing the test. Defaults to "web".
- Username string
- Username for authentication.
- Workstation string
- Workstation for ntlmauthentication.
- AccessKey string
- Access key for SIGV4authentication.
- AccessToken stringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- Audience string
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- ClientId string
- Client ID for oauth-clientoroauth-ropauthentication.
- ClientSecret string
- Client secret for oauth-clientoroauth-ropauthentication.
- Domain string
- Domain for ntlmauthentication.
- Password string
- Password for authentication.
- Region string
- Region for SIGV4authentication.
- Resource string
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- Scope string
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- SecretKey string
- Secret key for SIGV4authentication.
- ServiceName string
- Service name for SIGV4authentication.
- SessionToken string
- Session token for SIGV4authentication.
- TokenApi stringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- Type string
- Type of basic authentication to use when performing the test. Defaults to "web".
- Username string
- Username for authentication.
- Workstation string
- Workstation for ntlmauthentication.
- accessKey String
- Access key for SIGV4authentication.
- accessToken StringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience String
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- clientId String
- Client ID for oauth-clientoroauth-ropauthentication.
- clientSecret String
- Client secret for oauth-clientoroauth-ropauthentication.
- domain String
- Domain for ntlmauthentication.
- password String
- Password for authentication.
- region String
- Region for SIGV4authentication.
- resource String
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope String
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secretKey String
- Secret key for SIGV4authentication.
- serviceName String
- Service name for SIGV4authentication.
- sessionToken String
- Session token for SIGV4authentication.
- tokenApi StringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type String
- Type of basic authentication to use when performing the test. Defaults to "web".
- username String
- Username for authentication.
- workstation String
- Workstation for ntlmauthentication.
- accessKey string
- Access key for SIGV4authentication.
- accessToken stringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience string
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- clientId string
- Client ID for oauth-clientoroauth-ropauthentication.
- clientSecret string
- Client secret for oauth-clientoroauth-ropauthentication.
- domain string
- Domain for ntlmauthentication.
- password string
- Password for authentication.
- region string
- Region for SIGV4authentication.
- resource string
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope string
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secretKey string
- Secret key for SIGV4authentication.
- serviceName string
- Service name for SIGV4authentication.
- sessionToken string
- Session token for SIGV4authentication.
- tokenApi stringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type string
- Type of basic authentication to use when performing the test. Defaults to "web".
- username string
- Username for authentication.
- workstation string
- Workstation for ntlmauthentication.
- access_key str
- Access key for SIGV4authentication.
- access_token_ strurl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience str
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- client_id str
- Client ID for oauth-clientoroauth-ropauthentication.
- client_secret str
- Client secret for oauth-clientoroauth-ropauthentication.
- domain str
- Domain for ntlmauthentication.
- password str
- Password for authentication.
- region str
- Region for SIGV4authentication.
- resource str
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope str
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secret_key str
- Secret key for SIGV4authentication.
- service_name str
- Service name for SIGV4authentication.
- session_token str
- Session token for SIGV4authentication.
- token_api_ strauthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type str
- Type of basic authentication to use when performing the test. Defaults to "web".
- username str
- Username for authentication.
- workstation str
- Workstation for ntlmauthentication.
- accessKey String
- Access key for SIGV4authentication.
- accessToken StringUrl 
- Access token url for oauth-clientoroauth-ropauthentication.
- audience String
- Audience for oauth-clientoroauth-ropauthentication. Defaults to"".
- clientId String
- Client ID for oauth-clientoroauth-ropauthentication.
- clientSecret String
- Client secret for oauth-clientoroauth-ropauthentication.
- domain String
- Domain for ntlmauthentication.
- password String
- Password for authentication.
- region String
- Region for SIGV4authentication.
- resource String
- Resource for oauth-clientoroauth-ropauthentication. Defaults to"".
- scope String
- Scope for oauth-clientoroauth-ropauthentication. Defaults to"".
- secretKey String
- Secret key for SIGV4authentication.
- serviceName String
- Service name for SIGV4authentication.
- sessionToken String
- Session token for SIGV4authentication.
- tokenApi StringAuthentication 
- Token API Authentication for oauth-clientoroauth-ropauthentication. Valid values areheader,body.
- type String
- Type of basic authentication to use when performing the test. Defaults to "web".
- username String
- Username for authentication.
- workstation String
- Workstation for ntlmauthentication.
SyntheticsTestRequestClientCertificate, SyntheticsTestRequestClientCertificateArgs          
SyntheticsTestRequestClientCertificateCert, SyntheticsTestRequestClientCertificateCertArgs            
SyntheticsTestRequestClientCertificateKey, SyntheticsTestRequestClientCertificateKeyArgs            
SyntheticsTestRequestDefinition, SyntheticsTestRequestDefinitionArgs        
- Body string
- The request body.
- BodyType string
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- CallType string
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- CertificateDomains List<string>
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- DnsServer string
- DNS server to use for DNS tests (subtype = "dns").
- DnsServer stringPort 
- DNS server port to use for DNS tests.
- Host string
- Host name to perform the test with.
- HttpVersion string
- HTTP version to use for an HTTP request in an API test or step. Deprecated. Use http_versionin theoptions_listfield instead.
- Message string
- For UDP and websocket tests, message to send with the request.
- Method string
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- NoSaving boolResponse Body 
- Determines whether or not to save the response body.
- NumberOf intPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- bool
- Persist cookies across redirects.
- PlainProto stringFile 
- The content of a proto file as a string.
- Port string
- Port to use when performing the test.
- ProtoJson stringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- Servername string
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- Service string
- The gRPC service on which you want to perform the gRPC call.
- ShouldTrack boolHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- Timeout int
- Timeout in seconds for the test.
- Url string
- The URL to send the request to.
- Body string
- The request body.
- BodyType string
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- CallType string
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- CertificateDomains []string
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- DnsServer string
- DNS server to use for DNS tests (subtype = "dns").
- DnsServer stringPort 
- DNS server port to use for DNS tests.
- Host string
- Host name to perform the test with.
- HttpVersion string
- HTTP version to use for an HTTP request in an API test or step. Deprecated. Use http_versionin theoptions_listfield instead.
- Message string
- For UDP and websocket tests, message to send with the request.
- Method string
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- NoSaving boolResponse Body 
- Determines whether or not to save the response body.
- NumberOf intPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- bool
- Persist cookies across redirects.
- PlainProto stringFile 
- The content of a proto file as a string.
- Port string
- Port to use when performing the test.
- ProtoJson stringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- Servername string
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- Service string
- The gRPC service on which you want to perform the gRPC call.
- ShouldTrack boolHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- Timeout int
- Timeout in seconds for the test.
- Url string
- The URL to send the request to.
- body String
- The request body.
- bodyType String
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- callType String
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificateDomains List<String>
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dnsServer String
- DNS server to use for DNS tests (subtype = "dns").
- dnsServer StringPort 
- DNS server port to use for DNS tests.
- host String
- Host name to perform the test with.
- httpVersion String
- HTTP version to use for an HTTP request in an API test or step. Deprecated. Use http_versionin theoptions_listfield instead.
- message String
- For UDP and websocket tests, message to send with the request.
- method String
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- noSaving BooleanResponse Body 
- Determines whether or not to save the response body.
- numberOf IntegerPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- Boolean
- Persist cookies across redirects.
- plainProto StringFile 
- The content of a proto file as a string.
- port String
- Port to use when performing the test.
- protoJson StringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername String
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service String
- The gRPC service on which you want to perform the gRPC call.
- shouldTrack BooleanHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout Integer
- Timeout in seconds for the test.
- url String
- The URL to send the request to.
- body string
- The request body.
- bodyType string
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- callType string
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificateDomains string[]
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dnsServer string
- DNS server to use for DNS tests (subtype = "dns").
- dnsServer stringPort 
- DNS server port to use for DNS tests.
- host string
- Host name to perform the test with.
- httpVersion string
- HTTP version to use for an HTTP request in an API test or step. Deprecated. Use http_versionin theoptions_listfield instead.
- message string
- For UDP and websocket tests, message to send with the request.
- method string
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- noSaving booleanResponse Body 
- Determines whether or not to save the response body.
- numberOf numberPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- boolean
- Persist cookies across redirects.
- plainProto stringFile 
- The content of a proto file as a string.
- port string
- Port to use when performing the test.
- protoJson stringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername string
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service string
- The gRPC service on which you want to perform the gRPC call.
- shouldTrack booleanHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout number
- Timeout in seconds for the test.
- url string
- The URL to send the request to.
- body str
- The request body.
- body_type str
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- call_type str
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificate_domains Sequence[str]
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dns_server str
- DNS server to use for DNS tests (subtype = "dns").
- dns_server_ strport 
- DNS server port to use for DNS tests.
- host str
- Host name to perform the test with.
- http_version str
- HTTP version to use for an HTTP request in an API test or step. Deprecated. Use http_versionin theoptions_listfield instead.
- message str
- For UDP and websocket tests, message to send with the request.
- method str
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- no_saving_ boolresponse_ body 
- Determines whether or not to save the response body.
- number_of_ intpackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- bool
- Persist cookies across redirects.
- plain_proto_ strfile 
- The content of a proto file as a string.
- port str
- Port to use when performing the test.
- proto_json_ strdescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername str
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service str
- The gRPC service on which you want to perform the gRPC call.
- should_track_ boolhops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout int
- Timeout in seconds for the test.
- url str
- The URL to send the request to.
- body String
- The request body.
- bodyType String
- Type of the request body. Valid values are text/plain,application/json,text/xml,text/html,application/x-www-form-urlencoded,graphql,application/octet-stream,multipart/form-data.
- callType String
- The type of gRPC call to perform. Valid values are healthcheck,unary.
- certificateDomains List<String>
- By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in certificate_domains.
- dnsServer String
- DNS server to use for DNS tests (subtype = "dns").
- dnsServer StringPort 
- DNS server port to use for DNS tests.
- host String
- Host name to perform the test with.
- httpVersion String
- HTTP version to use for an HTTP request in an API test or step. Deprecated. Use http_versionin theoptions_listfield instead.
- message String
- For UDP and websocket tests, message to send with the request.
- method String
- Either the HTTP method/verb to use or a gRPC method available on the service set in the servicefield. Required ifsubtypeisHTTPor ifsubtypeisgrpcandcallTypeisunary.
- noSaving BooleanResponse Body 
- Determines whether or not to save the response body.
- numberOf NumberPackets 
- Number of pings to use per test for ICMP tests (subtype = "icmp") between 0 and 10.
- Boolean
- Persist cookies across redirects.
- plainProto StringFile 
- The content of a proto file as a string.
- port String
- Port to use when performing the test.
- protoJson StringDescriptor 
- A protobuf JSON descriptor. Deprecated. Use plain_proto_fileinstead.
- servername String
- For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.
- service String
- The gRPC service on which you want to perform the gRPC call.
- shouldTrack BooleanHops 
- This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (subtype = "icmp").
- timeout Number
- Timeout in seconds for the test.
- url String
- The URL to send the request to.
SyntheticsTestRequestFile, SyntheticsTestRequestFileArgs        
- name str
- Name of the file.
- size int
- Size of the file.
- type str
- Type of the file.
- bucket_key str
- Bucket key of the file.
- content str
- Content of the file.
- original_file_ strname 
- Original name of the file.
SyntheticsTestRequestProxy, SyntheticsTestRequestProxyArgs        
Import
Synthetics tests can be imported using their public string ID, e.g.
$ pulumi import datadog:index/syntheticsTest:SyntheticsTest fizz abc-123-xyz
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Datadog pulumi/pulumi-datadog
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the datadogTerraform Provider.