Creates a scheduled synthetic test task.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
arms:CreateTimingSyntheticTask | create |
|
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
RegionId | string | Yes | The region ID. | cn-hangzhou |
Name | string | Yes | The name of the task. | demo-test |
TaskType | integer | Yes | The type of the task. Valid values: 1: ICMP. 2: TCP. 3: DNS. 4: HTTP. 5: website speed measurement. 6: file download. | 4 |
MonitorConf | object | Yes | The monitoring configurations. | |
NetICMP | object | No | The parameters of the ICMP synthetic test. This parameter is required if the TaskType parameter is set to 1. | |
TargetUrl | string | Yes | The destination IP address or domain name. | www.example.com |
Interval | long | No | The interval at which ICMP packets are sent. Unit: milliseconds. Minimum value: 200. Maximum value: 2000. Default value: 200. | 200 |
PackageNum | integer | No | The number of ICMP packets that are sent. Minimum value: 1. Maximum value: 50. Default value: 4. | 4 |
PackageSize | integer | No | The size of each ICMP packet. Unit: bytes. Valid values: 32, 64, 128, 256, 512, 1024, 1080, and 1450. | 32 |
SplitPackage | boolean | No | Specifies whether to split ICMP packets. Default value: true. | true |
Timeout | long | No | The timeout period for the ICMP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000. | 20000 |
TracertEnable | boolean | No | Specifies whether to enable the tracert command. Default value: true. | true |
TracertNumMax | integer | No | The maximum number of hops for the tracert command. Minimum value: 1. Maximum value: 128. Default value: 20. | 20 |
TracertTimeout | long | No | The timeout period of the tracert command. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000. | 60000 |
NetTCP | object | No | The parameters of the TCP synthetic test. This parameter is required if the TaskType parameter is set to 2. | |
TargetUrl | string | Yes | The IP address of the destination host. | www.example.com |
ConnectTimes | integer | No | The number of TCP connections that are established. Minimum value: 1. Maximum value: 16. Default value: 4. | 4 |
Interval | long | No | The interval at which TCP connections are established. Unit: milliseconds. Minimum value: 200. Maximum value: 10000. Default value: 200. | 200 |
Timeout | long | No | The timeout period for the TCP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000. | 20000 |
TracertEnable | boolean | No | Specifies whether to enable the tracert command. Default value: true. | true |
TracertNumMax | integer | No | The maximum number of hops for the tracert command. Minimum value: 1. Maximum value: 128. Default value: 20. | 20 |
TracertTimeout | long | No | The timeout period of the tracert command. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000. | 60000 |
NetDNS | object | No | The parameters of the DNS synthetic test. This parameter is required if the TaskType parameter is set to 3. | |
TargetUrl | string | Yes | The destination domain name. | www.aliyun.com |
DnsServerIpType | integer | No | The IP version of the DNS server.
| 0 |
NsServer | string | No | The IP address of the DNS server. Default value: 114.114.114.114. | 114.114.114.114 |
QueryMethod | integer | No | The DNS query method. Valid values:
| 0 |
Timeout | long | No | The timeout period for the DNS synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 45000. Default value: 5000. | 5000 |
ApiHTTP | object | No | The parameters of the HTTP(S) synthetic test. | |
TargetUrl | string | Yes | The URL or request path for synthetic monitoring. | http://www.demo.com/api/list |
Method | string | No | The request method. Valid values: GET and POST. | GET |
RequestHeaders | object | No | The HTTP request header. | |
string | No | Format: JSON map. | { "key1": "value1", "key2": "value2" } | |
RequestBody | object | No | The HTTP request body. | |
Content | string | No | The content of the request body. Format: JSON string. The parameter is required if the Type parameter is set to text/plain, application/json, application/xml, or text/html. Format: JSON string. | { "key1": "value1", "key2": "value2" } |
Type | string | No | The type of the request body. Valid values: text/plain, application/json, application/x-www-form-urlencoded, multipart/form-data, application/xml, and text/html. | application/json |
ConnectTimeout | long | No | The connection timeout period. Unit: milliseconds. Default value: 5000. Minimum value: 1000. Maximum value: 300000. | 5000 |
Timeout | long | No | The timeout period. Unit: milliseconds. Default value: 10000. Minimum value: 1000. Maximum value: 300000. | 10000 |
CheckCert | boolean | No | Specifies whether to verify the certificate. Default value: no. | true |
ProtocolAlpnProtocol | integer | No | The ALPN protocol version. You can configure this parameter when you perform an HTTPS synthetic test on a WAP mobile client. Valid values: 0: default 1: http/1.1 2: h2 3: disables the ALPN protocol | 1 |
Website | object | No | The parameters of the website speed measurement. | |
TargetUrl | string | Yes | The URL of the website. | https://www.aliyun.com |
AutomaticScrolling | integer | No | Specifies whether to automatically scroll up and down the screen to load a page.
| 0 |
CustomHeader | integer | No | Specifies whether to create a custom header.
| 0 |
CustomHeaderContent | object | No | The custom header. Format: JSON map. | |
string | No | JSON Map | { "key1": "value1", "key2": "value2" } | |
DisableCache | integer | No | Specifies whether to disable caching.
| 1 |
DisableCompression | integer | No | Specifies whether to accept compressed files based on the HTTP Accept-Encoding request header. Valid values: 0: no. 1: yes. Default value: 0. | 0 |
FilterInvalidIP | integer | No | Specifies whether to exclude invalid IP addresses. Valid values: 0: yes. 1: no. Default value: 0. | 0 |
IgnoreCertificateError | integer | No | Specifies whether to ignore certificate errors during certificate verification in the SSL handshake process and continue browsing. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
MonitorTimeout | long | No | The monitoring timeout period. Unit: milliseconds. This parameter is optional. Default value: 20000. | 20000 |
Redirection | integer | No | Specifies whether to continue browsing after redirection. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
SlowElementThreshold | long | No | The time threshold that is used to define a slow element. Unit: milliseconds. Default value: 5000. Minimum value: 1. Maximum value: 300000. | 5000 |
WaitCompletionTime | long | No | The maximum waiting time. Unit: milliseconds. Default value: 5000. Minimum value: 5000. Maximum value: 300000. | 5000 |
VerifyStringBlacklist | string | No | An arbitrary string in the source code of the page for verification. If the source code returned by the client contains a string that is in the blacklist, the 650 error code is reported, which indicates that the string fails to be verified. Separate multiple strings with vertical bars (|). | error |
VerifyStringWhitelist | string | No | An arbitrary string in the source code of the page for verification. If the source code returned by the client contains a string that is not in the whitelist, the 650 error code is reported, which indicates that the string fails to be verified. Separate multiple strings with vertical bars (|). | success |
ElementBlacklist | string | No | The elements not to be loaded in the page loading process. | www.example.com/a.jpg |
DNSHijackWhitelist | string | No | If the IP address or CNAME record resolved from a domain name is not included in the DNS whitelist, you cannot access the domain name, or an IP address that belongs to a different domain name is returned. If the IP address or CNAME record is included in the DNS whitelist, DNS hijacking does not occur. Format: <domain name>:<objects>. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked. | www.aliyun.com:203.0.3.55|203.3.44.67 |
PageTamper | string | No | Elements that are not included in the whitelist and appear on the page are tampered with. These elements can be pop-up ads, floating ads, and page redirection. Format: <domain name>:<elements>. The elements can be wildcard masks. Separate multiple elements with vertical bars (|). Example: www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg. It indicates that all elements that belong to the www.aliyun.com domain name except the basic documents, /cc/bb/a.gif, and /vv/bb/cc.jpg are tampered with. | www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg |
FlowHijackJumpTimes | integer | No | The total number of elements on the page. | 10 |
FlowHijackLogo | string | No | The keyword that is used to identify hijacking. Asterisks (*) are allowed. | aliyun |
FileDownload | object | No | The parameters of file downloading. | |
TargetUrl | string | Yes | The URL that is used to download the file. | https://img.alicdn.com/tfs/TB13DzOjXP7gK0jSZFjXXc5aXXa-212-48.png |
DownloadKernel | integer | No | The kernel type. Valid values:
Default value: 1 | 1 |
QuickProtocol | integer | No | The QUIC protocol type. Valid values:
Default value: 1 | 1 |
ConnectionTimeout | long | No | Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 5000. | 5000 |
MonitorTimeout | long | No | The monitoring timeout period. Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 60000. | 60000 |
CustomHeaderContent | object | No | The content of the custom request header. | |
string | No | Format: JSON map. | { "key1": "value1", "key2": "value2" } | |
IgnoreCertificateStatusError | integer | No | Specifies whether to ignore certificate status errors. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
IgnoreCertificateUntrustworthyError | integer | No | Specifies whether to ignore certificate incredibility. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
IgnoreInvalidHostError | integer | No | Specifies whether to ignore host invalidity. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
Redirection | integer | No | Specifies whether to support redirection. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
TransmissionSize | long | No | The maximum file size of a single transfer. Unit: KB. Minimum value: 1. Maximum value: 20480. Valid values: 2048. | 2048 |
IgnoreCertificateCanceledError | integer | No | Specifies whether to ignore certificate revocation errors. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
IgnoreCertificateAuthError | integer | No | Specifies whether to ignore CA certificate authentication errors. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
IgnoreCertificateOutOfDateError | integer | No | Specifies whether to ignore certificate invalidity. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
IgnoreCertificateUsingError | integer | No | Specifies whether to ignore certificate usage errors. Valid values: 0: no. 1: yes. Default value: 1. | 1 |
VerifyWay | integer | No | The verification method. Valid values:
| 0 |
ValidateKeywords | string | No | The keyword that is used in verification. | aliyun |
WhiteList | string | No | The whitelisted objects that are used to avoid DNS hijacking. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked. | www.aliyun.com:203.0.3.55|203.3.44.67 |
Stream | object | No | The parameters of the streaming-media synthetic test. | |
TargetUrl | string | No | The resource URL of the streaming media. | http://www.aliyun.com/stream/test.mp4 |
StreamType | integer | No | Specifies whether the resource is a video or audio. Valid values: 0: video. 1: audio. | 0 |
StreamMonitorTimeout | integer | No | The monitoring duration. Unit: seconds. Maximum and default value: 60. | 30 |
StreamAddressType | integer | No | The address type of the resource. Valid values:
| 0 |
PlayerType | integer | No | The player. Default value: 12. Valid values:
| 12 |
CustomHeaderContent | object | No | The custom header. Format: JSON map. | |
string | No | The custom header. Format: JSON map. | { "key1": "value1", "key2": "value2" } | |
WhiteList | string | No | The whitelisted objects that are used to avoid DNS hijacking. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked. | www.aliyun.com:203.0.3.55|203.3.44.67 |
MonitorCategory | integer | Yes | The detection point type. Valid values:
| 1 |
Monitors | array<object> | Yes | The list of detection points. | |
object | Yes | |||
CityCode | string | Yes | The city code. | 100023 |
OperatorCode | string | Yes | The carrier code. | 1 |
ClientType | integer | Yes | The client type of the detection point. Valid values:
| 1 |
Frequency | string | Yes | The detection frequency. Valid values: 1m, 5m, 10m, 15m, 20m, 30m, 1h, 2h, 3h, 4h, 6h, 8h, 12h, and 24h. | 5m |
CustomPeriod | object | No | The general settings. | |
EndHour | integer | Yes | The custom host settings. | 22 |
StartHour | integer | Yes | The list of hosts. | 8 |
CommonSetting | object | No | The general settings. | |
CustomHost | object | No | The custom host settings. | |
Hosts | array<object> | Yes | The list of hosts. | |
object | Yes | The custom host settings. | ||
Domain | string | Yes | The domain name. | www.aliyun.com |
IpType | integer | Yes | The IP version. Valid values:
| 0 |
Ips | array | Yes | The list of IP addresses. | |
string | Yes | The IP address. | 10.176.141.63 | |
SelectType | integer | Yes | The selection mode. Valid values:
| 0 |
IpType | integer | No | The IP version. Valid values:
| 0 |
MonitorSamples | integer | No | Specifies whether to evenly distribute monitoring samples. Valid values:
| 0 |
IsOpenTrace | boolean | No | Specifies whether to enable tracing. | true |
TraceClientType | integer | No | The type of the client for tracing. Valid values:
| 1 |
XtraceRegion | string | No | The region to which trace data is reported. | cn-hangzhou |
CustomVPCSetting | object | No | The information about the virtual private cloud (VPC). If the destination URL is an Alibaba Cloud internal endpoint, you need to configure a VPC. | |
RegionId | string | No | The region ID. | cn-hangzhou |
VpcId | string | No | VPC ID. | vpc-bp1muectbr8f90vjxxxxx |
VSwitchId | string | No | The vSwitch ID. | vsw-bp14crq29vpycxp8xxxxx |
SecureGroupId | string | No | The ID of the security group to which the client belongs. The security group specifies the inbound and outbound rules of the client for the VPC. You need to allow the security group to which the client belongs to access the security group to which the VPC belongs. Otherwise, the client cannot access resources in the VPC. | sg-bp13wzf9vuwegmpxxxxx |
CustomPrometheusSetting | object | No | The reserved parameters. | |
PrometheusLabels | object | No | A reserved parameter. | |
string | No | A reserved parameter. | null | |
PrometheusClusterId | string | No | A reserved parameter. | null |
PrometheusClusterRegion | string | No | A reserved parameter. | null |
AvailableAssertions | array<object> | No | The list of assertions. | |
object | Yes | |||
Type | string | Yes | The assertion type. Valid values: HttpResCode, HttpResHead, HttpResBody, HttpResBodyJson, HttpResponseTime, IcmpPackLoss (packet loss rate), IcmpPackMaxLatency (maximum packet latency), IcmpPackAvgLatency (average packet latency), TraceRouteHops (number of hops), DnsARecord (A record), DnsCName (CNAME), websiteTTFB (time to first packet), websiteTTLB (time to last packet), websiteFST (first paint time), websiteFFST (first meaningful paint), websiteOnload (full loaded time). For more information, see the following description. | DnsARecord |
Target | string | No | The check target. If you set the type parameter to HttpResCode, HttpResBody, or HttpResponseTime, you do not need to set the target parameter. If you set the type parameter to HttpResHead, you must specify the key in the header. If you set the type parameter to HttpResBodyJson, use jsonPath. | key |
Operator | string | Yes | The condition. gt: greater than. gte: greater than or equal to. lt: less than. lte: less than or equal to. eq: equal to. neq: not equal to. ctn: contain. nctn: does not contain. exist: exist. n_exist: does not exist. belong: belong to. n_belong: does not belong to. reg_match: regular expression. | eq |
Expect | string | Yes | The expected value. | 200 |
ResourceGroupId | string | No | The parameter is optional. | xxxx |
Tags | array<object> | No | The tag list. | |
object | No | |||
Key | string | No | The key of the tag. | Key |
Value | string | No | The value of the tag. | 500 |
Assertion description:
HTTP synthetic tests
If the type parameter is set to HttpResCode, the Operator parameter supports the following values: eq, neq, gt, gte, lt, lte, belong, and n_belong. If the type parameter is set to HttpResHead, the Operator parameter supports all values. If the type parameter is set to HttpResBody, the Operator parameter supports all values. If the type parameter is set to HttpResBodyJson, the Operator parameter supports all values. If the type parameter is set to HttpResponseTime, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.
ICMP synthetic tests
If the type parameter is set to IcmpPackLoss, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong. If the type parameter is set to IcmpPackMaxLatency, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong. If the type parameter is set to IcmpPackAvgLatency, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong. If the type parameter is set to TraceRouteHops, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.
DNS synthetic tests
If the type parameter is set to DnsCName, the Operator parameter supports the following values: eq, ctn, nctn, reg_match, not_reg_match. CNAME records can be selectively displayed. If the type parameter is set to DnsCName, the Operator parameter supports the following values: eq, ctn, nctn, reg_match, not_reg_match. CNAME records can be selectively displayed.
Website speed measurement
If the type parameter is set to websiteTTFB, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong. If the type parameter is set to websiteTTLB, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong. If the type parameter is set to websiteFST, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong. If the type parameter is set to websiteFFST, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong. If the type parameter is set to websiteOnload, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.
Response parameters
Examples
Sample success responses
JSON
format
{
"RequestId": "53B5874D-EBC1-5567-B787-E4B7267F5CEB",
"Success": true,
"Code": 200,
"Message": "success",
"Data": {
"TaskId": "5308a2691f59422c8c3b7aeccec9cd3b",
"Status": "RUNNING"
}
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
400 | ParameterMissing | %s | - |
400 | ParameterIllegal | %s | - |
400 | TaskQuotaLimit | %s | - |
400 | ParameterRegionIllegal | %s | - |
400 | DuplicateTagKey | Param tagKey is duplicate. | - |
400 | TagNumOUT | the number of tag is out . | - |
400 | NoPermissionUSER | user no permission | - |
403 | RAMNotAuthorize | %s | - |
403 | STSNotAuthorize | %s | - |
403 | IllegalUserAccess | %s | - |
403 | CommercialStatusException | %s | - |
403 | SyntheticTrailExpired | %s | - |
403 | SyntheticInDebt | %s | - |
403 | SyntheticDailyTimesExhausted | %s | - |
403 | SyntheticDailyLimit | %s | - |
403 | APINotAuthorize | The current user is not authorized to access the interface. | The current user is not authorized to access the interface. |
403 | INNER_PROHIBIT | - |
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2024-04-12 | The Error code has changed | View Change Details |
2024-03-14 | The Error code has changed | View Change Details |
2024-03-01 | The Error code has changed | View Change Details |
2024-02-23 | The Error code has changed | View Change Details |
2023-10-26 | The Error code has changed | View Change Details |
2023-09-08 | The Error code has changed | View Change Details |