Google は、Ad Manager API を操作するための Node.js クライアント ライブラリを提供しています。
前提条件
Node.js クライアント ライブラリを使用するには、Node.js がインストールされている必要があります。詳細については、Node.js® をダウンロードするをご覧ください。
クライアント ライブラリをインストールする
まず、お好みの IDE で新しいプロジェクトを作成するか、既存のプロジェクトに依存関係を追加します。Google は、クライアント ライブラリ アーティファクトを @google-ads/admanager
として npm に公開しています。
package.json
"dependencies": {
"@google-ads/admanager": "^0.4.0"
}
コマンドライン
npm install @google-ads/admanager
認証情報の構成
認証を行うため、Node.js クライアント ライブラリは OAuth2 とアプリケーションのデフォルト認証情報(ADC)を使用します。ADC 認証情報の作成と構成については、認証をご覧ください。
最初のリクエストを送信する
各サービスには、各 REST メソッドのメソッドを含む ServiceClient
オブジェクトがあります。各メソッドの例については、GitHub リポジトリ googleapis/google-cloud-node
をご覧ください。次の例では、Network
オブジェクトを読み取ります。
// Resource name of the Network
const name = 'networks/NETWORK_CODE'
// Imports the Admanager library
const {NetworkServiceClient} = require('@google-ads/admanager').v1;
// Instantiates a client
const admanagerClient = new NetworkServiceClient();
async function callGetNetwork() {
// Construct request
const request = {
name,
};
// Run request
const response = await admanagerClient.getNetwork(request);
console.log(response);
}
callGetNetwork();
HTTP リクエストとレスポンスをログに記録する
Node.js クライアント ライブラリは、HTTP リクエストとレスポンスのロギングをサポートしています。デフォルトでは、クライアント ライブラリはロギングを無効にします。
標準出力へのデフォルトのロギングを有効にするには、環境変数 GOOGLE_SDK_NODE_LOGGING
を Google API パッケージ名のカンマ区切りリストに設定します。変数値を all
に設定すると、すべての Google API のロギングを有効にできます。使用可能なすべてのクライアント ライブラリ パッケージ名については、Google Cloud Node.js クライアント ライブラリ
をご覧ください。
Node.js
// Enable logging for the Google Ad Manager API
process.env.GOOGLE_SDK_NODE_LOGGING = 'admanager';
// Enable logging for the Google Ad Manager and pubsub APIs.
process.env.GOOGLE_SDK_NODE_LOGGING = 'admanager,pubsub';
// Enable logging for all Google APIs
process.env.GOOGLE_SDK_NODE_LOGGING = 'all';
Linux または macOS
# Enable logging for the Google Ad Manager API.
export GOOGLE_SDK_NODE_LOGGING=admanager
# Enable logging for the Google Ad Manager and pubsub APIs.
export GOOGLE_SDK_NODE_LOGGING=admanager,pubsub
# Enable logging for all Google APIs
export GOOGLE_SDK_NODE_LOGGING=all
Windows
# Enable logging for the Google Ad Manager API.
set GOOGLE_SDK_NODE_LOGGING=admanager
# Enable logging for the Google Ad Manager and pubsub APIs.
set GOOGLE_SDK_NODE_LOGGING=admanager,pubsub
# Enable logging for all Google APIs
set GOOGLE_SDK_NODE_LOGGING=all
または、ロギング バックエンドを変更するか、ログイベントをフックすることもできます。詳細については、Google ロギング ツールをご覧ください。
エラーを処理する
Node.js クライアント ライブラリでは、Ad Manager API のすべてのエラーで GaxiosError 型の例外がスローされます。
アド マネージャー API のエラーには、エラー メッセージと、API サポートチームに提供できる一意の requestId
値が含まれます。トラブルシューティングについては、API サポートにお問い合わせくださいをご覧ください。次の例では、requestId
の値とエラー メッセージを抽出します。
const admanagerClient = new NetworkServiceClient();
try {
const network = admanagerClient.getNetwork(
{ name: 'networks/NETWORK_CODE' }
);
console.log(network);
} catch(e) {
if (e instanceof GaxiosError) {
// Load the error
const apiError = JSON.parse(e.message).error;
const requestInfoType = 'type.googleapis.com/google.rpc.RequestInfo';
const requestInfo = apiError.details.find(detail => detail['@type'] === requestInfoType);
console.error(apiError.status + ' - ' + apiError.message);
console.error('RequestId: ' + requestInfo.requestId);
} else {
throw e;
}
}