POST media/upload

概要

このエンドポイントを使用すると、Twitterに画像をアップロードできます。画像を添付可能なTwitterエンドポイントの大半で使用できるmedia_idを返します。たとえば、media_id値は、POST statuses/updateエンドポイントを使用して添付写真があるツイートを作成するのに使用できます。

これは単純な画像アップロードエンドポイントであり、一部の機能が制限されています。これに代わり推奨されるのが、画像と動画の両方に対応するチャンク化アップロードエンドポイントです。これを使用すると信頼性が高まり、ファイルアップロードの再開機能やその他の重要な機能を利用できるようになります。将来的に、新機能はチャンク化アップロードエンドポイントにのみ対応する予定です。

メディアファイルに関する制限事項や要件については、「メディアのアップロードガイド」を参照してください。

画像代替テキストの情報を入手するには、メディアのメタデータのエンドポイントを使用してください。

POSTはmultipart/form-dataリクエストである必要があります。ファイルの未処理のバイナリ(mediaパラメータ)、またはbase64でエンコードしたコンテンツ(media_dataパラメータ)のいずれかをアップロードします。base64でエンコードするとファイルのサイズが大きくなるため、可能な場合は未処理のバイナリを使用します。

応答では、media_id(64ビットの整数値)フィールドおよびmedia_id_string(文字列)フィールドにメディア識別子が返されます。JavaScript、および長い整数値を正確に記述できないその他の言語の場合は、API応答で返されるmedia_id_stringを使用します。

返されたmedia_idの有効期間はexpires_after_secs秒間のみです。この時間枠の後に他のエンドポイントでmedia_idの使用を試みると、HTTP 4xx Bad Requestが発生します。

additional_ownersフィールドでは、メディアをユーザーAとしてアップロードしてから、ユーザーBとしてツイート作成に使用できます。

特定のタイプのデータ(tweet_giftweet_videoamplify_video)の場合は、チャンク化アップロードエンドポイントを使用する必要があります。

リクエスト

リクエストはmultipart/form-dataPOST形式またはapplication/x-www-form-urlencodedPOST形式である必要があります。

注: このエンドポイントのドメインはupload.twitter.comです

リソースURL

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

リソース情報

応答形式 JSON
認証の要否 要(ユーザーのコンテキストに限る)
レート制限 あり

パラメータ

名前 要否 説明 デフォルト値
media 必須 未処理のバイナリファイルコンテンツがアップロードされています。media_dataとは併用できません。
media_data 必須 base64でエンコードしたファイルコンテンツがアップロードされています。mediaとは併用できません。
additional_owners 任意 返されたmedia_idをツイートまたはカードで使用できる、追加オーナーとして設定されるユーザーIDのカンマ区切りリストです。最大100の追加オーナーを指定できます。

リクエストの例

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

応答の例

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

Was this document helpful?

ご協力ありがとうございました。お役に立てて幸いです。

Thank you for the feedback. How could we improve this document?

Thank you for the feedback. Your comments will help us improve our documents in the future.