Gestisci le dipendenze

Questa pagina si applica ad Apigee e Apigee hybrid.

Questo documento descrive come creare e gestire le dipendenze tra le API registrate. Le dipendenze consentono di visualizzare 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": {
          "operation_resource_name": SUPPLIER_OPERATION
      },
      "consumer": {
          "operation_resource_name": CONSUMER_OPERATION
      }
  }'

Sostituisci quanto segue:

  • HUB_PROJECT: il nome del progetto host dell'hub API. Il progetto host è stato selezionato al momento del provisioning dell'hub API.
  • HUB_LOCATION: la posizione del progetto host. La località è stata scelta al momento del provisioning dell'hub API.
  • (Facoltativo) DEPENDENCY_ID: 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.
  • SUPPLIER_OPERATION: (obbligatorio) il nome completo dell'operazione del fornitore. Ad esempio: "projects/myproject/locations/us-central1/apis/payments-api/versions/locationv1/operations/getlocation".
  • CONSUMER_OPERATION: (obbligatorio) il nome completo dell'operazione consumer. Questa operazione dipende dall'operazione del fornitore (chiamate). Ad esempio: "projects/myproject/locations/us-central1/apis/payments-api/versions/locationv1/operations/createuser".

Esempio di risposta:

{
  "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"
 }

REST di esempio

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 dipendenze

Questa sezione spiega come elencare le dipendenze. Puoi elencare tutte le dipendenze associate a tutte le versioni di un'API oppure tutte le dipendenze associate a una versione specifica.

REST

Per elencare tutte le dipendenze, utilizza l'API Elenca 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 dell'hub API. Il progetto host è stato selezionato al momento del provisioning dell'hub API.
  • HUB_LOCATION: la posizione del progetto host. La località è stata scelta al momento del provisioning dell'hub API.

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 su una dipendenza dell'API con l'API REST.

REST

Per visualizzare i dettagli di una dipendenza, utilizza l'API Ottieni 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 dell'hub API. Il progetto host è stato selezionato al momento del provisioning dell'hub API.
  • HUB_LOCATION: la posizione del progetto host. La località è stata scelta al momento del provisioning dell'hub API.
  • DEPENDENCY_ID: l'ID univoco della dipendenza.

Esempio di risposta:

{
  "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"
}

Elimina una dipendenza API

Questa sezione spiega come eliminare una dipendenza dell'API.

REST

Per eliminare una dipendenza dall'hub API, utilizza l'API Delete 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 DELETE -H "Content-Type: application/json"

Sostituisci quanto segue:

  • HUB_PROJECT: il nome del progetto host dell'hub API. Il progetto host è stato selezionato al momento del provisioning dell'hub API.
  • HUB_LOCATION: la posizione del progetto host. La località è stata scelta al momento del provisioning dell'hub API.
  • 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 Patch 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 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 al momento del provisioning dell'hub API.
  • HUB_LOCATION: la posizione del progetto host. La località è stata scelta al momento del provisioning dell'hub API.
  • DEPLOYMENT_ID: l'ID del deployment da modificare.
  • DESCRIPTION: l'unico attributo modificabile è la descrizione.