抖音开放平台Logo
开发者文档
控制台

发布内容至抖音 H5 场景
收藏
我的收藏

H5 分享是指第三方应用通过接入该功能,让用户可以从网页或者外部应用分享在线视频或图片等信息到抖音。​
    当前功能建议网站应用开发者使用,可以在移动端 H5 或 PC 端网站上进行接入。​
    移动应用的开发者,如果有 App,更建议接入分享 SDK,链路和体验会更顺畅。具体操作,请参见发布内容至抖音。​
注意
目前抖音支持的内容格式为单图、单视频。 ​
目前 H5 分享分为两种形式:分享到抖音编辑页、分享到抖音发布页。参考示例图如下​

分享到抖音编辑页​

分享到抖音编辑页流程一般为:​
    1.三方制作好要分享的视频。​
    2.调用该能力分享到抖音。​
    会先调起抖音裁剪页,然后再到抖音编辑页,最后再到抖音发布页。​

分享到抖音发布页​

分享到抖音无需经过抖音的裁剪页和抖音的编辑页,可以直接到抖音发布页,缩短了分享的链路。​
注意
分享到抖音发布页目前只支持单视频发布。​
Android 和 iOS 支持分享到抖音发布页功能的最低抖音版本为:​
    Android:20.8.0
    iOS:21.5.0

接入步骤​

