POST media/upload (INIT)

概述

INIT 命令请求用于发起文件上传会话。它会返回应该用于执行所有后续请求的 media_id。从初始化命令成功返回后的下一步是附加命令

参阅上传媒体指南,了解有关媒体文件的限制和要求。

请求

请求应该是 multipart/form-dataapplication/x-www-form-urlencoded POST 格式。

注意: 此端点的域为 upload.twitter.com

响应

响应会在 media_id(64 位整数)和 media_id_string(字串)字段中分别提供媒体标识符。使用 JavaScript 在 API 响应中提供的 media_id_string 以及其他无法准确表示长整数的语言。

整个文件必须在 expires_after_secs 秒之前上传。

additional_owners 字段支持以用户 A 的身份上传媒体,然后以用户 B 的身份创建推文。

资源 URL

https://upload.twitter.com/1.1/media/upload.json

资源信息

响应格式 JSON
是否需要认证? 是(仅限用户情景)
是否存在速率限制?

参数

名称 必填 说明 默认值 示例
command 必填 必须设置为 INIT(区分大小写)。
total_bytes 必填 正在上传的媒体大小(以字节为单位)。
media_type 必填 正在上传的媒体的 MIME 类型。 video/mp4
media_category 有时 识别媒体用例的字串枚举值。此标识符用于严格执行特定于用例的限制(例如文件大小、视频时长)以及启用高级功能。
additional_owners 可选 用于设置为允许使用推文或卡片中返回的 media_id 的其他所有者的用户 ID 列表,以逗号分隔。可最多指定 100 位其他所有者。

示例请求

POST https://upload.twitter.com/1.1/media/upload.json?command=INIT&total_bytes=10240&media_type=image/jpeg

示例结果

{
  "media_id": 710511363345354753,
  "media_id_string": "710511363345354753",
  "size": 11065,
  "expires_after_secs": 86400,
  "image": {
    "image_type": "image/jpeg",
    "w": 800,
    "h": 320
  }
}