1. 新規登録
まだ持っていなければ、DFPアカウントに登録する。アカウントには以下の2種類がある。
Account Types で比較できます。
2. 認証の準備
oAuth2.0による認証の準備のため、以下を行ってください。
Authentication でもっと詳しく知ることができます。
3. APIアクセスを有効に
APIを使うには、ネットワークごとに少なくとも1つの有効化が必要です。例えば、テスト環境では別にもう一つが必要になります。
有効化の方法
テスト環境用に有効化
- テスト用にGoogleアカウントを1つ作成します。
- 以下のいずれかでテストネットワークを作成します
NetworkService.makeTestNetwork()を呼ぶ
- playgroundに行く
- https://www.google.com/dfp/signin. からネットワークにサインインしてください。テストネットワークに紐付いたGoogleアカウントでは
AuthenticationError.GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK エラーが出ます。
- ステップ2で調べたネットワークコードを使用して、機能をリクエストします。
NetworkService.getAllNetworks()
により現在ログインしているアカウントに紐付けられたネットワークのすべてを得ることができます。
- 製品版APIにアクセスする。
- DFPアカウントに管理者権限でサインイン
- Admin タブを選ぶ
- Network Settings タブでAPI Access右のアイコンをクリック
- API terms and conditions が表示されたら, Acceptをクリック.
- SaveでAPIアクセスを有効にする
4. クライアント側をセットアップ
DFP client librariesをダウンロード. ライブラリはアプリ実装を簡単にするためのラッパーやクラスを含みます。
さらに SOAP toolkitをダウンロードします。
以下により、各言語での実装環境を整えます。
以下がPHP client libraryを使うための基本です.
このサンプルを動かす前に、README のステップを行ってください。
ライブラリにはPHP 5.2.xが必要で native SoapClientを使用、以下の PHP extensionsを要求します。
PHP client library を以下のように使ってはじめましょう。
- credentials(証明書)のセットアップまずは、新しい
DfpUserを作成して
.thesrc/Google/Api/Ads/Dfp/auth.ini
ファイルから証明書をロードします。. README には他の方法を記載しています。// Get DfpUser from credentials in "../auth.ini" // relative to the DfpUser.php file's directory. $user = new DfpUser();
- InventoryServiceのためのクライアントをコンストラクトする各 service はその都度
getService()
により取り出され.getService()
はそのサービスで使用するすべてのクラスを持つSOAP クライアントを返します。// Get the InventoryService. $inventoryService = $user->GetService('InventoryService', 'v201505');
- Perform an operationAPI接続のためのクライアント初期化が終わったら、処理をおこなえます。以下のコードはアカウントすべての広告ユニットを一度に500件返します。
// すべての広告をSELECTするためのstatement(声明)を作成する $statementBuilder = new StatementBuilder(); $statementBuilder->OrderBy('id ASC') ->Limit(StatementBuilder::SUGGESTED_PAGE_LIMIT); // Default for total result set size. デフォルトのトータル結果 $totalResultSetSize = 0; do { // Get ad units by statement. 広告ユニットをstatementにより取得 $page = $inventoryService->getAdUnitsByStatement( $statementBuilder->ToStatement()); // Display results. 結果を表示 if (isset($page->results)) { $totalResultSetSize = $page->totalResultSetSize; $i = $page->startIndex; foreach ($page->results as $adUnit) { printf("%d) Ad unit with ID %s, name '%s', and status %s was found.\n", $i++, $adUnit->id, $adUnit->name, $adUnit->status); } } $statementBuilder->IncreaseOffsetBy(StatementBuilder::SUGGESTED_PAGE_LIMIT); } while ($statementBuilder->GetOffset() < $totalResultSetSize); printf("Number of results found: %d\n", $totalResultSetSize);
client libraryなしでの実装は NoClientLibrary wiki articleを参照ください。
5. 次のステップへ
client libraryを動かしてみてください。
お持ちのバージョンのリファレンスを読んでAPIについて学びましょう。
ヘルプが必要なら、フォーラムに行くか、この後の詳しい解説を読んでください。
0 コメント:
コメントを投稿