In dieser Anleitung erfahren Sie, wie Sie die Private Catalog Producer REST API aufrufen.
Hinweis
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Deployment Manager and Compute Engine APIs.
Authentifizierung konfigurieren
Als Cloud-Administrator können Sie REST-Aufrufe durchführen, um Aktionen im privaten Katalog auszuführen. Geben Sie zuerst Ihre Anmeldedaten ein:
- Rufen Sie Ihre Client-ID und Ihr Secret ab.
- Rufen Sie Ihr Zugriffs-Token ab.
- Achten Sie darauf, dass im Bereichsparameter
https://www.googleapis.com/auth/cloud-platform
gesendet wird.
Katalog erstellen
Führen Sie zum Erstellen eines Katalogs den folgenden Befehl aus und ersetzen Sie dabei <token>
durch Ihr OAuth2-Zugriffstoken und <organization-ID>
durch Ihre Organisations-ID:
curl -s -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <token>" -d "{parent:"//cloudresourcemanager.googleapis.com/organizations/<organization-ID>", display_name:"Mobile catalog", description: "description"}" https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs
Der Antworttext enthält Daten ähnlich der folgenden Ausgabe:
{
"name": "operations/ccb.515502c5-81ad-4226-8037-1b802eed8f69"
}
Dies ist der Vorgangsname. Sie können die Vorgangs-ID aus dem Vorgangsnamen ableiten, indem Sie das Präfix operation/
entfernen. In der vorherigen Beispielantwort lautet die Vorgangs-ID ccb.515502c5-81ad-4226-8037-1b802eed8f69
. Anhand der Vorgangs-ID können Sie den Status der Erstellung des Katalogs prüfen.
Status des Vorgangs einer Katalogerstellung prüfen
Führen Sie zum Erstellen eines Katalogs den folgenden Befehl aus und ersetzen Sie dabei <operation-ID>
durch die Vorgangs-ID aus der vorherigen Antwort:
curl -s -H "Authorization: Bearer <token>" https://cloudprivatecatalogproducer.googleapis.com/v1beta1/operations/<operation-ID>
Kataloge Ihrer Organisation auflisten
Führen Sie den folgenden Befehl aus und ersetzen Sie dabei <organization-number>
durch die Organisationsnummer, um alle Kataloge aufzulisten, auf die Sie im Rahmen einer Organisation Zugriff haben:
curl -s -H "Authorization: Bearer <token>" https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs?parent=//cloudresourcemanager.googleapis.com/organizations/<organization-number>
Der Antworttext enthält Daten ähnlich der folgenden Ausgabe:
{
"catalogs": [
{
"name": "catalogs/<catalog-ID>",
"parent": "//cloudresourcemanager.googleapis.com/organizations/<organization-ID>",
"displayName": "Mobile catalog",
"description": "Mobile-related applications",
"createTime": "2019-01-01T22:05:19.541Z",
"updateTime": "2019-01-01T22:05:26.097Z"
},
{
"name": "catalogs/<catalog ID>",
"parent": "//cloudresourcemanager.googleapis.com/organizations/<organization-ID>",
"displayName": "Development tools",
"description": "Applications and tools for developers",
"createTime": "2019-01-06T00:08:06.090Z",
"updateTime": "2019-01-06T00:08:08.069Z"
},
{
"name": "catalogs/<catalog ID>",
"parent": "//cloudresourcemanager.googleapis.com/organizations/<organization-ID>",
"displayName": "Data science catalog",
"description": "Applications for data scientists",
"createTime": "2019-01-06T00:09:45.319Z",
"updateTime": "2019-01-06T00:09:48.050Z"
},
{
"name": "catalogs/<catalog ID>",
"parent": "//cloudresourcemanager.googleapis.com/organizations/<organization-ID>",
"displayName": "Training catalog",
"description": "Training applications and software",
"createTime": "2019-01-06T22:13:38.261Z",
"updateTime": "2019-01-06T22:13:46.291Z"
},
{
"name": "catalogs/<catalog-ID>",
"parent": "//cloudresourcemanager.googleapis.com/organizations/<organization-ID>",
"displayName": "Media catalog",
"description": "Applications for handling audio and visual media",
"createTime": "2019-01-07T00:15:11.949Z",
"updateTime": "2019-01-07T00:15:15.426Z"
}
]
}
Informationen zu einem bestimmten Katalog abrufen
Führen Sie den folgenden Befehl aus, um Informationen zu einem Katalog abzurufen, und ersetzen Sie dabei <catalog-ID>
durch die Katalog-ID aus der Antwort auf einen API-Aufruf, um die Kataloge Ihrer Organisation aufzulisten:
curl -s -H "Authorization: Bearer <token>" https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs/<catalog-ID>
Der Antworttext enthält Daten ähnlich der folgenden Ausgabe:
{
"name": "catalogs/<catalog-ID>",
"parent": "//cloudresourcemanager.googleapis.com/organizations/<organizaton-ID>",
"displayName": "Data science catalog",
"description": "Applications for data scientists",
"createTime": "2019-01-01T22:05:19.541Z",
"updateTime": "2019-01-01T22:05:26.097Z"
}
Produkt erstellen
Führen Sie zum Erstellen eines Produkts den folgenden Befehl aus und ersetzen Sie dabei <catalog-ID>
durch die Katalog-ID aus der Antwort auf einen API-Aufruf, um die Kataloge Ihrer Organisation aufzulisten:
curl -s -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <token>" -d @/tmp/rest_create_product_request https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs/<catalog-ID>/products
Das folgende Beispiel zeigt den Inhalt der Datei /tmp/rest_create_product_request
:
{
name:"catalogs/<catalog-ID>/products/<product-name>",
asset_type:"google.deploymentmanager.Template",
display_metadata:{
name:"<product-name>",
description:"Sample Description"
}
}
Produkte in einem Katalog auflisten
Führen Sie den folgenden Befehl aus, um Produkte in einem Katalog aufzulisten, und ersetzen Sie dabei <catalog-ID>
durch die Katalog-ID aus der Antwort auf einen API-Aufruf, um die Kataloge Ihrer Organisation aufzulisten:
curl -s -H "Authorization: Bearer <token>" https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs/<catalog-ID>/products
Der Antworttext enthält Daten ähnlich der folgenden Ausgabe:
{
"products": [
{
"name": "catalogs/<catalog-ID>/products/dm-product",
"assetType": "google.deploymentmanager.Template",
"displayMetadata": {
"name": "sample-metadata-name",
"description": "sample-metadata-description",
"tagline": "sample-metadata-tagline",
"support_info": "sample-metadata-support-info"
},
"createTime": "2019-01-04T19:36:02.573Z"
},
{
"name": "catalogs/<catalog-ID>/products/listingonly",
"assetType": "google.private-catalog.ListingOnly",
"displayMetadata": {
"name": "listing-based product",
"description": "description",
"tagline": "tagline",
"support_info": "support_info",
"signup_url": "https://cloud.google.com/launcher",
"documentations": [
{
"url": "https://cloud.google.com/launcher"
}
]
},
"createTime": "2019-01-06T00:25:44.722Z"
}
]
}
Produktversion erstellen
Führen Sie zum Erstellen einer Produktversion den folgenden Befehl aus und ersetzen Sie dabei <catalog-ID>
durch eine Katalog-ID und <product-name>
durch den Namen des Produkts, für das Sie eine Version erstellen möchten:
curl -s -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <token>" -d @/tmp/rest_create_version_request https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs/<catalog-ID>/products/<product-name>/versions
Das folgende Beispiel zeigt den Inhalt der Datei /tmp/rest_create_version_request
:
{
name: "catalogs/<catalog-ID>/products/<product-name>/versions/v1",
description: "v1",
original_asset: {
imports: [
{
name: "my-template",
content: "resources:\n name: \'awesome template\'\n properties:\n",
},
{
name: "my-template.schema",
content: ""
}
],
mainTemplate: "my-template",
templateFileType: "JINJA"
}
}
Der Antworttext enthält Daten zum resultierenden Vorgang, ähnlich der folgenden Ausgabe:
{
"name": "operations/cvb.efcd831d-257d-43f7-8650-f7016c7469cb"
}
Versionen eines Produkts auflisten
Führen Sie den folgenden Befehl aus, um die Versionen eines Produkts aufzulisten. Ersetzen Sie dabei <catalog-ID>
durch die Katalog-ID und <product-name>
durch den Namen des Produkts, für das Sie Versionen auflisten möchten:
curl -s -H "Authorization: Bearer <token>" https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs/<catalog-ID>/products/<product-name>/versions
Der Antworttext enthält Daten ähnlich der folgenden Ausgabe:
{
"versions": [
{
"name": "catalogs/<catalog-ID>/products/<product-name>/versions/v1",
"createTime": "2019-01-04T19:37:47.519Z",
"updateTime": "2019-01-04T19:37:47.519Z"
}
]
}
Produktsymbol hochladen
Führen Sie zum Hochladen eines Produktsymbols den folgenden Befehl aus und ersetzen Sie dabei <catalog-ID>
durch die Katalog-ID und <product-name>
durch den Namen des Produkts, für das Sie ein Symbol hochladen möchten:
curl -s -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <token>" -d @/tmp/rest_upload_icon_request https://cloudprivatecatalogproducer.googleapis.com/v1beta1/catalogs/<catalog-id>/products/<product-name>/icons:upload
Das folgende Beispiel zeigt den Inhalt der Datei /tmp/rest_upload_icon_request
:
{
icon_bytes: "iVBORw0KGgoA...Jggg=="
}