v4.0より前では、広告の購入が、システムのタイムアウト、メモリー不足、遅延を引き起こす場合がありました。システムを拡張するために、膨大な計算が必要となって一時的なエラーを引き起こすロジックを、後処理と呼ばれる別個のワークフローに分離しました。それにより、広告の作成や編集時の一時的なエラーに対する回復力が高まりました。このプロセスは次のようなものです。
リクエストを受信した後の後処理フェーズを表すために、広告実行ステータスIN-PROCESS
をv4.0で導入しました。この新しいステータスは以下に適用されます。
{campaign_ID}
{ad_set_ID}
{ad_ID}
{ad_creative_ID}
キャンペーン、広告セット、広告に次のような影響があります。
フィールド | v4.0以降 | v4.0より前 |
---|---|---|
|
| キャンペーンまたは広告セットの場合: |
| 変更なし | 変更なし |
| 変更なし | 変更なし |
後処理フェーズは、キャンペーン、広告セット、データの場合はeffective_status
に、広告クリエイティブの場合はstatus
フィールドに表示されます。例えば、オブジェクトのステータスは/creative_id?fields=status
で照会できます。後処理フェーズ中であれば、次のようになります。
{ "status": "IN-PROCESS", "id": "<creative_id>" }
広告クリエイティブの後処理が問題なく終わると、次のようになります。
{ "status": "ACTIVE", "id": "<creative_id>" }
後処理に失敗した場合、オブジェクトがWITH_ISSUES
に設定され、issues_info
にエラーが示されます。例えば、creative_ID?fields=status, issues_info
で、次のようになります。
{ "status": "WITH_ISSUES", "issues_info": [ { "level": "CREATIVE", "error_code": 1815869, "error_summary": "Ad post is not available", "error_message": "The Facebook post associated with your ad is not available. It may have been removed, or you may not have permission to view it." } ], "id": "<creative_id>" }
広告オブジェクトがIN_PROCESS
であれば、そのオブジェクトとその子に通常のアップデートを行うことができます。