チュートリアル

動画をアップロードし下書きツイートを作成する

はじめに

広告主は、画像、GIF、動画などのクリエイティブを含むキャンペーンでツイートをプロモーションできます。これらのクリエイティブをTwitterカードに関連付ければ、多彩な写真、動画、メディアエクスペリエンスをツイートに添付できます。

広告主は、ツイートで動画をプロモーションできるほか、直接またはカードに添付したり、プレロール動画として個別に添付したりすることもできます。

このチュートリアルでは、upload.twitter.com経由の動画アセットのアップロード動画アプリダウンロードカードの作成、カードを使用したツイートの作成について説明します。

要件

  • 動画ファイル
  • GoogleまたはApple App ID
  • 広告マネージャーまたはアカウント管理者のいずれかの役割を持つTwitter広告アカウントのユーザーのアクセストークン

手順

1.動画をアップロードする

チャンク化POST media/uploadエンドポイントを使用するには、単一画像をアップロードするワークフローを調整する必要があります。チャンク化アップロードのチュートリアルでは、Twitterへの動画のアップロードの詳細を説明しています。

動画ごとに、アプリケーションで次の操作が行われます。

upload.twitter.comエンドポイントを使用してメディアをアップロードする場合に、認証されたユーザー以外のユーザーがそのメディアを使用するときは、additional_ownersパラメーターを使用します。広告アカウントのプロモーション可能なユーザーである必要があります。詳細は、POST accounts/:account_id/tweetsエンドポイントを参照してください。

2.動画が処理されたことを確認する

GET media/upload (STATUS)を使用し、Twitterでの動画の処理が完了しているかどうかを定期的にクエリします。FINALIZEコマンドでフィールドprocessing_infoが返される場合は、"state": "succeeded"が返されるまで、数秒ごとにこのエンドポイントを呼び出す必要があります。

twurl -X GET -H upload.twitter.com "/1.1/media/upload.json?command=STATUS&media_id=931263015239933952"

応答

      {
  "media_id": 1136358971441176600,
  "media_id_string": "1136358971441176577",
  "media_key": "13_1136358971441176577",
  "size": 4948186,
  "expires_after_secs": 1295797,
  "video": {
     "video_type": "video/mp4"
  },
  "processing_info": {
     "state": "succeeded",
     "progress_percent": 100
  }
}
    

3.Twitter広告アカウントの広告メディアライブラリに動画を移動する

メディアのアップロード後に、アプリケーションはPOST accounts/:account_id/media_libraryを使って、それをメディアライブラリに追加する必要があります。

twurl -X POST -H ads-api.x.com "/5/accounts/:account_id/media_library?file_name=myvideo.mpeg&media_category=AMPLIFY_VIDEO&media_id=931263015239933952&name=Latte"

応答

      {
   "request": {
     "params": {
       "name": "Late",
       "file_name": "myvideo.mpeg",
       "media_category": "AMPLIFY_VIDEO",
       "account_id": "18ce54uhdu0",
       "media_id": 1136670181575413800
     }
   },
   "data": {
     "tweeted": false,
     "duration": 13567,
     "name": "Latte",
     "file_name": "sample.mpeg",
     "description": null,
     "media_url": "https://video.twimg.com/amplify_video/1136670181575413760/vid/640x360/zz0E_jTRHjhUGNxK.mp4?tag=13",
     "media_category": "AMPLIFY_VIDEO",
     "poster_image_url": "https://pbs.twimg.com/amplify_video_thumb/1136670181575413760/img/d4KRzzc_IRHVQSiv.jpg",
     "poster_image_media_key": "3_1136670181575413760",
     "media_key": "13_1136670181575413760",
     "created_at": "2019-06-06T16:24:24Z",
     "media_status": "TRANSCODE_COMPLETED",
     "media_id": "1136670181575413760",
     "title": null,
     "media_type": "VIDEO",
     "aspect_ratio": "16:9",
     "updated_at": "2019-06-06T16:25:49Z",
     "deleted": false
   }
 }
    

:「メディアxxxxxを使用する権限がありません」というエラーが表示された場合は、誤ったadditional_ownersパラメーターでメディアがアップロードされています。Twitter広告アカウントのプロモーション可能なユーザーのユーザーIDを使用してください(手順5をご参照ください)。

4.動画アプリダウンロードカードを作成する

