Überblick
Die Chrome Web Store Publish API bietet eine Reihe von REST-Endpunkten zum programmatischen Erstellen, Aktualisieren und Veröffentlichen von Elementen im Chrome Web Store.
Ersteinrichtung
Bevor Sie REST-Aufrufe an den Chrome Web Store ausführen können, müssen Sie die Chrome Web Store API aktivieren, Ihren OAuth-Zustimmungsbildschirm konfigurieren und Ihre API-Zugriffsschlüssel abrufen. Dieser Vorgang wird in den folgenden Abschnitten beschrieben.
Chrome Web Store API aktivieren
- Rufen Sie die Google Cloud Console auf.
- Erstellen Sie ein neues Projekt oder wählen Sie ein vorhandenes aus.
- Geben Sie in die Suchleiste „Chrome Web Store API“ ein.
- Aktivieren Sie die Chrome Web Store API.
OAuth-Zustimmungsbildschirm konfigurieren
- Rufen Sie den OAuth-Zustimmungsbildschirm auf.
- Wählen Sie Extern und dann Erstellen aus.
- Füllen Sie die unten aufgeführten Pflichtfelder aus und klicken Sie auf Speichern und fortfahren.
- App-Name
- E-Mail-Adresse des Nutzersupports.
- E-Mail-Adresse des Entwicklers.
- Überspringen Sie Bereiche. Klicken Sie auf Speichern und dann auf Weiter.
- Fügen Sie Ihre E-Mail-Adresse zu Testnutzer hinzu, klicken Sie auf Speichern und dann auf Weiter.
Zugriffsschlüssel abrufen
- Gehen Sie zu Anmeldedaten.
- Klicken Sie auf Anmeldedaten erstellen und dann auf OAuth-Client-ID.
- Wählen Sie als Anwendungstyp die Option Desktop-App aus.
- Geben Sie einen Namen ein und klicken Sie auf Erstellen.
In der Konsole werden die Client-ID und der Clientschlüssel bereitgestellt.
OAuth-Anwendung testen
Sie können ein Zugriffstoken für die Arbeit mit der API abrufen. Geben Sie beispielsweise die folgende URL in Ihren Browser ein und ersetzen Sie dabei $CLIENT_ID durch die ID für Ihre Anwendung:
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
Sie werden auf einer Seite aufgefordert, die Berechtigung für den angeforderten Bereich zu akzeptieren.
Klicken Sie auf Akzeptieren und kopieren Sie den Code. Die Ausgabe sollte ungefähr so aussehen:
Verwenden Sie diesen Wert, um ein Zugriffstoken anzufordern. Wenn Sie beispielsweise curl
verwenden, können Sie ein Zugriffstoken abrufen, indem Sie den folgenden Befehl ausführen. Dabei ersetzen Sie die Werte von $CLIENT_ID, $CLIENT_SECRET und $CODE durch die oben angegebenen Werte:
> 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"
Dadurch wird ein Ergebnis wie dieses zurückgegeben:
{
"access_token" : "ya29...",
"expires_in" : 3600,
"refresh_token" : "1/rwn...",
"scope": "https://www.googleapis.com/auth/chromewebstore",
"token_type" : "Bearer",
}
Sie können jetzt die access_token
verwenden, um die API aufzurufen. Sie können das Aktualisierungstoken auch verwenden, um zukünftige Zugriffstokens abzurufen. Tokens laufen nach einer Stunde ab.
API verwenden
Sobald Sie ein Zugriffstoken haben, kann Ihre Erweiterung die Chrome Web Store Publish API verwenden. Es gibt Endpunkte, mit denen neue Elemente erstellt, vorhandene Elemente aktualisiert und veröffentlicht werden können.
Im Folgenden finden Sie eine Liste mit Überlegungen zur Verwendung der Publish API:
- Entwickler müssen für ihr Google-Konto die Bestätigung in zwei Schritten aktivieren, um eine Erweiterung zu veröffentlichen oder zu aktualisieren.
- Bevor du einen neuen Artikel veröffentlichen kannst, musst du die Tabs Store-Eintrag und Umgang mit dem Datenschutz im Entwickler-Dashboard ausfüllen.
- Nach der Veröffentlichung eines neuen oder vorhandenen Artikels wird dieser einer Überprüfung unterzogen. Weitere Informationen finden Sie unter Überprüfungsprozess.
- Wenn Sie ein Update veröffentlichen möchten, erhöhen Sie die Zahl im Feld version des Manifests.
Weitere Informationen zur Chrome Web Store Publish API
Paket hochladen, um einen neuen Store-Artikel zu erstellen
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
Geben Sie das folgende Beispiel in die Befehlszeile ein:
> 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
Paket hochladen, um einen vorhandenen Artikel im Store zu aktualisieren
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“ ist die ID des vorhandenen Web Store-Artikels.
> 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
Veröffentlichen eines Artikels
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
Artikel für Trusted Tester veröffentlichen
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
Uploadstatus eines Elements prüfen
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