การตั้งค่า Google Service Account
สร้าง Google service account เปิดใช้งาน Search Console และ Analytics API และเชื่อมต่อคีย์ JSON กับ 1MarketingTool
ใช้ Google service account เมื่อคุณต้องการให้ 1MarketingTool อ่านข้อมูลจาก Search Console และ GA4 โดยไม่ต้องลงชื่อเข้าใช้ผ่านบัญชี Google ส่วนตัว
เลือกขั้นตอนแบบรวดเร็วด้วย Cloud Shell หรือทำตามคำแนะนำแบบทีละขั้นตอนผ่าน Google Cloud Console
ตั้งค่าอย่างรวดเร็วด้วย Cloud Shell
Cloud Shell ทำงานในเบราว์เซอร์ โดยลงชื่อเข้าใช้บัญชี Google ของคุณอยู่แล้ว เปิด Cloud Shell วางสคริปต์ กด Enter แล้ว key.json จะถูกดาวน์โหลดเมื่อเสร็จ จากนั้นใช้ Import JSON ใน 1MarketingTool เพื่อโหลดคีย์ที่ดาวน์โหลดมาและบันทึก
set -e
PROJECT_ID=$(gcloud config get-value project 2>/dev/null)
if [ -z "$PROJECT_ID" ]; then
PROJECT_ID="marketing-tool-$RANDOM$RANDOM"
gcloud projects create "$PROJECT_ID" --set-as-default
fi
gcloud services enable iam.googleapis.com searchconsole.googleapis.com analyticsadmin.googleapis.com \
analyticsdata.googleapis.com indexing.googleapis.com --project "$PROJECT_ID"
SA_EMAIL="marketing-tool@$PROJECT_ID.iam.gserviceaccount.com"
gcloud iam service-accounts create marketing-tool --display-name "1MarketingTool" --project "$PROJECT_ID" || true
echo "Waiting for the service account to be ready..."
for i in $(seq 1 30); do
gcloud iam service-accounts describe "$SA_EMAIL" --project "$PROJECT_ID" >/dev/null 2>&1 && break
sleep 2
done
rm -f key.json
gcloud iam service-accounts keys create key.json --iam-account "$SA_EMAIL" --project "$PROJECT_ID"
cloudshell download key.json
echo "Grant read access in Search Console and GA4 to: $SA_EMAIL"1. สร้าง Google Cloud Project
เปิด Google Cloud Console ใช้เมนูแบบเลื่อนลงของโปรเจกต์ที่แถบด้านบน แล้วเลือก New Project คุณสามารถใช้โปรเจกต์ที่มีอยู่แล้วได้หากมีโปรเจกต์สำหรับเวิร์กสเปซนี้อยู่แล้ว
ตั้งชื่อโปรเจกต์ให้จดจำง่าย เช่น marketing-tool แล้วคลิก Create
ตรวจสอบให้แน่ใจว่าโปรเจกต์ใหม่ถูกเลือกที่แถบด้านบนก่อนดำเนินการต่อ
2. สร้าง Service Account
ไปที่ APIs & Services -> Credentials แล้วเลือก Create credentials -> Service account
กรอกชื่อ เช่น marketing-tool-reader Google จะสร้าง service account ID และที่อยู่อีเมลจากชื่อนั้น คลิก Create and continue
คุณสามารถข้ามการให้บทบาท Google Cloud project ได้ การเข้าถึง Search Console และ GA4 จะให้ทีหลังภายในผลิตภัณฑ์เหล่านั้น คลิก Done
คัดลอกอีเมล service account จะมีลักษณะคล้าย [email protected] คุณจะใช้อีเมลนี้เมื่อให้สิทธิ์เข้าถึง Search Console และ Analytics
3. ดาวน์โหลดคีย์ JSON
เปิด service account สลับไปที่แท็บ Keys แล้วเลือก Add key -> Create new key
เลือก JSON แล้วคลิก Create ไฟล์ .json จะถูกดาวน์โหลดลงคอมพิวเตอร์ของคุณ เก็บไฟล์นี้ไว้เป็นส่วนตัวเพราะเป็นข้อมูลรับรอง
4. เปิดใช้งาน API ที่จำเป็น
ใน Google Cloud Console เปิด APIs & Services -> Library แล้วค้นหา Google Search Console API
เลือก Google Search Console API
คลิก Enable สำหรับโปรเจกต์ที่เลือก
กลับไปที่ API Library ค้นหา Google Analytics Data API แล้วเปิดใช้งาน API นี้จำเป็นสำหรับการรายงาน GA4
สามารถเปิดใช้งาน Google Analytics Admin API เพิ่มเติมได้ สิ่งนี้ช่วยให้แอปแสดงรายการ properti GA4 เมื่อเวิร์กโฟลว์ที่เชื่อมต่อรองรับ
5. ให้สิทธิ์ใน Search Console
เปิด Google Search Console เลือกพร็อพเพอร์ตี้ที่คุณต้องการเชื่อมต่อ แล้วไปที่ Settings -> Users and permissions -> Add user
วางอีเมล service account จากขั้นตอนที่ 2 เลือกสิทธิ์ Full หรือ Restricted แล้วคลิก Add
6. ให้สิทธิ์ใน Google Analytics
เปิด Google Analytics คลิก Admin แล้วเลือกพร็อพเพอร์ตี้ GA4 ที่ถูกต้อง
ไปที่ Property access management คลิก + และเพิ่มอีเมล service account ใช้สิทธิ์ Viewer หรือ Analyst แล้วคลิก Add
7. เชื่อมต่อใน 1MarketingTool
ใน 1MarketingTool เปิดการตั้งค่าผู้ให้บริการหรือการบูรณาการ Google และนำเข้าไฟล์คีย์ JSON ที่คุณดาวน์โหลดไว้ก่อนหน้า
หลังจากบันทึก จับคู่พร็อพเพอร์ตี้ Search Console หรือ GA4 กับโปรเจกต์ที่ถูกต้องในแอป
หมายเหตุ
- หากข้อมูล Search Console หรือ GA4 ไม่ปรากฏทันที ให้รอสักครู่แล้วลองใหม่ สิทธิ์ของ Google อาจใช้เวลาหลายนาทีในการเผยแพร่
- service account หนึ่งบัญชีสามารถเพิ่มในพร็อพเพอร์ตี้ Search Console และ GA4 ได้มากเท่าที่ต้องการ แล้วจับคู่ต่อโปรเจกต์ใน 1MarketingTool
- หากคุณเปลี่ยนหรือลบคีย์ JSON ใน Google Cloud ให้นำเข้าคีย์ใหม่ในแอป
- เก็บคีย์ JSON ไว้ในที่ปลอดภัยและอย่า commit เข้า source control