Por que você precisa de um portal do desenvolvedor de APIs para a descoberta de APIs

NGINX | 06 de dezembro de 2022

As empresas dependem cada vez mais de APIs para conectar aplicações e dados entre diferentes áreas de negócios, integrar-se a parceiros e oferecer experiências aos clientes. Segundo a TechRadar, atualmente, uma empresa utiliza, em média, um total de 15.564 APIs, um aumento de 201% em relação ao ano anterior.

À medida que o número de APIs continua crescendo, aumenta também a complexidade de gerenciar seu portfólio de APIs. Fica mais difícil descobrir e acompanhar quais APIs estão disponíveis e onde estão localizadas, além de encontrar documentação sobre como usá-las. Sem uma estratégia abrangente de APIs, elas podem se proliferar mais rapidamente do que suas equipes de Operações de Plataforma conseguem gerenciá-las. Chamamos esse problema de proliferação de APIs e, em uma publicação anterior, explicamos por que ele representa uma ameaça tão significativa. Nesta publicação, exploramos em detalhes como você pode combater a proliferação de APIs criando um portal para desenvolvedores de APIs com a ajuda da NGINX.

Crie um inventário das suas APIs

Em última análise, as APIs só podem ser úteis quando são utilizadas — o que significa que os consumidores de APIs precisam de uma maneira de encontrá-las. Sem os sistemas adequados, a proliferação de APIs dificulta que os desenvolvedores encontrem as APIs necessárias para suas aplicações. Na melhor das hipóteses, diferentes áreas de negócio mantêm listas de APIs, e o conhecimento é compartilhado entre as equipes por meio de redes informais de engenheiros.

Uma das primeiras etapas para combater a proliferação de APIs é criar uma única fonte confiável de informações sobre elas. Esse processo começa com a criação de um inventário das suas APIs. No entanto, manter um inventário preciso é um desafio, pois ele está em constante mudança à medida que novas APIs são introduzidas e as antigas são descontinuadas. Você também precisa encontrar quaisquer “APIs ocultas” em seus ambientes — APIs que foram esquecidas ao longo do tempo, descontinuadas de forma inadequada ou criadas fora dos seus processos padrão.

APIs não gerenciadas são um dos sintomas mais nocivos da proliferação de APIs, com implicações óbvias para a segurança e custos ocultos. Sem um inventário preciso das APIs disponíveis, suas equipes de API precisam gastar tempo procurando a documentação. Há um risco significativo de desperdício de esforços devido à duplicação de trabalho, à medida que diferentes equipes desenvolvem funcionalidades semelhantes. Além disso, alterações em uma determinada API podem desencadear uma sequência dispendiosa de retrabalho ou até mesmo interrupções sem um controle de versão adequado.

Técnicas como a descoberta automatizada de APIs podem ajudar você a identificar e tratar o sintoma das APIs não gerenciadas. Mas, para resolver o problema, é preciso eliminar as causas-raiz: processos falhos e falta de responsabilidade. Na prática, integrar o inventário e a documentação de APIs aos seus pipelines de CI/CD é a única abordagem que garante visibilidade de todo o seu portfólio de APIs no longo prazo. Em vez de precisar acompanhar manualmente cada API à medida que ela entra em operação, você só precisa identificar e corrigir as exceções.

Simplifique a descoberta de APIs com um portal para desenvolvedores de APIs

A simplificação da descoberta de APIs é uma das áreas em que um portal do desenvolvedor de APIs pode ajudar. Ele oferece um local centralizado para que os consumidores de APIs descubram APIs, leiam a documentação e testem as APIs antes de integrá-las aos seus aplicativos. Seu portal do desenvolvedor de APIs também pode funcionar como o catálogo central de APIs, incluindo informações sobre os responsáveis e dados de contato, para que todos saibam quem é responsável pela manutenção das APIs de diferentes serviços.

Um componente central da nossa arquitetura de referência de API<.htmla>, um portal eficaz para desenvolvedores de API viabiliza alguns casos de uso importantes:

