ビジネス アカウントの広告名を毎日 DB に格納する Java アプリを作成する必要があります。
実行した手順は次のとおりです。 -
Facebook のビジネスに追加され、広告アカウントにアクセスできました -
developers.facebook.com にアプリを登録しました。- https://developers.facebook.com/tools/debug/accesstoken/からアクセス トークンを取得
- アプリ パネルからアプリ シークレットを取得
これはコード スニペットです。
public static final String ACCESS_TOKEN = [the token from above];
public static final Long ACCOUNT_ID = [the business account it];
public static final String APP_SECRET = [the scret from
public static void main(String...args) throws Exception {
APIContext context = new APIContext(ACCESS_TOKEN, APP_SECRET);
AdAccount account = new AdAccount(ACCOUNT_ID, context);
System.out.println(account.getAds().execute().getRawResponseAsJsonObject());
}
次のエラーが表示されます。
com.facebook.ads.sdk.APIException$FailedRequestException: {"error":{"message":"(#273) この広告 API 呼び出しでは、ユーザーが広告アカウントの管理者である必要があります。ユーザーは広告アカウント XXXXXXXX の管理者ではありません.","type":"OAuthException","code":273,"fbtrace_id":"GD30f+ON/k4"}}
次の質問があります。
1-アド マネージャー ページから表示できるのと同じ広告をリストするためだけに管理者権限が必要なのはなぜですか?
2-ユーザーがビジネス アカウントにアクセスできなくなったが、Java を引き続き機能させたい場合はどうすればよいですか? 他のユーザーは引き続き Java コードを実行できますか?
3-上記の説明とコードに何か問題がありますか?
4-一時トークンではなく永久トークンを生成するにはどうすればよいですか?