Einen neuen Ausführungs-Hook erstellen
POST /accounts/{account_id}/core/v1/executionHooks
Gibt die gewünschten Werte für die zu erstellende Execution Hook API-Ressource an.
Parameter
| Name | Typ | In | Erforderlich | Beschreibung |
|---|---|---|---|---|
Konto-ID |
Zeichenkette |
Pfad |
True |
ID der übergeordneten Kontoressource
|
Anfragetext
Gibt die gewünschten Werte für die zu erstellende Execution Hook API-Ressource an.
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
Medientyp der Ressource. Folgende Werte sind definiert:
|
Version |
Zeichenkette |
True |
Version der Ressource. Folgende Werte sind definiert:
|
Name |
Zeichenkette |
True |
JSON-Zeichenkette mit einem benutzerdefinierten Namen für die Ressource. Folgende Werte sind definiert:
|
hookType |
Zeichenkette |
True |
JSON-Zeichenkette, die den Hook-Typ definiert. Folgende Werte sind definiert:
|
matchingCriteria |
Array["matchingCriteria"] |
Falsch |
JSON-Array von JSON-Objekten, die die Übereinstimmungskriterien für den Ausführungs-Hook beschreiben. Wenn mehrere matchingCriteria angegeben werden, wird eine logische UND-Verknüpfung auf die Kriterien angewendet. Folgende Werte sind definiert:
|
Aktion |
Zeichenkette |
True |
JSON-Zeichenkette, die angibt, welche Aktion der Ausführungs-Hook ausführt, sofern die Übereinstimmungskriterien erfüllt sind. Folgende Werte sind definiert:
|
Bühne |
Zeichenkette |
True |
JSON-Zeichenkette, die die Phase der Aktion angibt, in der der Hook ausgeführt wird. Folgende Werte sind definiert:
|
hookSourceID |
Zeichenkette |
True |
JSON-Zeichenkette mit der Hook-Quell-ID, die über diesen Ausführungs-Hook ausgeführt wird. Folgende Werte sind definiert:
|
Argumente |
Array[string] |
Falsch |
JSON-Array von JSON-Zeichenketten für die Argumente der Quelle. Folgende Werte sind definiert:
|
appID |
Zeichenkette |
True |
JSON-Zeichenkette mit der zugehörigen ID der Anwendung, mit der dieser Hook verknüpft ist. Im Wesentlichen andere Übereinstimmungskriterien, falls festgelegt. Folgende Werte sind definiert:
|
aktiviert |
Zeichenkette |
Falsch |
JSON-Zeichenkette, die angibt, ob der Ausführungs-Hook aktiviert ist. Folgende Werte sind definiert:
|
description |
Zeichenkette |
Falsch |
JSON-Zeichenkette mit einer benutzerdefinierten Beschreibung der Hook-Quelle. Folgende Werte sind definiert:
|
Metadaten |
Falsch |
Client- und dienstspezifische Metadaten, die der Ressource zugeordnet sind. Folgende Werte sind definiert:
|
Beispielanfrage
{
"type": "application/astra-executionHook",
"version": "1.2",
"name": "Payroll",
"hookType": "custom",
"action": "snapshot",
"stage": "pre",
"hookSourceID": "50e89023-ba84-435d-bb47-1833f4c250ff",
"arguments": [
"freeze"
],
"appID": "7be5ae7c-151d-4230-ac39-ac1d0b33c2a9",
"enabled": "true",
"description": "Payroll production hook"
}
Antwort
Status: 201, Returns the newly created executionHook resource in the JSON response body.
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
Medientyp der Ressource. Folgende Werte sind definiert:
|
Version |
Zeichenkette |
True |
Version der Ressource. Folgende Werte sind definiert:
|
id |
Zeichenkette |
True |
Weltweit eindeutiger Bezeichner der Ressource. Folgende Werte sind definiert:
|
Name |
Zeichenkette |
True |
JSON-Zeichenkette mit einem benutzerdefinierten Namen für die Ressource. Folgende Werte sind definiert:
|
hookType |
Zeichenkette |
True |
JSON-Zeichenkette, die den Hook-Typ definiert. Folgende Werte sind definiert:
|
matchingCriteria |
Array["matchingCriteria"] |
True |
JSON-Array von JSON-Objekten, die die Übereinstimmungskriterien für den Ausführungs-Hook beschreiben. Wenn mehrere matchingCriteria angegeben werden, wird eine logische UND-Verknüpfung auf die Kriterien angewendet. Folgende Werte sind definiert:
|
matchingContainers |
Array["matchingContainers"] |
Falsch |
JSON-Array von JSON-Objekten jedes Containers, der den konfigurierten Abgleichskriterien innerhalb der definierten App entspricht. |
matchingImages |
Array[string] |
Falsch |
JSON-Array mit JSON-Strings für die passenden Container-Images. Folgende Werte sind definiert:
|
Aktion |
Zeichenkette |
True |
JSON-Zeichenkette, die angibt, welche Aktion der Ausführungs-Hook ausführt, sofern die Übereinstimmungskriterien erfüllt sind. Folgende Werte sind definiert:
|
Bühne |
Zeichenkette |
True |
JSON-Zeichenkette, die die Phase der Aktion angibt, in der der Hook ausgeführt wird. Folgende Werte sind definiert:
|
hookSourceID |
Zeichenkette |
True |
JSON-Zeichenkette mit der Hook-Quell-ID, die über diesen Ausführungs-Hook ausgeführt wird. Folgende Werte sind definiert:
|
Argumente |
Array[string] |
Falsch |
JSON-Array von JSON-Zeichenketten für die Argumente der Quelle. Folgende Werte sind definiert:
|
appID |
Zeichenkette |
Falsch |
JSON-Zeichenkette mit der zugehörigen ID der Anwendung, mit der dieser Hook verknüpft ist. Im Wesentlichen andere Übereinstimmungskriterien, falls festgelegt. Folgende Werte sind definiert:
|
aktiviert |
Zeichenkette |
True |
JSON-Zeichenkette, die angibt, ob der Ausführungs-Hook aktiviert ist. Folgende Werte sind definiert:
|
description |
Zeichenkette |
Falsch |
JSON-Zeichenkette mit einer benutzerdefinierten Beschreibung der Hook-Quelle. Folgende Werte sind definiert:
|
Metadaten |
True |
Client- und dienstspezifische Metadaten, die der Ressource zugeordnet sind. Folgende Werte sind definiert:
|
Beispielantwort
{
"type": "application/astra-executionHook",
"version": "1.2",
"id": "946e60cb-980b-5374-9e6e-9fe1f6780352",
"name": "Payroll",
"hookType": "custom",
"matchingCriteria": [],
"action": "snapshot",
"stage": "pre",
"hookSourceID": "50e89023-ba84-435d-bb47-1833f4c250ff",
"arguments": [
"freeze"
],
"appID": "7be5ae7c-151d-4230-ac39-ac1d0b33c2a9",
"enabled": "true",
"description": "Payroll production hook",
"metadata": {
"labels": [],
"creationTimestamp": "2022-10-06T20:58:16.305662Z",
"modificationTimestamp": "2022-10-06T20:58:16.305662Z",
"createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
}
}
Antwort
Status: 401, Unauthorized
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
Antwort
Status: 400, Bad request
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
|
invalidFields |
Array["invalidFields"] |
Falsch |
Liste ungültiger Anfragetextfelder |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
Antwort
Status: 409, Conflict
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/10",
"title": "JSON resource conflict",
"detail": "The request body JSON contains a field that conflicts with an idempotent value.",
"status": "409"
}
Antwort
Status: 403, Forbidden
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
Fehler
Status: 404, Not found
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
Beispiel-Fehlermeldung
{
"type": "https://astra.netapp.io/problems/2",
"title": "Collection not found",
"detail": "The collection specified in the request URI wasn't found.",
"status": "404"
}
Definitionen
Siehe Definitionen
matchingCriteria
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
Falsch |
JSON-Zeichenkette, die den Typ der Übereinstimmungskriterien identifiziert. |
Wert |
Zeichenkette |
Falsch |
JSON-Zeichenkette mit einem regulären Ausdruck für den angegebenen Übereinstimmungstyp. Regex-Syntax: https://github.com/google/re2/wiki/Syntax |
Typ_Astra_Label
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Name |
Zeichenkette |
True |
|
Wert |
Zeichenkette |
True |
type_astra_metadata_update
Client- und dienstspezifische Metadaten, die der Ressource zugeordnet sind. Folgende Werte sind definiert:
-
Entspricht dem Astra-Metadatenschema. Falls beim Erstellen keine Bezeichnung angegeben wird, wird ein Metadatenobjekt ohne Bezeichnungen erstellt. Wird beim Aktualisieren kein Label angegeben, bleiben die Labels, creationTimestamp und createdBy, des Metadatenobjekts unverändert erhalten.
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Etiketten |
Array["Typ_Astra_Label"] |
Falsch |
|
CreationZeitstempel |
Zeichenkette |
Falsch |
|
Änderungszeitstempel |
Zeichenkette |
Falsch |
|
Erstellt von |
Zeichenkette |
Falsch |
|
modifiedBy |
Zeichenkette |
Falsch |
matchingCriteria
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
JSON-Zeichenkette, die den Typ der Übereinstimmungskriterien identifiziert. |
Wert |
Zeichenkette |
True |
JSON-Zeichenkette mit einem regulären Ausdruck für den angegebenen Übereinstimmungstyp. Regex-Syntax: https://github.com/google/re2/wiki/Syntax |
type_k8s_label
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Name |
Zeichenkette |
True |
|
Wert |
Zeichenkette |
True |
matchingContainers
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
podName |
Zeichenkette |
Falsch |
JSON-Zeichenkette des übereinstimmenden Container-Pod-Namens. |
podLabels |
Array["type_k8s_label"] |
Falsch |
JSON-Array von Label-Objekten der Labels des passenden Containers-Pods. |
containerImage |
Zeichenkette |
Falsch |
JSON-Zeichenkette des passenden Container-Images. |
containerName |
Zeichenkette |
Falsch |
JSON-Zeichenkette mit dem Namen des übereinstimmenden Containers. |
namespaceName |
Zeichenkette |
Falsch |
JSON-Zeichenkette des Namespace-Namens des übereinstimmenden Containers-Pods. |
invalidParams
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Name |
Zeichenkette |
True |
Name des ungültigen Abfrageparameters |
Grund |
Zeichenkette |
True |
Grund, warum der Abfrageparameter ungültig ist |
invalidFields
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Name |
Zeichenkette |
True |
Name des ungültigen Anfragetextfelds |
Grund |
Zeichenkette |
True |
Grund, warum das Anfragekörperfeld ungültig ist |