نظرة عامة
توفّر واجهة برمجة تطبيقات النشر في "سوق Chrome الإلكتروني" مجموعة من نقاط نهاية REST لإنشاء العناصر وتعديلها ونشرها آليًا في "سوق Chrome الإلكتروني".
الإعداد الأولي
قبل البدء في إجراء طلبات REST على "سوق Chrome الإلكتروني"، عليك تفعيل واجهة برمجة التطبيقات في "سوق Chrome الإلكتروني" وضبط شاشة طلب الموافقة في OAuth واسترداد مفاتيح الوصول إلى واجهة برمجة التطبيقات. تستعرض الأقسام التالية هذه العملية.
تفعيل واجهة برمجة التطبيقات في "سوق Chrome الإلكتروني"
- انتقِل إلى Google Cloud Console.
- أنشئ مشروعًا جديدًا أو اختَر مشروعًا حاليًا.
- في شريط البحث، اكتب "Chrome Web Store API".
- تفعيل واجهة برمجة التطبيقات في سوق Chrome الإلكتروني
ضبط شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth
- انتقِل إلى شاشة موافقة OAuth.
- اختَر خارجي ثم إنشاء.
- املأ حقول معلومات التطبيق المطلوبة (المُدرجة أدناه)، ثم انقر على حفظ ومتابعة.
- اسم التطبيق.
- البريد الإلكتروني لدعم المستخدم.
- البريد الإلكتروني للتواصل مع مطوّر البرامج.
- تخطّي النطاقات: انقر على حفظ ثم متابعة.
- أضِف عنوان بريدك الإلكتروني إلى Test users (المستخدمون التجريبيون)، ثم انقر على Save (حفظ)، ثمّ Continue (متابعة).
الحصول على مفاتيح الوصول
- انتقِل إلى بيانات الاعتماد.
- انقر على إنشاء بيانات اعتماد ثم معرِّف عميل OAuth.
- في حقل نوع التطبيق، اختَر تطبيق سطح المكتب.
- املأ الاسم، ثم انقر على إنشاء.
ستوفر وحدة التحكم معرّف العميل وسر العميل.
اختبار تطبيق OAuth
يمكنك استرداد رمز الدخول للعمل مع واجهة برمجة التطبيقات. على سبيل المثال، أدخِل عنوان URL هذا في المتصفح، واستبدل $CLIENT_ID بعنوان تطبيقك:
https://accounts.google.com/o/oauth2/auth?response_type=code&scope=https://www.googleapis.com/auth/chromewebstore&client_id=$CLIENT_ID&redirect_uri=urn:ietf:wg:oauth:2.0:oob
ستظهر لك صفحة تطلب منك قبول الإذن للنطاق المطلوب.
انقر على قبول وانسخ الرمز. من المفترض أن تظهر بشكلٍ مشابه لما يلي:
استخدِم هذه القيمة لطلب رمز دخول. على سبيل المثال، باستخدام curl
، يمكنك الحصول على رمز دخول من خلال تنفيذ الأمر التالي (استبدِل قيم $CLIENT_ID و$CLIENT_SECRET
و$CODE بالقيم الواردة أعلاه):
> curl "https://accounts.google.com/o/oauth2/token" -d \
"client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET&code=$CODE&grant_type=authorization_code&redirect_uri=urn:ietf:wg:oauth:2.0:oob"
سيؤدي ذلك إلى عرض نتيجة مثل:
{
"access_token" : "ya29...",
"expires_in" : 3600,
"refresh_token" : "1/rwn...",
"scope": "https://www.googleapis.com/auth/chromewebstore",
"token_type" : "Bearer",
}
يمكنك الآن استخدام access_token
لطلب بيانات من واجهة برمجة التطبيقات. يمكنك أيضًا استخدام الرمز المميز لإعادة التحميل للحصول على رموز الدخول المستقبلية. يُرجى العِلم أنّ صلاحية الرموز المميّزة تنتهي بعد ساعة.
استخدام واجهة برمجة التطبيقات
بعد الحصول على رمز الدخول، ستتمكّن الإضافة من استخدام واجهة برمجة تطبيقات النشر في "سوق Chrome الإلكتروني". هناك نقاط نهاية لإنشاء عنصر جديد وتحديث عنصر موجود ونشر عنصر.
في ما يلي قائمة بالاعتبارات التي يجب مراعاتها عند استخدام Publish API:
- على المطوّرين تفعيل ميزة التحقّق بخطوتين في حساباتهم على Google لنشر إضافة حالية أو تحديثها.
- قبل نشر عنصر جديد، يجب ملء علامتَي التبويب بطاقة بيانات المتجر وممارسات الخصوصية في لوحة بيانات المطوّر.
- بعد نشر سلعة جديدة أو حالية، ستخضع لعملية مراجعة. يُرجى الاطّلاع على عملية المراجعة للحصول على مزيد من المعلومات.
- لإصدار تحديث، عليك زيادة العدد في حقل الإصدار من البيان.
يمكنك الحصول على مزيد من المعلومات حول Chrome Web Store Publish API هنا.
تحميل حزمة لإنشاء عنصر جديد في السوق
Endpoint: https://www.googleapis.com/upload/chromewebstore/v1.1/items
Type: POST
Header Parameters:
$TOKEN: the access token
Body content: the package file to upload
اكتب المثال التالي في سطر الأوامر:
> curl \
-H "Authorization: Bearer $TOKEN" \
-H "x-goog-api-version: 2" \
-X POST \
-T $FILE_NAME \
-v \
https://www.googleapis.com/upload/chromewebstore/v1.1/items
تحميل حزمة لتحديث عنصر متجر حالي
Endpoint: https://www.googleapis.com/upload/chromewebstore/v1.1/items/$ITEM_ID
Type: PUT
Header Parameters:
$TOKEN: the access token
Body content: the package file to upload
$ITEM_ID هو معرّف عنصر السوق الإلكتروني الحالي.
> curl \
-H "Authorization: Bearer $TOKEN" \
-H "x-goog-api-version: 2" \
-X PUT \
-T $FILE_NAME \
-v \
https://www.googleapis.com/upload/chromewebstore/v1.1/items/$ITEM_ID
نشر عنصر للجميع
Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish
Type: POST
Header Parameters:
$TOKEN: the access token
> curl \
-H "Authorization: Bearer $TOKEN" \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-X POST \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish
نشر عنصر إلى مختبِرين موثوق بهم
Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish?publishTarget=trustedTesters
Type: POST
Header Parameters:
$TOKEN: the access token
> curl \
-H "Authorization: Bearer $TOKEN" \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-X POST \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish?publishTarget=trustedTesters
التحقّق من حالة تحميل أحد العناصر
Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID?projection=DRAFT
Type: GET
Header Parameters:
$TOKEN: the access token
curl \
-H "Authorization: Bearer $TOKEN" \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-H "Expect:" \
-X GET \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID?projection=DRAFT