快工助手跨境电商知识与商机助手

v2.video.edit_video_info

Shopee 官方资料 · Shopee Open Platform 接口参考 · 适合开发者

stable本次发布有变化全部展示

来自 Shopee 官方资料快照 ·

打开官方原文 ↗
  1. 当前资料结构化阅读页
  2. 固定快照已留存,可追溯
  3. 官方原文可核对
查看技术与溯源信息
平台 / profile
Shopee / profile.shopee.api_reference
语言
en-US
发布版本
cn-20260909-2
标签
zhuge/sourceplatform/shopeeaudience/developercategory/api_doctopic/apitopic/developer

资料正文

§1 v2.video.edit_video_info

You need to call v2.media.init_video_upload, v2.media.upload_video_part, and v2.media.complete_video_upload to upload the video, and call the v2.media.get_video_upload_result to get the video_upload_id of uploaded video first, then call this API to set video post information. After submit, the video is still draft status, you need to call v2.video.post_video to post the video to Shopee Video. You can only set and update post information before the video is post.

#

§2 Overview

Overview

FieldValue
ModuleVideo
API typeUser
HTTP methodPOST
Path/api/v2/video/edit_video_info
Production URLhttps://partner.shopeemobile.com/api/v2/video/edit_video_info
Sandbox URLhttps://partner.test-stable.shopeemobile.com/api/v2/video/edit_video_info
PermissionShopee Video Management
#

§3 Request parameters

Request parameters

NameTypeRequiredSampleDescription
video_upload_listobject[]YesVideo information collection, no more than 5.
video_upload_list.video_upload_idstringYessg-11110199-6v99e-mgezdwct5eyya0ID of uploaded video. Obtain from v2.media.get_video_upload_result.
video_upload_list.captionstringNothis is a test videoDescription of the Shopee Video.
video_upload_list.cover_image_urlstringYeshttps://down-sg.img.susercontent.com/sg-11110199-6v99e-mgezdwct5eyya0_pack_v1_1000001_1Selected cover image url of the Shopee Video. Obtain from v2.video.get_cover_list.
video_upload_list.item_infoobject[]NoList of products to be linked with the Shopee Video, no more than 6.
video_upload_list.item_info.item_idint64Yes2Shopee's unique identifier for an item.
video_upload_list.item_info.custom_item_namestringNoitem display nameProduct display name in Shopee Video.
video_upload_list.allow_infoobjectYesWhether allow stitch and duet.
video_upload_list.allow_info.allow_duetbooleanYestrueWhether allow duet.
video_upload_list.allow_info.allow_stitchbooleanYestrueWhether allow stitch.
video_upload_list.scheduled_infoobjectYesWhen scheduled_post is true, scheduled_post_time must not empty.; When scheduled_post is false, scheduled_post_time must empty.
video_upload_list.scheduled_info.scheduled_postbooleanYestrueWhether post it to Shopee Video at scheduled time.
video_upload_list.scheduled_info.scheduled_post_timetimestampNo1761734929450Scheduled post time, millisecond timestamp. When scheduled_post is true, scheduled_post_time must not empty.
aigc_labelbooleanYestrueIndicates whether the video contains AI-generated or AI-assisted content, such as visuals, voice, avatars, or scripts. Set to true if it does; otherwise, set to false. An AI label will be shown to viewers when set to true.
#

§4 Response parameters

Response parameters

NameTypeRequiredSampleDescription
errorstringIndicate error type if hit error. Empty if no error happened.
messagestringIndicate error details if hit error. Empty if no error happened.
request_idstring07af0e73-f806-4b09-af22-d28a72eae63aThe identifier for an API request for error tracking.
responseobjectDetail informations you are querying.
response.success_liststring[][ "sg-11110199-6v99e-mgezdwct5eyya0"]The list of video_upload_id edit successfully.
response.failure_listobject[]The list of video_upload_id edit failed.
response.failure_list.fail_video_upload_idstringsg-11110199-6v99e-mgezdwct5eyya0Failed video_upload_id.
response.failure_list.failed_reasonstringcan not edit video info,please retryFailed reason of the corresponding video_upload_id.
#

§5 Common parameters

Common parameters

