Diese Seite gilt für Apigee, aber nicht für Apigee Hybrid.
Überblick
Sie können sich ein Attribut als Metadaten einer Ressource vorstellen. Eine API-Ressource kann beispielsweise ein Attribut namens Target Users
haben, das angibt, ob die API für die öffentliche, private oder interne Nutzung vorgesehen ist.
Attribute sind in folgender Weise hilfreich:
- Sie können Ihre Ressourcensuchergebnisse nach Attributen filtern. Wenn ihr also mehr Attribute habt, könnt ihr eure Suchergebnisse einfacher eingrenzen.
- Sie können benutzerdefinierte Daten mit Ihren API-Hub-Ressourcen verknüpfen.
Der API-Hub speichert ein Attribut im Schlüssel/Wert-Format. Dabei ist der Schlüssel der Name des Attributs und der Wert der entsprechende Wert des Attributs. Der Wert kann folgende Formate haben:
- String
- Enum
- JSON
Es gibt zwei verschiedene Arten von Attributen:
- Systemattribute, die vom API-Hub vordefiniert werden.
- Nutzerattribute, die von Ihnen festgelegt werden.
Systemattribute
Systemattribute werden vom API-Hub für jeden Ressourcentyp vordefiniert. Die Liste dieser Attribute und ihre Wertdefinitionen kann sich von Release zu Release des API-Hubs ändern. Beispiele für Systemattribute sind: Lebenszyklusphase, API-Compliance, API-Akkreditierung, SLO usw. Diese Attribute können für eine Ressource obligatorisch oder optional sein. Wenn ein Attribut für eine Ressource obligatorisch ist, müssen Sie den Wert des Attributs bei der Registrierung der Ressource festlegen.
Die Werte der Systemattribute des Typs Enum
können unveränderlich oder änderbar sein.
- Unveränderlich: Sie können keine Änderungen an den vorhandenen Werten vornehmen. Sie können dem Attribut jedoch neue änderbare Werte hinzufügen. Das Attribut
oas-version
hat beispielsweise die Werte 2.1, 3.0 und 3.1. Sie können diese Werte nicht aktualisieren, aber Sie können neue benutzerdefinierte Werte hinzufügen. - Veränderlich: Sie können die vorhandenen Werte hinzufügen, bearbeiten oder löschen. Das Attribut
lifecycle-stage
kann beispielsweise anfangs Werte wieDev
,Stage
,UAT
oderProd
haben. Sie können diese vorhandenen Werte bearbeiten und neue Werte hinzufügen.
Systemattribute ansehen
Apigee-Benutzeroberfläche
Rufen Sie in der Google Cloud Console die Seite API-Hub > Einstellungen auf, um sich alle Systemattribute anzusehen. Sie können alle vorhandenen Systemattribute auf dem Tab Systemattribute ansehen.
REST API
Senden Sie eine GET
-Anfrage an die folgende API, um alle Systemattribute einer Ressource anzuzeigen:
https://apihub.googleapis.com/v1/projects/PROJECT/locations/LOCATION/attributes
Weitere Informationen zur API finden Sie unter ListAttributes.
Das folgende Beispiel zeigt den API-Aufruf zum Abrufen der Systemattribute für alle Ressourcen.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-type: application/json" \ -X GET \ https://apihub.googleapis.com/v1/projects/test-project-1/locations/us-central1/attributes?filter=definition_type=SYSTEM_DEFINED
Systemattribut vom Typ Enum bearbeiten
Sie können die folgenden Vorgänge für einen änderbaren Wert ausführen:
- Neuen Wert hinzufügen
- Vorhandenen Wert aktualisieren
- Vorhandenen Attributwert löschen
Die Beispiele in diesem Abschnitt zeigen, wie die zulässigen Werte eines Systemattributs vom Typ Enumeration aktualisiert werden.
Apigee-Benutzeroberfläche
So fügen Sie einen Wert für ein Systemattribut hinzu:
Rufen Sie in der Google Cloud Console die Seite API-Hub > Einstellungen auf.
Damit werden alle vorhandenen Systemattribute im Bereich Systemattribute des Tabs Attribute angezeigt.
- Klicken Sie für das Attribut, dem Sie einen Wert hinzufügen möchten, auf Bearbeiten.
Daraufhin wird der Bearbeitungsbereich des Attributs geöffnet, in dem die vorhandenen Attributwerte angezeigt werden.
- Wenn Sie einen neuen Wert hinzufügen möchten, klicken Sie auf Wert hinzufügen und geben Sie dann den Wert ein, den Sie hinzufügen möchten.
- Klicken Sie auf Speichern.
REST API
Senden Sie eine PATCH-Anfrage an die folgende API, um die zulässigen Werte eines systemdefinierten Attributs des Enum-Datentyps zu aktualisieren:
https://apihub.googleapis.com/v1/projects/PROJECT/locations/LOCATION/attributes/ATTRIBUTE
Weitere Informationen zur API finden Sie unter UpdateAttribute.
Das folgende Beispiel zeigt den API-Aufruf zum Aktualisieren der Werte des Attributs Business unit
.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{"allowed_values": [ { "id": "bu1", "display_name": "Business unit 1", "description": "The API can be used by business unit 1" }, { "id": "bu2", "display_name": "Business unit 2", "description": "The API can be used by business unit 2" }, { "id": "bu3", "display_name": "Business unit 3", "description": "The API can be used by business unit 3" }]}' \ -X PATCH https://apihub.googleapis.com/v1/projects/test-15/locations/us-central1/attributes/system-business-unit?update_mask=allowed_values
Es ist wichtig zu verstehen, wie der API-Hub die Anfragenutzlast für die UpdateAttribute API interpretiert.
- Wenn der in der Nutzlast angegebene Wert bereits vorhanden ist, prüft der API-Hub, ob der Wert in der Nutzlast aktualisiert wurde, und überschreibt dann den Wert, wenn er aktualisiert wird.
- Wenn der Wert in der Nutzlast nicht verfügbar ist, interpretiert der API-Hub es so, dass der Wert gelöscht werden soll und löscht den Wert.
- Wenn in der Nutzlast ein neuer Wert verfügbar ist, fügt API Hub dem Attribut den neuen Wert hinzu.
Nutzerattribute
Nutzerattribute werden von Ihnen basierend auf Ihren Anforderungen definiert.
Nutzerattribute anzeigen
Apigee-Benutzeroberfläche
Rufen Sie in der Google Cloud Console die Seite API-Hub > Einstellungen auf, um sich alle Nutzerattribute anzeigen zu lassen. Sie können alle Nutzerattribute auf dem Tab Attribute im Abschnitt Nutzerattribute einsehen.
REST API
Um alle Nutzerattribute einer Ressource anzuzeigen, senden Sie eine GET
-Anfrage an die folgende API:
https://apihub.googleapis.com/v1/projects/PROJECT/locations/LOCATION/attributes
Weitere Informationen zur API finden Sie unter ListAttributes.
Das folgende Beispiel zeigt den API-Aufruf zum Abrufen der Nutzerattribute für die API-Ressource.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-type: application/json" \ -X GET \ https://apihub.googleapis.com/v1/projects/test-project-1/locations/us-central1/attributes?filter=definition_type=USER_DEFINED
Neues Nutzerattribut hinzufügen
Apigee-Benutzeroberfläche
So fügen Sie ein neues Nutzerattribut hinzu:
Rufen Sie in der Google Cloud Console die Seite API-Hub > Einstellungen auf.
Daraufhin werden alle Nutzerattribute im Bereich Nutzerattribute des Tabs Attribute angezeigt.
- Klicken Sie auf Attribut hinzufügen.
Der Bereich Neues Attribut hinzufügen wird geöffnet.
- Geben Sie die folgenden Informationen ein:
- ID : Geben Sie eine eindeutige Kennzeichnung für das Attribut ein.
- Wenn Sie das Feld leer lassen, generiert der API-Hub automatisch eine eindeutige ID für Sie.
- Wenn Sie einen Wert manuell eingeben möchten, achten Sie darauf, dass der Wert für alle Attribute eindeutig ist.
- Name : Geben Sie einen Namen für das Attribut ein.
- Beschreibung : Geben Sie optional eine Beschreibung für das Attribut ein.
- Kartinalität : Geben Sie eine Zahl zwischen 1 und 20 ein. Die Kardinalität gibt die maximale Anzahl an Werten an, die das Attribut haben kann.
- Ressourcentyp : Wählen Sie einen Ressourcentyp aus.
- ID : Geben Sie eine eindeutige Kennzeichnung für das Attribut ein.
- Wenn Sie einen neuen Wert hinzufügen möchten, klicken Sie auf Wert hinzufügen und geben Sie dann den Wert ein, den Sie hinzufügen möchten.
- Klicken Sie auf Speichern.
REST API
Senden Sie eine POST
-Anfrage an die folgende API, um ein neues Nutzerattribut hinzuzufügen:
https://apihub.googleapis.com/v1/projects/PROJECT/locations/LOCATION/attributes?attribute_id=NEW_ATTRIBUTE_NAME
Weitere Informationen zur API finden Sie unter CreateAttribute.
Das folgende Beispiel zeigt den API-Aufruf zum Erstellen des Nutzerattributs attribute-01
.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "display_name" : "custom attribute", "description" : "custom attribute details", "definition_type" : "USER_DEFINED", "scope" : "API", "data_type" : "ENUM", "allowed_values" : [ { "id" : "value-1", "display_name" : "Value 1", "description" : "Value 1 test description", "immutable" : false, }, { "id" : "value-2", "display_name" : "Value 2", "description" : "Value 2 test description", "immutable" : false, }, ], "cardinality" : 4, "mandatory" : false }' \ -X POST https://apihub.googleapis.com/v1/projects/test-15/locations/us-central1/attributes?attribute_id=attribute-01
Nutzerattribut bearbeiten
Sie können die folgenden Änderungen an einem Nutzerattribut vornehmen:
- Attributnamen aktualisieren
- Neuen Attributwert hinzufügen
- Vorhandenen Attributwert löschen
Apigee-Benutzeroberfläche
So bearbeiten Sie ein Nutzerattribut:
Rufen Sie in der Google Cloud Console die Seite API-Hub > Einstellungen auf.
Daraufhin werden alle vorhandenen Nutzerattribute im Bereich Nutzerattribute des Tabs Attribute angezeigt.
- Klicken Sie neben dem Attribut, das Sie bearbeiten möchten, auf Bearbeiten.
Daraufhin wird der Bearbeitungsbereich des Attributs geöffnet, in dem die vorhandenen Attributwerte angezeigt werden.
-
- Geben Sie in das Feld Name den neuen Namen ein, um den Attributnamen zu aktualisieren.
- Wenn Sie einen neuen Wert hinzufügen möchten, klicken Sie auf Wert hinzufügen und geben Sie dann den Wert ein, den Sie hinzufügen möchten.
- Wenn Sie einen vorhandenen Wert löschen möchten, klicken Sie für den Wert, den Sie löschen möchten, auf Löschen.
- Klicken Sie auf Speichern.
REST API
Um ein Nutzerattribut zu bearbeiten, senden Sie eine PATCH
-Anfrage an die folgende API:
https://apihub.googleapis.com/v1/projects/PROJECT/locations/LOCATION/attributes/ATTRIBUTE
Weitere Informationen zur API finden Sie unter UpdateAttribute.
Das folgende Beispiel zeigt, wie der API-Aufruf das Nutzerattribut API Visibility
aktualisiert.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{"name": "projects/test-15/locations/us-central1/attributes/API Visibility", display_name" : "API Visibility Updated", "allowedValues": [ { "id": "internal", "displayName": "Internal", "description": "The API is visible internally in an organization" }, { "id": "external", "displayName": "External", "description": "The API is visible externally in an organization" }, { "id": "public", "displayName": "Public", "description": "The API is visible public in an organization" } ]}' \ -X PATCH https://autopush-apihub.sandbox.googleapis.com/v1/projects/common-dev-15/locations/us-central1/attributes/API Visibility?update_mask=display_name,allowed_values
Es ist wichtig zu verstehen, wie der API-Hub die Anfragenutzlast für die UpdateAttribute API interpretiert.
- Wenn der in der Nutzlast angegebene Wert bereits vorhanden ist, prüft der API-Hub, ob der Wert in der Nutzlast aktualisiert wurde, und überschreibt dann den Wert, wenn er aktualisiert wird.
- Wenn der Wert in der Nutzlast nicht verfügbar ist, interpretiert der API-Hub es so, dass der Wert gelöscht werden soll und löscht den Wert.
- Wenn in der Nutzlast ein neuer Wert verfügbar ist, fügt API Hub dem Attribut den neuen Wert hinzu.