Suporte a OpenAPI na etapa REST

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 4 min. de leitura
  • Preencha os campos da etapa REST e as entradas de ação com informações importadas de uma especificação de OpenAPI. Importe especificações fornecendo um URL para YAML ou JSON, ou copiando e colando o conteúdo.

    Benefícios

    O suporte a OpenAPI na etapa REST oferece esses benefícios.

    • Use informações importadas de uma especificação OpenAPI para configurar operações de etapa REST, métodos HTTP, parâmetros, corpo da solicitação, caminho e cabeçalhos.
    • Revise as operações de API disponíveis sem sair da interface do Flow Designer.
    • Gere as entradas necessárias para a etapa REST para enviar solicitações válidas a um serviço OpenAPI e adicioná-las à etapa REST no local correto.
    Nota:
    Sempre revise os valores da etapa REST importados de uma especificação OpenAPI antes de enviar uma solicitação. Remova parâmetros, cabeçalhos e entradas que a API não requer.

    Entradas geradas

    Quando você importa uma especificação OpenAPI, o sistema cria todas as entradas necessárias e as adiciona ao formulário de etapa REST quando apropriado. No tempo de execução, o sistema envia uma solicitação REST que contém os valores de entrada fornecidos para a ação. Por exemplo, se uma API exigir um parâmetro de nome passado na solicitação, o sistema criará uma entrada de nome e a adicionará à etapa REST. Quando você adiciona a ação ao fluxo, o nome se torna uma entrada para a ação.

    O sistema mapeia tipos de dados OpenAPI para tipos de dados Workflow Studio. Por exemplo, se a especificação OpenAPI exigir um objeto de usuário, o sistema criará um objeto de dados complexo como entrada. Para obter mais informações, consulte Dados complexos.

    Limite de tamanho da especificação

    Por padrão, o sistema pode importar especificações de OpenAPI de até 10 MB. Para aumentar o tamanho da importação, atualize a propriedade do sistema glide.rest.openapi.max_request_size. O valor máximo é 100 MB.

    Gestão de especificações

    Importe uma especificação OpenAPI selecionando opções na etapa REST. Para obter mais informações, consulte Etapa REST. A importação de uma especificação OpenAPI cria um registro na tabela OpenAPIs [sys_openapi]. Você pode exibir ou excluir registros de especificação diretamente desta tabela. Para atualizar uma especificação, exclua-a e importe-a novamente.

    Considerações de design

    Crie uma etapa REST a partir de uma especificação OpenAPI com essas considerações em mente.

    Remover parâmetros de etapa REST desnecessários
    Ao importar uma especificação de OpenAPI, o sistema adiciona todos os parâmetros e cabeçalhos presentes na especificação à etapa REST. Revise os valores da etapa REST final e remova os parâmetros que você não deseja enviar na solicitação. Por exemplo, se a API aceitar cabeçalhos de tipo de conteúdo para JSON e XML, o sistema adicionará ambos os cabeçalhos à etapa REST. Remova um dos cabeçalhos, dependendo do tipo de conteúdo que você deseja receber na resposta.
    Tornar os rótulos de entrada amigáveis
    Certifique-se de que os rótulos de entrada necessários para a etapa REST sejam claros e compreensíveis. Rótulos claros permitem que os designers de fluxo entendam facilmente as entradas necessárias ao usar a ação em um fluxo.
    Remover entradas que não exigem configuração do Flow Designer
    Ao importar uma especificação OpenAPI, o sistema adiciona todas as entradas presentes na especificação à seção de entrada de ação. Remova todas as entradas que não exijam um Flow Designer para configurar. Por exemplo, se uma variável de etapa REST receber um valor de outra etapa na ação, uma entrada de ação não será necessária.
    Evite mudar a operação da API
    Alterar o valor do campo Operação de API remove todos os valores dependentes dessa operação. Se você configurar os valores de especificação OpenAPI no formulário de etapa REST e, em seguida, alterar a operação, o sistema não salvará sua configuração. Os valores inseridos manualmente por um usuário não são afetados.

    Limitações

    Crie uma etapa REST a partir de uma especificação OpenAPI com essas limitações.

    Tipos de mídia do corpo da solicitação
    O corpo da solicitação é compatível somente com tipos de mídia baseados em JSON e XML. Se a operação selecionada na Especificação OpenAPI importada contiver um corpo de solicitação com um tipo de mídia diferente, o sistema adicionará uma cápsula de dados do tipo Cadeia de caracteres ao campo Corpo da solicitação.
    Componentes do OpenAPI 3.0

    A OpenAPI 3.0 adiciona novos componentes ao Swagger 2.0 para descrever uma API com mais detalhes. O suporte a OpenAPI na etapa REST oferece suporte a alguns, mas não a todos esses componentes. No momento, a etapa REST não é compatível com esses componentes.

    • Objeto de esquema: propriedades oneOf, anyOf
    • Objeto discriminador
    • Objeto de informação: termosDeServiço, contato, campos de licença
    • Objeto de exemplo
    • Vincular objeto
    • Objeto de retorno de chamada
    • Objeto do esquema de segurança
    • Objeto de requisitos de segurança
    • Marcar objeto
    • Objeto de documentação externa
    • Objeto do servidor
    • Extensões de especificação
    • Referências recursivas

    Mais informações sobre esses componentes estão disponíveis na documentação do OpenAPI. Consulte Especificação OpenAPI.