Como parte da sua estratégia de APIs, você precisa definir como manter seu portal para desenvolvedores de APIs. É necessária uma abordagem automatizada e que exija pouca intervenção, integrando perfeitamente a publicação, o versionamento e a documentação de APIs sem gerar mais trabalho para suas equipes de APIs.

Crie uma única fonte de verdade para suas APIs com o NGINX

Para permitir uma descoberta de APIs sem complicações, você precisa criar uma única fonte confiável onde os desenvolvedores possam encontrar suas APIs, aprender a usá-las e integrá-las aos seus projetos. Isso significa que você precisará de um portal do desenvolvedor e de documentação atualizada.

API Connectivity Manager, parte do F5 NGINX Management Suite, ajuda você a integrar a publicação, o versionamento e a documentação de APIs diretamente aos seus fluxos de trabalho de desenvolvimento, para que seu portal de desenvolvedores de APIs esteja sempre atualizado. Além de facilitar a criação de portais de desenvolvedores de APIs para hospedar suas APIs e documentação, o API Connectivity Manager permite adicionar páginas personalizadas e customizar completamente o portal de desenvolvedores para alinhá-lo à identidade visual da sua marca.

Vamos ver como o API Connectivity Manager ajuda você a lidar com alguns casos de uso específicos. Consulte a documentação do API Connectivity Manager para obter instruções detalhadas sobre como configurar um cluster de portal do desenvolvedor e publicar um portal do desenvolvedor.

Gerar documentação da API automaticamente

Muitas vezes, há uma grande diferença entre o nível de qualidade e detalhamento que os consumidores da sua API esperam da documentação e o que seus desenvolvedores de API, sempre ocupados, conseguem entregar de forma realista com tempo e recursos limitados. Muitas ferramentas de documentação desenvolvidas internamente não se integram ao ciclo de vida de desenvolvimento nem a outros sistemas de engenharia. Mas não precisa ser assim.

Como o NGINX pode ajudar: O API Connectivity Manager usa a Especificação OpenAPI para publicar APIs no gateway de API e gerar automaticamente a documentação correspondente no portal do desenvolvedor, economizando o tempo dos desenvolvedores de API e garantindo que os consumidores de API sempre encontrem o que precisam. Você pode fazer upload de arquivos da Especificação OpenAPI diretamente pela interface do usuário do API Connectivity Manager ou enviando uma chamada pela API REST. Isso facilita a automação do processo de documentação por meio do seu pipeline de CI/CD.

Para publicar a documentação no API Connectivity Manager, clique em Serviços na coluna de navegação à esquerda para abrir a guia Serviços. Clique no nome do seu Workspace ou crie um novo.

Quando estiver no Workspace, clique em API Docs abaixo da caixa que contém o nome e a descrição do seu Workspace (example-api na captura de tela). Basta clicar no botão Add API Doc para fazer upload do arquivo de especificação OpenAPI. Clique no botão Save para publicar a documentação no portal do desenvolvedor.

Figura 1: Criação de documentação por meio do upload de um arquivo de especificação OpenAPI para o
API Connectivity Manager

Garanta o versionamento adequado

As alterações de versão devem sempre ser tratadas com cuidado, especialmente em ambientes de microsserviços, nos quais muitos serviços podem interagir com uma única API. Sem uma abordagem cuidadosa para introduzir novas versões e descontinuar as antigas, uma única alteração incompatível pode causar uma falha em cascata em dezenas de microsserviços.

Como o NGINX pode ajudar: O uso de arquivos da Especificação OpenAPI com o API Connectivity Manager facilita o controle de versão das suas APIs. Além de definir o número da versão, você pode fornecer a documentação de cada versão e gerenciar seu status (mais recente, ativa, descontinuada ou obsoleta).

