Preparar o conector e ficheiros de plug-in do Power Platform para certificação
Este processo é tanto para editores verificados como independentes.
Depois de concluir o desenvolvimento do seu conector e/ou plug-in personalizado, siga estes passos para o preparar para certificação e gerar os ficheiros do conector e/ou ficheiros de plug-in a submeter à Microsoft.
Nota
Este artigo fornece informações para a certificação de conectores personalizados no Azure Logic Apps, Power Automate e Power Apps e plugins no Copilot. Antes de seguir os passos deste artigo, leia Certificar o seu conector e/ou plug-in.
Passo 1: Registar o seu conector e/ou plug-in (apenas aplicável a editores independentes)
Esta secção não se aplica a editores verificados.
Não tem de concluir o desenvolvimento do conector e/ou plug-in personalizado para solicitar a certificação. Para iniciar o processo de certificação, registe o seu conector e/ou plug-in para certificação preenchendo o nosso formulário de registo.
Espere um e-mail dentro de dois dias úteis a partir de um contacto da Microsoft, que:
- Compreende o seu conector personalizado, conector e/ou plug-in.
- Aprende sobre o progresso do seu desenvolvimento.
- Envia-lhe e-mails sobre o processo de certificação.
Passo 2: Cumprir os requisitos de submissão para conectores
Para manter um alto padrão de qualidade e consistência entre os nossos conectores certificados, a Microsoft tem um conjunto de requisitos e diretrizes a que o seu conector personalizado tem de obedecer para a certificação.
Dê um título ao seu conector
O título tem de cumprir os seguintes requisitos.
- Tem de existir e ser escrito em inglês.
- Tem de ser exclusivo e distinto de qualquer título de conector e/ou plug-in existente.
- Deve ter o nome do seu produto ou organização.
- Deve seguir os padrões de nomeação existentes para o conector e/ou plug-in certificado. Para editores independentes, o nome do conector deve seguir o padrão
Connector and/or plugin Name (Independent Publisher)
. - Não pode ter mais de 30 carateres.
- não pode conter as palavras API, Conector nem nenhum dos nossos nomes de produtos do Power Platform (por exemplo, Power Apps).
- Não pode terminar num caráter não alfanumérico, incluindo símbolo de retorno, nova linha ou espaço em branco.
Exemplos
- Bons títulos de conector e/ou plug-in:
Azure Sentinel*, *Office 365 Outlook
- Maus títulos de conector e/ou plug-in:
Azure Sentinel's Power Apps Connector
,Office 365 Outlook API
Escreva uma descrição para o seu conector
A descrição deve cumprir os seguintes requisitos.
- Tem de existir e ser escrito em inglês.
- Não pode conter erros gramaticais e ortográficos.
- Deverá descrever o valor e a finalidade principal oferecidos pelo seu conector.
- Não pode ter menos que 30 carateres ou mais que 500 carateres.
- Não pode conter nomes de produtos do Power Platform (por exemplo, "Power Apps").
Criar um ícone para o conector (aplicável apenas a editores verificados)
Esta secção não se aplica a editores independentes.
- Crie um logótipo do com dimensões 1:1 num intervalo de 100 x 100 a 230 × 230 pixeis (sem extremidades arredondadas).
- Utilize um fundo de cor não transparente, não-branco (#ffffff) e cor não predefinida (#007ee5) que corresponda à cor de fundo do ícone especificado.
- Certifique-se de que o ícone é exclusivo de qualquer outro ícone de conector certificado.
- Submeta o logótipo no formato PNG como
<icon>.png
. - Defina as dimensões do logótipo abaixo de 70% para a altura e largura da imagem com um fundo consistente.
- Certifique-se de que a cor da marca é uma cor hexadecimal válida e não deve ser branca (#ffffff) ou a predefinida (#007ee5).
Definir resumos e descrições de operação e de parâmetros
Os resumos e descrições devem cumprir os seguintes requisitos.
- Tem de existir e ser escrito em inglês.
- Não pode conter erros gramaticais e ortográficos.
- Resumos de operações e parâmetros devem ser expressões de 80 carateres ou menos, e conter apenas carateres alfanuméricos ou parênteses.
- Descrições de operações e de parâmetros devem ser frases completas, descritivas, e terminar em pontuação.
- Não pode conter quaisquer nomes de produtos do Microsoft Power Platform (por exemplo, "Power Apps").
Definir respostas de operação exatas
As respostas de operação devem cumprir os seguintes requisitos.
- Defina as respostas de operação com um esquema exato apenas com respostas esperadas.
- Não use respostas predefinidas com a definição exata de um esquema.
- Fornecer definições de esquema de resposta válidas para todas as operações no swagger.
- Não são permitidos esquemas de resposta vazios, exceto em casos especiais em que o esquema de resposta é dinâmico. Isto significa que nenhum conteúdo dinâmico é mostrado na saída e os criadores têm de usar JSON para analisar a resposta.
- Não são permitidas operações vazias.
- Remova as propriedades vazias, a menos que sejam obrigatórias.
Verificar as propriedades do swagger
As propriedades devem cumprir os seguintes requisitos.
- Certifique-se de que a "openapidefinition" está num ficheiro JSON corretamente formatado.
- Garanta que a definição do swagger está em conformidade com o padrão OpenAPI 2.0 e com o padrão expandido dos conectores.
Verificar parâmetros de ligação
Os parâmetros devem cumprir os seguintes requisitos.
Certifique-se de que a propriedade é atualizada com valores apropriados para "UIDefinition" (nome a apresentar, descrição).
Se o parâmetro de ligação utilizar autenticação Básica, certifique-se de que o JSON está formatado corretamente como o seguinte exemplo.
{ "username": { "type": "securestring", "uiDefinition": { "displayName": "YourUsernameLabel", "description": "The description of YourUsernameLabel for this api", "tooltip": "Provide the YourUsernameLabel tooltip text", "constraints": { "tabIndex": 2, "clearText": true, "required": "true" } } }, "password": { "type": "securestring", "uiDefinition": { "displayName": "YourPasswordLabel", "description": "The description of YourPasswordLabel for this api", "tooltip": "Provide the YourPasswordLabel tooltip text", "constraints": { "tabIndex": 3, "clearText": false, "required": "true" } } } }
Se o parâmetro de ligação tiver APIKey como autenticação, certifique-se de que o JSON está formatado corretamente como o seguinte exemplo.
{ "api_key": { "type": "securestring", "uiDefinition": { "displayName": "YourApiKeyParameterLabel", "tooltip": "Provide your YourApiKeyParameterLabel tooltip text", "constraints": { "tabIndex": 2, "clearText": false, "required": "true" } } } }
Se o parâmetro de ligação tiver Generic OAuth como autenticação, certifique-se de que o JSON está formatado corretamente como o seguinte exemplo.
{ "token": { "type": "oAuthSetting", "oAuthSettings": { "identityProvider": "oauth2", "scopes": [ "scope1" ], "redirectMode": "GlobalPerConnector", "customParameters": { "AuthorizationUrl": { "value": "https://contoso.com" }, "TokenUrl": { "value": "https://contoso.com" }, "RefreshUrl": { "value": "https://contoso.com" } }, "clientId": "YourClientID" }, "uiDefinition": null } }
Se o parâmetro de ligação tiver fornecedor de identidade OAuth2, certifique-se de que o fornecedor de identidade faz parte da lista de fornecedores OAuth2 suportados. Em seguida, está o exemplo de fornecedor de identidade GitHub OAuth2:
{ "token": { "type": "oAuthSetting", "oAuthSettings": { "identityProvider": "github", "scopes": [ "scope1" ], "redirectMode": "GlobalPerConnector", "customParameters": {}, "clientId": "YourClientId" }, "uiDefinition": null } }
Se o parâmetro de ligação tiver Microsoft Entra ID como autenticação, certifique-se de que o JSON está formatado corretamente como o seguinte exemplo.
{ "token": { "type": "oAuthSetting", "oAuthSettings": { "identityProvider": "aad", "scopes": [ "scope1" ], "redirectMode": "GlobalPerConnector", "customParameters": { "LoginUri": { "value": "https://login.microsoftonline.com" }, "TenantId": { "value": "common" }, "ResourceUri": { "value": "resourceUri" }, "EnableOnbehalfOfLogin": { "value": false } }, "clientId": "AzureActiveDirectoryClientId" }, "uiDefinition": null } }
Criar cadeias de idioma em inglês de qualidade
Os conectores são localizados como parte da localização do Power Automate; portanto, quando desenvolve um conector, a qualidade das cadeias do idioma inglês é fundamental para a qualidade da tradução. Aqui estão algumas áreas importantes a abordar à medida que cria os valores das cadeias que fornece.
Para garantir que os valores das cadeias não têm erros tipográficos, certifique-se de que executa um programa de verificação de ortografia. Se houver uma cadeia do idioma inglês incompleta, o resultado da tradução é incompleto ou incorreto no contexto.
Certifique-se de que a frase está completa. Se a frase não estiver completa, isso também pode gerar traduções de menor qualidade.
Certifique-se de que o significado da frase é claro. Se o significado da frase for ambíguo, isso também pode gerar traduções de menor qualidade ou incorretas.
Certifique-se de que os resumos, os resumos x-ms e as descrições estão gramaticalmente corretos. Não os copie e cole. Para saber como eles são exibidos no produto, vá para Orientação da cadeia de caracteres do conector.
Evite cadeias compostas de runtime, se possível. Use frases totalmente formadas. As cadeias ou frases concatenadas dificultam a tradução, ou podem levar a uma tradução errada.
Se utilizar abreviaturas, certifique-se de as colocar as maiúsculas para não haver dúvidas. Isto reduzes a possibilidade de ser confundido com um erro tipográfico.
Cadeias no formato CaMel (por exemplo, minimizeHighways ou MinimizeHighways) são normalmente consideradas como não traduzíveis. Se quiser localizar o valor da cadeia, deve fixar a cadeia do formulário CaMel.
Passo 3: Executar o Verificação de Soluções para validar o conector
O Verificador de Soluções é um mecanismo para conduzir análises estáticas de forma a garantir que o conector está a aderir às normas obrigatórias da Microsoft para certificação. Adicione o conector a uma solução no Power Automate ou no Power Apps e execute o verificador de soluções seguindo as instruções apresentadas em Validar um conector personalizado com o verificador de soluções.
Assista a este vídeo para saber como executar o Verificador de Soluções.
Passo 4: Adicionar metadados
Os seus artefatos de conector (ficheiros) devem conter metadados específicos a descrever o conector e o serviço final. As informações fornecidas nos metadados são publicadas na documentação do conector e podem ser acedidas publicamente por todos os utilizadores. Não forneça quaisquer informações privadas ou confidenciais e informe-nos através do seu contacto da Microsoft se existirem quaisquer problemas em fornecer-nos estas informações. Para aprender como os metadados são documentados, visite qualquer uma das páginas de documentação específicas do conector em Referência de conector.
Passo 4a: propriedades de editor e stackOwner
- "editor" é o nome da sua empresa ou organização. Forneça o nome completo da empresa (por exemplo, "Contoso Corporation"). Isto tem de estar no formato alfanumérico.
- "StackOwner" é a empresa ou organização proprietária da pilha de serviço de back-end a que o conector está a ligar. Isto tem de estar no formato alfanumérico.
Editor | Descrição | Exemplo |
---|---|---|
Verificado | O editor e o stackOwner são os mesmos, a menos que o ISV esteja a criar um conector em nome de um stackOwner. | "editor": "Tesla", "stackOwner": "Tesla" |
Independente | Tem de fornecer o proprietário da pilha e o proprietário do editor. | "editor": "Nirmal Kumar", "stackOwner": "ITGlue" |
Localização do arquivo: openapidefinition.json
Sintaxe: As propriedades publisher e stackOwner existem como propriedades de nível superior dentro do arquivo openapidefinition.json. Adicione as seguintes linhas destacadas como mostrado. Certifique-se de que introduz o nome da propriedade e o esquema exatamente como mostrado.
Código que mostra o bloco que define o objeto contact realçado a vermelho. Este bloco tem de estar localizado diretamente por baixo da descrição. Outro bloco, x-ms-connector-metadata, também é realçado a vermelho. Este bloco tem de estar localizado diretamente por baixo dos caminhos: {}.
Passo 4c: Fragmentos de código de exemplo
Pode utilizar os seguintes fragmentos de código para copiar e introduzir as suas informações. Certifique-se de que adiciona os fragmentos aos ficheiros corretos nas localizações corretas, conforme descrito na secção anterior.
"publisher": "_____",
"stackOwner": "_____"
"contact": {
"name": "_____",
"url": "_____",
"email": "_____"
}
"x-ms-connector-metadata": [
{
"propertyName": "Website",
"propertyValue": "_____"
},
{
"propertyName": "Privacy policy",
"propertyValue": "_____"
},
{
"propertyName": "Categories",
"propertyValue": "_____;_____"
}
]
Nota
Existe uma limitação atual na utilização da propriedade stackOwner e da ferramenta de CLI Paconn. Saiba mais em Limitações no arquivo LEIA-ME.
Passo 4d: formatação e limitações do ficheiro JSON
Certifique-se de que as propriedades estão corretamente alinhadas.
Cole o seu JSON no Visual Studio Code. Pode utilizar extensões, tais como verificações de ortografia e plug-ins, tais como plug-ins JSON.
Os ficheiros Swagger devem ser superiores a 1 MB.
- Pense na estrutura do seu conector antes de o começar a criar. Avalie se o conector deve ser dividido em dois (2) ou mais conectores.
- A utilização de ficheiros swagger maiores poderá causar um atraso na utilização do conector.
Por exemplo, existem três (3) conectores HubSpot diferentes na plataforma.
Passo 5: Cumprir os requisitos de submissão para plug-ins
Esta secção aplica-se, também, se estiver a submeter o plug-in do conector associado para certificação.
- Certifique-se de que criou o plug-in de acordo com as diretrizes em Criar plug-ins de IA para Microsoft Copilot (pré-visualização).
- Todos os plug-ins de IA submetidos devem estar em conformidade com as normas destacadas em 100.10 Conteúdo impróprio.
- Todos os plugins de IA seguem as Diretrizes IA responsável.
- O plug-in não deve gerar, conter ou fornecer acesso a conteúdo gerado por Inteligência Artificial (IA) inadequado, prejudicial ou ofensivo consistente com as políticas de mercado comercial existentes descritas em 100.10 Conteúdo impróprio.
Passo 6: Preparar os artefactos do conector e/ou do plug-in
Nota
- Certifique-se de que seguiu as especificações e garantiu a qualidade do seu conector e/ou plugin antes da certificação. Caso contrário, ocorrerão atrasos na certificação, uma vez que terá de fazer alterações.
- Forneça uma versão de produção do URL do sistema anfitrião. Não são permitidos URLs de preparação, desenvolvimento e de sistema de anfitrião de teste.
Você está enviando para a Microsoft um conjunto de arquivos, que é uma geração de solução do portal maker ou Microsoft Copilot Studio. Para empacotar seus arquivos, siga as etapas nesta secção.
Guia de empacotamento de conectores e plug-ins
Os procedimentos nesta secção orientam o utilizador por vários cenários de empacotamento. Se você quiser empacotar apenas um conector personalizado, use o primeiro cenário. Se você quiser empacotar um conector personalizado e plugins, use o segundo cenário. Se você quiser empacotar um conector e plug-ins existentes, use o último cenário.
- Empacotar o seu conector personalizado e submetê-lo para certificação
- Empacotar o seu conector e/ou plug-in personalizado para certificação
- Empacotar o conector e/ou plug-in certificado existente para certificação
Empacotar o seu conector personalizado e submetê-lo para certificação
Executar o verificador de soluções na sua solução de conector no passo 1.
Exportar a solução de conector.
Criar um fluxo (teste) utilizando o conector personalizado recém-criado e adicionar o fluxo a uma solução.
Exportar a solução do fluxo.
Criar um pacote com as soluções dos passos 3 e 5.
Criar o pacote final como um ficheiro zip, que está no seguinte formato:
Nota
The names of the folder and files outside the solution are only for reference—you can choose as per your requirements. However, don't manipulate the files inside the solution.
- Carregar o pacote para um blob de armazenamento e gerar o URL da SAS. Verifique se o URI do SAS é válido por pelo menos 15 dias.
- Submeter o seu pacote no Centro de Parceiros.
Empacotar o seu conector e/ou plug-in personalizado para certificação
Siga os passos 1 a 5 em Empacotar o seu conector personalizado e submeter para certificação neste artigo.
Criar um plug-in no portal do Microsoft Copilot Studio e exportá-lo como uma solução.
Criar um pacote a partir do seguinte:
- Executar o verificador de soluções (passo 2 em Empacotar o seu conector personalizado e submeter para certificação).
- Exportar o fluxo de soluções (passo 5 em Empacotar o seu conector personalizado e submeter para certificação).
- Criar um plug-in no Microsoft Copilot Studio exportá-lo como uma solução (passo 2 deste procedimento).
Criar o pacote final como um ficheiro zip, que está no seguinte formato.
Nota
The names of the folder and files outside the solution are only for reference—you can choose as per your requirements. However, don't manipulate the files inside the solution.
- Carregar o pacote para um blob de armazenamento e gerar o URL da SAS. Verifique se o URI do SAS é válido por pelo menos 15 dias.
- Submeter o seu pacote no Centro de Parceiros.
Empacotar o conector e/ou plug-in certificado existente para certificação
Criar uma solução no Power Automate e adicionar o conector já certificado.
Siga os passos 2 a 4 em Empacotar o seu conector personalizado e submeter para certificação neste artigo.
Criar um plug-in no Copilot Studio e exportá-lo como uma solução.
Exportar o plug-in como solução.
Criar um pacote a partir do seguinte:
- Executar o verificador de soluções na sua solução de conector (passo 2 em Empacotar o seu conector personalizado e submeter para certificação neste artigo).
- Criar um plug-in no Copilot Studio exportá-lo como uma solução (passo 3 deste procedimento).
- Criar um plug-in no Copilot Studio exportá-lo como uma solução (passo 4 deste procedimento).
Criar o pacote final como um ficheiro zip, que está no seguinte formato.
Nota
The names of the folder and files outside the solution are only for reference—you can choose as per your requirements. However, don't manipulate the files inside the solution.
- Carregar o pacote para um blob de armazenamento e gerar o URL da SAS. Verifique se o URI do SAS é válido por pelo menos 15 dias.
- Submeter o seu pacote no Centro de Parceiros.
Tanto editores verificados quanto editores independentes baixam openapidefinition.json
em seus artefatos. Vai precisar de configurar o IconBrandColor neste ficheiro.
- Editores verificados: defina iconBrandColor para a cor da sua marca no arquivo openapidefinition.
- Editores independentes: defina iconBrandColor como "#da3b01" no arquivo openapidefinition.
Criar um artefacto intro.md.
Um ficheiro intro.md é necessário tanto para editores independentes como para editores verificados. Precisa de criar um ficheiro intro.md para documentar as funcionalidades do seu conector. Para um exemplo de documentação a incluir, vá ao exemplo de Leia-me.md. Para saber mais sobre como escrever um ficheiro intro.md, veja outros ficheiros intro.md (também conhecidos como ficheiros Readme.md) no nosso repositório do GitHub.
Se for um editor independente e o seu conector utilizar o OAuth, certifique-se de que inclui instruções sobre como obter credenciais.
Dica
Problemas e Limitações Conhecidos é uma secção excelente para manter os seus utilizadores atualizados.
Passo 7: Validar o pacote para a estrutura
O script de validação do pacote valida a estrutura do pacote e ajuda a gerar o pacote no formato aceitável para certificação. Baixe o script do validador de pacotes com este link: ConnectorPackageValidator.ps1.
Para executar o script, siga estes passos:
Abra o Windows PowerShell no modo Admin.
Altere o local da unidade digitando
cd /
.O exemplo a seguir usa
C:\
.Vá para o caminho onde você baixou o script do validador de pacote.
Por exemplo, se o caminho for
C:\Users\user01\Downloads
, você digitacd .\Users\user01\Downloads\
.Defina a política de execução como irrestrita inserindo o seguinte comando:
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
Esse comando permite que o PowerShell seja executado sem qualquer restrição.
Confirme a sua entrada introduzindo Y, que significa Sim.
Execute o ConnectorPackageValidator.ps1 com as seguintes etapas:
- Insira o caminho do arquivo zip que contém o pacote do conector.
- Especifique se o plug-in de IA está habilitado ou não.
Como mostrado no exemplo a seguir, o primeiro argumento é um caminho de arquivo zip válido que contém o pacote. O segundo argumento é
yes
/y
indicar que o plug-in de IA está habilitado ouno
/n
indicar que está desativado.Se a estrutura do pacote estiver correta, a seguinte mensagem de êxito será exibida:
Se houver um problema com a estrutura do pacote, o script fornecerá detalhes do problema detetando e destacando os defeitos na estrutura do pacote.
Passo 8: Enviar o seu conector e/ou plug-in para certificação
Durante o processo de submissão, estará a colocar o seu conector e/ou plug-in em open source no nosso repositório de Conectores do Microsoft Power Platform.
(Para editores independentes) Para submeter o pacote à Microsoft para certificação, siga as instruções no Processo de Certificação de Editor Independente.
(Para editores verificados) Para submeter o pacote à Microsoft para certificação no Centro de Parceiros, siga as instruções no Processo de Certificação de Editor Verificado.
Se for um editor verificado, tem de submeter um ficheiro script.csx se estiver a utilizar código personalizado.
Se o conector tiver OAuth, forneça o ID de Cliente e o Segredo no Centro de Parceiros. Além disso, obtenha o APIname do seu pedido de submissão de conector para atualizar a sua aplicação.
Como parte da submissão, a Microsoft certifica e/ou cria um plug-in do conector. Se precisar de resolver erros de swagger, vá para Corrigir erros do Validador do Swagger.
Lista de verificação antes de submeter
Antes de passar para Submeter o seu conector para certificação da Microsoft, certifique-se de que:
O seu conector e/ou plug-in satisfazem todas as normas definidas no Passo 2: Cumprir os requisitos de submissão de conectores, Passo 5: Cumprir os requisitos de submissão de plug-ins e Passo 4: Adicionar metadados.
Não existem operações sem resumo descrição ou informações de visibilidade.
Testou o conector e/ou plug-in personalizado para garantir que as operações funcionam conforme esperado (pelo menos 10 chamadas com êxito por operação).
Nenhum erro do runtime ou de validação do esquema é apresentado na secção de teste do assistente de conector personalizado.
Dica
- Crie vídeos no YouTube, blogues ou outros conteúdos para partilhar exemplos ou capturas de ecrã sobre como começar a trabalhar com o conector e/ou plug-in.
- Inclua as ligações no ficheiro intro.md, para que possamos adicionar aos nossos documentos.
- Adicione dicas ao seu ficheiro swagger para ajudar os seus utilizadores a ter mais êxito.