วิธีตั้งค่าสิทธิ์เข้าถึง Data Manager API ด้วย SDK หรือ REST มีดังนี้
ข้อกำหนดเบื้องต้น
ก่อนที่จะใช้ Data API ได้ โปรดตรวจสอบว่าคุณมีสิ่งต่อไปนี้
- โปรเจ็กต์ Google Cloud
- บัญชี Google ที่ตรงตามเกณฑ์ทั้ง 2 ข้อต่อไปนี้
- ได้รับสิทธิ์เข้าถึง Data Manager API หลังจากที่คุณกรอกแบบฟอร์มความสนใจ Data Manager API หากเห็นหน้าข้อมูลผลิตภัณฑ์ API แสดงว่าคุณมีสิทธิ์เข้าถึง
- มี
serviceusage.services.enableสิทธิ์ในโปรเจ็กต์ Google Cloud หรือมีบทบาทที่มีสิทธิ์ดังกล่าว ตัวอย่างเช่นroles/ownerและroles/serviceusage.serviceUsageAdminมีสิทธิ์serviceusage.services.enableทั้งคู่ หากต้องการตรวจสอบสิทธิ์ ให้ดูดูสิทธิ์เข้าถึงปัจจุบัน
เปิดใช้ API
เปิดใช้ Data Manager API หากยังไม่ได้ดำเนินการ
หากไม่พบ Data Manager API ให้ตรวจสอบว่าบัญชี Google ของคุณมีคุณสมบัติตรงตามข้อกำหนดเบื้องต้น
ตั้งค่าการตรวจสอบสิทธิ์
เลือกและตั้งค่าวิธีการตรวจสอบสิทธิ์ เราขอแนะนำให้คุณตั้งค่าข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชันเพื่อค้นหาข้อมูลเข้าสู่ระบบจากสภาพแวดล้อมโดยอัตโนมัติ API นี้ไม่ได้ใช้คีย์ API
ต้องมีขอบเขต https://www.googleapis.com/auth/datamanager สำหรับข้อมูลเข้าสู่ระบบที่ใช้กับ Data Manager API ดูตัวอย่างวิธีใช้ขอบเขตได้ในเอกสารประกอบสำหรับคำสั่ง
gcloud auth application-default
login
ดูข้อมูลเพิ่มเติมเกี่ยวกับการตรวจสอบสิทธิ์และข้อมูลเข้าสู่ระบบสำหรับแอปได้ที่วิธีการตรวจสอบสิทธิ์ที่ Google และวิธีการทำงานของข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน
ตั้งค่าสิทธิ์เข้าถึงบัญชีปฏิบัติการ
ให้สิทธิ์เข้าถึง Destination แก่อีเมลที่เชื่อมโยงกับบัญชีผู้ใช้หรือบัญชีบริการ
ตั้งค่า SDK สำหรับภาษาโปรแกรม
ติดตั้ง SDK ที่ต้องการในเครื่องของคุณ
REST
- อัปเดตตัวยึดตำแหน่งในตัวอย่างต่อไปนี้ เช่น OPERATING_ACCOUNT_PRODUCT, OPERATING_ACCOUNT_ID และ AUDIENCE_ID ด้วยค่าสำหรับบัญชีและปลายทางของคุณ
- แทนที่ PROJECT_ID ด้วยรหัสของ Google Cloud
คัดลอกตัวอย่างไปยังบรรทัดคำสั่งเพื่อส่งคำขอ
นำแอตทริบิวต์
linkedAccountของรายการในdestinationsออกหากคุณไม่ได้เข้าถึงoperatingAccountโดยใช้ลิงก์ผลิตภัณฑ์ที่สร้างไว้#!/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": { "product": "OPERATING_ACCOUNT_PRODUCT", "accountId": "OPERATING_ACCOUNT_ID" }, "loginAccount": { "product": "LOGIN_ACCOUNT_PRODUCT", "accountId": "LOGIN_ACCOUNT_ID" }, "linkedAccount": { "product": "LINKED_ACCOUNT_PRODUCT", "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
Java
- ดาวน์โหลดและแตกไฟล์ google-cloud-ads-datamanager-v1-java.tar.gz
- ไปที่ไดเรกทอรี
google-cloud-ads-datamanager-v1-java เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างและเผยแพร่ไลบรารีไปยัง ที่เก็บ Maven ในเครื่องเพื่อใช้กับ Maven หรือ Gradle
./gradlew -Pversion=0.1.0 installในโปรเจ็กต์ Java ให้ประกาศทรัพยากร Dependency ในไลบรารี Data Manager API
Gradle:
implementation 'com.google.cloud:gapic-google-cloud-ads-datamanager-v1-java:0.1.0'Maven:
<dependency> <groupId>com.google.cloud</groupId> <artifactId>gapic-google-cloud-ads-datamanager-v1-java</artifactId> <version>0.1.0</version> </dependency>ไม่บังคับ รับไลบรารียูทิลิตีและตัวอย่างโค้ด
โคลนที่เก็บ GitHub
git clone https://github.com/googleads/data-manager-java.gitไปที่ไดเรกทอรี
data-manager-javaสร้างและเผยแพร่ไลบรารียูทิลิตีไปยังที่เก็บ Maven ในเครื่อง
./gradlew data-manager-util:installในโปรเจ็กต์ Java ให้ประกาศทรัพยากร Dependency ในไลบรารียูทิลิตี
Gradle:
implementation 'com.google.api-ads:data-manager-util:0.1.0'Maven:
<dependency> <groupId>com.google.api-ads</groupId> <artifactId>data-manager-util</artifactId> <version>0.1.0</version> </dependency>หากต้องการจัดรูปแบบและเข้ารหัสข้อมูล ให้ใช้ยูทิลิตี
UserDataFormatterและEncrypterในโปรเจ็กต์ Javaเรียกดูตัวอย่างโค้ดใน
data-manager-samplesไดเรกทอรีย่อยหรือบน GitHub หากต้องการเรียกใช้ตัวอย่างจากบรรทัดคำสั่ง ให้ใช้runงาน Gradleเช่น คำสั่งต่อไปนี้จะเรียกใช้
IngestAudienceMemberssample และพิมพ์ข้อความการใช้งาน./gradlew data-manager-samples:run \ --args='IngestAudienceMembers --help'หากต้องการช่วยให้คุณเริ่มต้นใช้งานข้อมูลตัวอย่างได้ ให้ใช้ไฟล์ที่
data-manager-samples/src/main/resources/sampledata/audience_members_1.csv
Python
- ดาวน์โหลด ads-datamanager-v1-py.tar.gz
- ไปยังไดเรกทอรีของการดาวน์โหลด
เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างไลบรารีและทำให้พร้อมใช้งานสำหรับ โปรเจ็กต์อื่นๆ ในสภาพแวดล้อม Python เดียวกัน
pip install ./ads-datamanager-v1-py.tar.gzในโปรเจ็กต์ Python ให้ประกาศการอ้างอิงไลบรารี Data Manager API ตัวอย่างเช่น หากใช้ไฟล์
requirements.txtในโปรเจ็กต์ ให้เพิ่มบรรทัดต่อไปนี้ลงในไฟล์google-ads-data-manager=0.1.0ไม่บังคับ รับไลบรารียูทิลิตีและตัวอย่างโค้ด
- ดาวน์โหลดและแตกไฟล์ data-manager-python.tar.gz
- ไปที่ไดเรกทอรี
data-manager-python หากต้องการติดตั้งไลบรารียูทิลิตีในสภาพแวดล้อม Python ให้เรียกใช้คำสั่งต่อไปนี้
pip install .ในโปรเจ็กต์ Python ให้ประกาศทรัพยากร Dependency ในไลบรารียูทิลิตี ตัวอย่างเช่น หากใช้ไฟล์
requirements.txtในโปรเจ็กต์ ให้เพิ่มบรรทัดต่อไปนี้ลงในไฟล์google-ads-data-manager-util=0.1.0หากต้องการจัดรูปแบบและเข้ารหัสข้อมูล ให้ใช้ยูทิลิตี
FormatterและEncrypterในโปรเจ็กต์ Pythonเรียกดูตัวอย่างโค้ดในไดเรกทอรีย่อย
samplesส่งอาร์กิวเมนต์--helpเมื่อเรียกใช้ตัวอย่างเพื่อพิมพ์ข้อความการใช้งานพร้อมพารามิเตอร์ที่คาดไว้หากต้องการช่วยให้คุณเริ่มต้นใช้งานข้อมูลตัวอย่างได้ ให้ใช้ไฟล์ที่
samples/sampledata/audience_members_1.csv
Node.js
- ดาวน์โหลดและแตกไฟล์ ads-datamanager-v1-nodejs.tar.gz
- ไปที่ไดเรกทอรี
ads-datamanager-v1-nodejs เรียกใช้คำสั่งต่อไปนี้เพื่อคอมไพล์และแพ็กไลบรารีลงในไฟล์
.tgzเพื่อใช้กับnpmnpm install npm packคำสั่งจะสร้างที่เก็บถาวรชื่อ
google-cloud-datamanager-0.1.0.tgzในโปรเจ็กต์ Node.js ให้ประกาศการขึ้นต่อกันในไลบรารี Data Manager API โดยการเพิ่มรายการ
dependenciesสำหรับเส้นทางและชื่อไฟล์แบบเต็ม ของไฟล์google-cloud-datamanager-0.1.0.tgz
PHP
- ดาวน์โหลดและแตกไฟล์ google-cloud-ads-datamanager-v1-php.tar.gz
- ไปที่ไดเรกทอรี
google-cloud-ads-datamanager-v1-php เรียกใช้คำสั่งต่อไปนี้เพื่อแก้ไขทรัพยากร Dependency สำหรับไลบรารี
composer update --prefer-distในไฟล์
composer.jsonของโปรเจ็กต์ PHP ในโฮสต์เดียวกัน ให้ประกาศ การอ้างอิงไลบรารี Data Manager API โดยทำตามขั้นตอนต่อไปนี้เพิ่ม
repositoriesส่วนที่ชี้ไปยังตำแหน่งของgoogle-cloud-ads-datamanager-v1-phpไดเรกทอรี"repositories" : [ { "type" : "path", "url" : "PATH_TO_CLIENT_LIBRARY" } ]ประกาศทรัพยากร Dependency ในไลบรารี Data Manager API
"require": { "googleads/data-manager": "^0.1.0" }
(ไม่บังคับ) รับไลบรารียูทิลิตีและตัวอย่างโค้ด
- ดาวน์โหลดและแตกไฟล์ data-manager-php.tar.gz
- ไปที่ไดเรกทอรี
data-manager-php เรียกใช้คำสั่งต่อไปนี้เพื่อแก้ไขทรัพยากร Dependency สำหรับไลบรารี
composer update --prefer-distในไฟล์
composer.jsonของโปรเจ็กต์ PHP ในโฮสต์เดียวกัน ให้ประกาศทรัพยากร Dependency ในไลบรารียูทิลิตีโดยทำตามขั้นตอนต่อไปนี้เพิ่มรายการในส่วน
repositoriesที่ชี้ไปยัง ตำแหน่งของไดเรกทอรีdata-manager-php"repositories" : [ { "type" : "path", "url" : "PATH_TO_UTILITY_LIBRARY" } ]ประกาศทรัพยากร Dependency ในไลบรารียูทิลิตี
"require": { "googleads/data-manager-util": "@dev" }
หากต้องการจัดรูปแบบข้อมูล ให้ใช้ยูทิลิตี
Formatterในโปรเจ็กต์ PHPเรียกดูตัวอย่างโค้ดในไดเรกทอรีย่อย
samplesเรียกใช้ตัวอย่าง โดยทำตามขั้นตอนต่อไปนี้ไปที่ไดเรกทอรี
samplesตั้งค่าตัวแปรสภาพแวดล้อม
DATA_MANAGER_PHP_LIBเป็นเส้นทาง ที่คุณแยกไลบรารีของไคลเอ็นต์export DATA_MANAGER_PHP_LIB="PATH_TO_CLIENT_LIBRARY"เรียกใช้คำสั่งต่อไปนี้เพื่อแก้ไขทรัพยากร Dependency สำหรับไลบรารี
composer update --prefer-distเรียกใช้ตัวอย่างโดยส่งอาร์กิวเมนต์ที่จำเป็น ส่งอาร์กิวเมนต์
--helpเมื่อเรียกใช้ตัวอย่างเพื่อพิมพ์ข้อความการใช้งานพร้อมพารามิเตอร์ที่คาดไว้
หากต้องการช่วยให้คุณเริ่มต้นใช้งานข้อมูลตัวอย่างได้ ให้ใช้ไฟล์ที่
samples/sampledata/audience_members_1.csv
ขั้นตอนถัดไป
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการส่งข้อมูลกลุ่มเป้าหมาย
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการส่งเหตุการณ์
- เรียกดูเอกสารประกอบข้อมูลอ้างอิงของ REST หรือ RPC