클라이언트 설치 및 구성
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
Google API 클라이언트 라이브러리를 Bid Manager API와 함께 사용하는 것이 좋으므로
HTTP 요청과 응답을 수동으로 처리할 필요가 없습니다. Google API
클라이언트 라이브러리는 더 나은 언어 통합, 향상된 보안,
사용자 승인이 필요한 호출에 대한 지원이 제공됩니다.
Bid Manager API는 HTTP 및 JSON에 기반합니다. 요청을 처리하려는 경우
모든 표준 HTTP 클라이언트를 사용할 수 있습니다
클라이언트 라이브러리 설치
Google은 다양한 환경에서 Bid Manager API를 지원하는 클라이언트 라이브러리를 제공합니다.
사용할 수 있습니다. 클라이언트 라이브러리의 전체 목록은 샘플 및
라이브러리 탭을 선택합니다.
Bid Manager API 개발자 가이드에서는 다음 세 가지에 대한 코드 스니펫을 제공합니다.
언어:
이러한 언어로 된 전체 통합 예는 Bid Manager API 예제를 참조하세요.
GitHub 저장소에 있어야 합니다.
OAuth 2.0 사용자 인증 정보 및 설치된 클라이언트 사용
라이브러리를 사용하면 Bid Manager API를 사용할 준비가 된 것입니다. 다음 단계를 따르세요.
클라이언트를 승인하고 구성합니다.
자바
필요한 라이브러리를 가져옵니다.
import static java.nio.charset.StandardCharsets.UTF_8;
import com.google.api.client.auth.oauth2.Credential;
import com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp;
import com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver;
import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow;
import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets;
import com.google.api.client.googleapis.util.Utils;
import com.google.api.services.doubleclickbidmanager.DoubleClickBidManager;
import java.io.Reader;
import java.nio.file.Files;
import java.nio.file.Paths;
클라이언트 보안 비밀 파일을 로드하고 승인 사용자 인증 정보를 생성합니다.
이 단계를 처음 수행하면 승인을 수락하라는 메시지가 표시됩니다.
메시지가 표시됩니다. 수락하기 전에
디스플레이 및 동영상 360 앱이 승인됩니다.
현재 로그인된 계정을 대신하여
데이터에 액세스할 수 있습니다
// Read client secrets file.
GoogleClientSecrets clientSecrets;
try (Reader reader = Files.newBufferedReader(Paths.get(path-to-client-secrets-file), UTF_8)) {
clientSecrets = GoogleClientSecrets.load(Utils.getDefaultJsonFactory(), reader);
}
// Generate authorization credentials.
// Set up the authorization code flow.
GoogleAuthorizationCodeFlow flow =
new GoogleAuthorizationCodeFlow.Builder(
Utils.getDefaultTransport(),
Utils.getDefaultJsonFactory(),
clientSecrets,
oauth-scopes)
.build();
Credential credential =
new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
승인된 API 클라이언트를 만듭니다.
// Create authorized API client.
DoubleClickBidManager service =
new DoubleClickBidManager.Builder(credential.getTransport(), credential.getJsonFactory(), credential)
.setApplicationName("bidmanager-java-installed-app-sample")
.build();
Python
필요한 라이브러리를 가져옵니다.
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient import discovery
클라이언트 보안 비밀 파일을 로드하고 승인 사용자 인증 정보를 생성합니다.
이 단계를 처음 수행하면 승인을 수락하라는 메시지가 표시됩니다.
메시지가 표시됩니다. 수락하기 전에
디스플레이 및 동영상 360 앱이 승인됩니다.
현재 로그인된 계정을 대신하여
데이터에 액세스할 수 있습니다
# Set up a flow object to create the credentials using the
# client secrets file and OAuth scopes.
credentials = InstalledAppFlow.from_client_secrets_file(
path-to-client-secrets-file, oauth-scopes).run_local_server()
승인된 API 클라이언트를 만듭니다.
# Build the discovery document URL.
discovery_url = f'https://doubleclickbidmanager.googleapis.com/$discovery/rest?version=v2'
# Build the API service.
service = discovery.build(
'doubleclickbidmanager',
'v2',
discoveryServiceUrl=discovery_url,
credentials=credentials)
PHP
이 샘플은 기본 제공 웹 서버를 사용하여 PHP를 실행 중이고
사용자 인증 정보가 관련 웹페이지로 리디렉션되도록 설정한 경우. 대상
예를 들어 index.php
파일에서 이 코드를 다음을 사용하여 실행할 수 있습니다.
이후 http://localhost:8000
(으)로 리디렉션되도록 구성된 명령어 및 사용자 인증 정보
인증:
php -S localhost:8000 -t ./
Google API PHP 클라이언트를 다운로드하고 설치합니다.
선호되는 방법은 Composer를 사용하는 것입니다.
composer require google/apiclient:^2.12.1
설치가 완료되면 자동 로더를 포함해야 합니다.
require_once '/path/to/your-project/vendor/autoload.php';
Google_Client 객체를 만듭니다.
$client = new Google_Client();
클라이언트를 설정하고 필요한 경우 인증 URL로 리디렉션하고 액세스 토큰을 가져옵니다.
이 단계를 처음 수행하면 승인을 수락하라는 메시지가 표시됩니다.
메시지가 표시됩니다. 수락하기 전에
디스플레이 및 동영상 360 앱이 승인됩니다.
현재 로그인된 계정을 대신하여
데이터에 액세스할 수 있습니다
// Set up the client.
$client->setApplicationName('DBM API PHP Samples');
$client->addScope(oauth-scope);
$client->setAccessType('offline');
$client->setAuthConfigFile(path-to-client-secrets-file);
// If the code is passed, authenticate. If not, redirect to authentication page.
if (isset($_GET['code'])) {
$client->authenticate($_GET['code']);
} else {
$authUrl = $client->createAuthUrl();
header('Location: ' . $authUrl);
}
// Exchange authorization code for an access token.
$accessToken = $client->getAccessToken();
$client->setAccessToken($accessToken);
디스플레이 및 Video 360 API 서비스
$service = new Google_Service_DoubleClickBidManager($client);
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-08-31(UTC)
[null,null,["최종 업데이트: 2025-08-31(UTC)"],[[["\u003cp\u003eThe Bid Manager API is built on HTTP and JSON, and Google recommends using their client libraries for easier integration and security.\u003c/p\u003e\n"],["\u003cp\u003eClient libraries for the Bid Manager API are available in various programming languages, including Java, Python, and PHP, with code snippets and examples provided.\u003c/p\u003e\n"],["\u003cp\u003eTo use the API, you need OAuth 2.0 credentials and an installed client library, and you can configure your client using provided code samples for Java, Python, and PHP.\u003c/p\u003e\n"],["\u003cp\u003eThe provided code samples demonstrate how to import libraries, load client secrets, generate authorization credentials, and create authorized API clients in Java, Python, and PHP.\u003c/p\u003e\n"]]],["The document outlines using Google API client libraries for the Bid Manager API, built on HTTP and JSON. It details the process for Java, Python, and PHP. Key steps include: installing a client library, importing necessary libraries, loading client secrets, generating OAuth 2.0 authorization credentials, and creating an authorized API client. The process involves browser-based authorization prompts, ensuring the user is signed into a Google account with Display & Video 360 access. Specific code examples are given.\n"],null,["# Install and configure your client\n\nWe recommend using the Google API client libraries with the Bid Manager API, so you\ndon't have to manually process HTTP requests and responses. The Google API\nclient libraries can provide better language integration, improved security, and\nsupport for making calls that require user authorization.\n\nThe Bid Manager API is built on HTTP and JSON. If you prefer to process requests\nand responses manually, you can use any standard HTTP client.\n\nInstall a client library\n------------------------\n\nWe offer client libraries that support the Bid Manager API in a variety of\nprogramming languages. For a full list of client libraries, see the [Samples and\nlibraries tab](/bid-manager/libraries).\n\nThe Bid Manager API developer guides provide code snippets for the following three\nlanguages:\n\n- [Java](//github.com/googleads/googleads-bidmanager-examples/blob/main/java/v2/README.md)\n- [Python](//github.com/googleads/googleads-bidmanager-examples/blob/main/python/v2/README.md)\n- [PHP](//github.com/googleads/googleads-bidmanager-examples/blob/main/php/v2/README.md)\n\nFor full integration examples in these languages, see our [Bid Manager API examples\nGitHub repository](//github.com/googleads/googleads-bidmanager-examples).\n\nConfigure your client\n---------------------\n\nWith [OAuth 2.0 credentials](/bid-manager/guides/get-started/generate-credentials#generate_credentials) and an [installed client\nlibrary](#install_a_client_library), you're ready to use the Bid Manager API. Here's how to\nauthorize and configure your client: \n\n### Java\n\n1. **Import the necessary libraries.**\n\n ```java\n import static java.nio.charset.StandardCharsets.UTF_8;\n import com.google.api.client.auth.oauth2.Credential;\n import com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp;\n import com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver;\n import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow;\n import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets;\n import com.google.api.client.googleapis.util.Utils;\n import com.google.api.services.doubleclickbidmanager.DoubleClickBidManager;\n import java.io.Reader;\n import java.nio.file.Files;\n import java.nio.file.Paths;\n ```\n2. **Load the client secrets file and generate authorization credentials.**\n\n\n The first time you perform this step, you are asked to accept an authorization\n prompt in your browser. Before accepting, make sure you're signed in with a\n Google Account that has access to Display \\& Video 360. Your app will be authorized\n to access data on behalf of whichever account is currently signed in.\n\n ```java\n // Read client secrets file.\n GoogleClientSecrets clientSecrets;\n try (Reader reader = Files.newBufferedReader(Paths.get(path-to-client-secrets-file), UTF_8)) {\n clientSecrets = GoogleClientSecrets.load(Utils.getDefaultJsonFactory(), reader);\n }\n\n // Generate authorization credentials.\n // Set up the authorization code flow.\n GoogleAuthorizationCodeFlow flow =\n new GoogleAuthorizationCodeFlow.Builder(\n Utils.getDefaultTransport(),\n Utils.getDefaultJsonFactory(),\n clientSecrets,\n oauth-scopes)\n .build();\n\n Credential credential =\n new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize(\"user\");\n ```\n3. **Create an authorized API client.**\n\n ```java\n // Create authorized API client.\n DoubleClickBidManager service =\n new DoubleClickBidManager.Builder(credential.getTransport(), credential.getJsonFactory(), credential)\n .setApplicationName(\"bidmanager-java-installed-app-sample\")\n .build();\n ```\n\n### Python\n\n1. **Import the necessary libraries.**\n\n ```python\n from google_auth_oauthlib.flow import InstalledAppFlow\n from googleapiclient import discovery\n ```\n2. **Load the client secrets file and generate authorization credentials.**\n\n\n The first time you perform this step, you are asked to accept an authorization\n prompt in your browser. Before accepting, make sure you're signed in with a\n Google Account that has access to Display \\& Video 360. Your app will be authorized\n to access data on behalf of whichever account is currently signed in.\n\n ```python\n # Set up a flow object to create the credentials using the\n # client secrets file and OAuth scopes.\n credentials = InstalledAppFlow.from_client_secrets_file(\n path-to-client-secrets-file, oauth-scopes).run_local_server()\n ```\n3. **Create an authorized API client.**\n\n ```python\n # Build the discovery document URL.\n discovery_url = f'https://doubleclickbidmanager.googleapis.com/$discovery/rest?version=v2'\n\n # Build the API service.\n service = discovery.build(\n 'doubleclickbidmanager',\n 'v2',\n discoveryServiceUrl=discovery_url,\n credentials=credentials)\n ```\n\n### PHP\n\n\nThis sample assumes that you are running the PHP with a built-in web server and\nhave configured your credentials to redirect to the relevant web page. For\nexample, this code, in an `index.php` file, can be run using the following\ncommand and credentials configured to redirect to `http://localhost:8000` after\nauthentication: \n\n```php\nphp -S localhost:8000 -t ./\n```\n\n\u003cbr /\u003e\n\n1. **Download and install the Google API PHP Client.**\n\n The preferred method is via [Composer](https://getcomposer.org/): \n\n ```php\n composer require google/apiclient:^2.12.1\n ```\n\n \u003cbr /\u003e\n\n Once installed, be sure to include the autoloader \n\n ```php\n require_once '/path/to/your-project/vendor/autoload.php';\n ```\n\n \u003cbr /\u003e\n\n2. **Create a Google_Client object.**\n\n ```php\n $client = new Google_Client();\n ```\n3. **Set up the client, redirect to authentication URL if needed, and retrieve an access token.**\n\n\n The first time you perform this step, you are asked to accept an authorization\n prompt in your browser. Before accepting, make sure you're signed in with a\n Google Account that has access to Display \\& Video 360. Your app will be authorized\n to access data on behalf of whichever account is currently signed in.\n\n ```php\n // Set up the client.\n $client-\u003esetApplicationName('DBM API PHP Samples');\n $client-\u003eaddScope(\u003cvar translate=\"no\"\u003eoauth-scope\u003c/var\u003e);\n $client-\u003esetAccessType('offline');\n $client-\u003esetAuthConfigFile(\u003cvar translate=\"no\"\u003epath-to-client-secrets-file\u003c/var\u003e);\n\n // If the code is passed, authenticate. If not, redirect to authentication page.\n if (isset($_GET['code'])) {\n $client-\u003eauthenticate($_GET['code']);\n } else {\n $authUrl = $client-\u003ecreateAuthUrl();\n header('Location: ' . $authUrl);\n }\n\n // Exchange authorization code for an access token.\n $accessToken = $client-\u003egetAccessToken();\n $client-\u003esetAccessToken($accessToken);\n ```\n4. **Construct a client for the Display \\& Video 360 API service.**\n\n ```php\n $service = new Google_Service_DoubleClickBidManager($client);\n ```"]]