Para publicar uma nova versão de uma API, clique em Serviços na coluna de navegação à esquerda. Clique no nome do seu Workspace na tabela e, em seguida, clique no nome do seu Ambiente na página que será aberta. Depois, clique no botão + Adicionar proxy. Nessa tela, você pode fazer upload da Especificação OpenAPI, definir o caminho base e a versão para criar o URI (por exemplo, /api/v2/) e inserir outros metadados importantes. Clique no botão Publicar para salvar e publicar o proxy da API.

A versão original da API permanece disponível junto com a nova versão. Isso dá aos usuários tempo para migrar gradualmente seus aplicativos ou serviços para a versão mais recente. Quando estiver tudo pronto, você poderá descontinuar completamente a versão original da API. A Figura 2 mostra duas versões da API Sentence Generator publicadas e em produção.

Figura 2: Gerenciamento de versões ativas da API no API Connectivity Manager

Gerar credenciais de API

Para impulsionar a adoção das suas APIs, você precisa tornar o processo de integração o mais simples possível para os consumidores das APIs. Depois que os usuários encontrarem as APIs, eles precisarão de uma forma segura de entrar no portal do desenvolvedor e gerar credenciais. Essas credenciais dão acesso às funcionalidades da sua API. Na maioria dos casos, é recomendável implementar um fluxo de trabalho autogerenciado para que os usuários possam se cadastrar por conta própria.

Como o NGINX pode ajudar: O API Connectivity Manager oferece suporte a fluxos de trabalho de API autogerenciados no portal do desenvolvedor, permitindo que os usuários gerem suas próprias credenciais de recurso para acessar APIs. As credenciais de recurso podem ser gerenciadas no portal usando chaves de API ou autenticação HTTP Basic. Você também pode habilitar o logon único (SSO) no portal do desenvolvedor para proteger o acesso e permitir que consumidores de API autenticados gerenciem credenciais de recurso.

Para habilitar rapidamente o SSO no portal do desenvolvedor, clique em Infraestrutura na coluna de navegação à esquerda. Clique no nome do seu Workspace na tabela (na Figura 3, é team-sentence).

Figura 3: Lista de Workspaces na aba Infrastructure

Na tabela da página do Workspace, clique no nome do Environment que você deseja configurar (na Figura 4, é prod).

Figura 4: Lista de ambientes em um espaço de trabalho

Na seção Clusters do Portal do Desenvolvedor, clique no ícone … na coluna Ações do portal do desenvolvedor em que você está trabalhando e selecione Editar configuração avançada no menu suspenso. Na Figura 5, o único Cluster do Portal do Desenvolvedor é devportal-cluster.

Figura 5: Seleção da opção Edit Advanced Config para um cluster do Developer Portal

Em seguida, clique em Políticas globais na coluna de navegação à esquerda. Configure a política de Terceira Parte Confiável do OpenID Connect clicando no ícone … na coluna Ações da respectiva linha e selecionando Editar política no menu suspenso. Para obter mais informações, consulte a documentação do API Connectivity Manager.

Figura 6: Configuração da política global de Terceiro de Confiança do OpenID Connect para habilitar o logon único

Experimente as APIs no Portal do Desenvolvedor

Uma forma de medir o sucesso da sua estratégia de API é acompanhar a métrica de “tempo até a primeira chamada de API”, que revela quanto tempo um desenvolvedor leva para enviar uma solicitação básica usando sua API.

Já estabelecemos que uma documentação clara e concisa é essencial como primeiro ponto de contato com sua API, permitindo que os usuários tenham uma compreensão básica de como trabalhar com ela. Normalmente, os desenvolvedores precisam então escrever um novo código para integrar a API ao aplicativo antes de poderem testar as solicitações. Você pode ajudá-los a começar muito mais rápido oferecendo uma forma de interagir diretamente com a API no portal do desenvolvedor usando dados reais — permitindo, na prática, que façam sua primeira chamada de API sem escrever uma única linha de código para o aplicativo!

