SDK 또는 REST를 사용하여 데이터 관리 도구 API에 대한 액세스를 설정하는 방법은 다음과 같습니다.
기본 요건
Data API를 사용하려면 다음이 필요합니다.
- Google Cloud 프로젝트
- Google Cloud 프로젝트에 대한
serviceusage.services.enable권한이 있는 Google 계정이거나 해당 권한이 포함된 역할이 있는 계정입니다. 예를 들어,roles/owner와roles/serviceusage.serviceUsageAdmin에는 모두serviceusage.services.enable권한이 포함되어 있습니다. 권한을 확인하려면 현재 액세스 보기를 참조하세요.
API 사용 설정
아직 사용 설정하지 않은 경우 데이터 관리 도구 API 사용 설정을 클릭하여 데이터 관리 도구 API를 사용 설정하거나 안내에 따라 이 단계를 수동으로 실행합니다.
Data Manager API 사용 설정Data Manager API를 찾을 수 없거나 Data Manager API 사용 설정에 실패하는 경우 Google 계정이 필수 조건을 충족하는지 확인하세요.
인증 설정
API 키 외에도 Google의 인증 방법을 사용할 수 있습니다. 사용 사례에 적합한 접근 방식을 결정하려면 사용 사례에 맞는 올바른 인증 방법을 선택하는 방법을 검토하는 것이 좋습니다.
두 가지 일반적인 인증 방법은 사용자 계정과 서비스 계정입니다.
- 사용자 계정: Google API 및 서비스와 직접 상호작용하는 사용자를 나타냅니다.
- 서비스 계정: 사람이 아닌 앱을 사용자로 나타냅니다. 이를 통해 앱에서 인증 및 승인을 관리할 수 있습니다. 예를 들어, 앱이 Google Cloud 리소스에 액세스해야 하는 경우입니다.
통합에서 애플리케이션 기본 사용자 인증 정보 (ADC)를 사용하여 환경에서 사용자 인증 정보를 자동으로 찾을 수 있으므로 인증을 위해 클라이언트 코드를 변경할 필요가 없습니다.
사용자 계정 또는 서비스 계정 가장을 선택하여 ADC를 설정합니다.
사용자 계정 사용자 인증 정보로 인증하는 단계는 다음과 같습니다.
프로젝트의 Google 인증 플랫폼 설정을 구성합니다.
Google Cloud Console에서 브랜딩 페이지를 엽니다.
프로젝트를 선택합니다.
양식을 작성하고 만들기를 클릭하세요.
Data Manager API 범위는 민감한 범위이므로 다음 단계가 필요합니다.
OAuth2 클라이언트 만들기를 클릭하여 프로젝트에서 OAuth2 클라이언트를 만들거나 지침에 따라 데스크톱 OAuth2 클라이언트를 만듭니다.
OAuth2 클라이언트 만들기마지막 단계에서 클라이언트 구성 다운로드를 클릭하고 선택한 다운로드 위치를 기록해 둡니다.
다음 명령을 실행하여 로컬 ADC 파일을 생성합니다. 이 명령을 실행하면 API를 사용하는 Google 계정에 로그인하라는 메시지가 표시되는 웹 흐름이 시작됩니다.
PATH_TO_CLIENT_JSON을 다운로드한 JSON 파일의 이름으로 바꾸세요.
gcloud auth application-default login \ --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/cloud-platform" \ --client-id-file="PATH_TO_CLIENT_JSON"다음 명령을 사용하여 자격 증명이 올바르게 설정되었는지 확인하세요. 성공하면 명령은 콘솔에 액세스 토큰을 인쇄합니다.
gcloud auth application-default print-access-token
앱의 인증 및 사용자 인증 정보에 대해 자세히 알아보려면 Google의 인증 방법 및 애플리케이션 기본 사용자 인증 정보 작동 방식을 참조하세요.
운영 계정 액세스 설정
사용자 계정과 연결된 이메일에Destination에 대한 액세스 권한을 부여합니다.
- Google Ads 또는 데이터 파트너 계정을 사용하는 경우 지침에 따라 사용자의 이메일을 계정에 추가하세요.
- Display & Video 360 계정을 사용하는 경우 지침에 따라 사용자의 이메일을 계정에 추가하세요.
프로그래밍 언어의 SDK 설정
로컬 머신에 원하는 SDK를 설치합니다.
REST
- 다음 샘플의 OPERATING_ACCOUNT_PRODUCT, OPERATING_ACCOUNT_ID, AUDIENCE_ID 등의 플레이스홀더를 계정 및 대상에 맞는 값으로 업데이트합니다.
- PROJECT_ID을 Google Cloud의 ID로 바꾸세요.
샘플을 명령줄에 복사하여 요청을 보냅니다.
확립된 제품 링크를 사용하여
operatingAccount에 액세스하지 않는 경우destinations의 항목에서linkedAccount속성을 제거합니다.#!/bin/bash # Uses gcloud to get an access token. If the Application Default # Credentials aren't for a service account, the command that specifies # --scopes fails. This sample falls back to the command without the # --scopes argument. DATA_MANAGER_ACCESS_TOKEN="$(gcloud auth application-default print-access-token --scopes=https://www.googleapis.com/auth/datamanager || \ gcloud auth application-default print-access-token)" # Fetches and prints the scope information for the access token. If you # get scope-related errors when you send the request in the next step, # verify that this output includes the Data Manager API scope: # https://www.googleapis.com/auth/datamanager curl https://www.googleapis.com/oauth2/v1/tokeninfo?access_token="${DATA_MANAGER_ACCESS_TOKEN}" # Sends the request. curl -X POST "https://datamanager.googleapis.com/v1/audienceMembers:ingest" \ --header "Authorization: Bearer ${DATA_MANAGER_ACCESS_TOKEN}" \ --header "x-goog-user-project: PROJECT_ID" \ --header "Content-Type: application/json" \ --data @- <<EOF { "destinations": [ { "operatingAccount": { "accountType": "OPERATING_ACCOUNT_TYPE", "accountId": "OPERATING_ACCOUNT_ID" }, "loginAccount": { "accountType": "LOGIN_ACCOUNT_TYPE", "accountId": "LOGIN_ACCOUNT_ID" }, "linkedAccount": { "accountType": "LINKED_ACCOUNT_TYPE", "accountId": "LINKED_ACCOUNT_ID" }, "productDestinationId": "AUDIENCE_ID" } ], "audienceMembers": [ { "userData": { "userIdentifiers": [ { "emailAddress": "07e2f1394b0ea80e2adca010ea8318df697001a005ba7452720edda4b0ce57b3" }, { "emailAddress": "1df6b43bc68dd38eca94e6a65b4f466ae537b796c81a526918b40ac4a7b906c7" } ] } }, { "userData": { "userIdentifiers": [ { "emailAddress": "2ef46c4214c3fc1b277a2d976d55194e12b899aa50d721f28da858c7689756e3" }, { "emailAddress": "54e410b14fa652a4b49b43aff6eaf92ad680d4d1e5e62ed71b86cd3188385a51" }, { "emailAddress": "e8bd3f8da6f5af73bec1ab3fbf7beb47482c4766dfdfc94e6bd89e359c139478" } ] } }, { "userData": { "userIdentifiers": [ { "emailAddress": "05bb62526f091b45d20e243d194766cca8869137421047dc53fa4876d111a6f0" }, { "emailAddress": "f1fcde379f31f4d446b76ee8f34860eca2288adc6b6d6c0fdc56d9eee75a2fa5" } ] } }, { "userData": { "userIdentifiers": [ { "emailAddress": "83a834cc5327bc4dee7c5408988040dc5813c7662611cd93b707aff72bf7d33f" }, { "emailAddress": "223ebda6f6889b1494551ba902d9d381daf2f642bae055888e96343d53e9f9c4" } ] } } ], "consent": { "adUserData": "CONSENT_GRANTED", "adPersonalization": "CONSENT_GRANTED" }, "encoding": "HEX", "termsOfService": { "customerMatchTermsOfServiceStatus": "ACCEPTED" }, "validateOnly": true } EOF
.NET
클라이언트 라이브러리 설치
.NET 클라이언트 라이브러리 설치 가이드의 지침에 따라 프로젝트의 클라이언트 라이브러리에 종속성을 추가합니다.
선택 사항: 유틸리티 라이브러리와 코드 샘플을 받으세요.
data-manager-dotnet.tar.gz를 다운로드하고 추출합니다.
.NET 프로젝트에서 유틸리티 라이브러리에 대한
ProjectReference종속성을 선언합니다. PATH_TO_UTILITY_LIBRARY를data-manager-dotnet.tar.gz에서data-manager-dotnet디렉터리를 추출한 위치로 바꾸세요.<ProjectReference Include="PATH_TO_UTILITY_LIBRARY\Google.Ads.DataManager.Util\src\Google.Ads.DataManager.Util.csproj" />데이터 형식을 지정하려면 .NET 프로젝트에서
Formatter유틸리티를 사용하세요.samples하위 디렉터리에서 코드 샘플을 찾아봅니다.samples디렉토리로 변경하고dotnet run를 사용하여 사용 가능한 샘플 목록을 가져옵니다.dotnet run예상 매개변수와 함께 사용 설명을 인쇄하려면 샘플을 실행할 때
--help인수를 전달합니다.dotnet run -- ingest-audience-members --help샘플 데이터로 시작하는 데 도움이 되도록
samples/sampledata/audience_members_1.csv에 있는 파일을 사용하세요.
자바
클라이언트 라이브러리 설치
- google-cloud-ads-datamanager-v1-java.tar.gz를 다운로드하고 압축을 풉니다.
google-cloud-ads-datamanager-v1-java디렉터리로 이동합니다.다음 명령을 실행하여 Maven이나 Gradle과 함께 사용할 수 있도록 라이브러리를 빌드하고 로컬 Maven 저장소에 게시합니다.
./gradlew installJava 프로젝트에서 Data Manager API 라이브러리에 대한 종속성을 선언합니다.
Gradle:
implementation 'com.google.cloud:gapic-google-cloud-ads-datamanager-v1-java:0.1.4'메이븐:
<dependency> <groupId>com.google.cloud</groupId> <artifactId>gapic-google-cloud-ads-datamanager-v1-java</artifactId> <version>0.1.4</version> </dependency>
선택 사항: 유틸리티 라이브러리와 코드 샘플을 받으세요.
GitHub 저장소를 복제합니다.
git clone https://github.com/googleads/data-manager-java.gitdata-manager-java디렉터리로 이동합니다.유틸리티 라이브러리를 빌드하여 로컬 Maven 저장소에 게시합니다.
./gradlew data-manager-util:installJava 프로젝트에서 유틸리티 라이브러리에 대한 종속성을 선언합니다.
Gradle:
implementation 'com.google.api-ads:data-manager-util:0.1.0'메이븐:
<dependency> <groupId>com.google.api-ads</groupId> <artifactId>data-manager-util</artifactId> <version>0.1.0</version> </dependency>데이터를 포맷하고 암호화하려면 Java 프로젝트에서
UserDataFormatter및Encrypter유틸리티를 사용하세요.data-manager-samples하위 디렉토리 또는 GitHub에서 코드 샘플을 찾아보세요. 명령줄에서 샘플을 실행하려면 Gradlerun작업을 사용하세요.예를 들어, 다음 명령은
IngestAudienceMembers샘플을 실행하고 사용법 설명을 출력합니다../gradlew data-manager-samples:run \ --args='IngestAudienceMembers --help'샘플 데이터로 시작하는 데 도움이 되도록
data-manager-samples/src/main/resources/sampledata/audience_members_1.csv에 있는 파일을 사용하세요.
Node.js
클라이언트 라이브러리 설치
- ads-datamanager-v1-nodejs.tar.gz를 다운로드하고 압축을 해제합니다.
ads-datamanager-v1-nodejs디렉터리로 이동합니다.다음 명령어를 실행하여 클라이언트 라이브러리를 컴파일하고
npm에서 사용할 수 있도록.tgz파일로 패키징합니다.npm pack이 명령어는
google-cloud-datamanager-0.1.4.tgz이라는 보관 파일을 생성합니다. 다음 단계에서 사용할 수 있도록 파일 위치를 기록해 둡니다.Node.js 프로젝트에서
google-cloud-datamanager-0.1.4.tgz파일의 전체 경로와 파일 이름에 대한dependencies항목을 추가하여 데이터 관리 도구 API 클라이언트 라이브러리의 종속 항목을 선언합니다.{ "dependencies": { ... "@google-cloud/datamanager": "file:PATH_TO_CLIENT_LIBRARY/google-cloud-datamanager-0.1.4.tgz", ... } }
선택 사항: 유틸리티 라이브러리와 코드 샘플을 받으세요.
- data-manager-node.tar.gz를 다운로드하고 압축을 풉니다.
data-manager-node디렉터리로 이동합니다.util디렉터리로 변경합니다.cd util다음 명령어를 실행하여 유틸리티 라이브러리를 컴파일하고
npm에서 사용할 수 있도록.tgz파일로 패키징합니다.npm pack이 명령어는
google-ads-datamanager-util-0.1.0.tgz이라는 보관 파일을 생성합니다. 다음 단계에서 사용할 수 있도록 파일 위치를 기록해 둡니다.Node.js 프로젝트에서
google-ads-datamanager-util-0.1.0.tgz파일의 전체 경로와 파일 이름에 대한dependencies항목을 추가하여 데이터 관리 도구 API 유틸리티 라이브러리의 종속 항목을 선언합니다.{ "dependencies": { ... "@google-ads/data-manager-util": "file:PATH_TO_UTILITY_LIBRARY/google-ads-datamanager-util-0.1.0.tgz", ... } }데이터를 포맷하려면 Node.js 프로젝트에서
UserDataFormatter유틸리티를 사용하세요.samples하위 디렉터리에서 코드 샘플을 찾아봅니다. 다음 단계에 따라 샘플을 실행하세요.google-cloud-datamanager-0.1.4.tgz을data-manager-node디렉터리의 상위 디렉터리에 복사합니다.data-manager-node아래의samples디렉터리로 이동합니다.다음 명령어를 실행하여 샘플을 컴파일합니다.
npm run compile필요한 인수를 전달하여 샘플을 실행합니다. 샘플을 실행할 때
--help인수를 전달하여 예상 매개변수와 함께 사용법 문을 출력합니다.예를 들어 다음 명령어는
ingest_audience_members샘플을 실행하고 사용법 문을 출력합니다.npx ts-node audiences/ingest_audience_members.ts --help
샘플 데이터를 시작하려면
samples/sampledata/audience_members_1.csv의 파일을 사용하세요.
PHP
클라이언트 라이브러리 설치
- google-cloud-ads-datamanager-v1-php.tar.gz를 다운로드하고 추출합니다.
google-cloud-ads-datamanager-v1-php디렉터리로 이동합니다.라이브러리의 종속성을 해결하려면 다음 명령을 실행하세요.
composer update --prefer-dist동일한 호스트에 있는 PHP 프로젝트의
composer.json파일에서 다음 단계에 따라 Data Manager API 라이브러리의 종속 항목을 선언합니다.google-cloud-ads-datamanager-v1-php디렉터리의 위치를 가리키는repositories섹션을 추가합니다."repositories" : [ { "type" : "path", "url" : "PATH_TO_CLIENT_LIBRARY" } ]데이터 관리자 API 라이브러리에 대한 종속 항목을 선언합니다.
"require": { "googleads/data-manager": "0.1.4" }
선택 사항: 유틸리티 라이브러리와 코드 샘플을 받으세요.
- data-manager-php.tar.gz를 다운로드하고 추출합니다.
data-manager-php디렉터리로 이동합니다.라이브러리의 종속성을 해결하려면 다음 명령을 실행하세요.
composer update --prefer-dist동일한 호스트의 PHP 프로젝트의
composer.json파일에서 다음 단계를 사용하여 유틸리티 라이브러리에 대한 종속성을 선언합니다.repositories섹션에data-manager-php디렉터리의 위치를 가리키는 항목을 추가합니다."repositories" : [ { "type" : "path", "url" : "PATH_TO_UTILITY_LIBRARY" } ]유틸리티 라이브러리에 대한 종속 항목을 선언합니다.
"require": { "googleads/data-manager-util": "@dev" }
데이터를 포맷하려면 PHP 프로젝트에서
Formatter유틸리티를 사용하세요.samples하위 디렉토리에서 코드 샘플을 찾아보세요. 다음 단계에 따라 샘플을 실행하세요.samples디렉터리로 이동합니다.DATA_MANAGER_PHP_LIB환경 변수를 클라이언트 라이브러리를 추출한 경로로 설정합니다.export DATA_MANAGER_PHP_LIB="PATH_TO_CLIENT_LIBRARY"라이브러리의 종속성을 해결하려면 다음 명령을 실행하세요.
composer update --prefer-dist필요한 인수를 전달하여 샘플을 실행합니다. 예상 매개변수와 함께 사용 설명을 인쇄하려면 샘플을 실행할 때
--help인수를 전달합니다.
샘플 데이터로 시작하는 데 도움이 되도록
samples/sampledata/audience_members_1.csv에 있는 파일을 사용하세요.
Python
클라이언트 라이브러리 설치
Python 클라이언트 라이브러리 설치 가이드의 안내에 따라 프로젝트에 google-ads-datamanager 클라이언트 라이브러리에 대한 종속 항목을 추가합니다.
선택사항: 유틸리티 라이브러리 및 코드 샘플을 가져옵니다.
- data-manager-python.tar.gz를 다운로드하고 압축을 풉니다.
data-manager-python디렉터리로 이동합니다.Python 환경에 유틸리티 라이브러리를 설치하려면 다음 명령을 실행하세요.
pip install .Python 프로젝트에서 유틸리티 라이브러리에 대한 종속성을 선언합니다. 예를 들어 프로젝트에서
requirements.txt파일을 사용하는 경우 파일에 다음 줄을 추가합니다.google-ads-data-manager-util=0.2.0데이터를 포맷하고 암호화하려면 Python 프로젝트에서
Formatter및Encrypter유틸리티를 사용합니다.samples하위 디렉토리에서 코드 샘플을 찾아보세요. 샘플을 실행하려면 필요한 종속성을 설치하세요.pip install .[samples]예상 매개변수와 함께 사용 설명을 인쇄하려면 샘플을 실행할 때
--help인수를 전달합니다.샘플 데이터로 시작하는 데 도움이 되도록
samples/sampledata/audience_members_1.csv에 있는 파일을 사용하세요.
Ruby
클라이언트 라이브러리 설치
Ruby 클라이언트 라이브러리 설치 가이드의 안내에 따라 프로젝트에 클라이언트 라이브러리 종속 항목을 추가합니다.