このドキュメントでは、Meta Business SDKのインストール方法と、インストール環境のテスト方法について説明します。SDKは、Java、JavaScript、PHP、Python、Rubyで利用できます。Marketing APIをすでにインストールしてあるなら、Meta Business SDKにアップデートする方法をお確かめください。
Javaアプリの場合、Mavenビルドをサポートしていることを必須条件として、好きな開発環境を使用できます。
Mavenプロジェクトに移動して、pom.xmlファイルのdependencyセクションに次のXMLコードを追加します。
<!-- https://mvnrepository.com/artifact/com.facebook.business.sdk/facebook-java-business-sdk -->
<dependency>
<groupId>com.facebook.business.sdk</groupId>
<artifactId>facebook-java-business-sdk</artifactId>
<version>[8.0.3,)</version>
</dependency>src/main/javaで、TestFBJavaSDKというJavaクラスを作成し、次のコードを追加します。{access-token}、{appsecret}、{adaccount-id}は、必ず自分が使用する値に置き換えてください。
import com.facebook.ads.sdk.APIContext;
import com.facebook.ads.sdk.APINodeList;
import com.facebook.ads.sdk.AdAccount;
import com.facebook.ads.sdk.Campaign;
public class TestFBJavaSDK
{
public static final APIContext context = new APIContext(
"{access-token}",
"{appsecret}"
);
public static void main(String[] args)
{
AdAccount account = new AdAccount("act_{{adaccount-id}}", context);
try {
APINodeList<Campaign> campaigns = account.getCampaigns().requestAllFields().execute();
for(Campaign campaign : campaigns) {
System.out.println(campaign.getFieldName());
}
} catch (Exception e) {
e.printStackTrace();
}
}}アプリをビルドして実行します。コンソールのログウィンドウで結果を確認してください。トークン期限切れのエラーがあるなら、新しいページアクセストークンをリクエストして、再試行してください。
JavaScriptアプリの場合、SDKはNode.jsパッケージとして配布されています。
コマンドターミナルウィンドウを開き、新しいプロジェクトフォルダを作成します。次のコマンドで、プロジェクトを作成、設定、インストールします。
npm init
package.jsonファイルを直接編集すれば、後から構成を変えることができます。
次のコマンドで、SDKパッケージをインストールします。
npm install --save facebook-nodejs-business-sdk
index.jsファイルを開き、次のコードを追加します。{access-token}と{adaccount-id}は、自分の値に置き換えます。
const bizSdk = require('facebook-nodejs-business-sdk');
const accessToken = '{access-token}';
const accountId = 'act_{{adaccount-id}}';
const FacebookAdsApi = bizSdk.FacebookAdsApi.init(accessToken);
const AdAccount = bizSdk.AdAccount;
const Campaign = bizSdk.Campaign;
const account = new AdAccount(accountId);
var campaigns;
account.read([AdAccount.Fields.name])
.then((account) =>{
return account.getCampaigns([Campaign.Fields.name], { limit: 10 }) // fields array and params
})
.then((result) =>{
campaigns = result
campaigns.forEach((campaign) =>console.log(campaign.name))
}).catch(console.error);次のコマンドで、インストールをテストします。
node index.js
ターミナルウィンドウで結果を確認してください。トークン期限切れのエラーがあるなら、新しいページアクセストークンをリクエストして、再試行してください。
PHPアプリの場合は、Composerを使用してSDKをインストールします。
新規プロジェクトフォルダで、composer.jsonを作成し、そのコンテンツを以下のようにします。{project-name}、{Your Name}、{your@email.com}は、自分の値に置き換えてください。
{
"name": "name/{project-name}",
"type": "project",
"require": {
"facebook/php-business-sdk": "^8.0.3"
},
"authors": [
{
"name": "{Your Name}",
"email": "{your@email.com}"
}
]
}ターミナルウィンドウで次のコマンドを実行して、SDKをインストールします。
composer install
src/test.phpファイルを作成し、そのコンテンツを以下のようにします。{app-id}、{access-token}、{appsecret}、{adaccount-id}は、自分の値に置き換えてください。
<?php
require_once __DIR__ . '/../vendor/autoload.php';
use FacebookAds\Api;
use FacebookAds\Logger\CurlLogger;
use FacebookAds\Object\AdAccount;
use FacebookAds\Object\Campaign;
use FacebookAds\Object\Fields\CampaignFields;
$app_id = "{app-id}";
$app_secret = "{appsecret}";
$access_token = "{access-token}";
$account_id = "act_{{adaccount-id}}";
Api::init($app_id, $app_secret, $access_token);
$account = new AdAccount($account_id);
$cursor = $account->getCampaigns();
// Loop over objects
foreach ($cursor as $campaign) {
echo $campaign->{CampaignFields::NAME}.PHP_EOL;
}次のコマンドで、インストールをテストします。
php src/test.php
ターミナルウィンドウで結果を確認してください。トークン期限切れのエラーがあるなら、新しいページアクセストークンをリクエストして、再試行してください。
Pythonアプリの場合、SDKはpypiモジュールとして配布されています。それで、pipがインストールされていることを確認してください。ご使用のシステムによっては、virtualenv、pyenv、condaのいずれかを設定する必要があるかもしれません。
次のコマンドで、SDKをインストールします。
pip install facebook_business
test.pyファイルを作成し、そのコンテンツを以下のようにします。{app-id}、{access-token}、{appsecret}、{adaccount-id}は、自分の値に置き換えてください。
from facebook_business.api import FacebookAdsApi
from facebook_business.adobjects.adaccount import AdAccount
my_app_id = '{app-id}'
my_app_secret = '{appsecret}'
my_access_token = '{access-token}'
FacebookAdsApi.init(my_app_id, my_app_secret, my_access_token)
my_account = AdAccount('act_{{adaccount-id}}')
campaigns = my_account.get_campaigns()
print(campaigns)次のコマンドで、インストールをテストします。
python test.py
ターミナルウィンドウで結果を確認してください。トークン期限切れのエラーがあるなら、新しいページアクセストークンをリクエストして、再試行してください。
Rubyの場合、SDKはRubyGemパッケージとして配布されています。
ターミナルウィンドウで、プロジェクトフォルダから次のコマンドを実行し、Ruby用Meta Business SDKをインストールします。環境によっては、rbenvまたはrvmを設定するか、コマンドの前にsudoを使う必要があるかもしれません。
gem install facebookbusiness
test.rbファイルを作成し、そのコンテンツを以下のようにします。{access-token}、{appsecret}、{adaccount-id}は、自分の値に置き換えてください。
require 'facebookbusiness'
FacebookAds.configure do |config|
config.access_token = '{access-token}'
config.app_secret = '{appsecret}'
end
ad_account = FacebookAds::AdAccount.get('act_{{adaccount-id}}', 'name')
ad_account.campaigns(fields: 'name').each do |campaign|
puts campaign.name
end次のコマンドで、インストールをテストします。
ruby test.rb
ターミナルウィンドウで結果を確認してください。トークン期限切れのエラーがあるなら、新しいページアクセストークンをリクエストして、再試行してください。
Marketing APIからMeta Business SDKにアップデートするには、以下の手順に従います。
pom.xmlファイルで、以下を実行します。
groupIdを、com.facebook.ads.sdkからcom.facebook.business.sdkにアップデートするartifactIdを、facebook-java-ads-sdkからfacebook-java-business-sdkにアップデートするversionをv8.0.3にアップデートするpackage.jsonファイルで、以下を実行します。
facebook-nodejs-ads-sdkをfacebook-nodejs-business-sdk:v8.0.2にアップデートするfacebook-nodejs-ads-sdkのすべての参照(require('facebook-nodejs-ads-sdk')など)を、facebook-nodejs-business-sdkにアップデートするnpm installを実行するcomposer.jsonファイルで、以下を実行します。
facebook-ads-sdkをfacebook-business-sdkにアップデートし、バージョン8.0.3にするpip install facebook_businessを実行するfacebookadsのすべての参照を、facebook_businessにアップデートする.egg-infoファイルがある場合は、facebookads-*.egg-infoを、新しくインストールされたegg-infoファイル(例: facebook_business-*.egg-info)にアップデートするgem install facebookbusinessを実行するrequire('facebook_ads')のすべての参照を、require('facebookbusiness')にアップデートするGithubでMeta Business SDKのソースコードをご覧ください。