キャンペーン画面にある「ステータス」フィルターについて


#1

キャンペーン画面の「ステータス」フィルターにおいて、

「強制停止」、「予約済み」、「おすすめ」、「削除済み」というステータスがありますが、

Ads APIですと、どのpropertyに該当しますか?


#2

@wenping.wang さん

こちらのステータスは直接API propertyにマッピングはしないんです・・インデックスエンドポイント(全てのキャンペーンが返ってくるエンドポイント)にそのフィルターを設定して返ってくるような機能がないため、if/elseみたいな仕組みでフィルターみたいな仕組みを実装しなければならないのでだいたいなところを説明しますとー>

強制停止:これは配信できるような設定はされていますが何かしらの理由で停止されたことで、例えば日もづいてるFunding Instrumentにお金がなくてなったときに強制停止になりますし、アカウント自体が「スパムレビュー」みたいなステータスになった時にもこうなります。それをコードで振り分けるために、accountのstatus値とCampaignのreasons_not_servableが「BUDGET_EXHAUSTED」になります。細かく表示しなくてもよければ配信=pausedとか、accountのapproval_statusとかそういうハイレベルなところをみるだけでも簡単なフィルター作れると思います。

予約済み:こちらはスケジュールツイートと英語で呼ばれてるものとなりまして、この間に発表されたバージョン2に初めて対応できています:Ads API Version 2

おすすめ:この機能はクローズβに関する機能で、基本的に実装しなくてもよろしいかと思います:https://dev.twitter.com/ads/reference/get/accounts/account_id/recommendations

削除済み:これはキャンペーンのdeleted=trueかfalseを見ることでわかりますがインデックスエンドポイントを叩く時にwith_deleted=trueを渡さないと削除済みのキャンペーンが返ってこないのでご了承下さい


#3

JBabichJapan 様

非常にわかりやすいご回答ありがとうございます。
大変助かりました。

wenping.wang


#4

@JBabichJapan

昔の質問で恐縮ですが、

accountのstatus値 というのは approval_status にことでしょうか?

GET https://ads-api.twitter.com/4/accounts?account_ids=18ce54d4x5t

Example Response
   {
     "request": {
       "params": {
         "account_ids": [
           "18ce54d4x5t"
         ]
       }
     },
     "next_cursor": null,
     "data": [
       {
         "name": "API McTestface",
         "business_name": null,
         "timezone": "America/Los_Angeles",
         "timezone_switch_at": "2016-07-21T07:00:00Z",
         "id": "18ce54d4x5t",
         "created_at": "2016-07-21T22:42:09Z",
         "salt": "54cb7b5a34183f77d82dd6d0f4329691",
         "updated_at": "2017-07-06T16:51:04Z",
         "business_id": null,
         "approval_status": "ACCEPTED",
         "deleted": false
       }
     ]
   }

#5

@wenping.wang

はい。ただし /4/accounts で見ることができる approval_status については、アカウント自体がスパムとみなされ弊社がブロック措置を行うなどの例外時にのみ status に変更が起きるものであり、キャンペーンのBudgetがなくなった際に自動的にキャンペーンが止まる、といったような正常な停止処理の場合には変更が起きないと思います。

ですので、そういった場合にはCampaignやFunding Instrumentの reasons_not_able_to_fund を確認していただくのがよいかと思います。値の一覧は下記からご確認ください。
https://developer.twitter.com/en/docs/ads/general/overview/enums.html


#6

ありがとうございます。

強制停止 について、 もうちょっと確認させていただきたいですが、

キャンペーンの予算総額(設定された場合)がなくなった際にキャンペーンがActiveから停止(Paused)になり、

お支払方法 ( Funding Instruments ) に何らかの原因(BUDGET_EXHAUSTEDとか)で課金できなくなった場合は、 キャンペーンがActiveから 強制停止 に変わり、その原因は reasons_not_able_to_fund に含まれている

と認識してもOKですか?

あと、キャンペーンに 残高なしというStatusもありますが、
それはどのような場合に表示されるんですか?