内容
设为封面
把「推荐封面」返回的某张候选设为封面。视频内容:这张图会分别记到 YouTube、Instagram、Facebook 和每个手动渠道上(之后在创作页改某一个不会带动其它渠道);发布时 YouTube / Instagram / Facebook 经接口设封面,手动渠道放进各自的素材包。目标含 TikTok 时顺带把 TikTok 的封面帧定到这张的时间点;图文内容:把这张挪成第一张图(图文的封面就是首图)。
POST
/api/v1/posts/{postId}/coverposts:write写档限流Idempotency-Key 可选
鉴权与护栏
- 请求头
Authorization: Bearer <长期凭证>,凭证在设置页「接入外部系统 → 长期凭证」签发,见 鉴权与权限。 - 凭证需带 scope
posts:write;签发者在工作区里的角色也要允许该动作。 - 限流:写档,每分钟 10 次(按凭证计),超出回 429 并带
Retry-After。 - 幂等:带
Idempotency-Key就按它去重,不带也能调。
路径参数
postIdstring必填内容 id。
请求体(application/json)
suggestionIdstring必填「推荐封面」返回的 suggestionId。
candidateIdstring必填「推荐封面」返回的 candidates[].id。
clientRequestIdstring可选幂等键(8–128 chars of [A-Za-z0-9_.:-]);推荐放在 Idempotency-Key 请求头,头与 body 都给时以头为准。
调用规则
- 可改的状态与「修改内容」相同:草稿 / 被退回 / 排期中;非草稿需要发布权,editor 只能改自己的草稿。
- 改封面等于改了内容:之前拿到的 confirmToken 会失效,要重新走一次发布确认。
响应
成功返回 HTTP 200,信封为 { data, meta };右侧(窄屏在本页末尾)给出了各状态码的示例。所有错误都是 { error: { code, message, params }, meta },按机器码处理而不是按 message 匹配,码表见 错误码。
| 状态码 | 可能的错误码 |
|---|---|
| 400 | invalid_input |
| 401 | unauthenticated |
| 402 | plan_limit |
| 403 | forbidden / workspace_not_found |
| 404 | not_found |
| 409 | no_account / needs_reauth / replay |
| 429 | rate_limited |
| 500 | internal |
| 502 | platform_error |
| 503 | external_writes_off |
示例
请求
curl -X POST "https://popkit.loxily.com/api/v1/posts/pst_01J8ZK3R7QW6M2/cover" \
-H "Authorization: Bearer popkit_it_••••••••" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: acme-2026-09-21-001" \
-d '{
"suggestionId": "3f2b9c1e-6d0a-4e8b-9a7c-5b1d2e3f4a60",
"candidateId": "f03"
}'响应
视频内容
{
"data": {
"postId": "pst_01J8ZK3R7QW6M2",
"suggestionId": "3f2b9c1e-6d0a-4e8b-9a7c-5b1d2e3f4a60",
"candidateId": "f03",
"appliedAs": "cover",
"coverUrl": "https://storage.googleapis.com/socialhub-media/posts/u_01J7…/7c1e….jpg",
"tiktokCoverTimestampMs": 12000,
"deepLink": "https://popkit.loxily.com/composer?draft=pst_01J8ZK3R7QW6M2"
},
"meta": {
"requestId": "6a1d0c9e-2b7f-4e3a-8c5d-1f0e9b8a7c84"
}
}