Configures the snapshot feature for a streaming domain. The captured snapshots are stored in Object Storage Service (OSS). The configuration takes effect after you restart stream ingest.
Operation description
The OSS bucket must reside in the same region as the live center of the streaming domain. Cross-region snapshot capture is not supported.
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.
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 |
---|---|---|---|---|
live:AddLiveAppSnapshotConfig | create | *Domain acs:cdn:*:{#accountId}:domain/{#DomainName} |
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
DomainName | string | Yes | The main streaming domain. | example.com |
AppName | string | Yes | The name of the application to which the live stream belongs. The value of this parameter must be the same as the application name in the ingest URL. Otherwise, the configuration does not take effect. The name can be up to 255 characters in length and can contain digits, letters, hyphens (-), and underscores (_). The name cannot start with a hyphen (-) or underscore (_). You can also specify an asterisk (*) as the value to match all applications. | liveApp**** |
TimeInterval | integer | Yes | The interval at which snapshots are captured. Unit: seconds. Valid values: 5 to 3600. | 5 |
OssEndpoint | string | Yes | The endpoint of the OSS bucket. After the configuration is complete, you can search for specific snapshots in the OSS console based on the callback information. You must configure the OSS endpoint in advance. For more information, see Configure OSS. | cn-oss-****.aliyuncs.com |
OssBucket | string | Yes | The name of the OSS bucket. After the configuration is complete, you can search for specific snapshots in the OSS console based on the callback information. You must create the OSS bucket in advance. For more information, see Configure OSS. | liveBucket**** |
OverwriteOssObject | string | No | The naming format of snapshots that are stored in the overwrite mode, which means that a new snapshot overwrites the previous snapshot.
| {AppName}/{StreamName}.jpg |
SequenceOssObject | string | No | The naming format of snapshots that are stored in sequence, which means that a new snapshot does not overwrite the previous snapshot. You can call the DescribeLiveStreamSnapshotInfo operation to query the snapshots that were captured within a specific time period.
| snapshot/{AppName}/{StreamName}/{UnixTimestamp}.jpg |
Callback | string | No | The callback URL that is used to receive notifications about snapshot capture. | https://learn.aliyundoc.com |
Response parameters
Examples
Sample success responses
JSON
format
{
"RequestId": "16A96B9A-F203-4EC5-8E43-CB92E68F4CD8"
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
400 | InvalidOverwriteOssObjectOrSequenceOssObject.Malformed | Specified paramters OverwriteOssObject or SequenceOssObject should have one. | You can specify only one of the OverwriteOssObject and SequenceOssObject parameters. |
400 | InvalidOssBucket.Malformed | Specified parameter OssBucket is not valid. | - |
400 | InvalidOssEndpoint.Malformed | Specified parameter OssEndpoint is not valid. | - |
400 | InvalidOverwriteOssObject.Malformed | Specified parameter OverwriteOssObject is not valid. | - |
400 | InvalidSequenceOssObject.Malformed | Specified parameter SequenceOssObject is not valid. | Invalid value of SequenceOssObject. Check whether the SequenceOssObject parameter that you specified is correct. |
400 | InvalidOssBucket.NotFound | The parameter OssBucket does not exist. | - |
400 | ConfigAlreadyExists | Config has already exist. | - |
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|