媒体

获取 API 密钥

从 URL 导入

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

bash
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。

bash
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
json
{
  "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。