API 시작하기
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
이 문서에서는
Google Bid Manager API API를 사용하면
쿼리 및 검색
Report 메타데이터입니다.
Bid Manager API v2는 사용 가능한 최신 버전이며 권장됩니다.
있습니다.
1. 시작하기 전에
Google Display & Video 360 개념에 익숙하지 않다면 Display & Video 360 고객센터를 읽고 UI를 실험해 보세요.
2. 인증 준비
Bid Manager API를 사용하려면 먼저 설정 도구를 사용하여 Google API 콘솔에서 프로젝트를 만들고 API를 사용 설정하고 사용자 인증 정보를 생성하는 방법을 알아보시기 바랍니다.
OAuth 2.0 사용자 인증 정보를 아직 만들지 않은 경우
사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 입력합니다. 이
사용자 인증 정보가 있는 경우
사용자 인증 정보 페이지에 클라이언트 ID가 표시됩니다. 클라이언트 비밀번호, 리디렉션 URI, JavaScript 원본 주소, 이메일 주소 등 자세한 내용을 보려면 클라이언트 ID를 클릭하세요.
자세한 내용은 요청 승인을 참고하세요.
3. Bid Manager API 호출하기
아래 탭에는 다양한 언어로 코딩하기 위한 빠른 시작이 나와 있습니다. 유사한 샘플 코드는 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 com.google.api.services.doubleclickbidmanager.model.ListQueriesResponse;
import com.google.api.services.doubleclickbidmanager.model.Query;
import java.io.Reader;
import java.nio.file.Files;
import java.nio.file.Paths;
클라이언트 보안 비밀번호 파일을 로드하고 승인 사용자 인증 정보를 생성합니다.
이 단계를 처음 수행하면 승인을 수락하라는 메시지가 표시됩니다.
메시지가 표시됩니다. 수락하기 전에 Display & Video 360에 액세스할 수 있는 Google 계정으로 로그인했는지 확인하세요. 앱이 승인됩니다.
현재 로그인된 계정을 대신하여
데이터에 액세스할 수 있습니다
// 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();
작업을 실행합니다.
// Perform an operation.
// Call the API, getting a list of 10 queries.
ListQueriesResponse queriesResponse = service.queries().list().setPageSize(10).execute();
// Print them out.
System.out.println("Id\t\tName");
if (queriesResponse.getQueries().size() > 0) {
for (int i = 0; i < queriesResponse.getQueries().size(); i++) {
Query currentQuery = queriesResponse.getQueries().get(i);
System.out.printf(
"%s\t%s%n",
currentQuery.getQueryId(),
currentQuery.getMetadata().getTitle());
}
} else {
System.out.println("No queries exist.");
}
Java에서 Bid Manager API를 사용하는 방법에 관한 자세한 내용은 Bid Manager API 예시의 README 파일을 참고하세요.
Python
필요한 라이브러리를 가져옵니다.
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient import discovery
클라이언트 보안 비밀번호 파일을 로드하고 승인 사용자 인증 정보를 생성합니다.
이 단계를 처음 수행하면 승인을 수락하라는 메시지가 표시됩니다.
메시지가 표시됩니다. 수락하기 전에 Display & Video 360에 액세스할 수 있는 Google 계정으로 로그인했는지 확인하세요. 앱이 승인됩니다.
현재 로그인된 계정을 대신하여
데이터에 액세스할 수 있습니다
# 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)
작업을 실행합니다.
# Build and execute queries.listqueries request.
response = service.queries().list(pageSize='10').execute()
# Print queries out.
if 'queries' in response:
print('Id\t\tName')
for query in response['queries']:
print('%s\t%s' % (query['queryId'], query['metadata']['title']))
else:
print('No queries exist.')
Python에서 Bid Manager API를 사용하는 방법에 대한 자세한 내용은
자세한 내용은
리드미
파일을
Bid Manager API 예
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);
작업을 실행합니다.
// Configure params for the Queries.listqueries request.
$optParams = array('pageSize' => 10);
// Execute the request.
$result = $service->queries->listQueries($optParams);
// Print the retrieved queries.
if (!empty($result->getQueries())) {
print('<pre><p>Id Name</p>');
foreach ($result->getQueries() as $query) {
printf('<p>%s %s</p>', $query->queryId, $query->metadata->title);
}
print('</pre>');
} else {
print '<p>No queries exist.</p>';
}
PHP에서 Bid Manager API를 사용하는 방법에 대한 자세한 내용은
자세한 내용은
리드미
파일을
Bid Manager API 예
4. 다음 단계
이제 클라이언트 라이브러리를 준비하고 실행했으므로
문서를 읽고 구현 빌드를 시작하세요
추가 가이드는
예약된 보고서를 활용해
및
보고 권장사항 준수
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-07-25(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-25(UTC)"],[[["\u003cp\u003eThe Google Bid Manager API allows you to programmatically manage queries and retrieve report metadata, streamlining your workflow.\u003c/p\u003e\n"],["\u003cp\u003eBefore using the API, ensure familiarity with Display & Video 360 by exploring its help center and user interface.\u003c/p\u003e\n"],["\u003cp\u003eTo begin, set up authentication using the provided setup tool, enabling the API and generating necessary credentials for secure access.\u003c/p\u003e\n"],["\u003cp\u003eUtilize the provided quickstarts and code examples for Java, Python, and PHP to integrate the API into your applications efficiently.\u003c/p\u003e\n"],["\u003cp\u003eAfter setup, delve into the reference documentation and explore guides on scheduled reports and reporting best practices for optimal utilization.\u003c/p\u003e\n"]]],[],null,["This document explains how to get started writing apps that use the\nGoogle Bid Manager API. The API lets you manage\n[Queries](/bid-manager/reference/rest/v2/queries) and retrieve\n[Report](/bid-manager/reference/rest/v2/queries.reports) metadata.\n\nBid Manager API v2 is the latest available and recommended\nversion.\n\n1. Before you start\n\nIf you're unfamiliar with Google Display \\& Video 360 concepts, read the\n[Display \\& Video 360 Help Center](//support.google.com/displayvideo/) and\nexperiment with the [UI](//displayvideo.google.com/).\n\n2. Prepare for authentication\n\nTo get started using Bid Manager API, you need to first\n[use\nthe setup tool](https://console.cloud.google.com/start/api?id=doubleclickbidmanager&credential=client_key), which guides you through creating a project in the\nGoogle API Console, enabling the API, and creating credentials.\nIf you haven't done so already, create your OAuth 2.0 credentials by clicking **Create credentials \\\u003e OAuth client ID** . After you've created the credentials, you can see your client ID on the **Credentials** page. Click the client ID for details, such as client secret, redirect URIs, JavaScript origins address, and email address.\n\nFor more information, see\n[Authorize Requests](/bid-manager/how-tos/authorizing).\n\n3. Call the Bid Manager API\n\nThe tabs below provide quickstarts for coding in various languages. Similar\nsample code can also be found in the\n[Bid Manager API Examples](//github.com/googleads/googleads-bidmanager-examples)\nrepo. \n\nJava\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 com.google.api.services.doubleclickbidmanager.model.ListQueriesResponse;\n import com.google.api.services.doubleclickbidmanager.model.Query;\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 ```\n4. **Perform an operation.**\n\n ```java\n // Perform an operation.\n // Call the API, getting a list of 10 queries.\n ListQueriesResponse queriesResponse = service.queries().list().setPageSize(10).execute();\n\n // Print them out.\n System.out.println(\"Id\\t\\tName\");\n if (queriesResponse.getQueries().size() \u003e 0) {\n for (int i = 0; i \u003c queriesResponse.getQueries().size(); i++) {\n Query currentQuery = queriesResponse.getQueries().get(i);\n System.out.printf(\n \"%s\\t%s%n\",\n currentQuery.getQueryId(),\n currentQuery.getMetadata().getTitle());\n }\n } else {\n System.out.println(\"No queries exist.\");\n }\n ```\n\nFor more detailed information about using the Bid Manager API with Java,\nrefer to the\n[README](//github.com/googleads/googleads-bidmanager-examples/blob/HEAD/java/README.md)\nfile in the\n[Bid Manager API examples](//github.com/googleads/googleads-bidmanager-examples).\n\nPython\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 ```\n4. **Perform an operation.**\n\n ```python\n # Build and execute queries.listqueries request.\n response = service.queries().list(pageSize='10').execute()\n\n # Print queries out.\n if 'queries' in response:\n print('Id\\t\\tName')\n for query in response['queries']:\n print('%s\\t%s' % (query['queryId'], query['metadata']['title']))\n else:\n print('No queries exist.')\n ```\n\nFor more detailed information about using the Bid Manager API with Python,\nrefer to the\n[README](//github.com/googleads/googleads-bidmanager-examples/blob/HEAD/python/README.md)\nfile in the\n[Bid Manager API examples](//github.com/googleads/googleads-bidmanager-examples).\n\nPHP\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 ```\n5. **Perform an operation.**\n\n ```php\n // Configure params for the Queries.listqueries request.\n $optParams = array('pageSize' =\u003e 10);\n\n // Execute the request.\n $result = $service-\u003equeries-\u003elistQueries($optParams);\n\n // Print the retrieved queries.\n if (!empty($result-\u003egetQueries())) {\n print('\u003cpre\u003e\u003cp\u003eId Name\u003c/p\u003e');\n foreach ($result-\u003egetQueries() as $query) {\n printf('\u003cp\u003e%s %s\u003c/p\u003e', $query-\u003equeryId, $query-\u003emetadata-\u003etitle);\n }\n print('\u003c/pre\u003e');\n } else {\n print '\u003cp\u003eNo queries exist.\u003c/p\u003e';\n }\n ```\n\nFor more detailed information about using the Bid Manager API with PHP,\nrefer to the\n[README](//github.com/googleads/googleads-bidmanager-examples/blob/HEAD/php/README.md)\nfile in the\n[Bid Manager API examples](//github.com/googleads/googleads-bidmanager-examples).\n\n4. Next steps\n\nNow that you have a client library up and running, explore the reference\ndocumentation and begin building out your implementation.\n\nAdditional guides are also available on\n[utilizing scheduled reports](/bid-manager/guides/scheduled-reports/overview)\nand\n[following reporting best practices](/bid-manager/guides/scheduled-reports/best-practices)."]]