Configures multiple domain names at a time.
Usage notes
Obtain the domain names that you want to configure, and then call this operation to configure the domain names in batches.
QPS limit
You can call this operation up to 30 times per second per account. Requests that exceed this limit are dropped and you will experience service interruptions. We recommend that you take note of this limit when you call this operation. For more information, see QPS limits.
Debugging
Request parameters
Parameter |
Type |
Required |
Example |
Description |
Action | String | Yes | BatchSetLiveDomainConfigs | The operation that you want to perform. Set the value to BatchSetLiveDomainConfigs. |
DomainNames | String | Yes | demo.aliyundoc.com,example.aliyundoc.com,example.com | The domain names that you want to batch configure. Supported domain names include ingest domains, main streaming domains, and sub-streaming domains. Separate multiple domain names with commas (,). |
Functions | String | Yes | [{"functionArgs":[{"argName":"file_type","argValue":"jpg"},{"argName":"ttl","argValue":"18"},{"argName":"weight","argValue":"30"}],"functionName":"filetype_based_ttl_set","configId":506***}] | The list of features. Some features, such as |
Format of the Functions parameter
- Example:
[{"functionArgs":[{"argName":"domain_name","argValue":"developer.aliyundoc.com"}],"functionName":"set_req_host_header"}]
- Some features, such as filetype_based_ttl_set, support multiple configuration records. To update one of the configuration records, use configId to identify the record. Example:
[{"functionArgs":[{"argName":"file_type","argValue":"jpg"},{"argName":"ttl","argValue":"18"},{"argName":"weight","argValue":"30"}],"functionName":"filetype_based_ttl_set","configId":506***}]
Features specified by the Functions parameter
Feature |
Attribute |
referer_white_list_set: specifies the Referer whitelist. |
refer_domain_allow_list: the Referers to be added to the whitelist. Separate multiple Referers with commas (,). allow_empty: specifies whether an empty Referer is allowed. Valid values: on and off. |
referer_black_list_set: specifies the Referer blacklist. |
refer_domain_deny_list: the Referers to be added to the blacklist. Separate multiple Referers with commas (,). allow_empty: specifies whether an empty Referer is allowed. Valid values: on and off. |
filetype_based_ttl_set: specifies the time period after which a file expires. |
ttl: the cache duration. Unit: seconds. Valid values: 1 to 99999999 (more than three years). file_type: the file type. Separate multiple file types with commas (,). weight: the weight of the file type. Valid values: 1 to 99. |
path_based_ttl_set: specifies the time period after which a directory expires. |
ttl: the cache duration. Unit: seconds. Valid values: 1 to 99999999 (more than three years). path: the directory, which must start with a forward slash (/). weight: the weight of the directory. Valid values: 1 to 99. |
oss_auth: authenticates access to an Object Storage Service (OSS) bucket. |
oss_bucket_id: the path of your OSS bucket. |
ip_black_list_set: specifies the IP address blacklist. |
ip_list: the IP addresses to be added to the blacklist. Separate multiple IP addresses with commas (,). |
ip_allow_list_set: specifies the IP address whitelist. |
ip_list: the IP addresses to be added to the whitelist. Separate multiple IP addresses with commas (,). |
ip_white_list_set: specifies the IP address whitelist for rate limiting. |
ip_list: the IP addresses to be added to the whitelist. Separate multiple IP addresses with commas (,). |
error_page: redirects an error page to a specified page. |
error_code: the error code. rewrite_page: the page to which the error page is redirected. |
set_req_host_header: modifies the Host header of back-to-origin requests. |
domain_name: the Host header of back-to-origin requests. |
set_hashkey_args: ignores the specified URL parameters. |
hashkey_args: the parameters to be reserved. Separate multiple parameters with commas (,). disable: specifies whether to ignore all parameters. Valid values: on and off. A value of on specifies that all parameters are ignored. A value of off specifies that none of the parameters are ignored. |
aliauth: configures Alibaba Cloud authentication. |
auth_type: the authentication type. Valid values: type_a and no_auth. A value of type_a specifies that authentication type A is enabled. A value of no_auth specifies that authentication is disabled. auth_key1: the primary authentication key. The authentication key can contain letters and digits. We recommend that you set the authentication key to a value that is 8 to 32 characters in length. auth_key2: the secondary authentication key. ali_auth_delta: the custom buffer time for authentication. Unit: minutes. We recommend that you set the value to at least 1 minute. auth_m3u8: specifies whether to enable M3U8 rewrite. If you enable M3U8 rewrite, the system completes authentication for TS segments in an M3U8 playlist to prevent failures in accessing the TS segments. Valid values: on (default) and off. |
remote_auth: configures remote authentication for live streaming. |
enable: specifies whether to enable remote authentication. This attribute is required. Valid values: on and off. remote_auth_path: the address of the authentication server. This attribute is required. remote_auth_pattern: the authentication mode. The following fields are available:
|
set_resp_header: configures a response header. To verify the configuration, you can check the response message in a browser. |
key: the name of the response header. Valid values: Content-Type Cache-Control Content-Disposition Content-Language Expires Access-Control-Allow-Origin Access-Control-Allow-Methods Access-Control-Allow-Headers Access-Control-Max-Age Access-Control-Expose-Headers value: the content of the response header. If you want to delete the header, enter null. |
https_force: configures force redirect to HTTPS. |
enable: specifies whether to enable the feature. Valid values: on and off. The https_force and http_force features are mutually exclusive. You cannot configure them both. If you have configured one of the features, you must delete it before you can configure the other feature. |
http_force: configures force redirect to HTTP. |
enable: specifies whether to enable the feature. Valid values: on and off. The https_force and http_force features are mutually exclusive. You cannot configure them both. If you have configured one of the features, you must delete it before you can configure the other feature. |
forward_scheme: configures adaptive back-to-origin. |
enable: specifies whether to enable the feature. Valid values: on and off. scheme_origin: the protocol of the origin. Valid values: http, https, and follow. scheme_origin_port: the port number of the origin. Valid values: 80, 443, and 80:443. |
green_manager: configures pornography detection. |
enable: specifies whether to enable pornography detection. Valid values: on and off. |
tmd_signature: configures custom rate limiting rules. |
name: the name of the rule, which must be globally unique. path: the uniform resource identifier (URI). You can specify duplicate URIs. However, you must verify their validity. pathType: the matching rule. Valid values: 0 and 1. A value of 0 specifies a prefix match. A value of 1 specifies an exact match. interval: the interval at which data is monitored. Unit: seconds. The interval must be greater than or equal to 10 seconds. count: the number of visits from an IP address. action: the action to perform after the specified conditions are met. Valid values: 0 and 1. A value of 0 specifies that access is blocked. A value of 1 specifies that bot detection is performed. ttl: the time period during which access is blocked. Unit: seconds. |
l2_oss_key: configures private key authentication for back-to-origin requests from L2 nodes to private OSS buckets. |
private_oss_auth: specifies whether to authenticate access to a private OSS bucket. Valid values: on and off. |
video_seek: configures video seeking. |
enable: specifies whether to enable the feature. Valid values: on and off. |
gzip: configures Gzip compression. |
enable: specifies whether to enable the feature. Valid values: on and off. |
tesla: configures page optimization to accelerate access. |
enable: specifies whether to enable the feature. Valid values: on and off. |
ali_ua: configures User-Agent-based access control. |
ua: the User-Agent. type: the type of the list. Valid values: black and white. |
host_redirect: configures URL rewrite. |
regex: the URL to be rewritten. Example: ^/$. replacement: the destination URL. Example: /go/act/sale/tbzlsy.php. flag: the flag. Valid values: redirect and break. |
ipv6: configures IPv6. |
switch: specifies whether to enable IPv6. This attribute is required. Valid values: on and off. If you want to disable this feature after this feature is enabled, deselect the feature in the console. Do not delete the configuration. Otherwise, the feature will still be enabled. region: the region in which you want to enable IPv6. Valid values: cn-beijing, cn-shanghai, cn-shenzhen, cn-qingdao, apsoutheast-1, eu-central-1, ap-northeast-1, and ap-southeast-5, which indicate China (Beijing), China (Shanghai), China (Shenzhen), China (Qingdao), Singapore, Germany (Frankfurt), Japan (Tokyo), and Indonesia (Jakarta), respectively. |
ali_location: configures region-based access control. |
location: the regions. type: the type of the list. Valid values: black and white. |
cc_defense: configures protection against HTTP flood attacks. |
enable: specifies whether to enable protection against HTTP flood attacks. Valid values: on and off. |
alilive: configures the live streaming settings. |
notify_url: the URL for receiving notifications from ApsaraVideo Live. enable: specifies whether to enable the feature. Valid values: on and off. live_forbid_flv: specifies whether to prohibit the playback of Flash Video (FLV) videos. Valid values: on and off. live_forbid_rtmp: specifies whether to prohibit the playback of Real-Time Messaging Protocol (RTMP) videos. Valid values: on and off. live_forbid_hls: specifies whether to prohibit the playback of HTTP Live Streaming (HLS) videos. Valid values: on and off. |
ali_grtn: specifies whether to connect to Global Realtime Transport Network (GRTN). |
grtn_rts_pub: specifies whether to enable stream ingest over Real-Time Streaming (RTS). This attribute is applicable to ingest domains. Valid values: on and off. grtn_rts_play: specifies whether to enable streaming over RTS. This attribute is applicable to streaming domains. Valid values: on and off. grtn_rts_transcode: specifies whether to enable auto transcoding for RTS-based HTML5 playback. Valid values: on and off. |
edge_function: configures the edge function. |
Required attributes: rule: the domain-specific language (DSL) rule. pri: the priority of the rule. enable: specifies whether to enable the rule. Valid values: on and off. Optional attributes: name: the name of the rule. pos: the position from which to execute the rule. brk: After the rule is hit, the rules after the specified position are skipped. option: the option. grammar: the grammar. Valid values: es2 and js. You can also leave this attribute empty. jsmode: the mode to manage the domain name whitelist in JavaScript. Valid values: redirect and bypass. |
https_tls_version: configures the Transport Layer Security (TLS) protocol versions. |
tls10: specifies whether to enable TLS 1.0. Default value: on. Valid values: on and off. tls11: specifies whether to enable TLS 1.1. Default value: on. Valid values: on and off. tls12: specifies whether to enable TLS 1.2. Default value: on. Valid values: on and off. tls13: specifies whether to enable TLS 1.3. Default value: on. Valid values: on and off. |
https_option : configures HTTP settings. |
http2: specifies whether to enable HTTP/2. Default value: off. Valid values: on and off. live_http2: specifies whether to enable live_http2. Default value: off. Valid values: on and off. |
Response parameters
Parameter |
Type |
Example |
Description |
RequestId | String | 04F0F334-1335-436C-A1D7-6C044FE73368 | The request ID. |
Examples
Sample requests
http(s)://live.aliyuncs.com/?Action=BatchSetLiveDomainConfigs
&DomainNames=demo.aliyundoc.com,example.aliyundoc.com,example.com
&Functions= [{"functionArgs":[{"argName":"file_type","argValue":"jpg"},{"argName":"ttl","argValue":"18"},{"argName":"weight","argValue":"30"}],"functionName":"filetype_based_ttl_set","configId":506***}]
&<Common request parameters>
Sample success responses
XML
format
HTTP/1.1 200 OK
Content-Type:application/xml
<?xml version="1.0" encoding="UTF-8" ?>
<BatchSetLiveDomainConfigsResponse>
<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>
</BatchSetLiveDomainConfigsResponse>
JSON
format
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "04F0F334-1335-436C-A1D7-6C044FE73368"
}
Error codes
HTTP status code |
Error code |
Error message |
Description |
400 | ConfigurationConflicts | The staging environment has a configuration in effect and cannot modify the production environment configuration. | You cannot modify the configuration in the production environment because a configuration has taken effect in the staging environment. |
For a list of error codes, see Service error codes.
Error code |
Error message |
HTTP status code |
Description |
InvalidFunctions.Malformed |
Specified Functions is malformed. |
400 |
The specified Functions parameter is invalid. |
InvalidFunctionName.ValueNotSupported |
unctionName %s is not supported. |
400 |
The %s feature name is invalid. |
InvalidArgName.ValueNotSupported |
ArgName %s is not supported. |
400 |
The %s attribute name is invalid. |
InvalidArgValue.Malformed |
Specified ArgValue is malformed. |
400 |
One or more specified attribute values are invalid. |