動画がアップロードされ、正常に処理されたら、POST accounts/:account_id/cards/video_app_downloadエンドポイントを使用して、動画アプリダウンロードカードを作成します。

twurl -H "ads-api.x.com" "/5/accounts/:account_id/cards/video_app_download" -d
"video_id=13_1119361956324855808&country_code=US&name=video app download&googleplay_app_id=com.company_name.android"

応答

      {
   "data": {
    "name": "video app download",
    "googleplay_app_id": "com.twitter.android",
    "video_url": "https://video.twimg.com/amplify_video/vmap/958231855240589313.vmap",
    "video_owner_id": "756201191646691328",
    "video_content_id": "958231855240589313",
    "id": "5a4z3",
    "country_code": "US",
    "video_hls_url": "https://video.twimg.com/amplify_video/958231855240589313/pl/vHKJ2aH1tZGKW3bh.m3u8",
    "created_at": "2018-01-30T07:00:24Z",
    "card_uri": "card://958233417929261056",
    "updated_at": "2018-01-30T07:00:24Z",
    "video_poster_url": "https://pbs.twimg.com/amplify_video_thumb/958231855240589313/img/rjhswYG084qYYgF6.jpg",
    "app_cta": "INSTALL",
    "deleted": false,
    "card_type": "VIDEO_APP_DOWNLOAD"
  },
  "request": {
    "params": {
      "name": "video app download",
      "googleplay_app_id": "com.twitter.android",
      "video_id": "13_1119361956324855808",
      "video_url": "https://video.twimg.com/amplify_video/vmap/958231855240589313.vmap",
      "video_stream_content_type": "video/mp4; codecs='avc1.42E01E, mp4a.40.2'",
      "video_owner_id": "756201191646691328",
      "video_content_id": "958231855240589313",
      "account_id": "18ce54uhdu0",
      "country_code": "US",
      "video_hls_url": "https://video.twimg.com/amplify_video/958231855240589313/pl/vHKJ2aH1tZGKW3bh.m3u8",
      "video_poster_url": "https://pbs.twimg.com/amplify_video_thumb/958231855240589313/img/rjhswYG084qYYgF6.jpg",
      "app_cta": "INSTALL",
      "card_type": "VIDEO_APP_DOWNLOAD"
    }
  }
}
    

5.認証情報にプロモツイートを作成する権限があることを確認する(任意)

Twitter広告アカウント用にツイートを作成するには、認証されたユーザーがプロモーション可能なユーザーに代わってプロモーション可能なツイートを作成する権限を持っている必要があります。

注: GET accounts/:account_id/promotable_usersを呼び出すと、広告アカウントでプロモーション可能なユーザーとともに、そのアカウントでプロモツイートを作成できるかどうか(FULL)、「リツイート」のプロモーションを実行できるかどうか(RETWEETS_ONLY)が返されます。

認証情報がこのアカウントのFULLプロモーション可能なユーザーのものではない場合は、GET accounts/:account_id/authenticated_user_accessエンドポイントへのリクエストを実行して、認証されたユーザーがこのユーザーに代わってツイートする権限を持っていることを確認します。リクエストの応答には、FULLプロモーション可能なユーザーの代わりに、ユーザーがヌルキャストツイートを作成できることを示すTWEET_COMPOSERの権限が含まれます。

6.動画アプリダウンロードカードを使用して下書きツイートを作成する

その後POST accounts/:account_id/tweetのcard_uriを使用して、このカードをツイートに関連付けます。

リクエスト

twurl -H "ads-api.x.com" "/5/accounts/:account_id/draft_tweets" -d "card_uri=card://1119368073444638720&text=Sample Tweet with card_uri and twurl"

アプリケーションはGET accounts/:account_id/cards/video_app_downloadを使用して、既存の動画アプリダウンロードカードのcard_uriを見つけられます。

: よくあるエラーはUNAUTHORIZED_ACCESSで、「ユーザー [X] はユーザーID [X] のツイートを作成する権限を持っていません」または「ユーザー [X] にはプロモーション可能なユーザー [X] が見つかりません」というメッセージが表示されます。FULLプロモーション可能なユーザーのuser_idを伴ったas_user_idを、パラメーターとして含めてください。

次の手順

これで、Twitter広告アカウントに動画アプリダウンロードカードを作成できました。キャンペーンを設定して、このツイートをプロモーションできます。

ソリューション作成の準備が整った方は

開発者アクセスに申し込んで利用を開始しましょう