NameTypeRequiredSampleDescription
partner_idint1Partner ID is assigned upon registration is successful. Required for all requests.
timestamptimestamp1610000000This is to indicate the timestamp of the request. Required for all requests. Expires in 5 minutes.
access_tokenstringc09222e3fc40ffb25fc947f738b1abf1The token for API access, using to identify your permission to the api. Valid for multiple use and expires in 4 hours.
user_idint1Shopee's unique identifier for a user.
signstringe318d3e932719916a9f9ebb57e2011961bd47abfa54a36e040d050d8931596e2Signature generated by(depends on different APIs) partner_id, api path, timestamp, access_token, user_id and partner_key via HMAC-SHA256 hashing algorithm.
#

§6 Request samples

Request samples

#

§7 Payload

Payload

{
	"video_upload_list": [
		{
			"video_upload_id": "sg-11110199-6v99e-mgezdwct5eyya0",
			"caption": "this is a test video",
			"cover_image_url": "https://down-sg.img.susercontent.com/sg-11110199-6v99e-mgezdwct5eyya0_pack_v1_1000001_1",
			"item_info": [
				{
					"item_id": 2,
					"custom_item_name": "item display name"
				}
			],
			"allow_info": {
				"allow_duet": true,
				"allow_stitch": true
			},
			"scheduled_info": {
				"scheduled_post": true,
				"scheduled_post_time": 1761734929450
			}
		}
	],
	"aigc_label": true
}
#

§8 Java

Java

Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://partner.shopeemobile.com/api/v2/video/edit_video_info?access_token=access_token&partner_id=partner_id&sign=sign&timestamp=timestamp&user_id=user_id")
.header("Content-Type","application/json")
.body("{
   \"aigc_label\": true,
   \"video_upload_list\": [
      {
         \"allow_info\": {
            \"allow_duet\": true,
            \"allow_stitch\": true
         },
         \"caption\": \"this is a test video\",
         \"cover_image_url\": \"https://down-sg.img.susercontent.com/sg-11110199-6v99e-mgezdwct5eyya0_pack_v1_1000001_1\",
         \"item_info\": [
            {
               \"custom_item_name\": \"item display name\",
               \"item_id\": 2
            }
         ],
         \"scheduled_info\": {
            \"scheduled_post\": true,
            \"scheduled_post_time\": 1761734929450
         },
         \"video_upload_id\": \"sg-11110199-6v99e-mgezdwct5eyya0\"
      }
   ]
}")
.asString();
#

