Polyv Help Center

Help Center

Video Creation Callback Notification

Updated: 2026-08-05 17:33:54

Purpose

After a user initiates a task, the server will submit the task processing status to the user-defined callback interface via POST to the interface address set by the customer.

Callback Failure Retry

  • If the interface does not return an HTTP status code of 200, the user's handling of this callback is considered failed. In the case of failure, the callback will be retried 3 times.

Callback Parameter Description

Submit Course Creation Task Callback

  • Request method: POST

URL Parameters

Parameter Type & Range Description
timestamp long 13-digit timestamp
sign string Signature. The signature generation rule is MD5(appSecret + timestamp). To prevent callback request forgery, be sure to verify the correctness of the sign value.

BODY parameters:

Parameter Name Type and Range Description
id long Course creation task ID
fileId string File ID of the PPT used for course creation
fileName string File name of the PPT used for course creation
videoName string Video name
existDigitalHuman boolean Whether a digital human is included
status string Status: WAITING indicates the task has been submitted successfully and is waiting for production
childUserInfo Object Sub-account information. If the course creation task was created by the main account, this field returns null. See childUserInfo field description
subtitleInfo Object Subtitle information. See subtitle information field description

Callback Data Example

Request URL Example: https://www.example.com/xxx/callback?sign=d5079f2e8ba19e49bfd3d9575866d80f&timestamp=1701964858687

Request Body (body parameter: application/json) Example

{
  "existDigitalHuman": true,
  "fileName": "智能制课测试PPT.pptx",
  "videoName": "智能制课测试PPT",
  "id": 1000,
  "status": "WAITING",
  "childUserInfo": {
    "userId": "abc483974343",
    "email": "xxx-child-user@qq.com",
    "name": "张三",
    "organizationId": 1001
  },
  "subtitleInfo": {
    "enableSubtitle": "true"
  }
}

Course Creation Success Callback

  • Request method: POST

URL Parameters

Parameter Type and Range Description
timestamp long 13-digit timestamp
sign string Signature. The signature generation rule is MD5(appSecret + timestamp). To prevent callback request forgery, please verify the correctness of the sign value.

BODY parameters:

Parameter Name Type and Range Description
id long Course creation task ID
fileId string File ID of the PPT used for course creation
fileName string File name of the PPT used for course creation
videoName string Video name
videoPath string Video URL
audioPath string Audio URL
videoFileSize Long Video file size, in bytes
videoImage string Video cover image URL
videoDuration Integer Video duration, in seconds
dealTime string Completion time (format: yyyy-MM-dd HH:mm:ss)
existDigitalHuman boolean Whether a digital human is included
status string Status, SUCCESS indicates successful course creation
childUserInfo Object Sub-account information. Returns null if the course creation task was created by the main account. See childUserInfo field description
subtitleInfo Object Subtitle information See subtitle information field description

Callback Data Example

Request URL example: https://www.example.com/xxx/callback?sign=d5079f2e8ba19e49bfd3d9575866d80f&timestamp=1701964858687

Request Body (body parameter: application/json) Example

{
  "existDigitalHuman": true,
  "videoPath": "https://oss-live-1.videocc.net/pptvideo/20231207/video/1000_5a8eaaceb8c58ef8c872c7dah8db71eb5453dbe25b5pptVideocommon.mp4",
  "audioPath": "https://oss-live-1.videocc.net/pptvideo/20231207/video/1000_5a8eaaceb8c58ef8c872c7dah8db71eb5453dbe25b5pptVideocommon.mp3",
  "fileName": "智能制课测试PPT.pptx",
  "videoFileSize": 1025386,
  "dealTime": "2023-12-05 14:30:30",
  "videoName": "智能制课测试PPT",
  "videoImage": "https://oss-live-1.videocc.net/pptvideo/20231207/image/1000_5a8eaaceb8c58ef8c872c7dah8db71eb5453dbe25b5pptVideocommon.jpeg",
  "videoDuration": 62,
  "id": 1000,
  "status": "SUCCESS",
  "childUserInfo": {
    "userId": "abc483974343",
    "email": "xxx-child-user@qq.com",
    "name": "张三",
    "organizationId": 1001
  },
  "subtitleInfo": {
    "enableSubtitle": "true",
    "subtitlePath": "http://example.com/xxx/xxx/abc.srt"
  }
}

Course Creation Failure Callback

Triggered when a video creation task ultimately enters a failed state. For the same task, the callback is sent only the first time it transitions from a non-failed state to a failed state; repeated updates to the failed state will not trigger another callback.

  • Request method: POST

URL Parameters

Parameter Type & Range Description
timestamp long 13-digit timestamp
sign string Signature. The signature generation rule is MD5(appSecret + timestamp). To prevent callback request forgery, be sure to verify the correctness of the sign value.

BODY parameters:

Parameter Name Type and Range Description
id long Course creation task ID
fileId string File ID of the PPT used for course creation; returns an empty string if no value exists
fileName string File name of the PPT used for course creation; returns an empty string if no value exists
videoName string Video name
videoPath string Video URL; may return null on failure
audioPath string Audio URL; may return null on failure
videoFileSize Long Video file size in bytes; may return null on failure
videoDuration Integer Video duration in seconds; may return null on failure
videoImage string Video cover image URL; may return null on failure
dealTime string Completion time (format: yyyy-MM-dd HH:mm:ss); may return null on failure
existDigitalHuman string Whether a digital human is included; values are true or false
status string Status; FAIL indicates course creation failure
errorMessage string Customer-facing failure reason; returns "Video creation failed, please contact technical support" when no clear reason is available
source string Video creation source; PPT_VIDEO for PPT video, VIDEO_PRODUCE for video production
accountUserInfo Object Primary account information [See accountUserInfo field description]
childUserInfo Object Sub-account information; returns null if the course creation task was created by the primary account [See childUserInfo field description]
subtitleInfo Object Subtitle information [See subtitle information field description]

