媒体导入或上传媒体

媒体

导入或上传媒体

把文件(multipart)或 Sofia 抓取的 https URL 添加到门店媒体库。需要正式应用和有效订阅。

POSThttps://api.sofia-post.com/api/v1/media
POSThttps://api.sofia-post.com/api/v1/media

导入或上传媒体

把文件(multipart)或 Sofia 抓取的 https URL 添加到门店媒体库。需要正式应用和有效订阅。

授权

Authorizationstring必填

你的个人密钥或 OAuth 访问令牌,以 Bearer <token> 发送。

仅保存在此标签页中,且仅发送到 api.sofia-post.com。 获取 API 密钥

标头

Idempotency-Keystring

用相同请求体重放时返回相同响应,不会再导入一次。它覆盖表单字段,不包括文件字节。

请求体

此请求将作用于你的真实账户。

从 URL 导入

发送包含 establishmentId 和一个公开 https url 的 JSON。Sofia 会自己下载文件、检查并归入媒体库。

curl -X POST https://api.sofia-post.com/api/v1/media \
  -H "Authorization: Bearer $SOFIA_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"establishmentId":"'$ESTABLISHMENT_ID'","url":"https://images.example.com/tatin.jpg"}'

上传文件

或者以 multipart/form-data 发送文件本身,带一个 file 字段。

curl -X POST https://api.sofia-post.com/api/v1/media \
  -H "Authorization: Bearer $SOFIA_API_KEY" \
  -F establishmentId=$ESTABLISHMENT_ID \
  -F file=@tatin.jpg
{
  "id": "393d5aa4-16f1-430f-b1d8-1fb1473076ef",
  "type": "image",
  "url": "https://…/393d5aa4-16f1-430f-b1d8-1fb1473076ef.jpg?X-Amz-…"
}

接受的内容

  • 图片和视频,最大 200 MB。
  • URL 必须是公开的 https:私有地址、超过 3 次重定向或下载超过 30 秒都会被拒绝。
  • 返回的 url 经过签名并会过期:请保存 id,需要新的 URL 时,用 GET /v1/media/{id} 重新读取该媒体。

被拒绝的文件会返回 422 media_import_refused 或 media_upload_refused,原因在 details 中,处理办法在 message 中。

授权

  • Authorizationstringheader必填

    你的个人密钥或 OAuth 访问令牌,以 Bearer <token> 发送。

标头

  • Idempotency-Keystring

    用相同请求体重放时返回相同响应,不会再导入一次。它覆盖表单字段,不包括文件字节。

请求体

application/json, multipart/form-data
  • establishmentIdstring必填

    接收媒体的媒体库所属的门店

  • urlstring

    JSON:媒体的 https 地址,由 Sofia 自行抓取(不带文件)

  • filestring<binary>

    multipart/form-data:文件(图片或视频),不带 url

响应

已添加到媒体库的媒体。

  • idstring必填

    媒体的标识符,传给帖子的 media[].id

  • typestring必填

    媒体类型

    允许的值: imagevideo

  • urlstring必填

    带签名的地址,在当前时间窗口内有效

这个页面对你有帮助吗?