Exercício: usar extensões OpenAPI
Neste exercício, você configurará as extensões de OpenAPI no conector personalizado Contoso Invoicing. Você implementará as seguintes extensões:
Testar conexão: para validar que a chave de API é válida.
Valores dinâmicos: para tornar a entrada de ID do Tipo de Fatura uma lista suspensa de valores da API.
Esquema dinâmico: para mostrar somente os parâmetros que são válidos para o tipo de fatura selecionado.
Importante
Use um ambiente de teste com o Microsoft Dataverse provisionado. Se você não tiver um, poderá criar uma conta no plano da comunidade.
Observação
Baixe o arquivo a seguir no computador local para fazer este exercício Contoso Invoicing Triggers. Selecione o botão download no meio à direita da tela.
Tarefa 1: Importar a solução
Nesta tarefa, você importará uma solução não gerenciada que contém um conector personalizado Contoso Invoicing e depois testará o conector. Você usará esse conector para concluir as tarefas deste exercício.
Vá para o Power Apps Maker Portal e verifique se está no ambiente correto.
Selecione Soluções > Importar solução.
Selecione Procurar.
Selecione a solução ContosoInvoicingExtensions_1_0_0_0.zip e, em seguida, clique em Abrir.
Selecione Avançar.
Selecione Importar e aguarde a conclusão da importação. Uma mensagem de êxito deve aparecer após a conclusão da importação.
Selecione Publicar Todas as Personalizações e aguarde o término da publicação.
Abra a solução Contoso Invoicing - Extensions que você importou.
O componente de conector personalizado Contoso Invoicing - Extensions deve ser exibido.
Selecione o conector Contoso Invoicing - Extensions, em seguida, selecione Editar.
Inicie uma nova janela do navegador e vá para Contoso Invoicing.
Selecione o link Chave de API.
Copie a chave de API. Salve essa chave em um bloco de notas. Você precisará dela para tarefas futuras.
Retorne ao conector, selecione a guia Teste e, em seguida, selecione + Nova conexão.
Cole a chave copiada no campo Chave de API e selecione Criar conexão.
Selecione Atualizar conexões.
Role até a seção Operações, selecione ListInvoiceTypes e Testar operação.
Você deve obter uma resposta contendo os tipos de fatura. Posteriormente, você usará essa operação para implementar a extensão Valores Dinâmicos para o parâmetro Tipo de Fatura.
Não saia desta página.
Tarefa 2: Adicionar a extensão para testar conexão
Nesta tarefa, você adicionará a extensão para testar conexão:
Ative o botão de alternância Swagger Editor.
Adicione o fragmento a seguir depois de produces: [] e selecione Atualizar conector. O recuo do texto deve ser igual ao da imagem a seguir.
x-ms-capabilities: testConnection: operationId: ListInvoices parameters: {}
Verifique se o recuo é semelhante à imagem abaixo.
Selecione + Nova conexão novamente.
Insira seu nome ou outro valor aleatório no campo Chave de API e selecione Criar conexão.
A criação da conexão deverá falhar.
Forneça a chave de API copiada na Tarefa 1 no campo Chave de API e selecione Criar conexão.
A criação da conexão deverá ser bem-sucedida.
Não saia desta página.
Tarefa 3: Configurar valores dinâmicos para ID do tipo de fatura
Nesta tarefa, você vai configurar valores dinâmicos para ID do tipo de fatura:
Selecione a guia Definição.
Selecione AddInvoice na seção Ações.
Role para baixo, selecione o botão reticências (Divisa) do parâmetro typeId e, em seguida, selecione Editar.
Insira Tipo de Fatura para Resumo, 1 para Valor padrão e selecione Sim para É obrigatório.
Role para baixo e selecione Dinâmico para Tipo de menu suspenso.
Selecione ListInvoiceTypes para ID da Operação, selecione typeId para Valor e nome para Nome de exibição do valor.
Selecione Atualizar conector.
Ative o botão de alternância Swagger Editor.
Se você receber erros de chave hash, feche a guia do navegador do conector e reabra no modo de edição.
Localize AddInvoice e verifique se x-ms-dynamic-values foi adicionado.
Não saia desta página.
Tarefa 4: Configurar a extensão do esquema dinâmico
Nesta tarefa, você vai configurar a extensão do esquema dinâmico:
Selecione a guia Teste.
Selecione a operação GetInvoiceSchema e selecione Testar operação.
Revise a resposta. Essa resposta é o que uma API precisa retornar para permitir que o Esquema Dinâmico seja configurado.
Ative o botão de alternância Swagger Editor.
Localize a linha CreateInvoiceRequest e substitua a invoice pelo texto a seguir do Swagger.
Invoice:
x-ms-dynamic-properties:
operationId: GetInvoiceSchema
parameters:
typeId: {parameterReference: typeId}
Antes:
Depois:
Os recuos devem ser iguais aos da imagem a seguir.
Desative o botão de alternância Swagger Editor.
Selecione a guia Definição.
Selecione a ação GetInvoiceSchema e interna para Visibilidade.
Selecione Atualizar conector.
Tarefa 5: Testar o conector
Nesta tarefa, você testará o conector:
Acesse Power Automate e certifique-se de que esteja no ambiente correto.
Escolha Soluções e abra a solução Contoso Invoicing - Extensions.
Selecione + Novo e, depois, Automação > Fluxo da nuvem > Instantâneo.
Insira Metadados dinâmicos e Nome do fluxo, selecione Disparar manualmente um fluxo para o gatilho e selecione Criar.
Selecione+Nova etapa.
Selecione a guia Personalizado e Contoso Invoicing - Extensions.
Selecione AddInvoice para a ação.
Insira Minha conexão para o nome, digite seu nome em Chave de API e selecione Criar. O teste de conexão deverá falhar.
Forneça a chave de API copiada na Tarefa 1 no campo Chave de API e selecione Criar novamente.
A conexão deve ser criada com êxito.
No menu suspenso Tipo de Fatura, selecione Ordem de Compra.
O campo Ordem de Compra deve estar visível agora.
Altere o Tipo de Fatura para Sem ordem de compra.
O campo Ordem de Compra não deve estar mais visível.
Salve o fluxo.