Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Esta página
se aplica à Apigee e à Apigee híbrida.
Este documento descreve como criar e gerenciar dependências entre as APIs registradas.
As dependências ajudam você a ver as relações entre as APIs. Consulte
Introdução às dependências.
A interface permite que você veja rapidamente a relação entre as APIs do consumidor e do fornecedor, em que
o consumidor depende de uma operação do fornecedor. Veja a Figura 1.
Figura 8. A interface de dependência da API mostra pares de consumidor/fornecedor, em que
uma operação de consumidor depende de uma operação de fornecedor. É possível detalhar para conferir os detalhes de cada dependência. Também é possível filtrar a tabela por operações de consumidor e/ou fornecedor.
Criar uma dependência
É possível criar uma entidade de dependência com a API REST.
Console
Para criar uma dependência:
No console do Google Cloud, acesse a página Cadeia de suprimentos no Hub de APIs.
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_api_resource_name: RESOURCE_NAME"
},
"consumer": {
// Specify one of the following:
"operation_resource_name": RESOURCE_NAME
// OR
"external_api_resource_name: RESOURCE_NAME"
}
}'
Substitua:
HUB_PROJECT: o nome do projeto host do hub da API. O projeto host foi selecionado
quando o hub de API foi provisionado.
HUB_LOCATION: o local do projeto host. O local foi escolhido quando o hub da API
foi provisionado.
DEPENDENCY_ID: (opcional) o identificador da dependência. Caso não seja informado, um ID
gerado pelo sistema será usado. O nome precisa ser uma string de 4 a 500 caracteres, em que os caracteres válidos são /[a-z][A-Z][0-9]-_.
DESCRIPTION: (opcional) uma breve descrição da dependência.
RESOURCE_NAME: (obrigatório) o nome do recurso de uma operação no hub de APIs ou de uma API externa, dependendo do
atributo especificado.
Os nomes de recursos de operação seguem este formato: projects/PROJECT/locations/LOCATION/apis/API/versions/VERSION/operations/OPERATION
Exemplo de recurso de operação: "projects/myproject/locations/us-central1/apis/payments-api/versions/locationv1/operations/getlocation".
Os nomes de recursos de API externos seguem este formato: projects/PROJECT/locations/LOCATION/externalApis/EXTERNAL_API
Exemplo de recurso de API externa: "projects/myproject/locations/us-central1/externalApis/petstore".
Exemplo de resposta:
{
"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"
}
Exemplo de 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"
}
}'
Listar dependências
Esta seção explica como listar as dependências. É possível listar todas as dependências associadas
a todas as versões de uma API ou listar todas as implantações associadas a uma versão específica.
Console
Para listar dependências:
No console do Google Cloud, acesse a página Cadeia de suprimentos no Hub de APIs.
A lista de dependências conhecidas aparece na página da
cadeia de suprimento.
No campo Filtro, se necessário, especifique as operações de fornecedor
e/ou consumidor para retornar dependências relevantes. O recurso de filtro permite encontrar todas as dependências vinculadas às operações
especificadas.
Esta seção explica como conferir os detalhes de uma dependência de API com a API REST. É possível
conferir detalhes do consumidor e do fornecedor, além de detalhes da dependência, incluindo erros
que podem indicar, por exemplo, uma dependência corrompida.
Console
Para conseguir uma dependência:
No console do Google Cloud, acesse a página Cadeia de suprimentos no Hub de APIs.
No campo Filtro, se necessário, especifique as operações de fornecedor
e/ou consumidor para retornar dependências relevantes. O recurso de filtro permite encontrar todas as dependências vinculadas às operações
especificadas.
Localize uma dependência de interesse e clique em Ver detalhes.
No campo Filtro, se necessário, especifique as operações de fornecedor
e/ou consumidor para retornar dependências relevantes. O recurso de filtro permite encontrar todas as dependências vinculadas às operações
especificadas.
Localize uma dependência de interesse e clique no ícone de exclusão para excluir a dependência.
REST
Para excluir uma dependência do hub de API, use a API Delete dependency:
No campo Filtro, se necessário, especifique as operações de fornecedor
e/ou consumidor para retornar dependências relevantes. O recurso de filtro permite encontrar todas as dependências vinculadas às operações
especificadas.
Localize a dependência de interesse e clique em Ver detalhes.
Na página Dependência, é possível editar a descrição e os atributos. Use o ícone de edição
para permitir a edição desses campos.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-28 UTC."],[[["\u003cp\u003eThis document explains how to manage API dependencies within Apigee and Apigee hybrid, allowing users to visualize and understand the relationships between different APIs.\u003c/p\u003e\n"],["\u003cp\u003eDependencies, which are defined by a consumer operation relying on a supplier operation, can be created, listed, and managed through the Google Cloud console or via REST APIs.\u003c/p\u003e\n"],["\u003cp\u003eThe API hub UI provides a visual overview of consumer/supplier relationships, and the dependencies can be filtered to focus on specific operations of interest, as well as show details on the consumer and supplier.\u003c/p\u003e\n"],["\u003cp\u003eUsers can also get details about dependencies to look for errors, including information about broken dependencies where the supplier operation is removed, and can delete or edit these dependencies as needed.\u003c/p\u003e\n"],["\u003cp\u003eThe dependency ID must be 4-500 characters long and only contain letters, numbers and hyphens when creating a dependency.\u003c/p\u003e\n"]]],[],null,["# Manage API supply chain dependencies\n\n*This page\napplies to **Apigee** and **Apigee hybrid**.*\n\nThis page explains how to manage API supply chain dependencies in API hub. For an overview of API supply chain in API hub, see [API supply chain](./api-supply-chain).\n\n\u003cbr /\u003e\n\nList dependencies\n-----------------\n\nYou can view or list all the dependencies in your API ecosystem using Google Cloud console or the [List dependencies](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/list) API. \n\n### Console\n\nTo list all the dependencies in your API ecosystem from API hub, do the following:\n\n1. In the Google Cloud console, go to **API hub \\\u003e** **API supply chain**.\n\n [Go to API hub](https://console.cloud.google.com/apigee/api-hub/dependencies)\n\n The **API supply chain** page appears displaying all the dependencies in your API ecosystem in [list view](./api-supply-chain#api-supply-chain-list-view).\n2. In the **Filter** field, if needed, specify supplier and/or consumer operations to return relevant dependencies. The filter feature lets you find all dependencies linked with specified operations.\n3. To view the dependencies in [graph view](./api-supply-chain#api-supply-chain-graph-view), click lan **(Open graph view)** beside the consumer or supplier name in the list.\n\n### REST\n\nTo list all the dependencies using the [List dependencies](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/list) API, use the following command: \n\n```\n curl \"https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies\"\n -H \"Authorization: Bearer: $(gcloud auth print-access-token)\" -X GET -H \"Content-Type: application/json\"\n```\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eHUB_PROJECT\u003c/var\u003e: The name of your API hub host project. The host project was selected when API hub was provisioned.\n- \u003cvar translate=\"no\"\u003eHUB_LOCATION\u003c/var\u003e: The location of the host project. The location was chosen when API hub was provisioned.\n\nSample output: \n\n```\n{\n \"dependencies\": [\n {\n \"name\": \"projects/myproject/locations/us-central1/dependencies/user-to-pet\",\n \"consumer\": {\n \"displayName\": \"POST - /v2/user\",\n \"operationResourceName\": \"projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser\"\n },\n \"supplier\": {\n \"displayName\": \"POST - /v2/pet\",\n \"operationResourceName\": \"projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet\"\n }\n }\n ]\n }\n```\n\nView dependency details\n-----------------------\n\nYou can view the dependency details between API operations using Google Cloud console or the [Get dependency details](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/get) API.\n\n\u003cbr /\u003e\n\n### Console\n\nTo view the details of a dependency from the Google Cloud console, do the following:\n\n1. In the Google Cloud console, go to **API hub \\\u003e** **API supply chain**.\n\n [Go to API hub](https://console.cloud.google.com/apigee/api-hub/dependencies)\n\n The **API supply chain** page appears displaying all the dependencies in your API ecosystem in [list view](./api-supply-chain#api-supply-chain-list-view).\n2. In the **Filter** field, if needed, specify supplier and/or consumer operations to return relevant dependencies. The filter feature lets you find all dependencies linked with specified operations.\n3. Locate the desired dependency and click **See Details** .\n\n The **Dependency** pane appears displaying detailed information about the dependency such as the consumer and supplier details, dependency details, and the user defined attributes.\n\nAlternatively, you can also use the API supply chain graph view to view the dependency details. For more information, see [API supply chain graph edge](./api-supply-chain#edges).\n\n### REST\n\nTo view details of a dependency using the [Get dependency details](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/get) API, use the following command: \n\n```\n curl \"https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID\"\n -H \"Authorization: Bearer: $(gcloud auth print-access-token)\" -X GET -H \"Content-Type: application/json\"\n```\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eHUB_PROJECT\u003c/var\u003e: The name of your API hub host project. The host project was selected when API hub was provisioned.\n- \u003cvar translate=\"no\"\u003eHUB_LOCATION\u003c/var\u003e: The location of the host project. The location was chosen when API hub was provisioned.\n- \u003cvar translate=\"no\"\u003eDEPENDENCY_ID\u003c/var\u003e: The unique ID of the dependency.\n\nSample response: \n\n```\n{\n \"name\": \"projects/myproject/locations/us-central1/dependencies/user-to-pet\",\n \"consumer\": {\n \"displayName\": \"POST - /v2/user\",\n \"operationResourceName\": \"projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser\"\n },\n \"supplier\": {\n \"displayName\": \"POST - /v2/pet\",\n \"operationResourceName\": \"projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet\"\n },\n \"state\": \"VALIDATED\",\n \"description\": \"Dependency from user to pet API\",\n \"discoveryMode\": \"MANUAL\",\n \"createTime\": \"2024-04-17T19:33:31.215978712Z\",\n \"updateTime\": \"2024-04-17T19:33:31.737505297Z\"\n}\n```\n\nHere's a sample response, where the error condition indicates the supplier operation was removed\n(a broken dependency): \n\n```\n{\n \"name\": \"projects/common-dev-15/locations/us-central1/dependencies/user-to-pet\",\n \"consumer\": {\n \"displayName\": \"POST - /v2/user\",\n \"operationResourceName\": \"projects/common-dev-15/locations/us-central1/apis/payments-api/versions/2ff89c88-e8b6-48c4-a1c2-bdbb2a929bde/operations/createuser\"\n },\n \"supplier\": {\n \"displayName\": \"POST - /v2/pet\",\n \"operationResourceName\": \"projects/common-dev-15/locations/us-central1/apis/payments-api/versions/2ff89c88-e8b6-48c4-a1c2-bdbb2a929bde/operations/addpet\"\n },\n \"state\": \"VALIDATED\",\n \"description\": \"Dependency from user to pet API\",\n \"discoveryMode\": \"MANUAL\",\n \"createTime\": \"2024-04-17T19:33:31.215978712Z\",\n \"updateTime\": \"2024-04-17T19:33:31.737505297Z\",\n {\n \"error\": \"SUPPLIER_NOT_FOUND\",\n \"errorTime\": 2024-05-18T20:23:42.465324Z\n }\n}\n```\n\nEdit a dependency\n-----------------\n\nYou can edit a dependency using Google Cloud console or the [Patch dependency](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/patch) API.\n**Note:** The only editable attribute is the dependency description. \n\n### Console\n\nTo edit an API dependency from API hub, do the following:\n\n1. In the Google Cloud console, go to **API hub \\\u003e** **API supply chain**.\n\n [Go to API hub](https://console.cloud.google.com/apigee/api-hub/dependencies)\n\n The **API supply chain** page appears displaying all the dependencies in your API ecosystem in [list view](./api-supply-chain#api-supply-chain-list-view).\n2. Locate the dependency that you want to edit and click **See Details** .\n\n The **Dependency** pane appears.\n3. Edit the description of the dependency under **Dependency details**.\n4. Click **Save**.\n\n### REST\n\nTo edit a dependency using the [Patch dependencies](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/patch) API, use the following command: \n\n```\n curl \"https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID\"\n -H \"Authorization: Bearer: $(gcloud auth print-access-token)\" -X PATCH -H \"Content-Type: application/json\"\n '{\n 'description': DESCRIPTION\n }'\n \n```\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eHUB_PROJECT\u003c/var\u003e: The name of your API hub host project. The host project was selected when API hub was provisioned.\n- \u003cvar translate=\"no\"\u003eHUB_LOCATION\u003c/var\u003e: The location of the host project. The location was chosen when API hub was provisioned.\n- \u003cvar translate=\"no\"\u003eDEPENDENCY_ID\u003c/var\u003e: The ID of the dependency to edit.\n- \u003cvar translate=\"no\"\u003eDESCRIPTION\u003c/var\u003e: The description of the dependency.\n\nDelete a dependency\n-------------------\n\nYou can delete a dependency using Google Cloud console or the [Delete dependency](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/delete) API. \n\n### Console\n\nTo delete a dependency from API hub, do the following:\n\n1. In the Google Cloud console, go to **API hub \\\u003e** **API supply chain**.\n\n [Go to API hub](https://console.cloud.google.com/apigee/api-hub/dependencies)\n\n The **API supply chain** page appears displaying all the dependencies in your API ecosystem in [list view](./api-supply-chain#api-supply-chain-list-view).\n2. In the **Filter** field, if needed, specify supplier and/or consumer operations to return relevant dependencies. The filter feature lets you find all dependencies linked with specified operations.\n3. Locate a dependency of interest and click delete **(Delete dependency)** to delete the dependency.\n\n### REST\n\nTo delete a dependency using the [Delete dependency](/apigee/docs/reference/apis/apihub/rest/v1/projects.locations.dependencies/delete) API, use the following command: \n\n```\ncurl \"https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID\"\n -H \"Authorization: Bearer: $(gcloud auth print-access-token)\" -X DELETE -H \"Content-Type: application/json\"\n```\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eHUB_PROJECT\u003c/var\u003e: The name of your API hub host project. The host project was selected when API hub was provisioned.\n- \u003cvar translate=\"no\"\u003eHUB_LOCATION\u003c/var\u003e: The location of the host project. The location was chosen when API hub was provisioned.\n- \u003cvar translate=\"no\"\u003eDEPENDENCY_ID\u003c/var\u003e: The ID of the dependency to delete."]]