§9 PHP

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://partner.shopeemobile.com/api/v2/video/edit_video_info?access_token=access_token&partner_id=partner_id&sign=sign&timestamp=timestamp&user_id=user_id',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => '{
    "aigc_label": true,
    "video_upload_list": [
        {
            "allow_info": {
                "allow_duet": true,
                "allow_stitch": true
            },
            "caption": "this is a test video",
            "cover_image_url": "https://down-sg.img.susercontent.com/sg-11110199-6v99e-mgezdwct5eyya0_pack_v1_1000001_1",
            "item_info": [
                {
                    "custom_item_name": "item display name",
                    "item_id": 2
                }
            ],
            "scheduled_info": {
                "scheduled_post": true,
                "scheduled_post_time": 1761734929450
            },
            "video_upload_id": "sg-11110199-6v99e-mgezdwct5eyya0"
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
#

§10 cURL

cURL

curl --location --request POST 'https://partner.shopeemobile.com/api/v2/video/edit_video_info?access_token=access_token&partner_id=partner_id&sign=sign&timestamp=timestamp&user_id=user_id' \
--header 'Content-Type: application/json' \
--data-raw '{
   "aigc_label": true,
   "video_upload_list": [
      {
         "allow_info": {
            "allow_duet": true,
            "allow_stitch": true
         },
         "caption": "this is a test video",
         "cover_image_url": "https://down-sg.img.susercontent.com/sg-11110199-6v99e-mgezdwct5eyya0_pack_v1_1000001_1",
         "item_info": [
            {
               "custom_item_name": "item display name",
               "item_id": 2
            }
         ],
         "scheduled_info": {
            "scheduled_post": true,
            "scheduled_post_time": 1761734929450
         },
         "video_upload_id": "sg-11110199-6v99e-mgezdwct5eyya0"
      }
   ]
}'
#

§11 Python

Python

import requests
import json

url = "https://partner.shopeemobile.com/api/v2/video/edit_video_info?access_token=access_token&partner_id=partner_id&sign=sign&timestamp=timestamp&user_id=user_id"

payload=json.dumps({
  "aigc_label": True,
  "video_upload_list": [
    {
      "allow_info": {
        "allow_duet": True,
        "allow_stitch": True
      },
      "caption": "this is a test video",
      "cover_image_url": "https://down-sg.img.susercontent.com/sg-11110199-6v99e-mgezdwct5eyya0_pack_v1_1000001_1",
      "item_info": [
        {
          "custom_item_name": "item display name",
          "item_id": 2
        }
      ],
      "scheduled_info": {
        "scheduled_post": True,
        "scheduled_post_time": 1761734929450
      },
      "video_upload_id": "sg-11110199-6v99e-mgezdwct5eyya0"
    }
  ]
})
headers = {
  'Content-Type': 'application/json'
}
response = requests.RPCRequest("POST",url,headers=headers, data=payload, allow_redirects=False)

print(response.text)
#

§12 Response sample

Response sample

#

§13 JSON

JSON

{
	"error": "-",
	"message": "-",
	"request_id": "07af0e73-f806-4b09-af22-d28a72eae63a",
	"response": {
		"success_list": [
			"sg-11110199-6v99e-mgezdwct5eyya0"
		],
		"failure_list": [
			{
				"fail_video_upload_id": "sg-11110199-6v99e-mgezdwct5eyya0",
				"failed_reason": "can not edit video info,please retry"
			}
		]
	}
}
#

§14 Error example

Error example

#

§15 JSON

JSON

{
	"error": "error_param",
	"message": "video_upload_list is empty",
	"response": null,
	"request_id": "cc18a505-a03e-4e83-b519-15c360701a26"
}
#

§16 Errors

Errors

ErrorDescriptionSolution
batch_process_failedPlease check failure_list for detailed reason
error-paramvideo_upload_id is illegal
error_paramallowInfo is empty
error_paramInvalid video source. Please re-upload the video using v2.media.init_video_upload with correct business & scene.
error_paramcaption length is more than 150
error_paramcover is illegal
error_paramitem size can not over 6
error_paramcan not find item info {item_id}
error_paramvideo_upload_list can not over 5
error_paramscheduledPostTime must be 15 minutes after the current time and within 30 days of the current time
error_paramcan not handle video meta video duration must within {postDuration}s and greater than 3s
error_paramcan not find video meta
unauthorizedThe user is not authorized and needs to be in toggle
#

§17 Common errors

Common errors

ErrorDescriptionSolution
error_authpartner_id is invalid
error_authThe App is deleted, and you'll be unable to make any API call.
error_authApp developer’s permissions for authorizations have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details.
error_paramThere is no partner_id in query.
error_paramInvalid partner_id.
error_paramno timestamp
error_paramInvalid timestamp
error_paramThere is no sign in query.
error_signWrong sign.
invalid_partner_idInvalid partner_id, please have a check.
error_authNo permission to current api.
error_api_call_restrictedThe App permission for api call have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details.
api_suspendedThe API is offline. Please call v2 API instead.
error_limitThe total API call number made by your APP has reached the daily API call limit, please try again after 00: 00 (UTC+08:00)
error_rate_limitToo many requests. You have reached the rate limit. Please try again later.
source_ip_undeclaredRequest Source IP ({ip}) is undeclared. Please declare all your IP addresses in the Shopee Open Platform Console > App list > IP Address Whitelist
error_paramPermission denied. This API is currently offline or the request path is incorrect.
error_paramPartner_id is invalid, should be an integer between 0 and 4294967295.
error_paramno timestamp.
error_paramTimestamp is invalid, should be an integer between 0 and 4294967295.
error_paramTimestamp is expired.
error_partner_key_expiredYour API partner key has expired, please reset the Live API Partner Key in Console to get a new valid partner key to call open api.
error_api_permissionThis app type has no permission to this API.
error_paramThere is no access_token in query.
error_authInvalid access_token.
user_no_linkedPartner and user has no linked.
user_bannedThis user account has been banned. Permissions for user authorization and API calls have been suspended until the user account is restored.
invalid_acceess_tokenInvalid access_token, please have a check.
error_paramThere is no user_id in query.
error_paramuser_id is invalid, should be an integer between 0 and 4294967295.
#

§18 Update log

Update log

DateChange
2026-09-03add request parameter “aigc_label”
2025-09-02New API
#