チュートリアル
動画をアップロードし下書きツイートを作成する
はじめに
広告主は、画像、GIF、動画などのクリエイティブを含むキャンペーンでツイートをプロモーションできます。これらのクリエイティブをTwitterカードに関連付ければ、多彩な写真、動画、メディアエクスペリエンスをツイートに添付できます。
広告主は、ツイートで動画をプロモーションできるほか、直接またはカードに添付したり、プレロール動画として個別に添付したりすることもできます。
このチュートリアルでは、upload.twitter.com経由の動画アセットのアップロード、動画アプリダウンロードカードの作成、カードを使用したツイートの作成について説明します。
要件
- 動画ファイル
- 500MB未満で、140秒未満のもの。制限事項とガイダンスを参照してください
- 動画アプリダウンロードカードのアスペクト比が16:9または1:1
- GoogleまたはApple App ID
- 広告マネージャーまたはアカウント管理者のいずれかの役割を持つTwitter広告アカウントのユーザーのアクセストークン
手順
1.動画をアップロードする
チャンク化POST media/uploadエンドポイントを使用するには、単一画像をアップロードするワークフローを調整する必要があります。チャンク化アップロードのチュートリアルでは、Twitterへの動画のアップロードの詳細を説明しています。
動画ごとに、アプリケーションで次の操作が行われます。
- POST media/upload (INIT)エンドポイントを使用してアップロードを開始する
- POST media/upload (APPEND)エンドポイントを使用してデータの各チャンクをアップロードする
- POST media/upload (FINALIZE)を使用してアップロードを完了する
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広告アカウントに動画アプリダウンロードカードを作成できました。キャンペーンを設定して、このツイートをプロモーションできます。
ソリューション作成の準備が整った方は