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

نوضّح في هذا المثال كيف يمكن استخدام حسابات الخدمة لطلب واجهة برمجة تطبيقات 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 لمشروعك على Google Cloud

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

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: https://www.googleapis.com/auth/adsense

مثال على لغة بايثون

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>

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