Questa pagina si applica a Apigee e Apigee ibridi.
Questo documento descrive come creare e gestire le dipendenze tra le API registrate. Le dipendenze ti aiutano a vedere le relazioni tra le API. Consulta Introduzione alle dipendenze.
Crea una dipendenza
Puoi creare un'entità di dipendenza con l'API REST.
REST
Per creare una nuova dipendenza utilizzando l'API Crea una dipendenza:
curl -X POST 'https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies?dependency_id=DEPENDENCY_ID' \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H 'Content-Type: application/json' \ --d '{ "description": "DESCRIPTION", "supplier": { // Specify one of the following: "operation_resource_name": RESOURCE_NAME // OR "external_resource_name: RESOURCE_NAME" }, "consumer": { // Specify one of the following: "operation_resource_name": RESOURCE_NAME // OR "external_resource_name: RESOURCE_NAME" } }'
Sostituisci quanto segue:
- HUB_PROJECT: il nome del progetto host di API Hub. Il progetto host è stato selezionato quando è stato eseguito il provisioning dell'hub API.
- HUB_LOCATION: la posizione del progetto host. La località è stata scelta quando l'API è stato eseguito il provisioning dell'hub.
- DEPENDENCY_ID: (facoltativo) l'identificatore della dipendenza. Se non viene fornito, verrà utilizzato un ID generato dal sistema. Il nome deve essere una stringa di 4-500 caratteri, dove i caratteri validi sono
/[a-z][A-Z][0-9]-_.
- DESCRIPTION: (facoltativo) una breve descrizione della dipendenza.
RESOURCE_NAME: (obbligatorio) il nome della risorsa di un'operazione nell'hub API o di un'API esterna, a seconda dell'attributo specificato.
I nomi delle risorse delle operazioni hanno questo formato:
projects/PROJECT/locations/LOCATION/apis/API/versions/VERSION/operations/OPERATION
Esempio di risorsa per le operazioni:
"projects/myproject/locations/us-central1/apis/payments-api/versions/locationv1/operations/getlocation"
.I nomi delle risorse API esterne hanno questo formato:
projects/PROJECT/locations/LOCATION/externalApis/EXTERNAL_API
Esempio di risorsa API esterna:
"projects/myproject/locations/us-central1/externalApis/petstore"
.
Risposta di esempio:
{ "name": "projects/myproject/locations/us-central1/dependencies/user-to-pet", "consumer": { "displayName": "POST - /v2/user", "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser" }, "supplier": { "displayName": "POST - /v2/pet", "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet" }, "state": "VALIDATED", "description": "Dependency from user to pet API", "discoveryMode": "MANUAL", "createTime": "2024-04-17T19:33:31.664226Z", "updateTime": "2024-04-17T19:33:31.664226Z" }
Esempio REST
curl -X POST 'https://apihub.googleapis.com/v1/projects/myproject/locations/us-central1/dependencies?dependency_id=user-to-pet' \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H 'Content-Type: application/json' \ --d '{ "description": "Dependency from user to pet API", "consumer": { "operation_resource_name": "projects/myproject/locations/us-central1/apis/payments-api/versions/paymentv1/operations/createuser" }, "supplier": { "operation_resource_name": "projects/myproject/locations/us-central1/apis/pet-api/versions/petstorev1/operations/addpet" } }'
Elenca le dipendenze
Questa sezione spiega come elencare le dipendenze. Puoi elencare tutte le dipendenze associate con tutte le versioni di un'API o elencare tutte le dipendenze associate a una versione specifica.
REST
Per elencare tutte le dipendenze, utilizza l'API List dipendenze:
curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies" -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X GET -H "Content-Type: application/json"
Sostituisci quanto segue:
- HUB_PROJECT: il nome del progetto host di API Hub. Il progetto host è stato selezionato quando è stato eseguito il provisioning dell'hub API.
- HUB_LOCATION: la posizione del progetto host. La località è stata scelta quando l'API è stato eseguito il provisioning dell'hub.
Esempio di output:
{ "dependencies": [ { "name": "projects/myproject/locations/us-central1/dependencies/user-to-pet", "consumer": { "displayName": "POST - /v2/user", "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser" }, "supplier": { "displayName": "POST - /v2/pet", "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet" } } ] }
Ottieni dettagli delle dipendenze
Questa sezione spiega come ottenere i dettagli relativi alla dipendenza di un'API con l'API REST.
REST
Per visualizzare i dettagli di una dipendenza, utilizza l'API Ottieni i dettagli delle dipendenze:
curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID" -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X GET -H "Content-Type: application/json"
Sostituisci quanto segue:
- HUB_PROJECT: il nome del progetto host di API Hub. Il progetto host è stato selezionato quando è stato eseguito il provisioning dell'hub API.
- HUB_LOCATION: la località del progetto host. La località è stata scelta quando l'API è stato eseguito il provisioning dell'hub.
- DEPENDENCY_ID: l'ID univoco della dipendenza.
Risposta di esempio:
{ "name": "projects/myproject/locations/us-central1/dependencies/user-to-pet", "consumer": { "displayName": "POST - /v2/user", "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser" }, "supplier": { "displayName": "POST - /v2/pet", "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet" }, "state": "VALIDATED", "description": "Dependency from user to pet API", "discoveryMode": "MANUAL", "createTime": "2024-04-17T19:33:31.215978712Z", "updateTime": "2024-04-17T19:33:31.737505297Z" }
Eliminare una dipendenza dall'API
Questa sezione spiega come eliminare una dipendenza dall'API.
REST
Per eliminare una dipendenza dall'hub API, utilizza l'API Elimina dipendenza:
curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID" -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X DELETE -H "Content-Type: application/json"
Sostituisci quanto segue:
- HUB_PROJECT: il nome del progetto host di API Hub. Il progetto host è stato selezionato quando è stato eseguito il provisioning dell'hub API.
- HUB_LOCATION: la posizione del progetto host. La località è stata scelta quando l'API è stato eseguito il provisioning dell'hub.
- DEPENDENCY_ID: l'ID della dipendenza da eliminare.
Modifica una dipendenza
Questa sezione spiega come modificare una dipendenza. L'unico attributo modificabile è la descrizione.
REST
Per modificare un deployment, utilizza l'API Dipendenze Patch:
curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID" -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X PATCH -H "Content-Type: application/json" '{ 'description': DESCRIPTION {'
Sostituisci quanto segue:
- HUB_PROJECT: il nome del progetto host dell'hub API. Il progetto host è stato selezionato durante il provisioning dell'hub API.
- HUB_LOCATION: la località del progetto host. La località è stata scelta quando l'API è stato eseguito il provisioning dell'hub.
- DEPLOYMENT_ID: l'ID dell'implementazione da modificare.
- DESCRIPTION: l'unico attributo modificabile è la descrizione.