סקירה כללית
Chrome Web Store Publish API מספק קבוצה של נקודות קצה ל-REST כדי ליצור, לעדכן ולפרסם פריטים באופן פרוגרמטי בחנות האינטרנט של Chrome.
הגדרה ראשונית
כדי להתחיל לבצע קריאות REST בחנות האינטרנט של Chrome, עליכם להפעיל את ה-API של חנות האינטרנט של Chrome, להגדיר את מסך ההסכמה ל-OAuth ולאחזר את מפתחות הגישה שלכם ל-API. בקטעים הבאים מוסבר התהליך.
הפעלת Chrome Web Store API
- נכנסים למסוף Google Cloud.
- יוצרים פרויקט חדש או בוחרים פרויקט קיים.
- בסרגל החיפוש, מקלידים 'Chrome Web Store API'.
- מפעילים את ממשק ה-API של חנות האינטרנט של Chrome.
הגדרת מסך ההסכמה של OAuth
- עוברים אל מסך ההסכמה של OAuth.
- בוחרים באפשרות External ואז על Create.
- ממלאים את שדות פרטי האפליקציה הנדרשים (מפורטים בהמשך) ולוחצים על שמירה והמשך.
- שם האפליקציה.
- אימייל לתמיכת משתמשים.
- כתובת האימייל ליצירת קשר עם המפתח.
- מדלגים על היקפים. לוחצים על שמירה ואז על המשך.
- מוסיפים את כתובת האימייל למשתמשים לבדיקה, לוחצים על שמירה ואז על המשך.
להורדת מפתחות הגישה
- עוברים אל Credentials.
- לוחצים על Create Credentials (יצירת פרטי כניסה) ואז על OAuth client ID (מזהה לקוח OAuth).
- בהגדרה סוג האפליקציה, בוחרים באפשרות אפליקציה למחשב.
- ממלאים את השם ולוחצים על יצירה.
המסוף יספק את מזהה הלקוח ואת סוד הלקוח.
בדיקה של אפליקציית OAuth
תוכלו לאחזר אסימון גישה כדי לעבוד עם ה-API. לדוגמה, הזן את כתובת האתר הבאה בדפדפן ותחליף את $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
כדי להפעיל את ה-API. תוכלו להשתמש באסימון הרענון גם כדי לקבל אסימוני גישה עתידיים. חשוב לדעת: תוקפם של האסימונים פג לאחר שעה.
שימוש ב-API
לאחר שיהיה לך אסימון גישה, התוסף יוכל להשתמש ב-Chrome Web Store Publish API. יש נקודות קצה ליצירת פריט חדש, לעדכון פריט קיים ולפרסום פריט.
ריכזנו כאן רשימת שיקולים לשימוש ב-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