1. 申请开通相关能力​

    需要提前申请开通【发布内容至抖音】 。​
    开通H5场景(h5.share:能力管理 > 视频权限 > 开通H5场景 > 申请开通 ​
    获取 openTicket(open.get.ticket):能力管理 > 特殊权限 > 获取 openTicket > 申请开通​

2. 获取 client_token​

注意
client_token 的有效时间 7200 秒左右,具体时效依赖接口返回,开发者必须在自己的服务全局缓存 client_token。​
Method​
HTTP request​
POST /oauth/client_token/​

3. 使用 client_token 获取 ticket​

注意
ticket 的有效期 7200 秒左右,具体时效需依赖接口返回,开发者必须在自己的服务全局缓存 ticket。​
Method​
HTTP request​
GET /open/getticket/​

4. 根据 ticket 和其它字段进行签名计算​

参与签名的字段包括:​
    nonce_str(随机字符串)​
    有效的 ticket
    timestamp(秒级时间戳,类型为 String)​
例如:​
参数​
示例​
nonce_str​
Wm3WZYTPz0wzccnW​
ticket​
@ml6sqYBGgTKmQNajnKNkaj8yksCAY++adIhlGIqfTiKyvBqOIkzdJ6WRgP+nO+wtVItqKbX4iZ+mFIYkyPJjpQ==​
timestamp​
1650941858​
签名计算:​
    1.对所有待签名参数按照字段名的 ASCII 码从小到大排序(字典序)后,使用 URL 键值对的格式(即 key1=value1&key2=value2…)拼接成字符串 string1:nonce_str=Wm3WZYTPz0wzccnW&ticket=@ml6sqYBGgTKmQNajnKNkaj8yksCAY++adIhlGIqfTiKyvBqOIkzdJ6WRgP+nO+wtVItqKbX4iZ+mFIYkyPJjpQ==&timestamp=1650941858
    2.对 string1 进行 MD5 签名,得到 signature:3f7b739a91a52cb7d85c4f89c5f611fe。​
注意
    1.签名用的 nonce_strtimestamp 必须与 schema 中的 nonce_strtimestamp 相同。​
    2.出于安全考虑,开发者必须在服务器端实现签名的逻辑。​
    3.timestamp 类型为 String。​
    4.iOS 和 Android 抖音端内扫码 schema 头需要使用:snssdk1128://openplatform/share

5. 生成分享 Schema​

分享 schema 格式为 snssdk1128://openplatform/share?share_type=h5&client_key=xx&key=value...,建议将参数都进行urlencode处理。​
其中关键字段如下:​
参数​
必填​
类型​
说明​
share_type​
是​
string​
固定值为 h5
client_key​
是​
string​
应用 key,在控制台中应用的总览页面获取​
nonce_str​
是​
string​
随机字符串​
timestamp​
是​
string​
时间戳​
signature​
是​
string​
验签签名​
state​
否​
string​
建议填写​
按照查询视频发布结果获取 share_id,可以获取视频发布情况​
image_path​
否​
string​
图片文件路径(单个,不能超过 20M)​
video_path 存在时优先使用 video_path
当前支持的格式包含 png/jpg/gif​
关于该参数请阅读表格下面的注意事项。​
image_list_path​
否​
JsonArray.toString()​
图片文件路径(多个),图集模式分享。示例:'["https://douyin.com"]'
video_path 存在时优先使用 video_path
当前支持的格式包含 png/jpg。​
注意
抖音 22.2.0 版本以上支持该参数。​
关于该参数请阅读表格下面的注意事项。​
video_path​
否​
string​
视频文件路径(单个,不能超过 128M)。​
当前支持的格式包含 mp4/mov。​
关于该参数请阅读表格下面的注意事项。​
hashtag_list​
否​
JsonArray.toString()​
支持有第三方预设内容分享抖音时默认携带的话题,指定的话题会展现在发布页面。示例:'["hashtag1","hashtag2"]'​
用户可自行删除该话题,该话题类型支持商业化话题和普通话题。发布后和抖音原生话题没有差别。​
micro_app_info​
否​
Json.toString()​
添加小程序。视频成功发布视频后,在视频左下角带有小程序入口。​
示例:'{"appId":"小程序appId","appTitle":"小程序标题","description":"小程序描述语","appUrl":"小程序中生成该页面时写的 path 地址"}'​
注意
要添加的小程序需先开通「短视频 UGC(用户创作)挂载能力」后,才能被添加并显示。​
要添加的小程序需跟应用为同一主体下才能挂载成功。
share_to_publish​
否​
number​
为 1 时直接分享到抖音发布页(仅视频)​
title​
否​
string​
视频标题​
注意
抖音 22.2.0 版本以上支持该参数。​
poi_id​
否​
string​
地理位置信息锚点 id,与小程序 appId 互斥,优先展示小程序。​
注意
抖音 22.2.0 版本以上支持该参数。​
share_to_type​
否​
int​
0:投稿 1:转发到日常​
注意
抖音 25.4.0 版本以上支持该参数。​
警告
投稿能力(aweme.share)和转发到日常能力(aweme.forward)均需应用申请对应能力的权限。​
登录抖音开放平台控制台,进入目标应用。在应用详情中申请对应能力的权限(Scope)。​
在抖音 30.5.0 以下版本,应用只需申请 h5.share 权限,即可在H5场景下使用投稿能力和转发到日常能力。​
在抖音 30.5.0 及以上版本,用户需先申请h5.share能力开通H5场景,然后需申请 aweme.share 权限以使用投稿能力,申请 aweme.forward 权限以使用转发到日常能力。​
short_title​
否​
string​
短标题​
注意
抖音 30.0.0 版本以上支持该参数​
download_type​
否​
int​
是否允许下载​
1:允许,2:不允许​
注意
抖音 30.0.0 版本以上支持该参数​
private_status​
否​
int​
视频公开范围 ​
0:全部人可见,1:自己可见,2:好友可见​
注意
抖音 30.0.0 版本以上支持该参数​
feature​
否​
string​
可选值:​
note:当整体投稿流程为"普通投稿",且投稿内容为"多图",投稿类型为“图文”时,可以设置这个值,将体裁转变为"笔记"。​
注意
    1.抖音 30.3.0 版本以上支持该参数​
    2.在前置投稿参数均满足对应可选值前置条件时,再进行该值的设置,以免出现非预期情况。​
注意事项:
    image_pathimage_list_pathvideo_path 三者至少要传一个,否则会报错。
    想获取用户分享结果,请调用查询视频发布结果获取 share_id,将其填写到 state 字段。
    图片格式支持:png/jpg/gif/(多图分享不支持 gif),视频格式支持:mp4/mov。​
    目前通过请求头中 content-type 进行校验,视频格式支持的 content-type 有 video/3gpp、video/quicktime、video/mp4,图片格式是 image/*。​
    iOS设备只有在 title 不为空的情况下,hashtag_list 能力才生效。​
    iOS设备暂不支持含有中文字符的文件路径URL(图片/视频/appUrl)​

6. 拉起抖音分享​

目前拉起分享支持以下两种方式:​
    Schema 生成二维码,用户使用抖音扫描二维码。​
    移动端 H5 或者 app 通过 schema 直接拉起抖音分享。​
H5 页面示例:​