All Products
Search
Document Center

:CreateLivePullToPush

Last Updated:May 13, 2025

Creates a pulled-stream relay task.

Operation description

Note The pulled-stream relay feature is in public preview. You can use it free of charge. After the public preview ends, fees will be charged. The specific end time will be announced.
  • You can call this operation to create a pulled-stream relay task.
  • The pulled source can be a live stream or video-on-demand (VOD) resources.
  • After a task is created, it starts at the specified start time and ends at the specified end time. A task that ends is automatically deleted.
  • Make sure that the destination URL specified in the task is not used by another task. Otherwise, conflicts occur and stream ingest fails.
  • The events for pulled-stream relay callbacks include state changes of a pulled-stream relay task and exit of a pulled-stream relay task. For more information, see Pulled-stream relay callbacks.

QPS limit

You can call this operation up to 10 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

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

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:
    • For mandatory resource types, indicate with a prefix of * .
    • 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.
OperationAccess levelResource typeCondition keyAssociated operation
live:CreateLivePullToPushcreate
*All Resources
*
    none
none

Request parameters

ParameterTypeRequiredDescriptionExample
RegionstringYes

The region where the task is started. Valid values:

  • ap-southeast-1: Singapore
  • ap-southeast-5: Indonesia (Jakarta)
  • cn-beijing: China (Beijing)
  • cn-shanghai: China (Shanghai)
Enumeration Value:
  • ap-northeast-1
  • ap-southeast-1
  • ap-southeast-5
  • eu-central-1
  • me-central-1
  • cn-beijing
  • cn-shanghai
  • cn-shenzhen
  • cn-qingdao
  • preregion
cn-shanghai
TaskNamestringNo

The name of the task. Default value: "". Fuzzy search for task names is supported.

test
StartTimestringYes

The start time of the task.

Note
  • Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.

  • The time range specified by the StartTime and EndTime parameters cannot exceed seven days.

2024-08-26T10:30:00Z
EndTimestringYes

The end time of the task.

Note
  • Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.

  • The time range specified by the StartTime and EndTime parameters cannot exceed seven days.

  • The end time must be later than the start time.

  • The end time must be later than the current time.

2024-08-27T14:30:00Z
SourceTypestringYes

The type of the source stream. Valid values:

  • live: a live stream
  • vod: a list of ApsaraVideo VOD resources
  • url: a list of video resources from a third party
live
SourceProtocolstringNo

The protocol of the source stream.

Valid values:

  • rtmp
  • rtsp
  • srt
  • http-flv
  • flv
Note This parameter is required if you set the SourceType parameter to live, but does not take effect if you set the SourceType parameter to vod or url.
rtmp
SourceUrlsarrayYes

The source URLs.

Note
  • If SourceType is set to live, you can specify only one streaming URL.

  • If SourceType is set to vod or url, you can specify up to 30 IDs or URLs.

  • If SourceType is set to live, the supported protocols for URLs are Real-Time Messaging Protocol (RTMP), Real-Time Streaming Protocol (RTSP), Secure Reliable Transport Protocol (SRT), and HTTP-FLV.

  • If SourceType is set to vod, specify the IDs of media assets from ApsaraVideo VOD.

  • If SourceType is set to url, the supported protocols for URLs are MP4 and HTTP-FLV.

stringYes

The source URL of the stream.

Note
  • If SourceType is set to live, you can specify only one streaming URL.

  • If SourceType is set to vod or url, you can specify up to 30 IDs or URLs.

  • If SourceType is set to live, the supported protocols for URLs are RTMP, RTSP, SRT, and HTTP-FLV.

  • If SourceType is set to vod, specify the IDs of media assets from ApsaraVideo VOD.

  • If SourceType is set to url, the supported protocols for URLs are MP4 and HTTP-FLV.

rtmp://pulltest.****.aliyunlive.com/pulltest493/pulltest-w434
DstUrlstringYes

The destination URL to which the stream is relayed.

Note
  • The supported protocol for the URL is RTMP.

  • The URL can be up to 2,000 characters in length.

rtmp://pushtest.********.aliyunlive.com/pulltest493/pulltest-w434
RepeatNumberintegerNo

The number of playbacks after the first playback is complete. Valid values:

  • 0 (default): specifies that the video list is played only once.
  • -1: specifies that the video list is played in loop mode.
  • Positive integer: specifies the number of times the video list repeats after the first playback is complete.
Note This parameter is applicable to only video resources from ApsaraVideo VOD or a third party.
0
FileIndexintegerNo

The file index, which specifies the sequence of the file where the playback starts.

0
OffsetintegerNo

The offset of the position where the system starts to read the video resource. Unit: seconds. Valid values: positive numbers.

Note
  • This parameter indicates an offset from the first frame of the first video resource in the list.

  • This parameter is applicable to only video resources from ApsaraVideo VOD or a third party.

2
CallbackUrlstringNo

The HTTP callback URL. By default, this parameter is left empty.

Note
  • The URL is used to receive callbacks related to the task.

  • The URL can be up to 2,000 characters in length.

  • If you do not specify this parameter, no callbacks are returned for events related to the task.

https://callback*****.com
RetryIntervalintegerNo

The retry interval. Unit: seconds. Valid values: [60,300]. Default value: 60.

60
RetryCountintegerNo

The number of retries allowed. Default value: 3.

3

Response parameters

ParameterTypeDescriptionExample
object

Schema of Response

RequestIdstring

The ID of the request.

16A96B9A-F203-4EC5-8E43-CB92E68*****
RetCodeinteger

The code that is returned for the request.

Note
  • 0 is returned if the request is normal.

  • For information about codes that are returned when exceptions occur, see the following Error codes table.

0
Descriptionstring

The description of the custom rule.

OK
TaskIdstring

The task ID.

fd245384-4067-4f91-9d75-9666a6bc9****

Examples

Sample success responses

JSONformat

{
  "RequestId": "16A96B9A-F203-4EC5-8E43-CB92E68*****",
  "RetCode": 0,
  "Description": "OK",
  "TaskId": "fd245384-4067-4f91-9d75-9666a6bc9****"
}

Error codes

HTTP status codeError codeError messageDescription
400InvalidParameter%s.Parameter error
400InvalidParam.CodeIllegalDuration%s.The value of start time should be less than the value of end time .
400CodeInvalidAliUidThis aliuid does not have a live domain name.This aluid does not have a live domain name.
400CodeNotEnoughResourceExceeded configuration limits or insufficient resources.Exceeded configuration limits or insufficient resources
400CodeConfigAlreadyExistsCode Config Already Exists-
500InternalError%s.error on the live liveapi server.

For a list of error codes, visit the Service error codes.