Объектная спецификация плохо сформирована. Возможно, отсутствует идентификатор страницы или сведения о креативе или существуют недопустимые поля - PullRequest
0 голосов
/ 06 ноября 2018

Я использовал маркетинговый Api для facebook и php-facebook-sdk. Мне удалось создать кампанию и набор объявлений и загрузить видео, и теперь я нахожусь на той части, где мне нужно создать AdCreative. Мне трудно искать video_data с правильной спецификацией истории объекта или чем-то в этом роде, поэтому я попытался создать на основе информации, которую я собрал через сеть, и вот что я придумала.

try {
        $fields = array(
        );
        $params = array(
          'url_tags' => 'utm_source=facebook',
          'object_story_spec' => array('page_id' =>  $page_id, 'video_data' =>  array('call_to_action' =>  array('type' =>  'WATCH_VIDEO')), 'image_url' => $image_url, 'video_id' => $video_id),
          'name' => 'My Bolbs',
          'applink_treatment' => 'web_only',
        );
        $creative = (new AdAccount($ad_account_id))->createAdCreative(
          $fields,
          $params
        );
        $creative_id = $creative->id;
    } catch (Exception $e) {
        echo 'Caught exception: ',  $e, "\n";
    }

Ошибка, которую он мне выдал, была

["error"]=>
array(8) {
  ["message"]=>
  string(17) "Invalid parameter"
  ["type"]=>
  string(14) "OAuthException"
  ["code"]=>
  int(100)
  ["error_subcode"]=>
  int(1443048)
  ["is_transient"]=>
  bool(false)
  ["error_user_title"]=>
  string(34) "object_story_spec param is invalid"
  ["error_user_msg"]=>
  string(99) "Object story spec is ill formed. Maybe missing Page ID or creative details, or invalid fields exist"
  ["fbtrace_id"]=>
  string(11) "Hmti64698Rr"
}

Мне было интересно, могу ли я попросить совета о том, как исправить эту ошибку.

Спасибо и заранее спасибо всем, кто предложит и даст совет.

1 Ответ

0 голосов
/ 09 ноября 2018

Ваш массив 'object_story_spec' сформирован неправильно. 'image_url' и 'video_id' находятся вне массива 'video_data'. Правильный массив должен быть:

'object_story_spec' => array(
   'page_id' =>  $page_id, 
   'video_data' =>  array(
      'call_to_action' =>  array('type' =>  'WATCH_VIDEO'), 
      'image_url' => $image_url, 
      'video_id' => $video_id
   )
)
...