مصادقة طلبات البيانات من واجهة برمجة التطبيقات

في هذا المثال، سنوضّح كيفية استخدام حسابات الخدمة لاستدعاء AdSense Platforms API لإنشاء الحسابات الفرعية وإدارتها.

الخطوة 1: إنشاء مشروع جديد على Google Cloud (أو استخدام مشروع حالي)

إذا كان لديك مشروع حالي على Google Cloud، يمكنك استخدامه. بخلاف ذلك، اتّبِع الدليل أدناه لإعداد مشروع جديد:

https://cloud.google.com/resource-manager/docs/creating-managing-projects

الخطوة 2: إنشاء حساب خدمة

يُعدّ استخدام حسابات الخدمة أفضل طريقة لإنشاء حسابات فرعية. اتّبِع الخطوات التالية لإنشاء حساب الخدمة:

  • انتقِل إلى صفحة حسابات الخدمة في Google Cloud.
  • يمكنك استخدام حساب خدمة حالي أو إنشاء حساب جديد:
    • انقر على "+ إنشاء حساب خدمة".
    • ملء نموذج "تفاصيل حساب الخدمة"
    • الخطوة 2 والخطوة 3 في الصفحة (منح إذن الوصول إلى المشاريع والمستخدمين) اختياريتان

مزيد من المعلومات حول إنشاء حسابات الخدمة وإدارتها

بعد إنشاء حساب الخدمة، عليك إرساله إلى Google لإضافته إلى حسابك على AdSense. هذا الإجراء ضروري، لأنّه يجب السماح لحساب الخدمة بالوصول إلى حسابك على AdSense. يُرجى إبلاغنا بذلك من خلال مدير حسابك.

الخطوة 3: تفعيل AdSense Platform API لمشروعك على Google Cloud

لا يمكن العثور على AdSense Platform API، ما يعني أنّه عليك الانتقال إلى الرابط التالي لتفعيلها في مشروعك:

https://console.developers.google.com/apis/api/adsenseplatform.googleapis.com/overview

الخطوة 4: إنشاء مفتاح خدمة

لإنشاء رموز مميّزة للوصول لاستخدامها في طلبات بيانات واجهة برمجة التطبيقات، عليك إنشاء مفتاح خدمة. اتبع الخطوات التالية:

  • انتقِل إلى صفحة حسابات الخدمة في Google Cloud.
  • في عمود "الإجراءات"، انقر على ثمّ انقر على "إدارة المفاتيح" لحساب الخدمة الذي تريد استخدامه لإنشاء حسابات فرعية.
  • انقر على "إضافة مفتاح"، ثم اختَر "إنشاء مفتاح جديد".
  • اترك JSON محدّدًا كنوع المفتاح، وانقر على "إنشاء".
  • سيتم إنشاء ملف json وتنزيله على جهاز الكمبيوتر. يُرجى الحفاظ على أمان هذا المفتاح لأنّه سيُستخدَم لمصادقة طلبات واجهة برمجة التطبيقات.

اطّلِع على مزيد من المعلومات عن إنشاء مفاتيح حسابات الخدمة وإدارتها.

الخطوة 5: استخدام مكتبات OAuth من Google لإنشاء رمز دخول مميز

توفّر Google مكتبات للمساعدة في إنشاء رموز الوصول التي يمكن استخدامها لإجراء طلبات البيانات من واجهة برمجة التطبيقات. تعرَّف على كيفية إنشاء بيانات اعتماد لحسابات الخدمة هنا:

https://developers.google.com/identity/protocols/oauth2/service-account#authorizingrequests

نطاق AdSense Platforms API هو كما يلي: https://www.googleapis.com/auth/adsense

مثال على لغة Python

from google.auth.transport import requests
from google.oauth2 import service_account

CREDENTIAL_SCOPES = ["https://www.googleapis.com/auth/adsense"]
CREDENTIALS_KEY_PATH = 'service.json'

def get_service_account_token():
  credentials = service_account.Credentials.from_service_account_file(
          CREDENTIALS_KEY_PATH, scopes=CREDENTIAL_SCOPES)
  credentials.refresh(requests.Request())
  return credentials.token

في هذه المرحلة، تكون مستعدًا لبدء طلب بيانات من واجهات برمجة التطبيقات. بما أنّ مكتبات البرامج غير متوافقة مع AdSense Platform API بعد، يجب إرسال طلبات HTTP مباشرةً بدلاً من ذلك. يجب تضمين رمز الوصول كعنوان في طلب HTTP. من المفترض أن يظهر العنوان على النحو التالي:

Authorization: OAuth <credentials>

يتم تضمين الأمثلة في صفحات واجهة برمجة التطبيقات.