Centro de API do Azure – principais conceitos
Este artigo explica os principais conceitos do Centro de API do Azure. O Centro de API do Azure permite o rastreamento de APIs em um local centralizado para descoberta, reutilização e governança.
Modelo de dados
O diagrama a seguir mostra as principais entidades no Centro de API do Azure e como elas se relacionam entre si. Consulte as seções a seguir para obter mais informações sobre essas entidades e seus conceitos relacionados.
API
Uma entidade lógica de nível superior no Centro de API do Azure, uma API representa qualquer API real que você deseja acompanhar. No Centro de API, você pode incluir APIs de qualquer tipo, incluindo REST, GraphQL, gRPC, SOAP, WebSocket e webhook.
Uma API no inventário pode ser gerenciada por qualquer solução de gerenciamento de API, como o Gerenciamento de API do Azure , Gerenciamento de API do Apigee, Kong Konnect, Gerenciamento de API MuleSoft ou outra plataforma. Uma API representada no Centro de API do Azure também pode não ser gerenciada.
O inventário de API no Centro de API do Azure foi projetado para ser criado e gerenciado por gerentes de programas de API ou administradores de TI.
Versão da API
O controle de versão da API é a prática de gerenciar alterações em uma API e garantir que essas alterações sejam feitas sem interromper os clientes. Uma API pode ter várias versões em estágios de ciclo de vida diferentes, cada uma alinhada com alterações de API específicas. Algumas versões podem introduzir alterações importantes ou significativas, enquanto outras adicionam pequenas melhorias. Uma versão da API pode estar em qualquer estágio do ciclo de vida – do design, à visualização, à produção ou preterido.
Definição de API
Cada versão da API deve ser definida idealmente por pelo menos uma definição, como uma definição OpenAPI para uma API REST. O Centro de API do Azure permite qualquer arquivo de definição de API formatado como texto (YAML, JSON, Markdown etc.). Você pode carregar definições OpenAPI, gRPC, GraphQL, AsyncAPI, WSDL e WADL, entre outras.
Ambiente
Um ambiente representa um local em que um runtime de API pode ser implantado, por exemplo, um serviço de Gerenciamento de API do Azure, um serviço de Gerenciamento de API do Apigee ou um serviço de computação, como um cluster do Kubernetes, um aplicativo Web ou uma função do Azure. Cada ambiente é alinhado com uma fase do ciclo de vida, como desenvolvimento, teste, preparo ou produção. Um ambiente também pode incluir informações sobre o portal do desenvolvedor ou as interfaces de gerenciamento.
Observação
Use o Centro de API do Azure para acompanhar um dos ambientes de runtime da API, hospedados ou não na infraestrutura do Azure. Esses ambientes não são os mesmos que os Ambientes de Implantação do Azure.
Implantação
Uma implantação é um local (um endereço) em que os usuários podem acessar uma API. Uma API pode ter várias implantações, como diferentes ambientes de preparo ou regiões. Por exemplo, uma API pode ter uma implantação em um ambiente de preparo interno e uma segunda em um ambiente de produção. Cada implantação está associada a uma definição de API específica.
Metadados
No Centro de API do Azure, organize suas APIs, implantações e outras entidades, com a definição dos valores das propriedades de metadados, que podem ser usados para pesquisa e filtragem e para impor padrões de governança. Um centro de API fornece várias propriedades de metadados internas comuns, como “tipo de API” e “fase do ciclo de vida”. Um proprietário do centro de API pode aumentar as propriedades internas definindo propriedades personalizadas em um esquema de metadados para organizar as respectivas APIs, implantações e ambientes. Por exemplo, crie uma propriedade Aprovador de API para identificar o indivíduo responsável por aprovar uma API para uso.
O Centro de API do Azure dá suporte a metadados personalizados do tipo matriz, booliano, número, objeto, opções predefinidas e cadeia de caracteres.
O esquema de metadados do Centro de API do Azure é compatível com as especificações de esquema JSON e YAML, a fim de permitir a validação de esquema em ferramentas de desenvolvedor e pipelines automatizados.