از Chrome Web Store Publish API استفاده کنید

بررسی اجمالی

Chrome Web Store Publish API مجموعه‌ای از نقاط پایانی REST را برای ایجاد، به‌روزرسانی و انتشار موارد به‌صورت برنامه‌ریزی در فروشگاه وب Chrome ارائه می‌کند.

راه اندازی اولیه

قبل از اینکه بتوانید تماس‌های REST را با فروشگاه وب Chrome شروع کنید، باید API فروشگاه وب Chrome را فعال کنید، صفحه رضایت OAuth خود را پیکربندی کنید و کلیدهای دسترسی API خود را بازیابی کنید. بخش‌های زیر این فرآیند را طی می‌کنند.

Chrome Web Store API را فعال کنید

  1. به Google Cloud Console بروید.
  2. یک پروژه جدید ایجاد کنید یا یک پروژه موجود را انتخاب کنید. یک پروژه جدید در کنسول گوگل ایجاد کنید
  3. در نوار جستجو «Chrome Web Store API» را تایپ کنید.
  4. API فروشگاه وب Chrome را فعال کنید.

صفحه رضایت OAuth را پیکربندی کنید

  1. به صفحه رضایت OAuth بروید.
  2. External سپس Create را انتخاب کنید. یک صفحه رضایت Oauth ایجاد کنید
  3. فیلدهای اطلاعات برنامه مورد نیاز (فهرست شده در زیر) را پر کنید، سپس روی ذخیره و ادامه کلیک کنید.
    • نام برنامه.
    • ایمیل پشتیبانی کاربر.
    • ایمیل تماس با برنامه نویس
  4. Scopes. روی Save و سپس Continue کلیک کنید.
  5. آدرس ایمیل خود را به کاربران تست اضافه کنید، سپس روی Save و سپس Continue کلیک کنید.

کلیدهای دسترسی را دریافت کنید

  1. به اعتبارنامه بروید.
  2. روی ایجاد اعتبار و سپس شناسه مشتری OAuth کلیک کنید. اعتبارنامه ایجاد کنید
  3. برای نوع برنامه ، Desktop App را انتخاب کنید.
  4. نام را پر کنید، سپس روی ایجاد کلیک کنید.

کنسول شناسه مشتری و راز مشتری را ارائه می دهد.

آزمایش برنامه OAuth شما

می توانید یک نشانه دسترسی برای کار با API بازیابی کنید. به عنوان مثال، این 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

صفحه ای را مشاهده می کنید که از شما می خواهد مجوز محدوده درخواستی را بپذیرید.

UI درخواست مجوز

روی Accept کلیک کنید و کد را کپی کنید. باید چیزی شبیه این باشد:

UI برای کپی کد

از این مقدار برای درخواست یک نشانه دسترسی استفاده کنید. برای مثال، با استفاده از 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 برای فراخوانی API استفاده کنید. همچنین می توانید از نشانه رفرش برای دریافت نشانه های دسترسی آینده استفاده کنید. توجه داشته باشید که توکن ها پس از یک ساعت منقضی می شوند.

با استفاده از API

هنگامی که یک نشانه دسترسی دارید، برنامه افزودنی شما می‌تواند از API انتشار فروشگاه وب Chrome استفاده کند. نقاط پایانی برای ایجاد یک مورد جدید، به‌روزرسانی یک مورد موجود و انتشار یک مورد وجود دارد.

در زیر فهرستی از ملاحظات استفاده از Publish API آمده است:

در اینجا درباره 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