Callback Data Example

Request URL Example: https://www.example.com/xxx/callback?sign=d5079f2e8ba19e49bfd3d9575866d80f&timestamp=1701964858687

Request Body (body parameter: application/json) Example

{
  "id": 1000,
  "videoName": "智能制课测试PPT",
  "videoPath": null,
  "audioPath": null,
  "videoFileSize": null,
  "videoDuration": null,
  "videoImage": null,
  "fileId": "abc123456",
  "fileName": "智能制课测试PPT.pptx",
  "dealTime": null,
  "existDigitalHuman": "true",
  "status": "FAIL",
  "source": "VIDEO_PRODUCE",
  "errorMessage": "素材文件为空",
  "accountUserInfo": {
    "userId": "abc483974343",
    "email": "xxx@qq.com"
  },
  "childUserInfo": null,
  "subtitleInfo": {
    "enableSubtitle": true,
    "subtitlePath": null
  }
}

Delete Course Creation Task Callback

  • Request method: POST

URL Parameters

Parameter Type & Range Description
timestamp long 13-digit timestamp
sign string Signature. The signature generation rule is MD5(appSecret + timestamp). To prevent callback request forgery, please verify the correctness of the sign value.

BODY parameters:

Parameter Name Type and Range Description
id long Course creation task ID
fileId string File ID of the PPT used for course creation
fileName string File name of the PPT used for course creation
videoName string Video name
videoPath string Video URL (returns null if the deleted task failed)
videoImage string Video cover image URL (returns null if the deleted task failed)
videoDuration Integer Video duration in seconds (returns null if the deleted task failed)
dealTime string Completion time (format: yyyy-MM-dd HH:mm:ss) (returns null if the deleted task failed)
existDigitalHuman boolean Whether a digital human is included
status string Status, DELETE indicates deletion of the course creation task
childUserInfo Object Sub-account information; returns null if the task was created by the main account See childUserInfo field description

Callback Data Example

Request URL example: https://www.example.com/xxx/callback?sign=d5079f2e8ba19e49bfd3d9575866d80f&timestamp=1701964858687

Request Body (body parameter: application/json) Example

{
  "existDigitalHuman": true,
  "videoPath": "https://oss-live-1.videocc.net/pptvideo/20231207/video/1000_5a8eaaceb8c58ef8c872c7dah8db71eb5453dbe25b5pptVideocommon.mp4",
  "fileName": "智能制课测试PPT.pptx",
  "dealTime": "2023-12-05 14:30:30",
  "videoName": "智能制课测试PPT",
  "videoImage": "https://oss-live-1.videocc.net/pptvideo/20231207/image/1000_5a8eaaceb8c58ef8c872c7dah8db71eb5453dbe25b5pptVideocommon.jpeg",
  "id": 1000,
  "status": "DELETE",
  "childUserInfo": null
}

Description of the accountUserInfo Field

Parameter Type & Range Description
userId string Main account ID
email string Main account email

Description of the childUserInfo Field

Parameter Name Type and Range Description
userId string Sub-account ID
email string Sub-account email
name string Sub-account name
organizationId Integer Sub-account organization ID

Subtitle Information Field Description

Parameter Type and Scope Description
enableSubtitle Boolean Whether to enable subtitles
subtitlePath string Subtitle link

Callback for Successfully Saving Course Creation Task Draft

  • Request method: POST

URL Parameters

Parameter Type & Range Description
timestamp long 13-digit timestamp
sign string Signature. The signature generation rule is MD5(appSecret + timestamp). To prevent callback request forgery, be sure to verify the correctness of the sign value.

BODY parameters:

Parameter Name Type and Range Description
id long Course creation task ID
fileId string File ID of the PPT used in the draft; returns an empty string if no PPT is selected or provided
fileName string File name of the PPT used in the draft; returns an empty string if no PPT is selected or provided
videoName string Video name
existDigitalHuman boolean Whether a digital human is included
clientIp String IP address of the modifier
status string Status; DRAFT indicates the draft was successfully saved

Callback Data Example

Request URL example: https://www.example.com/xxx/callback?sign=d5079f2e8ba19e49bfd3d9575866d80f&timestamp=1701964858687

Request Body (body parameter: application/json) Example

{
  "existDigitalHuman": true,
  "fileId": "2c38b75fc16a1dee3822950fa817d477915c3aad3apptVideocommon",
  "fileName": "智能制课测试PPT.pptx",
  "videoName": "智能制课测试PPT",
  "id": 1000,
  "clientIp": "183.22.1.33",
  "status": "DRAFT"
}

When no PPT is selected or passed in, the fileId and fileName fields are still returned, with their values being empty strings:

{
  "existDigitalHuman": true,
  "fileId": "",
  "fileName": "",
  "videoName": "智能制课测试PPT",
  "id": 1000,
  "clientIp": "183.22.1.33",
  "status": "DRAFT"
}

How to Set Up

Through backend settings:

Log in to your account - Go to Cloud Live Streaming - Click Development Settings - Click Callback Settings - Video Creation Information Callback

Note: The submitted API endpoint must start with http:// or https://.

联系客服,在线咨询