Update task settings
Updated
Updates the settings of an active cloud recording task.
https://api.sd-rtn.com/v1/apps/{appid}/cloud_recording/resourceid/{resourceid}/sid/{sid}/mode/{mode}/updateAfter starting a recording task, call this endpoint to update the subscription list, pause or resume web page recording, or update the CDN push address.
Note
- This endpoint is only valid within an active recording session. If the recording was not started successfully or has already ended, the request returns
404. - If you need to call
updatemultiple times in succession, wait for the previousupdateresponse before sending the next request to avoid unexpected results.
Path Parameters
The App ID of your project.
- For web page recording mode, enter the App ID for which the cloud recording service is enabled.
- For individual and composite recording modes, use the same App ID as the channel to be recorded. Ensure that the cloud recording service has been enabled for this App ID.
The resource ID obtained from the acquire endpoint.
The recording ID obtained from the start endpoint.
The recording mode:
individual: Individual recording mode.mix: Composite recording mode.web: Web page recording mode.
individual | mix | webHeader Parameters
Request Body
application/json
The name of the channel to record. Must match the cname used in the acquire request.
The name of the channel being recorded.
The UID used by the cloud recording service in the channel. Must match the uid used in the acquire request.
The UID used by the cloud recording service in the RTC channel.
Updates the subscription lists. Only applicable in individual recording and composite recording modes.
The audio subscription list. Only applicable when streamTypes is 0 or 2.
Audio streams to subscribe to. The array length cannot exceed 32. Set to ["#allstream#"] to subscribe to all UIDs. Cannot be set together with unsubscribeAudioUids.
Video streams to exclude. The service subscribes to all other UIDs. The array length cannot exceed 32. Cannot be set together with subscribeVideoUids.
The video subscription list. Only applicable when streamTypes is 1 or 2.
Video streams to subscribe to. The array length cannot exceed 32. Set to ["#allstream#"] to subscribe to all UIDs. Cannot be set together with unsubscribeVideoUids.
Video streams to exclude. The service subscribes to all other UIDs. The array length cannot exceed 32. Cannot be set together with subscribeVideoUids.
Updates web page recording settings. Only applicable in web page recording mode.
Whether to pause web page recording. true pauses recording and file generation. false resumes recording.
falseUpdates the CDN push configuration. Only applicable when pushing web page recording to CDN.
The CDN URL to push the stream to. Only RTMP and RTMPS protocols are supported. A maximum of one stream can be pushed to CDN at a time.
Updates the third-party cloud storage configuration. Use this to refresh an expiring stsToken.
Third-party cloud storage platform:
1: Amazon S32: Alibaba Cloud3: Tencent Cloud5: Microsoft Azure6: Google Cloud7: Huawei Cloud8: Baidu IntelligentCloud11: S3-compatible storage. Specify the domain name inextensionParams.endpoint.
The region of the third-party cloud storage.
Note
To ensure upload success and real-time performance, the cloud storage region must match the region of the server where you initiate the request. See Third-party cloud storage regions.
The cloud storage bucket name. Must comply with the naming rules of the corresponding cloud storage service.
The access key for the third-party cloud storage.
The secret key for the third-party cloud storage.
A temporary security token issued by the cloud provider's Security Token Service (STS), granting limited access to cloud storage resources.
Currently supported only for Amazon S3 (1), Alibaba Cloud (2), and Tencent Cloud (3).
The stsToken expiration time as a Unix timestamp in seconds.
- Use Uint64 storage to avoid timestamp overflow.
- Set the longest possible validity period when applying the token. The minimum validity period is 4 hours.
- If the recording task runs longer than 1 hour, reapply a new
stsTokenevery 60 minutes and callupdateagain to refresh thestorageConfig.
The storage path prefix for recorded files. For example, setting ["directory1","directory2"] results in a file name prefix of directory1/directory2/. The total prefix length, including slashes, cannot exceed 128 characters. Supported characters: lowercase letters a-z, uppercase letters A-Z, digits 0-9.
Encryption and tagging settings applied to uploaded recording files by the cloud storage service.
The encryption mode for uploaded files. Applicable to Amazon S3 only. See the Amazon S3 documentation.
kms: KMS encryption.aes256: AES256 encryption.
Tag content applied to uploaded files. Applicable to Alibaba Cloud and Amazon S3 only.
The domain name for S3 protocol cloud storage. This field is required when you set vendor to 11.
Response
-
If the returned status code is
200, the request was successful. -
If the returned status code is not
200, the request failed. See Response status codes for troubleshooting.
Response Body
application/json
Response schema
200The request succeeded.
The cloud recording resource ID. Valid for five minutes; re-request from acquire if expired.
The resource ID used by cloud recording.
The recording ID. Uniquely identifies a recording session. Generated after the cloud recording service starts successfully.
The recording ID, identifying the current recording session.
The name of the channel to be recorded.
The name of the channel being recorded.
The UID used by the cloud recording service in the RTC channel.
defaultThe request failed. If the HTTP status code is not 200, see the Cloud Recording response status codes for troubleshooting.
Response example
{
"code": 404,
"reason": "failed to find worker"
}
Request examples
curl --request POST \
--url https://api.sd-rtn.com/v1/apps/{appid}/cloud_recording/resourceid/{resourceid}/sid/{sid}/mode/{mode}/update \
--header 'Authorization: Basic <credentials>' \
--header 'Content-Type: application/json' \
--data '{
"cname": "httpClient463224",
"uid": "527841",
"clientRequest": {
"streamSubscribe": {
"audioUidList": {
"subscribeAudioUids": ["#allstream#"]
},
"videoUidList": {
"unsubscribeVideoUids": ["444", "555", "666"]
}
}
}
}'
Response example
{ "cname": "string", "uid": "string", "resourceId": "string", "sid": "string"}