Como o NGINX pode ajudar: Depois que você habilitar o SSO nos portais do desenvolvedor do API Connectivity Manager, os consumidores da API poderão usar o API Explorer para experimentar chamadas de API nas páginas da documentação. Eles poderão usar o API Explorer para explorar os endpoints, parâmetros, respostas e modelos de dados da API, além de testar chamadas de API diretamente nos navegadores.

A Figura 7 mostra o API Explorer em ação — neste caso, testando a API Sentence Generator. O usuário seleciona as credenciais apropriadas, cria a solicitação e recebe uma resposta com dados reais da API.

Figura 7: Teste de uma API no portal do desenvolvedor

Resumo

As APIs são essenciais para a sua organização. E o primeiro passo para gerenciar e proteger suas APIs é fazer um inventário de todas elas, onde quer que estejam. Mas a descoberta de APIs é apenas parte da solução – você precisa incorporar o inventário, a documentação e o versionamento de APIs ao ciclo de vida de desenvolvimento e engenharia para lidar com as causas fundamentais da proliferação de APIs.

Inicie uma avaliação gratuita de 30 dias do NGINX Management Suite, que inclui acesso ao API Connectivity Manager, ao NGINX Plus como gateway de API e ao NGINX App Protect para proteger suas APIs.


Compartilhar

Publicações relacionadas no blog

Como o F5 NGINX One aprimora o gerenciamento e a observabilidade
NGINX | 10/10/2024

Como o F5 NGINX One aprimora o gerenciamento e a observabilidade

Descubra como o F5 NGINX One aprimora o gerenciamento e a observabilidade de ambientes híbridos e multicloud ao oferecer um console web centralizado baseado em SaaS, com insights em tempo real, conformidade automatizada e gerenciamento simplificado de configurações.

Do OpenAPI ao NGINX como gateway de API usando uma API declarativa
NGINX | 17/06/2024

Do OpenAPI ao NGINX como gateway de API usando uma API declarativa

Descubra como transformar uma definição de esquema OpenAPI em uma configuração NGINX totalmente funcional, operando como um API Gateway com a segurança de um Web Application Firewall e um Portal do Desenvolvedor, usando uma abordagem declarativa de API.

Como gerenciar picos repentinos de tráfego e sobrecarga do servidor
NGINX | 14/07/2021

Como gerenciar picos repentinos de tráfego e sobrecarga do servidor

Picos de tráfego e sobrecarga de servidores são preocupações sérias para varejistas online em qualquer época, mas especialmente durante a “Cyber Season” de compras de fim de ano. Detalhamos como você pode aproveitar as soluções de entrega de aplicações de nível de produção da NGINX para se preparar para aumentos repentinos de tráfego.

Distribuição segura de chaves privadas SSL com o NGINX
NGINX | 02/04/2019

Distribuição segura de chaves privadas SSL com o NGINX

Descrevemos três maneiras progressivamente mais seguras de proteger chaves privadas SSL ao configurar o NGINX para processar tráfego HTTPS: permitir acesso de leitura apenas ao usuário root, criptografar as chaves com senhas armazenadas separadamente e distribuir as senhas a partir de um repositório central.

Agrupando solicitações de API em lotes com NGINX Plus e o módulo JavaScript do NGINX
NGINX | 24/05/2018

Agrupando solicitações de API em lotes com NGINX Plus e o módulo JavaScript do NGINX

O módulo JavaScript do NGINX lançado com o NGINX Plus R15 oferece suporte a subsolicitações, possibilitando uma classe totalmente nova de casos de uso para o NGINX Plus. Este exemplo completo também usa a API do NGINX Plus e os módulos de chave-valor para converter solicitações de API dos clientes em solicitações separadas para as APIs dos microsserviços que compõem um aplicativo.

Como superar o esgotamento de portas efêmeras no NGINX e no NGINX Plus
NGINX | 19/04/2016

Como superar o esgotamento de portas efêmeras no NGINX e no NGINX Plus

Confira dicas para evitar o esgotamento de portas efêmeras com ajustes no kernel do Linux, conexões keepalive e conexões vinculadas dinamicamente a endereços IP locais.