إعداد OAuth واستخدامه

يجب السماح بجميع طلبات البيانات من Local Services API من خلال OAuth 2.0. يتيح ذلك لتطبيق العميل الذي يستخدم Local Services API الوصول إلى حساب المستخدم على "إعلانات الخدمات المحلية" بدون الحاجة إلى معالجة معلومات تسجيل الدخول الخاصة بالمستخدم أو تخزينها.

تستخدم Local Services API بروتوكول OAuth 2.0 لمصادقة المستخدمين. لمزيد من المعلومات حول OAuth 2.0، يُرجى الاطّلاع على استخدام OAuth 2.0 للوصول إلى Google APIs.

إعداد مشروع على Google API Console لاستخدام Local Services API

لمصادقة مستخدمي "إعلانات Google" وتفويضهم، يجب أن تتوفّر لديك بيانات اعتماد للوصول إلى خوادم OAuth 2.0 من Google. تحدّد بيانات الاعتماد هذه تطبيقك لدى Google وتتيح لك إنشاء رموز OAuth المميزة لإدارة مستخدمي "إعلانات Google". استخدِم وحدة تحكّم Google API لإدارة إذن الوصول إلى بيانات اعتماد Google OAuth 2.0.

لتلقّي بيانات الاعتماد هذه، اتّبِع الخطوات التالية:

  1. إنشاء مشروع لإجراء ذلك، انتقِل إلى وحدة تحكّم Google API. انقر على إنشاء مشروع، وأدخِل اسمًا، ثم انقر على إنشاء.

  2. فعِّل واجهة برمجة التطبيقات "الخدمات المحلية" في مشروعك باتّباع الخطوات التالية:

    1. افتح "مكتبة واجهات برمجة التطبيقات" في Google API Console. اختَر مشروعك أو أنشئ مشروعًا جديدًا إذا طُلب منك ذلك. تسرد "مكتبة واجهات برمجة التطبيقات" جميع واجهات برمجة التطبيقات المتاحة، ويتم تجميعها حسب فئة المنتج ومدى شيوعه.

      إذا لم تظهر Local Services API في القائمة، استخدِم مربّع البحث للعثور عليها.

    2. اختَر Local Services API، ثم انقر على تفعيل.

  3. اختَر نوع تطبيق. تستخدم Local Services API أنواع التطبيقات نفسها التي تستخدمها Google Ads API. لمزيد من التفاصيل حول نوع التطبيق الذي يجب استخدامه، يُرجى الاطّلاع على اختيار نوع تطبيق.

  4. أنشئ معرّف عميل وسر عميل. بالنسبة إلى Local Services API، اتّبِع الخطوات نفسها لإنشاء رقم تعريف عميل وسر عميل كما هو الحال مع Google Ads API. الخطوات متطابقة في كلتا حالتَي الاستخدام.

استخدام مكتبة البرامج للحصول على رموز OAuth 2.0 المميزة

للاطّلاع على قائمة بمكتبات البرامج التي يمكنك استخدامها لتقديم طلبات تفويض OAuth 2.0، يُرجى الاطّلاع على مكتبات البرامج. اتّبِع التعليمات الخاصة بالمكتبة لمعرفة كيفية استخدام رمز مميز للتحديث للحصول على رمز دخول جديد.

كيفية الحصول على رمز مميز لإعادة تحميل OAuth 2.0

ننصحك باستخدام مكتبات البرامج في بيئة الإنتاج للمصادقة على المستخدمين. إذا أردت استخدام برنامج HTTP للعملاء لأغراض الاختبار، اتّبِع التعليمات التالية للحصول على رمز مميز لتحديث بروتوكول OAuth 2.0 ورمز دخول. الخطوات 1 و2 و3 هي تعليمات إعداد لمرة واحدة يجب تنفيذها يدويًا، ويمكن بعد ذلك تنفيذ الخطوتين 4 و5 تلقائيًا بدون تدخل بشري، مثل مهمة cron.

  1. نزِّل أداة curl وثبِّتها، وهي أداة سطر أوامر لإجراء طلبات HTTP على الويب.

  2. اتّبِع التعليمات الواردة في صفحة مساحة بروتوكول OAuth للحصول على رمز مميز لإعادة تحميل OAuth 2.0. استخدِم النطاق التالي لواجهة برمجة التطبيقات Local Services API:

    https://www.googleapis.com/auth/adwords
    

    هذا هو نطاق OAuth 2.0 نفسه الذي تستخدمه Google Ads API.

    في نهاية هذه الخطوة، ستتلقّى رمزين مميّزين: رمزًا مميّزًا لإعادة التحميل ورمزًا مميّزًا للدخول. احفظ كلاهما.

  3. نفِّذ الأمر التالي في موجه الأوامر للتأكّد من نجاح الخطوة السابقة:

    curl https://oauth2.googleapis.com/tokeninfo?access_token=<INSERT_ACCESS_TOKEN>
    

    إذا عرضت نتيجة الأمر رسالة مثل ما يلي، يعني ذلك أنّ العملية تمت بنجاح:

    {
      "azp": "************-********************************.apps.googleusercontent.com",
      "aud": "************-********************************.apps.googleusercontent.com",
      "scope": "https://www.googleapis.com/auth/adwords [googleapis.com]",
      "exp": "1611183382",
      "expires_in": "3482",
      "access_type": "offline"
    }
    

    إذا حدث خطأ أو كان النطاق غير صحيح، حاوِل إنشاء الرموز المميزة مرة أخرى.

  4. إنشاء رمز دخول جديد بدون تدخّل يدوي هذا الإجراء مهم لأنّ رموز الدخول تنتهي صلاحيتها كل ساعة. تستغرق رموز التحديث وقتًا أطول بكثير لانتهاء صلاحيتها، لذا عليك غالبًا إبطالها يدويًا عندما لا تعود هناك حاجة إليها.

    للحصول على رمز دخول جديد، نفِّذ الأمر التالي:

    curl --data "refresh_token=<INSERT_REFRESH_TOKEN>&client_id=<INSERT_CLIENT_ID>&client_secret=<INSERT_CLIENT_SECRET>&grant_type=refresh_token" -X POST "https://oauth2.googleapis.com/token”
    
  5. نفِّذ طلب البيانات التالي من واجهة برمجة التطبيقات:

    curl -H "Authorization: Bearer <INSERT_ACCESS_TOKEN>" https://localservices.googleapis.com/v1/accountReports:search?query=manager_customer_id:<INSERT_10_DIGIT_MANAGER_CUSTOMER_ID_WITHOUT_HYPHENS>
    

    في حال نجاح هذه المكالمة، تكون عملية الإعداد قد اكتملت.