教程

上传视频并创建推文草稿

简介

广告商可以在广告活动中推广含有图像、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.twitter.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.twitter.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 端点发出请求,验证已认证用户是否拥有可代表该用户发推的许可。请求响应将包括 TWEET_COMPOSER 的许可,表明用户可以代表 FULL 可推广用户创建 cast 为空的推文。

6.使用视频应用下载卡片创建推文草稿

然后,我们将使用 POST accounts/:account_id/tweet 中的 card_uri 将本卡片与推文关联。

请求

twurl -H "ads-api.twitter.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]”。包括 as_user_id,并带有 FULL 可推广用户的 user_id 作为参数。

后续步骤

现在,你在 Twitter 广告账号中拥有了一张视频应用下载卡片。你可以创建广告活动来推广该推文。

准备好构建你的解决方案了吗?

申请开发者访问权限即可开始构建