O Cloud Deployment Manager vai chegar ao fim do suporte em 31 de dezembro de 2025. Se você usa o Deployment Manager, migre para o Infrastructure Manager ou uma tecnologia de implantação alternativa até 31 de dezembro de 2025 para garantir que seus serviços continuem sem interrupções.
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Com o Deployment Manager, você pode registrar a API de terceiros usando o próprio serviço. Após registrá-la como provedor de tipos, você pode implantar os recursos desta API como tipos na configuração.
Este guia de uma página descreve o processo de integração de APIs de terceiros com o Deployment Manager. Esta página não contém instruções detalhadas sobre todas as etapas do processo. Ela fornece uma visão geral e links adicionais para você acessar mais informações. Leia este guia para ter um entendimento geral do processo de adição de APIs, mas consulte a documentação detalhada para instruções passo a passo.
Como determinar se uma API é qualificada para integração com o Deployment Manager
O Deployment Manager exige alguns requisitos das APIs que tentam se integrar a ele. Em especial:
A API precisa ser RESTful. Ou seja, a API precisa expor uma interface de tipo REST com os métodos criar, ler, atualizar e excluir (CRUD, na sigla em inglês).
Todos os parâmetros de caminho e consulta devem ser resolvidos com sucesso. É necessário que todos os parâmetros de caminho e consulta da API existam como parte do corpo do recurso ou em todos os métodos da API, para que o Deployment Manager faça a correspondência correta com o parâmetro quando o usuário o fornece.
O ponto de extremidade do documento descritor da API precisa estar acessível. O Deployment Manager faz uma solicitação HTTP para conseguir o documento descritor da API. Portanto, é necessário que o documento esteja hospedado em algum lugar que o Deployment Manager consegue acessar. É essencial que o documento esteja disponível publicamente ou protegido por autenticação básica.
Com relação ao ponto anterior, a API precisa ter autenticação básica. APIs executadas no Google Kubernetes Engine ou no Google Cloud Endpoints, oferecem suporte para autenticação por OAuth 2.0 com token de acesso da conta de serviço do projeto. Leia mais sobre autenticação.
Se a API for complexa, talvez seja necessário configurar opções adicionais para explicar ao Deployment Manager como lidar com os comportamentos menos óbvios da API.
Após determinar que a API atende aos requisitos acima, adicione-a como um recurso de provedor de tipos. É necessário fornecer um documento de descritor da API e, opcionalmente, qualquer outra opção de API usando as opções avançadas.
A adição de uma API como um provedor de tipos expõe todos os recursos dessa API ao Deployment Manager, além de permitir que os usuários criem, atualizem ou excluam esses recursos usando o Deployment Manager.
Se a API tiver padrões sutis que talvez não sejam reconhecidos facilmente, será necessário fornecer também mapeamentos de entrada ao Deployment Manager, para que ele lide de modo adequado com as solicitações de API. Para mais informações, leia Opções avançadas da API.
Como chamar um provedor de tipos nos arquivos de configuração
Depois de registrar a API no Deployment Manager, é possível criar recursos de API chamando-os como um tipo na configuração.
Por exemplo, se você tiver nomeado um provedor de tipos example-directory-api e quiser criar um recurso de API conhecido como person, é possível especificar o tipo nas suas configurações da seguinte maneira:
[[["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-19 UTC."],[[["\u003cp\u003eThis guide provides an overview of integrating third-party APIs with Deployment Manager, enabling users to deploy resources from those APIs as types in their configurations.\u003c/p\u003e\n"],["\u003cp\u003eDeployment Manager requires that integrated APIs be RESTful, have resolvable parameters, and provide an accessible descriptor document, among other requirements.\u003c/p\u003e\n"],["\u003cp\u003eTo integrate an API, users must add it as a Type Provider, supplying a descriptor document and any necessary advanced options to handle complex API behaviors.\u003c/p\u003e\n"],["\u003cp\u003eOnce registered as a Type Provider, an API's resources can be called as types within Deployment Manager configuration files, similar to calling Google API resources.\u003c/p\u003e\n"],["\u003cp\u003eThis feature is currently in Beta, meaning it is subject to the Pre-GA Offerings Terms and has the possibility of having limited support.\u003c/p\u003e\n"]]],[],null,["# Integrating with Deployment Manager\n\n| **Beta**\n|\n|\n| This product or feature is subject to the \"Pre-GA Offerings Terms\" in the General Service Terms section\n| of the [Service Specific Terms](/terms/service-terms#1).\n|\n| Pre-GA products and features are available \"as is\" and might have limited support.\n|\n| For more information, see the\n| [launch stage descriptions](/products#product-launch-stages).\n\nDeployment Manager offers the ability to register a third-party API with the\nDeployment Manager service. After registering an API as a\n[type provider](/deployment-manager/docs/configuration/type-providers/creating-type-provider)\nwith Deployment Manager, you can use Deployment Manager to deploy resources from\nthe API as types in your configuration.\n\nThis document is a one-page guide that describes the process of integrating a\nthird-party API with Deployment Manager. This page does not contain\ncomprehensive instructions for each step of the process but provides an\noverview and additional links for more information. Use this page to\ngain a high-level view of the process for adding an API but refer to the\ndetailed documentation for step-by-step instructions.\n\nDetermining if an API is eligible for integrating with Deployment Manager\n-------------------------------------------------------------------------\n\nDeployment Manager has certain expectations of any API that attempts to\nintegrate with it. Specifically:\n\n- Deployment Manager expects a RESTful API. That is, the API exposes a REST-like interface with Create, Read, Update, and Delete (CRUD) methods.\n- All path and query parameters resolve successfully. All path and query parameters of the API must exist as part of the resource body or exist on all methods of the API, so that Deployment Manager can match the parameter when a user supplies it.\n- The API's descriptor document endpoint must be accessible. Deployment Manager makes an HTTP request to get an API's descriptor document so the document must be hosted somewhere accessible by Deployment Manager. The document must be publicly available or protected by basic authentication.\n- Related to the previous point, the API has either basic authentication, or, if the API is running on Google Kubernetes Engine or Google Cloud Endpoints, the API supports OAuth 2.0 authentication using an access token from the project's service account. Read more about [authentication](/deployment-manager/docs/configuration/type-providers/creating-type-provider#authentication).\n- If your API is complex, you might need to configure additional options to explain to Deployment Manager how to handle less obvious API behavior.\n\nFor more information, read the\n[API Requirements](/deployment-manager/docs/configuration/type-providers/api-requirements)\ndocumentation.\n\nAdding your API to Deployment Manager\n-------------------------------------\n\nAfter determining that your API matches the requirements above,\n[add the API as a Type Provider](/deployment-manager/docs/configuration/type-providers/creating-type-provider)\nresource. You must provide an API descriptor document and optionally, any\nadditional API options using\n[advanced options](/deployment-manager/docs/configuration/type-providers/advanced-configuration-options).\nAdding an API as a type provider exposes all resources of that API to Deployment\nManager and allows users to create, update, or delete those resources with\nDeployment Manager.\n\nIf your API has subtle API patterns that might not be easily recognizable, you\nwill need to also provide input mappings to Deployment Manager so it can\nproperly handle API requests. For information, read\n[Advanced API Options](/deployment-manager/docs/configuration/type-providers/advanced-configuration-options).\n\nCalling a type provider in configuration files\n----------------------------------------------\n\nOnce an API is registered with Deployment Manager, you can create API resources\nby calling that API resource as a type in your configuration.\n\nFor example, if you named your type provider `example-directory-api` and you\nwant to create an API resource known as `person`, you can specify the type\nin your configurations like so: \n\n resources:\n - name: Jane\n type: my-project/example-directory-api:person\n properties:\n - name: Jane\n website: www.example.com\n ...\n\nTo compare, this is the same process as calling a Google API and\ncreating an API resource: \n\n resource:\n - name: example-instance\n type: compute.v1.instance\n properties:\n - machineType: n1-standard-1\n ...\n\nWhat's next\n-----------\n\n- Read about the [API requirements](/deployment-manager/docs/configuration/type-providers/api-requirements) for adding an API to Deployment Manager\n- Follow the instructions to [add an API](/deployment-manager/docs/configuration/type-providers/creating-type-provider).\n- Learn more about [advanced API options](/deployment-manager/docs/configuration/type-providers/advanced-configuration-options).\n- Learn more about [types](/deployment-manager/docs/fundamentals#types).\n- Read about [creating a configuration](/deployment-manager/docs/configuration).\n- [Create a deployment](/deployment-manager/docs/deployments)."]]