2016-05-31 5 views
0

마케팅 API를 사용하여 자동화 된 광고 통계를 알아야합니다. 이를 위해 비즈니스 관리자를 통해 시스템 사용자를 만들고 ads_read 권한으로 시스템 사용자 액세스 토큰을 생성했습니다. 마케팅 API 승인 예외

Uncaught exception 'FacebookAds\Http\Exception\PermissionException' 
with message '(#275) Cannot determine the target object for this 
request. Currently supported objects include ad account, business 
account and associated objects.' 

내 응용 프로그램이 필요합니까

이 허용 목록하거나 오전 다음 FacebookAds PHP는 V2.6 SDK에, 나는 다음과 같은 오류가 발생, API 호출을 특정 캠페인의 통찰력을 얻기 위해 다음이 토큰을 사용

나는 다른 것을 놓쳤다? 'ads_read'권한 옆에 '(앱이 허용 목록에 있어야 함)'이라는 메모가 있음을 확인했습니다. 여기

앱이 ads_read 권한이없는 것 같다 내가

<?php 

define('VENDOR_DIR', 'vendor/'); // Path to the Vendor directory 
$loader = require VENDOR_DIR.'autoload.php'; 

use FacebookAds\Api; 
use FacebookAds\Object\Campaign; 
// Initialize a new Session and instantiate an Api object 
Api::init(
    'xxxxxxxxxxxxxxxx', // App ID 
    'xxxxxxxxxxxxxxxxx', 
    'xxxxxxxxxxxxxxxxxx' // System User Access Token 
); 

$api = Api::instance(); 

use FacebookAds\Object\Values\InsightsLevels; 

$campaign = new Campaign('xxxxxxxxxxxxx'); 

$params = array(
    'level' => InsightsLevels::CAMPAIGN, 
); 

$async_job = $campaign->getInsightsAsync(array(), $params); 

$async_job->read(); 

while (!$async_job->isComplete()) { 
    sleep(1); 
    $async_job->read(); 
} 

$async_job->getResult(); 

?> 
+0

사용하려는 캠페인 ID가 여기 올바르지 않은 것 같습니다. –

+0

@PaulBain에 답해 주셔서 감사합니다! 다음 URL의 'ids'입력란 뒤에 나타나는 ID를 사용했습니다. 이 URL은 광고를 보는 동안 내가 본 URL입니다. 또한 Ads Manager를 사용하여 캠페인 ID를 표시 할 수있게되어 정확한 숫자임을 확인할 수 있습니다. busineyadayada/act = yyyyyyyyyyyyyyyy & pid = y & ids = xxxxxxxxx & business_id = yyyy –

답변