Esquema de manifesto do aplicativo

O manifesto do aplicativo (anteriormente chamado de manifesto de aplicativo do Teams) descreve como seu aplicativo se integra ao produto do Microsoft Teams. O manifesto do seu aplicativo deve estar em conformidade com o esquema hospedado em https://developer.microsoft.com/json-schemas/teams/v1.17/MicrosoftTeams.schema.json. As versões anteriores 1.0, 1.1,...,1.16 e a versão atual é 1.17 têm suporte (usando "v1.x" na URL). Para obter mais informações sobre as alterações feitas em cada versão, confira Log de alterações de manifesto do aplicativo e para versões anteriores, consulte versões de manifesto do aplicativo.

A tabela a seguir lista as versões do TeamsJS e do manifesto do aplicativo de acordo com diferentes cenários de aplicativo:

Tipo de aplicativo Versão do TeamsJS Versão do Manifesto do aplicativo Próximas etapas
Aplicativos do Teams estendidos entre Outlook e Microsoft 365 TeamsJS v.2.19.0 ou posterior v.1.13 ou posterior Estender um aplicativo do Teams para ser executado no Microsoft 365 ou Criar um novo aplicativo do Microsoft 365
Aplicativos apenas Teams existentes Atualizar para TeamsJS v.2.19.0 quando possível (v.1.12 ainda tem suporte*) 1.12 Entender a compatibilidade com versões anteriores do TeamsJSe Atualizar para o TeamsJS v.2.0
Novos aplicativos apenas Teams TeamsJS v.2.19.0 ou posterior 1.12 Criar um novo aplicativo Teams usando o Kit de Ferramentas do Teams

*Use o TeamsJS mais recente (v.2.19.0 ou posterior) sempre que possível, para aproveitar as melhorias mais recentes e o suporte a novos recursos, incluindo aplicativos somente do Teams. O TeamsJS v.1.12 continua com suporte, no entanto, nenhum novo recurso ou melhorias será adicionado. Os esquemas 1.12 e 1.13 são os mesmos. Para obter mais informações, confira Biblioteca do TeamsJS.

Observação

Se o aplicativo teams estiver usando o manifesto do aplicativo versão 1.13 ou posterior, verifique se seu aplicativo atende aos critérios para estender seu aplicativo para ser executado no Microsoft 365 ou Outlook.

A seguir está o esquema de manifesto do aplicativo de exemplo:

Manifesto de aplicativo de exemplo

{
    "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.16/MicrosoftTeams.schema.json",
    "manifestVersion": "1.17",
    "version": "1.0.0",
    "id": "%MICROSOFT-APP-ID%",
    "localizationInfo": {
        "defaultLanguageTag": "en-us",
        "additionalLanguages": [
            {
                "languageTag": "es-es",
                "file": "en-us.json"
            }
        ]
    },
    "developer": {
        "name": "Publisher Name",
        "websiteUrl": "https://example.com/",
        "privacyUrl": "https://example.com/privacy",
        "termsOfUseUrl": "https://example.com/app-tos",
        "mpnId": "1234567890"
    },
    "name": {
        "short": "Name of your app (<=30 chars)",
        "full": "Full name of app, if longer than 30 characters (<=100 chars)"
    },
    "description": {
        "short": "Short description of your app (<= 80 chars)",
        "full": "Full description of your app (<= 4000 chars)"
    },
    "icons": {
        "outline": "A relative path to a transparent .png icon — 32px X 32px",
        "color": "A relative path to a full color .png icon — 192px X 192px"
    },
    "accentColor": "A valid HTML color code.",
    "configurableTabs": [
        {
            "configurationUrl": "https://contoso.com/teamstab/configure",
            "scopes": [
                "team",
                "groupChat"
            ],
            "canUpdateConfiguration": true,
            "context": [
                "channelTab",
                "privateChatTab",
                "meetingChatTab",
                "meetingDetailsTab",
                "meetingSidePanel",
                "meetingStage"
            ],
            "sharePointPreviewImage": "Relative path to a tab preview image for use in SharePoint — 1024px X 768",
            "supportedSharePointHosts": [
                "sharePointFullPage",
                "sharePointWebPart"
            ]
        }
    ],
    "staticTabs": [
        {
            "entityId": "unique Id for the page entity",
            "scopes": [
                "personal"
            ],
            "context": [
                "personalTab",
                "channelTab"
            ],
            "name": "Display name of tab",
            "contentUrl": "https://contoso.com/content (displayed in Teams canvas)",
            "websiteUrl": "https://contoso.com/content (displayed in web browser)",
            "searchUrl": "https://contoso.com/content (displayed in web browser)"
        }
    ],
    "supportedChannelTypes": [
        "sharedChannels",
        "privateChannels"
    ],
    "bots": [
        {
            "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
            "scopes": [
                "team",
                "personal",
                "groupChat"
            ],
            "needsChannelSelector": false,
            "isNotificationOnly": false,
            "supportsFiles": true,
            "supportsCalling": false,
            "supportsVideo": true,
            "commandLists": [
                {
                    "scopes": [
                        "team",
                        "groupChat"
                    ],
                    "commands": [
                        {
                            "title": "Command 1",
                            "description": "Description of Command 1"
                        },
                        {
                            "title": "Command 2",
                            "description": "Description of Command 2"
                        }
                    ]
                },
                {
                    "scopes": [
                        "personal",
                        "groupChat"
                    ],
                    "commands": [
                        {
                            "title": "Personal command 1",
                            "description": "Description of Personal command 1"
                        },
                        {
                            "title": "Personal command N",
                            "description": "Description of Personal command N"
                        }
                    ]
                }
            ]
        }
    ],
    "connectors": [
        {
            "connectorId": "GUID-FROM-CONNECTOR-DEV-PORTAL%",
            "scopes": [
                "team"
            ],
            "configurationUrl": "https://contoso.com/teamsconnector/configure"
        }
    ],
    "composeExtensions": [
        {
            "canUpdateConfiguration": true,
            "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
            "commands": [
                {
                    "id": "exampleCmd1",
                    "title": "Example Command",
                    "type": "query",
                    "context": [
                        "compose",
                        "commandBox"
                    ],
                    "description": "Command Description; e.g., Search on the web",
                    "initialRun": true,
                    "fetchTask": false,
                    "parameters": [
                        {
                            "name": "keyword",
                            "title": "Search keywords",
                            "inputType": "choiceset",
                            "description": "Enter the keywords to search for",
                            "value": "Initial value for the parameter",
                            "choices": [
                                {
                                    "title": "Title of the choice",
                                    "value": "Value of the choice"
                                }
                            ]
                        }
                    ]
                },
                {
                    "id": "exampleCmd2",
                    "title": "Example Command 2",
                    "type": "action",
                    "context": [
                        "message"
                    ],
                    "description": "Command Description; e.g., Add a customer",
                    "initialRun": true,
                    "fetchTask": false ,
                    "parameters": [
                        {
                            "name": "custinfo",
                            "title": "Customer name",
                            "description": "Enter a customer name",
                            "inputType": "text"
                        }
                    ]
                },
                {
                    "id": "exampleCmd3",
                    "title": "Example Command 3",
                    "type": "action",
                    "context": [
                        "compose",
                        "commandBox",
                        "message"
                    ],
                    "description": "Command Description; e.g., Add a customer",
                    "fetchTask": false,
                    "taskInfo": {
                        "title": "Initial dialog title",
                        "width": "Dialog width",
                        "height": "Dialog height",
                        "url": "Initial webview URL"
                    }
                }
            ],
            "messageHandlers": [
                {
                    "type": "link",
                    "value": {
                        "domains": [
                            "mysite.someplace.com",
                            "othersite.someplace.com"
                        ],
                        "supportsAnonymizedPayloads": false
                    }
                }
            ]
        }
    ],
    "permissions": [
        "identity",
        "messageTeamMembers"
    ],
    "devicePermissions": [
        "geolocation",
        "media",
        "notifications",
        "midi",
        "openExternal"
    ],
    "validDomains": [
        "contoso.com",
        "mysite.someplace.com",
        "othersite.someplace.com"
    ],
    "webApplicationInfo": {
        "id": "AAD App ID",
        "resource": "Resource URL for acquiring auth token for SSO"
    },
    "authorization": {
        "permissions": {
            "resourceSpecific": [
                {
                    "type": "Application",
                    "name": "ChannelSettings.Read.Group"
                },
                {
                    "type": "Delegated",
                    "name": "ChannelMeetingParticipant.Read.Group"
                }
            ]
        }
    },
    "showLoadingIndicator": false,
    "isFullScreen": false,
    "activities": {
        "activityTypes": [
            {
                "type": "taskCreated",
                "description": "Task created activity",
                "templateText": "<team member> created task <taskId> for you"
            },
            {
                "type": "userMention",
                "description": "Personal mention activity",
                "templateText": "<team member> mentioned you"
            }
        ]
    },
    "defaultBlockUntilAdminAction": true,
    "publisherDocsUrl": "https://website.com/app-info",
    "defaultInstallScope": "meetings",
    "defaultGroupCapability": {
        "meetings": "tab",
        "team": "bot",
        "groupChat": "bot"
    },
    "configurableProperties": [
        "name",
        "shortDescription",
        "longDescription",
        "smallImageUrl",
        "largeImageUrl",
        "accentColor",
        "developerUrl",
        "privacyUrl",
        "termsOfUseUrl"
    ],
    "subscriptionOffer": {
        "offerId": "publisherId.offerId"
    },
    "meetingExtensionDefinition": {
        "scenes": [
            {
                "id": "9082c811-7e6a-4174-8173-6ccd57d377e6",
                "name": "Getting started sample",
                "file": "scenes/sceneMetadata.json",
                "preview": "scenes/scenePreview.png",
                "maxAudience": 15,
                "seatsReservedForOrganizersOrPresenters": 0
            },
            {
                "id": "afeaed22-f89b-48e1-98b4-46a514344e4a",
                "name": "Sample-1",
                "file": "scenes/sceneMetadata.json",
                "preview": "scenes/scenePreview.png",
                "maxAudience": 15,
                "seatsReservedForOrganizersOrPresenters": 3
            }
        ]
    }
}

O esquema define as seguintes propriedades:

$esquema

Opcional, mas recomendado – Cadeia de caracteres

A URL https:// referenciando o Esquema JSON para o manifesto do aplicativo.

manifestVersion

Obrigatório – Cadeia de caracteres

A versão do esquema de manifesto do aplicativo que esse manifesto está usando. Use 1.13 para habilitar o suporte ao aplicativo Teams no Outlook e no aplicativo Microsoft 365; use 1.12 (ou anteriormente) para aplicativos somente do Teams.

versão

Obrigatório – Cadeia de caracteres

A versão de um aplicativo específico. Quando você atualiza algo no manifesto do aplicativo, a versão também deve ser incrementada. Dessa forma, quando o novo manifesto do aplicativo é instalado, ele substitui o existente e o usuário recebe a nova funcionalidade. Quando esse aplicativo foi enviado para a Microsoft Teams Store, o novo manifesto do aplicativo deve ser reenviado e revalidado. Os usuários do aplicativo recebem o novo manifesto do aplicativo atualizado automaticamente poucas horas após a aprovação do manifesto do aplicativo.

Se as solicitações de permissões do aplicativo forem alteradas, os usuários serão solicitados a atualizar e consentir novamente com o aplicativo..

Esta cadeia de caracteres da versão deve seguir o padrão semver (MAJOR.MINOR.PATCH).

Observação

Se o aplicativo incluir um Suplemento do Office, cada segmento da cadeia de caracteres de versão será limitado a um máximo de cinco dígitos. Não há suporte para extensões de cadeia de caracteres de versão de versão de pré-lançamento e metadados do padrão semver.

ID

Obrigatório – ID do aplicativo microsoft

A ID é um identificador exclusivo gerado pela Microsoft para o aplicativo. O formato da ID é GUID. Você tem uma ID se seu bot estiver registrado por meio do Microsoft Bot Framework. Você tem uma ID se o aplicativo web da sua guia já entrar com a Microsoft. Você deve inserir a ID aqui. Caso contrário, você deverá gerar uma nova ID no Portal de Registro de Aplicativos da Microsoft. Use a mesma ID se você adicionar um bot.

A ID armazenada no Teams Administração Center é a ID do Aplicativo Externo e é visível como ExternalID nos rastreamentos.

Observação

Se você estiver enviando uma atualização para seu aplicativo existente no AppSource, a ID no manifesto do aplicativo não deverá ser modificada.

developer

Obrigatório – Objeto

Especifica informações sobre a sua empresa. Para aplicativos enviados à Teams Store, esses valores devem corresponder às informações na listagem da Teams Store. Para obter mais informações, consulte as diretrizes de publicação da Teams Store. O nome do desenvolvedor ajuda a melhorar a descoberta do aplicativo na Teams Store.

Nome Tamanho máximo Obrigatório Descrição
name 32 caracteres ✔️ O nome de exibição do desenvolvedor.
websiteUrl 2048 caracteres ✔️ A URL https:// para o site do desenvolvedor. Esse link deve levar os usuários à página de destino específica da sua empresa ou do produto.
privacyUrl 2048 caracteres ✔️ A URL https:// para a política de privacidade do desenvolvedor.
termsOfUseUrl 2048 caracteres ✔️ A URL https:// para os termos de uso do desenvolvedor.
mpnId 10 caracteres Opcional A ID do Microsoft Partner Network que identifica a organização parceira criadora do aplicativo.

nome

Obrigatório – Objeto

O nome da sua experiência de aplicativo, exibido aos usuários na experiência do Teams. Para aplicativos enviados ao AppSource, esses valores devem corresponder às informações na entrada do AppSource. Os valores de short e full devem ser diferentes. O nome do aplicativo ajuda a melhorar a descoberta do aplicativo na Teams Store.

Nome Tamanho máximo Obrigatório Descrição
short 30 caracteres ✔️ O nome de exibição curto para o aplicativo.
full 100 caracteres ✔️ O nome completo do aplicativo, utilizado se o nome completo do aplicativo exceder 30 caracteres.

Observação

No manifesto do aplicativo v1.17 ou posterior, a full propriedade é necessária e para manifesto de aplicativo v1.16 ou anterior não é necessário.

description

Obrigatório – Objeto

Descreve o seu aplicativo para os usuários. Para aplicativos enviados ao AppSource, esses valores devem corresponder às informações na entrada do AppSource. A descrição do aplicativo ajuda a melhorar a descoberta do aplicativo na Teams Store.

Certifique-se de que a sua descrição detalhe a sua experiência e ajude os clientes em potencial a entender o que sua experiência faz. Você deve anotar na descrição completa, se uma conta externa for necessária para uso. Os valores de short e full devem ser diferentes. Sua breve descrição não pode ser repetida dentro da descrição longa e não deve incluir nenhum outro nome de aplicativo.

Nome Tamanho máximo Obrigatório Descrição
short 80 caracteres ✔️ Uma descrição curta da experiência do seu aplicativo, usada quando o espaço é limitado.
full 4000 caracteres ✔️ A descrição completa do seu aplicativo.

localizationInfo

Opcional – Objeto

Permite a especificação de um idioma padrão e fornece ponteiros para mais arquivos de idioma. Para obter mais informações, consulte localização.

Nome Tamanho máximo Obrigatório Descrição
defaultLanguageTag ✔️ A marca de idioma das cadeias de caracteres neste arquivo de manifesto de aplicativo de nível superior.

localizationInfo.additionalLanguages

Uma matriz de objetos especificando mais traduções de idiomas.

Nome Tamanho máximo Obrigatório Descrição
languageTag ✔️ A marca de idioma das cadeias de caracteres no arquivo fornecido.
file 2048 caracteres ✔️ Um caminho de arquivo relativo para o arquivo .json que contém as cadeias de caracteres traduzidas.

ícones

Obrigatório – Objeto

Ícones usados no aplicativo Teams. Os arquivos de ícone devem ser incluídos como parte do pacote de upload. Para obter mais informações, consulte Ícones.

Nome Tamanho máximo Obrigatório Descrição
outline 32 x 32 pixels ✔️ Um caminho de arquivo relativo para um ícone de contorno PNG transparente de 32x32. A cor da borda deve ser branca.
color 192 x 192 pixels ✔️ Um caminho de arquivo relativo para um ícone PNG colorido de 192x192.

accentColor

Obrigatório – código de cor hex html

Uma cor a ser usada e como plano de fundo para seus ícones de cor.

O valor deve ser um código de cor HTML válido começando com '#', por exemplo #4464ee. Para obter mais informações, consulte accentColor.

configurbleTabs

Opcional – Matriz

Usado quando sua experiência de aplicativo tem uma experiência de guia de canal de equipe que requer configuração extra antes de ser adicionada. As guias configuráveis são compatíveis apenas nos escopos team e groupChat, sendo que você pode configurar as mesmas guias várias vezes. No entanto, você pode defini-lo no manifesto do aplicativo apenas uma vez.

Nome Tipo Tamanho máximo Obrigatório Descrição
configurationUrl Cadeia de caracteres 2048 caracteres ✔️ A URL https:// a ser usada ao configurar a guia.
scopes Matriz de enumerações 2 ✔️ Atualmente, as guias configuráveis são compatíveis apenas com os escopos team e groupChat.
canUpdateConfiguration Booliano Um valor que indica se uma instância da configuração da guia pode ser atualizada pelo usuário após a criação. Padrão: true.
meetingSurfaces Matriz de enumerações 2 O conjunto de meetingSurfaceItem escopos em que uma guia é compatível. Padrão: [sidepanel, stage].
context Matriz de enumerações 8 O conjunto de contextItem escopos em que uma guia é compatível. Valor aceito: [personalTab, channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingSidePanel, meetingStage].
sharePointPreviewImage Cadeia de caracteres 2048 Um caminho de arquivo relativo para uma imagem de visualização de guia para uso no SharePoint. Tamanho 1024x768.
supportedSharePointHosts Matriz de enumerações 2 Define como a sua guia é disponibilizada no SharePoint. As opções são sharePointFullPage e sharePointWebPart.

staticTabs

Opcional – Matriz

Define um conjunto de guias que podem ser fixadas por padrão, sem que o usuário as adicione manualmente. As guias estáticas declaradas no escopo personal são sempre vinculadas à experiência pessoal do aplicativo.

Este item é uma matriz (máximo de 16 elementos) com todos os elementos do tipo object. Esse bloco é necessário apenas para soluções que fornecem uma solução de guia estática.

Nome Tipo Tamanho máximo Obrigatório Descrição
entityId String 64 caracteres ✔️ Um identificador exclusivo para a entidade que a guia exibe.
name Cadeia de caracteres 128 caracteres O nome de exibição da guia.
contentUrl Cadeia de caracteres 2048 caracteres A URL https:// que aponta para a interface do usuário da entidade a ser exibida na tela do Teams.
contentBotId Cadeia de caracteres 128 caracteres A ID do aplicativo da Microsoft especificada para o bot no portal do Bot Framework.
websiteUrl Cadeia de caracteres 2048 caracteres A URL https:// para apontar se um usuário optar por visualizar em um navegador.
searchUrl Cadeia de caracteres 2048 caracteres A URL https:// para apontar para as consultas de pesquisa de um usuário.
scopes Matriz de enumerações 3 ✔️ Valores aceitos: team, , personalgroupChat
context Matriz de enumerações 8 O conjunto de contextItem contextos em que há suporte para uma guia.
Valores aceitos: personalTab, , channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingStage, , meetingSidepanel. teamLevelApp
Valores padrão: personalTab, , channelTab, privateChatTab, meetingChatTab, meetingDetailsTab.

Observação

  • Os groupChat escopos e team têm suporte apenas na versão prévia do desenvolvedor público.
  • O teamLevelApp contexto é dedicado apenas para locatários da Educação.
  • O searchUrl recurso não está disponível para desenvolvedores de terceiros.
  • Se as suas guias exigirem informações dependentes do contexto para exibir conteúdo relevante ou para iniciar um fluxo de autenticação, para obter mais informações, consulte Obter contexto para sua guia do Microsoft Teams.

bots

Opcional – Matriz

Define uma solução de bot, juntamente com informações opcionais, como propriedades de comando padrão.

O item é uma matriz (máximo de apenas um elemento — atualmente, apenas um bot é permitido por aplicativo) com todos os elementos do tipo object. Esse bloco é necessário apenas para soluções que fornecem uma experiência de bot.

Nome Tipo Tamanho máximo Obrigatório Descrição
botId Cadeia de caracteres ✔️ O ID exclusivo do aplicativo Microsoft para o bot conforme registrado na estrutura do bot. A ID pode ser igual a ID do aplicativo geral.
scopes Matriz de enumerações 3 ✔️ Especifica se o bot oferece uma experiência no contexto de um canal em um team, em um chat de grupo (groupChat) ou uma experiência delimitada apenas a um usuário individual (personal). Essas opções são não exclusivas.
needsChannelSelector Booliano Descreve se o bot usa ou não uma dica de usuário para adicionar o bot a um canal específico. Padrão: false
isNotificationOnly Boolean Indica se um bot é um bot unidirecional, somente para notificação, em vez de um bot de conversa. Padrão: false
supportsFiles Boolean Indica se o bot é compatível com a capacidade de carregar/baixar arquivos em chat pessoal. Padrão: false
supportsCalling Booliano Um valor que indica onde um bot dá suporte a chamadas de áudio. IMPORTANTE: Esta propriedade é experimental no momento. As propriedades experimentais podem estar incompletas e podem sofrer alterações antes de estarem totalmente disponíveis. A propriedade é fornecida apenas para fins de teste e exploração e não deve ser usada em aplicativos de produção. Padrão: false
supportsVideo Booliano Um valor que indica onde um bot oferece suporte a chamadas com vídeo. IMPORTANTE: Esta propriedade é experimental no momento. As propriedades experimentais podem estar incompletas e podem sofrer alterações antes de estarem totalmente disponíveis. A propriedade é fornecida apenas para fins de teste e exploração e não deve ser usada em aplicativos de produção. Padrão: false

bots.configuration

Nome Tipo Tamanho máximo Obrigatório Descrição
team.fetchTask Booliano ✔️ Um valor booliano que indica se ele deve buscar a caixa de diálogo (conhecido como módulo de tarefa no TeamsJS v1.x) dinamicamente.
Valor padrão: false
team.taskInfo.title String 64 caracteres ✔️ Título inicial da caixa de diálogo.
team.taskInfo.width Cadeia de caracteres 16 A largura da caixa de diálogo é um número em pixels ou layout padrão, como large, mediumou small.
team.taskInfo.height Cadeia de caracteres 16 A altura da caixa de diálogo é um número em pixels ou layout padrão, como large, mediumou small.
team.taskInfo.url Cadeia de caracteres 2048 caracteres URL inicial da webview.
groupChat.fetchTask Booliano ✔️ Um valor booliano que indica se ele deve buscar a caixa de diálogo dinamicamente.
Valor padrão: false
groupChat.taskInfo Objeto Caixa de diálogo a ser iniciada quando a tarefa de busca é definida como false.
Valor padrão: false
groupChat.taskInfo.title String 64 caracteres ✔️ Título inicial da caixa de diálogo.
groupChat.taskInfo.width Cadeia de caracteres 16 A largura da caixa de diálogo é um número em pixels ou layout padrão, como large, mediumou small.
groupChat.taskInfo.height Cadeia de caracteres 16 A altura da caixa de diálogo é um número em pixels ou layout padrão, como large, mediumou small.
groupChat.taskInfo.url Cadeia de caracteres 2048 caracteres URL inicial da webview.

bots.commandLists

Uma lista de comandos que seu bot pode recomendar aos usuários. O objeto é uma matriz (máximo de dois elementos) com todos os elementos do tipo object; você deve definir uma lista de comandos separada para cada escopo que o seu bot oferece suporte. Para obter mais informações, confira Menus de Bot.

Nome Tipo Tamanho máximo Obrigatório Descrição
items.scopes Matriz de enumerações 3 ✔️ Especifica o escopo para o qual a lista de comandos é válida. As opção são team, personal e groupChat.
items.commands Matriz de objetos 10 ✔️ Uma matriz de comandos que o bot suporta:
title: o nome do comando bot (cadeia, 32)
description: uma descrição simples ou exemplo da sintaxe do comando e seu argumento (cadeia, 128)

Observação

O cliente móvel do Teams não dá suporte ao aplicativo bot quando não há valor na commandLists propriedade.

bots.commandLists.commands

Nome Tipo Tamanho máximo Obrigatório Descrição
title Cadeia de caracteres 32 ✔️ O nome do comando do bot.
description Cadeia de caracteres 128 caracteres ✔️ Uma descrição de texto simples ou um exemplo da sintaxe do comando e seus argumentos.

conectores

Opcional – Matriz

O connectors bloco define um conector cartão para Grupos do Microsoft 365 para o aplicativo.

O objeto é uma matriz (máximo de 2 elementos) com todos os elementos do tipo object. Este bloco é necessário apenas para soluções que fornecem um Conector.

Nome Tipo Tamanho máximo Obrigatório Descrição
configurationUrl Cadeia de caracteres 2048 caracteres ✔️ O https:// URL a ser usado ao configurar o conector usando a experiência de configuração embutida.
scopes Matriz de enumerações 1 ✔️ Especifica se o Conector oferece uma experiência no contexto de um canal em um team, ou uma experiência com escopo apenas para um usuário individual (personal). Atualmente, apenas o escopo team é compatível.
connectorId String 64 caracteres ✔️ Um identificador exclusivo para o Conector que corresponde a sua ID no Painel do Desenvolvedor de Conectores.

composeExtensions

Opcional – Matriz

Define uma extensão de mensagens para o aplicativo.

Observação

O nome do recurso foi alterado de "extensão de composição" para "extensão de mensagem" em novembro de 2017, mas o nome do manifesto do aplicativo permanece o mesmo para que as extensões existentes continuem funcionando.

O item é uma matriz (máximo de um elemento) com todos os elementos do tipo object. Este bloco é necessário apenas para soluções que fornecem uma extensão de mensagens.

Nome Tipo Tamanho Máximo Obrigatório Descrição
botId Cadeia de caracteres A ID exclusiva do aplicativo da Microsoft para o bot que oferece suporte à extensão de mensagens, conforme registrado no Bot Framework. A ID pode ser igual à ID geral do aplicativo.
composeExtensionType Cadeia de caracteres ✔️ Tipo da extensão de composição. Os valores de enumeração são botBased e apiBased.
authorization Objeto 2 Informações relacionadas à autorização para a extensão de mensagem baseada em API
authorization.authType Cadeia de caracteres Enumeração de possíveis tipos de autorização. Os valores com suporte são none, apiSecretServiceAuthe microsoftEntra.
authorization.microsoftEntraConfiguration Objeto Detalhes de captura de objeto necessários para fazer o fluxo de auth microsoftEntra. Aplicável somente quando o tipo de auth for microsoftEntra.
authorization.microsoftEntraConfiguration.supportsSingleSignOn booliano Um valor que indica se o logon único está configurado para o aplicativo.
authorization.apiSecretServiceAuthConfiguration Objeto Detalhes de captura de objeto necessários para fazer a auth de serviço. Aplicável somente quando o tipo de auth for apiSecretServiceAuth.
authorization.apiSecretServiceAuthConfiguration.apiSecretRegistrationId Cadeia de caracteres 128 caracteres ID de registro retornada quando o desenvolvedor envia a chave da API por meio do Portal do Desenvolvedor.
apiSpecificationFile Cadeia de caracteres 2048 caracteres Um caminho de arquivo relativo para o arquivo de especificação da API no pacote de manifesto.
canUpdateConfiguration Booliano Um valor que indica se a configuração de uma extensão de mensagem pode ser atualizada pelo usuário.
Valor padrão: true
commands Matriz de objetos 10 ✔️ Matriz de comandos com suporte da extensão de mensagens.
canUpdateConfiguration Booliano Um valor que indica se a configuração de uma extensão de mensagem pode ser atualizada pelo usuário. Padrão: false.
messageHandlers Matriz de objetos 5 Uma lista de manipuladores que permitem que aplicativos sejam invocados quando determinadas condições são atendidas.
messageHandlers.type Cadeia de caracteres O tipo de manipulador de mensagens. Deve ser "link".
messageHandlers.value.domains Matriz de cadeias de caracteres 2048 caracteres Matriz de domínios para os quais o manipulador de mensagens de link pode se registrar.
messageHandlers.value.supportsAnonymizedPayloads Booliano Um valor booliano que indica se o manipulador de mensagens de link do aplicativo dá suporte ao fluxo de invocação anônimo. O padrão é false.

composeExtensions.commands

Sua extensão de mensagens deve declarar um ou mais comandos com no máximo 10 comandos. Cada comando aparece no Microsoft Teams como uma interação potencial do ponto de entrada baseado na interface do usuário.

Cada item de comando é um objeto com a seguinte estrutura:

Nome Tipo Tamanho máximo Obrigatório Descrição Copilot para mostrar solicitações de usuário para começar
id String 64 caracteres ✔️ A ID do comando.
type String O tipo do comando. Um de query ou action. Padrão: consulta.
samplePrompts array 5 Não Propriedade usada por Copilot para exibir prompts com suporte pelo plug-in para o usuário.
samplePrompts.text string 128 caracteres ✔️ Conteúdo do prompt de exemplo.
apiResponseRenderingTemplateFile Cadeia de caracteres 2048 caracteres Um caminho de arquivo relativo para o arquivo de modelo de renderização de resposta de api usado para formatar a resposta JSON da API do desenvolvedor para a resposta do Cartão Adaptável.
context Matriz de cadeias de caracteres 3 caracteres Define de onde a extensão da mensagem pode ser invocada. Qualquer combinação de compose, commandBox e message.
Valores padrão: compose, commandBox
title Cadeia de caracteres 32 caracteres ✔️ O nome do comando amigável.
description Cadeia de caracteres 128 caracteres A descrição que aparece para os usuários para indicar a finalidade deste comando.
semanticDescription Cadeia de caracteres 5000 caracteres Descrição semântica do comando para consumo por Copilot usando llm (modelo de linguagem grande).
initialRun Booliano Um valor booliano indica se o comando é executado inicialmente sem parâmetros. O padrão é false.
fetchTask Booliano Um valor booliano que indica se ele precisa buscar a caixa de diálogo (conhecida como módulo de tarefa no TeamsJS v1.x) dinamicamente. O padrão é false.
taskInfo Objeto Especifique a caixa de diálogo para pré-carregar ao usar um comando de extensão de mensagem.
taskInfo.title String 64 caracteres Título inicial da caixa de diálogo.
taskInfo.width Cadeia de caracteres Largura da caixa de diálogo - um número em pixels ou layout padrão, como 'grande', 'médio' ou 'pequeno'.
taskInfo.height Cadeia de caracteres Altura da caixa de diálogo - um número em pixels ou layout padrão, como 'grande', 'médio' ou 'pequeno'.
taskInfo.url Cadeia de caracteres URL inicial da webview.
parameters Matriz de objeto 5 itens A lista de parâmetros que o comando usa. Mínimo: 1; máximo: 5.
parameter.name String 64 caracteres ✔️ O nome do parâmetro como ele aparece no cliente. O nome do parâmetro é incluído na solicitação do usuário.
parameter.title Cadeia de caracteres 32 caracteres ✔️ Título amigável para o parâmetro.
parameter.description Cadeia de caracteres 128 caracteres Cadeia de caracteres amigável que descreve a finalidade desse parâmetro.
parameter.semanticDescription Cadeia de caracteres 2000 caracteres Descrição semântica do parâmetro para consumo por Copilot usando LLM (modelo de linguagem grande).
parameter.value Cadeia de caracteres 512 caracteres Valor inicial para o parâmetro. Atualmente, o valor não tem suporte
parameter.inputType Cadeia de caracteres Define o tipo de controle exibido em uma caixa de diálogo parafetchTask: false . O valor de entrada só pode ser um dos text, textarea, number, date, time, toggle, choiceset .
parameter.choices Matriz de objetos 10 itens As opções de escolha para choiceset. Use apenas quando parameter.inputType for choiceset.
parameter.choices.title Cadeia de caracteres 128 caracteres ✔️ Títulor da escolha.
parameter.choices.value Cadeia de caracteres 512 caracteres ✔️ O valor da escolha.

permissões

Opcional – Matriz de cadeias de caracteres

Uma matriz de string, que especifica quais permissões o aplicativo solicita, que permite que os usuários finais saibam como a extensão funciona. As seguintes opções não são exclusivas:

  • identity Requer informações de identidade do usuário.
  • messageTeamMembers Requer permissão para enviar mensagens diretas aos membros da equipe.

Alterar essas permissões durante a atualização do aplicativo faz com que seus usuários repitam o processo de consentimento depois de executar o aplicativo atualizado. Para saber mais, confira Atualizando seu aplicativo.

Observação

As permissões estão preteridas agora.

devicePermissions

Opcional – Matriz de cadeias de caracteres

Fornece os recursos nativos no dispositivo de um usuário aos quais o seu aplicativo solicita acesso. As opções são:

  • geolocation
  • media
  • notifications
  • midi
  • openExternal

validDomains

Opcional, exceto Obrigatório onde indicado.

Uma lista de domínios válidos para sites que o aplicativo espera carregar no cliente do Teams. As listagens de domínio podem incluir curingas, por exemplo, *.example.com. O domínio válido corresponde exatamente a um segmento do domínio; se você precisar combinar a.b.example.com, use *.*.example.com. Se a sua configuração de guias ou interface do usuário de conteúdo navegar para qualquer outro domínio que não seja a configuração de guias, esse domínio deverá ser especificado aqui.

Não inclua os domínios dos provedores de identidade aos quais você deseja oferecer suporte em seu aplicativo. Por exemplo, para autenticar usando uma ID do Google, é necessário redirecionar para accounts.google.com, no entanto, você não deve incluir accounts.google.com no validDomains[].

Os aplicativos do Teams que exigem que suas próprias URLs do SharePoint funcionem bem incluem "{teamsitedomain}" em sua lista de domínios válida.

Importante

Não adicione domínios que estão fora do controle, diretamente ou por meio de curingas (). Por exemplo,.yoursite.com é válido, mas *.onmicrosoft.com não é válido, pois não está sob seu controle.

Ao usar curingas, as seguintes regras se aplicam:

  • Se um segmento de subdomínio incluir um curinga, ele deve ser o único caractere no segmento.
  • Qualquer segmento anterior a um segmento curinga também deve ser um segmento curinga.

Por exemplo, *.*.domain.com é válida, mas foo.*.myteam.domain.com não é válida.

O objeto é uma matriz com todos os elementos do tipo string. O item máximo do objeto é de 16 e o comprimento máximo é de 2.048 caracteres.

webApplicationInfo

Opcional – Objeto

Forneça sua ID do aplicativo Microsoft Entra e informações do Microsoft Graph para ajudar os usuários a entrar perfeitamente em seu aplicativo. Se o aplicativo estiver registrado em Microsoft Entra ID, você deverá fornecer a ID do aplicativo. Os administradores podem revisar facilmente as permissões e conceder consentimento no centro de administração do Teams.

Nome Tipo Tamanho máximo Obrigatório Descrição
id Cadeia de caracteres ✔️ Microsoft Entra ID do aplicativo. Essa ID deve ser um GUID.
resource Cadeia de caracteres 2048 caracteres URL de recurso do aplicativo para adquirir token de autenticação para SSO.
NOTA: Se você não estiver usando o SSO, verifique se você insere um valor de cadeia de caracteres fictício neste campo no manifesto do aplicativo, por exemplo, https://example para evitar uma resposta de erro.

graphConnector

Opcional – Objeto

Especifique a configuração do conector de gráfico do aplicativo. Se isso estiver presente, webApplicationInfo.id também deve ser especificado.

Nome Tipo Tamanho máximo Obrigatório Descrição
notificationUrl Cadeia de caracteres 2048 caracteres ✔️ A URL para a qual as notificações do conector do Graph para o aplicativo devem ser enviadas.

showLoadingIndicator

Opcional – booliano

Indica se deve ou não mostrar o indicador de carregamento quando um aplicativo ou guia está carregando. O padrão é false.

Observação

  • Se você selecionar showLoadingIndicator como true no manifesto do aplicativo, para carregar a página corretamente, modifique as páginas de conteúdo de suas guias e caixas de diálogo, conforme descrito em Mostrar um documento indicador de carregamento nativo .
  • Se você não modificar as páginas de conteúdo da guia, o aplicativo de guias não carregará e mostrará o erro There was a problem reaching this app.

isFullScreen

Opcional – booliano

Indica se um aplicativo pessoal é renderizado sem uma barra de cabeçalho de guia (significando o modo de tela inteira). O padrão é false.

Observação

  • isFullScreen funciona apenas para aplicativos publicados em sua organização. Aplicativos de terceiros carregados e publicados não podem usar essa propriedade (ela é ignorada).

  • O isFullScreen=true parâmetro elimina a barra de cabeçalho e o título fornecidos pelo Teams de aplicativos pessoais e caixas de diálogo. No entanto, é recomendável não usar o isFullScreen=true parâmetro com aplicativos de bot de chat.

activities

Opcional – Objeto

Defina as propriedades que o seu aplicativo usa para postar um feed de atividades do usuário..

Nome Tipo Tamanho máximo Obrigatório Descrição
activityTypes Matriz de objetos 128 itens Forneça os tipos de atividades que seu aplicativo pode postar no feed de atividades de um usuário.

activities.activityTypes

Nome Tipo Tamanho máximo Obrigatório Descrição
type Cadeia de caracteres 32 caracteres ✔️ O tipo de notificação. Confira a seguir.
description Cadeia de caracteres 128 caracteres ✔️ Uma breve descrição da notificação. Confira a seguir.
templateText Cadeia de caracteres 128 caracteres ✔️ Ex: "{actor} criou a tarefa {taskId} para você"
{
   "activities":{
      "activityTypes":[
         {
            "type":"taskCreated",
            "description":"Task Created Activity",
            "templateText":"{actor} created task {taskId} for you"
         },
         {
            "type":"teamMention",
            "description":"Team Mention Activity",
            "templateText":"{actor} mentioned team"
         },
         {
            "type":"channelMention",
            "description":"Channel Mention Activity",
            "templateText":"{actor} mentioned channel"
         },
         {
            "type":"userMention",
            "description":"Personal Mention Activity",
            "templateText":"{actor} mentioned user"
         },
         {
            "type":"calendarForward",
            "description":"Forwarding a Calendar Event",
            "templateText":"{actor} sent user an invite on behalf of {eventOwner}"
         },
         {
            "type":"calendarForward",
            "description":"Forwarding a Calendar Event",
            "templateText":"{actor} sent user an invite on behalf of {eventOwner}"
         },
         {
            "type":"creatorTaskCreated",
            "description":"Created Task Created",
            "templateText":"The Creator created task {taskId} for you"
         }
      ]
   }
}

defaultInstallScope

Opcional – Cadeia de caracteres

Especifica o escopo de instalação definido para este aplicativo por padrão. O escopo definido é a opção exibida no botão quando um usuário tenta adicionar o aplicativo. As opções são:

  • personal
  • team
  • groupChat
  • meetings

defaultGroupCapability

Opcional – Objeto

Quando um escopo de instalação de grupo é selecionado, ele define o recurso padrão quando o usuário instala o aplicativo. As opções são:

  • team
  • groupChat
  • meetings
Nome Tipo Tamanho máximo Obrigatório Descrição
team Cadeia de caracteres Quando o escopo de instalação selecionado é team, este campo especifica o recurso padrão disponível. Opções: tab, bot ou connector.
groupChat Cadeia de caracteres Quando o escopo de instalação selecionado é groupChat, este campo especifica o recurso padrão disponível. Opções: tab, bot ou connector.
meetings Cadeia de caracteres Quando o escopo de instalação selecionado é meetings, este campo especifica o recurso padrão disponível. Opções: tab, bot ou connector.

configurableProperties

Opcional – Matriz

O bloco configurableProperties define as propriedades do aplicativo que os administradores do Teams podem personalizar. Para obter mais informações, consulte habilitar a personalização do aplicativo. O recurso de personalização de aplicativo não tem suporte em aplicativos personalizados ou aplicativos personalizados criados para seus aplicativos LOB (organização).

Observação

Um mínimo de uma propriedade deve ser definido. Você pode definir um máximo de nove propriedades neste bloco.

Você pode definir qualquer uma das seguintes propriedades:

supportedChannelTypes

Opcional – Matriz

Habilita seu aplicativo em canais não-padronizados. Se seu aplicativo der suporte a um escopo de equipe e esta propriedade for definida, o Teams habilita seu aplicativo em cada tipo de canal adequadamente. A propriedade SupportedChannelTypes só dá sharedChannels suporte e privateChannels.

Observação

  • Se seu aplicativo der suporte a um escopo de equipe, ele funciona nos canais padrão independentemente dos valores que são definidos nesta propriedade.
  • Seu aplicativo pode levar em conta as propriedades únicas de cada um dos tipos de canal para funcionar corretamente. Para habilitar sua guia para canais privados e compartilhados, confira Recuperar contexto em canais privados e obter contexto em canais compartilhados

defaultBlockUntilAdminAction

Opcional – booliano

Quando a propriedade defaultBlockUntilAdminAction é definida como true, o aplicativo fica oculto dos usuários por padrão até que o administrador permita. Se definido como true, o aplicativo ficará oculto para todos os locatários e usuários finais. Os administradores de locatários podem ver o aplicativo no centro de administração do Teams e tomar medidas para permitir ou bloquear o aplicativo. O valor padrão é falso. Para obter mais informações sobre o bloco de aplicativos padrão, consulte Bloquear aplicativos por padrão para usuários até que um administrador aprove.

publisherDocsUrl

Opcional – Cadeia de caracteres

Tamanho máximo – 2048 caracteres

O valor do publisherDocsUrl parâmetro é uma URL HTTPS segura para a página de documentação e informações do aplicativo que os desenvolvedores de aplicativos escolhem fornecer. Os administradores de locatários obtêm documentação sobre o aplicativo nesta URL. O centro de administração do Teams exibe a URL na página de detalhes do aplicativo. A documentação pode incluir as instruções para os administradores facilitarem a adoção do aplicativo e a distribuição de aplicativos. Na documentação do aplicativo, você também pode incluir instruções ou informações sobre o aplicativo que é útil para o administrador de locatários, usuários e outros stakeholders empresariais.

subscriptionOffer

Opcional – Objeto

Especifica a oferta de SaaS associada ao seu aplicativo.

Nome Tipo Tamanho máximo Obrigatório Descrição
offerId string 2,048 caracteres ✔️ Um identificador exclusivo que inclui a sua ID de editor e ID de oferta, que você pode encontrar no Partner Center. Você deve formatar a cadeia de caracteres como publisherId.offerId.

meetingExtensionDefinition

Opcional – Objeto

Especifique a definição de extensão da reunião. Para obter mais informações, consulte cenas personalizadas do Modo Juntos no Teams.

Nome Tipo Tamanho máximo Obrigatório Descrição
scenes matriz de objetos 5 itens Cenas suportadas da reunião.
supportsStreaming Booliano Um valor que indica se um aplicativo pode transmitir o conteúdo de áudio e vídeo da reunião para um ponto de extremidade de protocolo de reunião em tempo real (RTMP). O valor padrão é falso.
supportsAnonymousGuestUsers Booliano Um valor que indica se um aplicativo dá suporte ao acesso para usuários anônimos. O valor padrão é falso.

Observação

A supportsAnonymousGuestUsers propriedade no esquema de manifesto do aplicativo v1.16 tem suporte apenas no novo cliente do Teams.

meetingExtensionDefinition.scenes

Nome Tipo Tamanho máximo Obrigatório Descrição
id Cadeia de caracteres ✔️ O identificador exclusivo para a cena. Essa ID deve ser um GUID.
name Cadeia de caracteres 128 caracteres ✔️ O nome da cena.
file Cadeia de caracteres 2048 caracteres ✔️ O caminho do arquivo relativo para o arquivo JSON de metadados das cenas.
preview Cadeia de caracteres 2048 caracteres ✔️ O caminho do arquivo relativo para o ícone de visualização PNG das cenas.
maxAudience Número inteiro 50 ✔️ O número máximo de audiências suportadas na cena.
seatsReservedForOrganizersOrPresenters Número inteiro 50 ✔️ O número de assentos reservados para organizadores ou apresentadores.

autorização

Opcional – Objeto

Observação

authorization só há suporte para o manifesto do aplicativo versão 1.12 ou posterior.

Especifique e consolide as informações relacionadas à autorização para o aplicativo.

Nome Tipo Tamanho máximo Obrigatório Descrição
permissions Objeto Lista de permissões que o aplicativo precisa para funcionar.

authorization.permissions

Nome Tipo Tamanho máximo Obrigatório Descrição
resourceSpecific Matriz de objetos 16 itens Permissões que protegem o acesso a dados no nível da instância do recurso.

authorization.permissions.resourceSpecific

Nome Tipo Tamanho máximo Obrigatório Descrição
type Cadeia de caracteres ✔️ O tipo da permissão RSC (consentimento específico do recurso). Opções: Application e Delegated.
name Cadeia de caracteres 128 caracteres ✔️ O nome da permissão RSC. Para obter mais informações, confira Permissões de aplicativo RSC e permissões delegadas do RSC

Permissões de aplicativo RSC

As permissões do aplicativo permitem que o aplicativo acesse dados sem um usuário conectado. Para obter informações sobre permissões de aplicativo, confira Permissões RSC para Microsoft Graph e Microsoft BotSDK.

Permissões delegadas do RSC

As permissões delegadas permitem que o aplicativo acesse dados em nome do usuário conectado.

  • Permissões delegadas do RSC para uma equipe

    Nome Descrição
    ChannelMeetingParticipant.Read.Group Permite que o aplicativo leia as informações dos participantes, incluindo nome, função, ID, horários de ingresso e de saída, de reuniões de canal associadas a esta equipe, em nome do usuário conectado.
    ChannelMeetingIncomingAudio.Detect.Group Permite que o aplicativo detecte áudio de entrada em reuniões de canal associadas à equipe.
    ChannelMeetingActiveSpeaker.Read.Group Permite que o aplicativo leia os participantes que estão enviando áudio para as reuniões do canal associadas à equipe.
    ChannelMeetingAudioVideo.Stream.Group Permite que o aplicativo transmita conteúdo de áudio-vídeo de reuniões de canal associadas à equipe.
    InAppPurchase.Allow.Group Permite que o aplicativo mostre ofertas de marketplace aos usuários da equipe e conclua suas compras no aplicativo, em nome do usuário conectado.
    ChannelMeetingStage.Write.Group Permite que o aplicativo mostre conteúdo no estágio de reunião em reuniões de canal associadas à equipe, em nome do usuário conectado.
    LiveShareSession.ReadWrite.Group Permite que o aplicativo crie e sincronize sessões do Live Share para reuniões associadas à equipe e acesse informações relacionadas sobre a lista da reunião, como a função de reunião do membro, em nome do usuário conectado.
    MeetingParticipantReaction.Read.Group Permite que o aplicativo leia as reações dos participantes em reuniões de canal associadas à equipe.
  • Permissões delegadas do RSC para chats ou reuniões

    Nome Descrição
    InAppPurchase.Allow.Chat Permite que o aplicativo mostre ofertas de marketplace aos usuários no chat e em qualquer reunião associada e conclua suas compras no aplicativo, em nome do usuário conectado.
    MeetingStage.Write.Chat Permite que o aplicativo mostre conteúdo no estágio de reunião em reuniões associadas ao chat, em nome do usuário conectado.
    OnlineMeetingParticipant.Read.Chat Permite que o aplicativo leia informações do participante, incluindo nome, função, id, tempos ingressados e deixados, de reunião associada ao chat, em nome do usuário conectado.
    OnlineMeetingParticipant.ToggleIncomingAudio.Chat Permite que o aplicativo alterne o áudio de entrada para os participantes em reuniões associadas ao chat, em nome do usuário conectado.
    LiveShareSession.ReadWrite.Chat Permite que o aplicativo crie e sincronize sessões do Live Share para reuniões associadas ao chat e acesse informações relacionadas sobre a lista da reunião, como a função de reunião do membro, em nome do usuário conectado.
    MeetingParticipantReaction.Read.Chat Permite que o aplicativo leia as reações dos participantes em reuniões associadas ao chat.
    OnlineMeetingIncomingAudio.Detect.Chat Permite que o aplicativo detecte alterações no status de áudio de entrada em reuniões associadas ao chat, em nome do usuário conectado.
    OnlineMeetingActiveSpeaker.Read.Chat Permite que o aplicativo leia os participantes que estão enviando áudio para as reuniões associadas ao chat.
    OnlineMeetingAudioVideo.Stream.Chat Permite que o aplicativo transmita conteúdo de áudio-vídeo de reuniões associadas ao chat.
  • Permissões delegadas do RSC para usuários

    Nome Descrição
    CameraStream.Read.User Permite que o aplicativo leia o fluxo de câmera do usuário.
    InAppPurchase.Allow.User Permite que o aplicativo mostrar as ofertas do marketplace do usuário e conclua as compras do usuário dentro do aplicativo, em nome do usuário conectado.
    OutgoingVideoStream.Write.User Permite que o aplicativo modifique o vídeo de saída do usuário.
    MicrophoneStream.Read.User Permite que o aplicativo leia o fluxo de microfone do usuário.
    MeetingParticipantReaction.Read.User Permite que o aplicativo leia as reações do usuário durante a participação em uma reunião.

extensions

Opcional – Objeto

A extensions propriedade especifica suplementos do Outlook em um manifesto de aplicativo e simplifica a distribuição e a aquisição em todo o ecossistema do Microsoft 365. Cada aplicativo dá suporte a apenas uma extensão.

Nome Tipo Tamanho máximo Obrigatório Descrição
requirements Objeto Especifica o conjunto de requisitos de cliente ou host para a extensão.
runtimes Matriz Configura o conjunto de runtimes e ações que podem ser usadas por cada ponto de extensão. Para obter mais informações, confira runtimes em Suplementos do Office.
ribbons Matriz Define o ponto de extensão faixas de opções.
autoRunEvents Matriz Define o ponto de extensão de ativação baseado em evento.
alternates Matriz Especifica a relação com soluções alternativas existentes do Microsoft 365. Ele é usado para ocultar ou priorizar suplementos do mesmo editor com funcionalidade sobreposta.
audienceClaimUrl Cadeia de caracteres 2048 caracteres Especifica a URL da sua extensão e é usada para validar tokens de identidade de usuário do Exchange. Para obter mais informações, confira dentro do token de identidade do Exchange

Para obter mais informações, consulte Manifesto de Suplementos do Office para Microsoft 365.

extensions.requirements

O extensions.requirements objeto especifica os escopos, os fatores de formulário e os conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que o suplemento seja instalado. Também há suporte para requisitos nas propriedades filho "ribbon", "runtime", "alternates" e "autoRunEvents" para filtrar seletivamente alguns recursos do suplemento. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365.

Nome Tipo Tamanho máximo Obrigatório Descrição
requirements.capabilities Matriz Identifica os conjuntos de requisitos.
Opções: name (obrigatório), minVersion, maxVersion
requirements.capabilities.name Cadeia de caracteres ✔️ Identifica o nome do conjunto de requisitos.
requirements.capabilities.minVersion Cadeia de caracteres Identifica a versão mínima para o conjunto de requisitos.
requirements.capabilities.maxVersion Cadeia de caracteres Identifica a versão máxima do conjunto de requisitos.
requirements.scopes Matriz de enumerações 1 Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor com suporte: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que dão suporte ao suplemento.
Valores com suporte: mobile, desktop

extensions.runtimes

A extensions.runtimes matriz configura os conjuntos de runtimes e ações que cada ponto de extensão pode usar.

Nome Tipo Tamanho máximo Obrigatório Descrição
id String 64 caracteres ✔️ Especifica a ID para runtime.
type Enumeração de cadeia de caracteres ✔️ Especifica o tipo de runtime. O valor de enumeração com suporte para runtime baseado no navegador é general.
code Objeto ✔️ Especifica o local do código para o runtime. Com base em runtime.type, os suplementos podem usar um arquivo JavaScript ou uma página HTML com uma marca inserida script que especifica a URL de um arquivo JavaScript. Ambas as URLs são necessárias em situações em que o runtime.type é incerto.
code.page URL ✔️ Especifica a URL da página da Web que contém uma marca inserida script , que especifica a URL de um arquivo JavaScript (a ser carregado em um runtime baseado no navegador).
code.script URL Especifica a URL do arquivo JavaScript a ser carregado no runtime somente JavaScript.
lifetime Enumeração de cadeia de caracteres Especifica o tempo de vida do runtime. Runtimes com uma short vida útil não preservam o estado em execuções enquanto runtimes com uma long vida útil fazem. Para obter mais informações, consulte Runtimes em Suplementos do Office.
actions Matriz Especifica o conjunto de ações com suporte pelo runtime. Uma ação está executando uma função JavaScript ou abrindo uma exibição, como um painel de tarefas.
actions.id String 64 caracteres ✔️ Especifica a ID da ação, que é passada para o arquivo de código.
actions.type Cadeia de caracteres ✔️ Especifica o tipo de ação. O executeFunction tipo executa uma função JavaScript sem esperar que ela seja concluída e o openPage tipo abre uma página em uma determinada exibição.
actions.displayName String 64 caracteres Especifica o nome de exibição da ação e não é o rótulo de um botão ou um item de menu que invoca a ação (que está configurada com tabs.groups.controls.label).
actions.pinnable Booliano Especifica se um painel de tarefas tem suporte para fixação, que mantém o painel de tarefas aberto quando o usuário altera a seleção.
Valor padrão: false
actions.view String 64 caracteres Especifica a exibição em que a página deve ser aberta. Ele é usado somente quando actions.type é openPage.
actions.multiselect Booliano Especifica se o usuário final pode selecionar vários itens, como várias mensagens de email, e aplicar a ação a todos eles.
actions.supportsNoItemContext Booliano Permite que os suplementos do painel de tarefas ativem sem o Painel de Leitura habilitado ou uma mensagem selecionada.
requirements Objeto Especifica os escopos, os formFactors e os conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que o runtime seja incluído no suplemento. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365.
requirements.capabilities Matriz Identifica os conjuntos de requisitos.
Opções: name (obrigatório), minVersion, maxVersion
requirements.capabilities.name Cadeia de caracteres ✔️ Identifica o nome do conjunto de requisitos.
requirements.capabilities.minVersion Cadeia de caracteres Identifica a versão mínima para o conjunto de requisitos.
requirements.capabilities.maxVersion Cadeia de caracteres Identifica a versão máxima do conjunto de requisitos.
requirements.scopes Matriz de enumerações 1 Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor com suporte: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que dão suporte ao suplemento.
Valores com suporte: mobile, desktop

Para usar extensions.runtimes, confira criar comandos de suplemento, configure o runtime para um painel de tarefas e configure o runtime para o comando de função.

extensions.ribbons

A extensions.ribbons propriedade fornece a capacidade de adicionar comandos de suplemento (botões e itens de menu) à faixa de opções do aplicativo Microsoft 365. A definição da faixa de opções é selecionada na matriz com base nos requisitos e no primeiro pedido.

Nome Tipo Tamanho máximo Obrigatório Descrição
contexts Matriz 7 Especifica a janela do aplicativo Microsoft 365 na qual a personalização da faixa de opções está disponível para o usuário. Cada item na matriz é um membro de uma matriz de cadeia de caracteres.
Valores com suporte: mailRead, , mailCompose, meetingDetailsOrganizer, meetingDetailsAttendee, onlineMeetingDetailsOrganizer, , logEventMeetingDetailsAttendeedefault
requirements Objeto Especifica os escopos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que a personalização da faixa de opções seja exibida. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365.
requirements.capabilities Matriz Identifica os conjuntos de requisitos.
Opções: name (obrigatório), minVersion, maxVersion
requirements.capabilities.name Cadeia de caracteres ✔️ Identifica o nome do conjunto de requisitos.
requirements.capabilities.minVersion Cadeia de caracteres Identifica a versão mínima para o conjunto de requisitos.
requirements.capabilities.maxVersion Cadeia de caracteres Identifica a versão máxima do conjunto de requisitos.
requirements.scopes Matriz de enumerações 1 Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor com suporte: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que dão suporte ao suplemento.
Valores com suporte: mobile, desktop
tabs Matriz ✔️ Configura as guias personalizadas na faixa de opções de aplicativo do Microsoft 365.
tabs.id String 64 caracteres Especifica a ID da guia dentro do aplicativo.
tabs.builtinTabId String 64 caracteres Especifica a ID de uma guia de faixa de opções interna do Office. Os valores possíveis variam de acordo com o aplicativo host do Office. Atualmente, há suporte apenas para suplementos do Outlook e o único valor permitido para o Outlook é "TabDefault". A guia padrão depende de onde o suplemento do Outlook é apresentado, conforme determinado na propriedade "extensions.ribbons.contexts". Na janela main Outlook, ela é a guia Página Inicial, em uma janela de mensagem, é a guia Mensagem e, em uma janela de reunião, é a guia Reunião.
tabs.label String 64 caracteres Especifica o texto exibido para a guia.
tabs.position Objeto Configura a posição da guia personalizada em relação a outras guias na faixa de opções.
tabs.position.builtinTabId String 64 caracteres ✔️ Especifica a ID da guia interna à qual a guia personalizada deve ser posicionada ao lado. Para obter mais informações, consulte localizar as IDs de controles e grupos de controle.
tabs.position.align Enumeração de cadeia de caracteres ✔️ Define o alinhamento da guia personalizada em relação à guia interna especificada.
Valores com suporte: after, before
tabs.groups Matriz Define grupos de controles em uma guia de faixa de opções em um dispositivo não móvel. Para dispositivos móveis, confira tabs.customMobileRibbonGroups abaixo.
tabs.groups.id String 64 caracteres Especifica a ID do grupo de guias no aplicativo. Ele deve ser diferente de qualquer ID de grupo interna no aplicativo Microsoft 365 e em qualquer outro grupo personalizado.
tabs.groups.label String 64 caracteres Especifica o texto exibido para o grupo.
tabs.groups.icons Matriz Especifica os ícones exibidos para o grupo.
tabs.groups.icons.size Número ✔️ Especifica o tamanho do ícone em pixels, enumerado como 16,20,,24,32,4048,,64,80.
Tamanhos de imagem necessários: 16, 32, 80.
tabs.groups.icons.url URL ✔️ Especifica a URL absoluta do ícone.
tabs.groups.controls Matriz Configura os botões e menus no grupo.
tabs.groups.controls.id String 64 caracteres ✔️ Especifica a ID do controle dentro do aplicativo. Ele deve ser diferente de qualquer ID de controle interna no aplicativo Microsoft 365 e qualquer outro controle personalizado.
tabs.groups.controls.items Matriz Configura os itens para um controle de menu.
tabs.groups.controls.items.id Cadeia de caracteres ✔️ Especifica a ID dos itens dentro do aplicativo.
tabs.groups.controls.items.type Enumeração de cadeia de caracteres ✔️ Define o tipo de itens de controle.
Valores com suporte: menu, button
tabs.groups.controls.items.label String 64 caracteres ✔️ Especifica o texto exibido para os itens.
tabs.groups.controls.items.icons Matriz Configura os ícones para o item personalizado.
tabs.groups.controls.items.icons.size Número ✔️ Especifica o tamanho do ícone em pixels, enumerado como 16,20,,24,32,4048,,64,80.
Tamanhos de imagem necessários: 16, 32, 80.
tabs.groups.controls.items.icons.url URL ✔️ Especifica a URL absoluta do ícone.
tabs.groups.controls.items.supertip ✔️ Configura uma super dica para o item personalizado. Uma super dica é um recurso de interface do usuário que exibe uma breve caixa de informações de ajuda sobre um controle quando o cursor passa sobre ele. A caixa pode conter várias linhas de texto.
tabs.groups.controls.items.supertip.title String 64 caracteres ✔️ Especifica o texto do título da supertipa.
tabs.groups.controls.items.supertip.description Cadeia de caracteres 128 caracteres ✔️ Especifica a descrição da supertipa.
tabs.groups.controls.items.actionId String 64 caracteres ✔️ Especifica a ID da ação que é tomada quando um usuário seleciona o item de controle ou menu. O actionId deve corresponder com runtime.actions.id.
tabs.groups.controls.items.enabled Booliano Indica se o controle está inicialmente habilitado.
Valor padrão: true
tabs.groups.controls.items.overriddenByRibbonApi Booliano Especifica se um grupo, botão, menu ou item de menu oculto em combinações de aplicativo e plataforma que dão suporte à API (Office.ribbon.requestCreateControls) que instala guias contextuais personalizadas na faixa de opções.
Valor padrão: false
tabs.groups.controls.type Cadeia de caracteres ✔️ Define o tipo de controle.
Valores com suporte: button, menu
tabs.groups.controls.builtinControlId String 64 caracteres ✔️ Especifica a ID de um controle existente do Microsoft 365. Para obter mais informações, consulte localizar as IDs de controles e grupos de controle.
tabs.groups.controls.label String 64 caracteres ✔️ Especifica o texto exibido para o controle.
tabs.groups.controls.icons Matriz ✔️ Define os ícones para o controle. Deve haver pelo menos três objetos filho; um com size propriedades de 16, 32e 80 pixels.
tabs.groups.controls.icons.size Número ✔️ Especifica o tamanho do ícone em pixels, enumerado como 16,20,,24,32,4048,,64,80.
Tamanho da imagem necessário: 16, , 3280
tabs.groups.controls.icons.url URL Especifica a URL absoluta para o ícone.
tabs.groups.controls.supertip Objeto ✔️ Configura uma super dica para o controle.
tabs.groups.controls.supertip.title String 64 caracteres ✔️ Especifica o texto do título da supertipa.
tabs.groups.controls.supertip.description Cadeia de caracteres 128 caracteres ✔️ Especifica a descrição da supertipa.
tabs.groups.controls.actionId String 64 caracteres Necessário se o tipo de controle for button. Não use se o tipo de controle for menu. Especifica a ID da ação que é tomada quando um usuário seleciona o controle. O actionId deve corresponder à runtime.actions.id propriedade de uma ação no runtimes objeto.
tabs.groups.controls.enabled Booliano Indica se o controle está inicialmente habilitado.
Valor padrão: true
tabs.groups.controls.overriddenByRibbonApi Booliano Especifica se um grupo, botão, menu ou item de menu está oculto em combinações de aplicativo e plataforma que dão suporte à API (Office.ribbon.requestCreateControls) que instala guias contextuais personalizadas na faixa de opções.
Valor padrão: false
tabs.groups.builtinGroupId String 64 caracteres Especifica a ID de um grupo interno. Para obter mais informações, consulte localizar as IDs de controles e grupos de controle.
tabs.customMobileRibbonGroups Matriz 10 Define grupos de controles na guia padrão da faixa de opções em um dispositivo móvel. Essa propriedade de matriz só pode estar presente em objetos de guia que têm uma tabs.builtinTabId propriedade definida como "DefaultTab". Para dispositivos não móveis, confira tabs.groups acima.
tabs.customMobileRibbonGroups.id Cadeia de caracteres 250 caracteres ✔️ Especifica a ID do grupo. Ele deve ser diferente de qualquer ID de grupo interna no aplicativo Microsoft 365 e em qualquer outro grupo personalizado.
tabs.customMobileRibbonGroups.label Cadeia de caracteres 32 caracteres ✔️ Especifica o rótulo no grupo.
tabs.customMobileRibbonGroups.controls Matriz 20 ✔️ Define os controles no grupo. Há suporte apenas para botões móveis.
tabs.customMobileRibbonGroups.controls.id Cadeia de caracteres 250 caracteres ✔️ Especifica a ID do controle, como "msgReadFunctionButton".
tabs.customMobileRibbonGroups.controls.type Enumeração de cadeia de caracteres ✔️ Especifica o tipo de controle. Atualmente, há suporte apenas para "MobileButton".
tabs.customMobileRibbonGroups.controls.label Cadeia de caracteres 32 caracteres ✔️ Especifica o rótulo no controle.
tabs.customMobileRibbonGroups.controls.actionId String 64 caracteres ✔️ Especifica a ID da ação que é tomada quando um usuário seleciona o controle. O actionId deve corresponder à runtime.actions.id propriedade de uma ação no runtimes objeto.
tabs.customMobileRibbonGroups.controls.icons Matriz 9 ✔️ Especifica os ícones que serão exibidos no controle dependendo das dimensões e da DPI da tela do dispositivo móvel. Deve haver exatamente 9 ícones.
tabs.customMobileRibbonGroups.controls.icons.size Número enumeração ✔️ Tamanho em pixels do ícone. Os tamanhos possíveis são 25, 32 e 48. Deve haver exatamente um de cada tamanho para cada valor possível da propriedade dos scale ícones.
tabs.customMobileRibbonGroups.controls.icons.url Cadeia de caracteres 2048 caracteres ✔️ A URL completa e absoluta do arquivo de imagem do ícone.
tabs.customMobileRibbonGroups.controls.icons.scale Número enumeração ✔️ Especifica a propriedade UIScreen.scale para dispositivos iOS. Os valores possíveis são 1, 2 e 3. Deve haver exatamente um de cada valor para cada valor possível da propriedade dos size ícones.

Para usar extensions.ribbons, consulte criar comandos de suplemento, configure a interface do usuário para o comando do painel de tarefas e configure a interface do usuário para o comando de função.

extensions.autoRunEvents

A extensions.autoRunEvents propriedade define pontos de extensão de ativação baseados em evento.

Nome Tipo Tamanho máximo Obrigatório Descrição
events Matriz 20 ✔️ Configura o evento que faz com que as ações em um Suplemento do Outlook sejam executadas automaticamente. Por exemplo, confira usar alertas inteligentes e os OnMessageSend eventos e OnAppointmentSend em seus Suplementos do Outlook.
events.type String 64 caracteres Especifica o tipo de evento. Para tipos com suporte, consulte eventos com suporte.
events.actionId String 64 caracteres Identifica a ação que é tomada quando o evento é acionado. O actionId deve corresponder com runtime.actions.id.
events.options Objeto Configura como o Outlook responde ao evento.
events.options.sendMode Cadeia de caracteres ✔️ Especifica as ações a serem executadas durante uma ação de envio de email.
Valores com suporte: promptUser, , softBlock. block Para obter mais informações, consulte opções de modo de envio disponíveis.
requirements Objeto Especifica os escopos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que o código de tratamento de eventos seja executado. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365.
requirements.capabilities Matriz Identifica os conjuntos de requisitos.
Opções: name (obrigatório), minVersion, maxVersion
requirements.capabilities.name Cadeia de caracteres ✔️ Identifica o nome do conjunto de requisitos.
requirements.capabilities.minVersion Cadeia de caracteres Identifica a versão mínima para o conjunto de requisitos.
requirements.capabilities.maxVersion Cadeia de caracteres Identifica a versão máxima do conjunto de requisitos.
requirements.scopes Matriz de enumerações 1 Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor com suporte: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que dão suporte ao suplemento.
Valores com suporte: mobile, desktop

extensions.alternates

A extensions.alternates propriedade é usada para ocultar ou priorizar suplementos específicos no mercado quando você publicou vários suplementos com funcionalidade sobreposta.

Nome Tipo Tamanho máximo Obrigatório Descrição
prefer Objeto Especifica a compatibilidade retrógrada com um suplemento COM equivalente, suplemento XLL ou ambos.
prefer.comAddin Objeto Especifica um suplemento COM que deve ser usado no lugar do Suplemento Web do Microsoft 365 para Windows.
prefer.comAddin.progId String 64 caracteres ✔️ Identifica o tipo de aplicativo no qual a extensão pode ser executada.
hide Objeto Configura como ocultar outro suplemento que você publicou sempre que o suplemento estiver instalado, para que os usuários não vejam ambos na interface do usuário do Microsoft 365. Por exemplo, use essa propriedade quando você tiver publicado anteriormente um suplemento que usa o manifesto antigo do aplicativo XML e você a substituirá por uma versão que usa o novo manifesto do aplicativo JSON.
hide.storeOfficeAddin Objeto Especifica um Suplemento do Microsoft 365 disponível no Microsoft AppSource.
hide.storeOfficeAddin.officeAddinId String 64 caracteres ✔️ Especifica a ID do suplemento no mercado a ser ocultado. O GUID será retirado da propriedade manifesto id do aplicativo se o suplemento no mercado usar o manifesto do aplicativo JSON. O GUID será retirado do <Id> elemento se o suplemento no mercado usar o manifesto do aplicativo XML.
hide.storeOfficeAddin.assetId String 64 caracteres ✔️ Especifica a ID do ativo AppSource do suplemento no mercado a ser ocultado.
hide.customOfficeAddin Objeto Configura como ocultar um suplemento no mercado que não é distribuído por meio do AppSource.
hide.customOfficeAddin.officeAddinId String 64 caracteres ✔️ Especifica a ID do suplemento no mercado a ser ocultado. O GUID será retirado da propriedade manifesto id do aplicativo se o suplemento no mercado usar o manifesto do aplicativo JSON. O GUID será retirado do <Id> elemento se o suplemento no mercado usar o manifesto do aplicativo XML.
requirements Objeto Especifica os escopos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que as propriedades "ocultar", "preferir" ou "alternateIcons" entrem em vigor. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365.
requirements.capabilities Matriz Identifica os conjuntos de requisitos.
Opções: name (obrigatório), minVersion, maxVersion
requirements.capabilities.name Cadeia de caracteres ✔️ Identifica o nome do conjunto de requisitos.
requirements.capabilities.minVersion Cadeia de caracteres Identifica a versão mínima para o conjunto de requisitos.
requirements.capabilities.maxVersion Cadeia de caracteres Identifica a versão máxima do conjunto de requisitos.
requirements.scopes Matriz de enumerações 1 Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor com suporte: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que dão suporte ao suplemento.
Valores com suporte: mobile, desktop
alternateIcons Objeto Especifica os ícones main que são usados para representar o suplemento em versões mais antigas do Office. Essa propriedade será necessária para que o suplemento do Office seja instalado no Office no Mac, licenças perpétuas do Office e versões de assinatura do Microsoft 365 do Office no Windows anteriores a 2304 (Build 16320.00000).
alternateIcons.icon Objeto ✔️ Especifica as propriedades do arquivo de imagem usado para representar o suplemento.
alternateIcons.icon.size Número enumeração ✔️ Essa propriedade é reservada para uso futuro. O valor deve ser 64.
alternateIcons.icon.url Cadeia de caracteres 2048 caracteres ✔️ Especifica a URL completa e absoluta do arquivo de imagem que é usado para representar o suplemento. A imagem do ícone deve ter 64 x 64 pixels e usar um dos seguintes formatos de arquivo: GIF, JPG, PNG, EXIF, BMP, TIFF.
alternateIcons.highResolutionIcon Objeto ✔️ Especifica as propriedades do arquivo de imagem usado para representar o suplemento em telas DPI altas.
alternateIcons.highResolutionIcon.size Número enumeração ✔️ Essa propriedade é reservada para uso futuro. O valor deve ser 64 (não 128).
alternateIcons.highResolutionIcon.url Cadeia de caracteres 2048 caracteres ✔️ Especifica a URL completa e absoluta do arquivo de imagem que é usado para representar o suplemento em telas DPI altas. A imagem do ícone deve ter 128 x 128 pixels e usar um dos seguintes formatos de arquivo: GIF, JPG, PNG, EXIF, BMP, TIFF.

dashboardCards

Opcional – Matriz

Define uma lista de cartões que podem ser fixados em um dashboard, como Microsoft Viva Connections, para fornecer uma exibição resumida das informações do aplicativo. Para saber mais sobre como criar cartões para Viva Connections Dashboard, confira Visão geral das extensões de cartão adaptável do Bot Powered.

Este item é uma matriz de dashboardCard elementos do tipo object.

dashboardCards.dashboardCard

Define um único dashboard cartão e suas propriedades.

Nome Tipo Tamanho máximo Obrigatório Descrição
id Cadeia de caracteres ✔️ Um identificador exclusivo para este dashboard cartão. A ID deve ser um GUID.
displayName Cadeia de caracteres 255 caracteres ✔️ Nome de exibição do cartão.
description Cadeia de caracteres 255 caracteres ✔️ Descrição do cartão.
pickerGroupId Cadeia de caracteres ✔️ ID do grupo no seletor de cartão. A ID deve ser um GUID.
icon Objeto Especifica o ícone do cartão.
contentSource Objeto ✔️ Especifica a origem do conteúdo do cartão
defaultSize Cadeia de caracteres ✔️ Tamanho de renderização do dashboard cartão. Opções: medium ou large.

dashboardCards.dashboardCard.icon

Define as propriedades de ícone de um determinado dashboard cartão.

Nome Tipo Tamanho máximo Obrigatório Descrição
iconUrl Cadeia de caracteres 2048 caracteres Local do ícone do cartão, a ser exibido na caixa de ferramentas e na barra de cartão.
officeUIFabricIconName Cadeia de caracteres 255 caracteres Nome amigável do ícone de interface do usuário fluente ou UI Fabric do Office para o cartão. Esse valor será usado se iconUrl não for especificado.

dashboardCards.dashboardCard.contentSource

Define a fonte de conteúdo de um determinado dashboard cartão.

Nome Tipo Tamanho máximo Obrigatório Descrição
sourceType Cadeia de caracteres Representa a origem do conteúdo de um cartão. Opções: bot.
botConfiguration Objeto A configuração da origem do bot. Necessário se o sourceType estiver definido como bot.

dashboardCards.dashboardCard.contentSource.botConfiguration

Nome Tipo Tamanho máximo Obrigatório Descrição
botId Cadeia de caracteres O ID exclusivo do aplicativo Microsoft para o bot conforme registrado na estrutura do bot. A ID deve ser um GUID.

Create um arquivo de manifesto de aplicativo

Se seu aplicativo não tiver um arquivo de manifesto de aplicativo, você precisará criá-lo.

Para criar um arquivo de manifesto de aplicativo:

  1. Use o esquema de manifesto do aplicativo de exemplo para criar um arquivo .json.
  2. Salve-o na raiz da pasta do seu projeto como manifest.json.

Aqui está um exemplo do esquema de manifesto do aplicativo para um aplicativo de guia com o SSO habilitado:

Observação

O conteúdo do exemplo de manifesto do aplicativo mostrado aqui é apenas para um aplicativo de guias. Ele usa valores de exemplo para URI de subdomínio. Para obter mais informações, consulte esquema de manifesto de aplicativo de exemplo.

{ 
"$schema": "https://developer.microsoft.com/json-schemas/teams/v1.11/MicrosoftTeams.schema.json", 
"manifestVersion": "1.12", 
"version": "1.0.0", 
"id": "{new GUID for this Teams app - not the Microsoft Entra App ID}", 
"developer": { 
"name": "Microsoft", 
"websiteUrl": "https://www.microsoft.com", 
"privacyUrl": "https://www.microsoft.com/privacy", 
"termsOfUseUrl": "https://www.microsoft.com/termsofuse" 
}, 

"name": { 
  "short": "Teams Auth SSO", 
  "full": "Teams Auth SSO" 
}, 


"description": { 
  "short": "Teams Auth SSO app", 
  "full": "The Teams Auth SSO app" 
}, 

"icons": { 
  "outline": "outline.png", 
  "color": "color.png" 
}, 

"accentColor": "#60A18E", 
"staticTabs": [ 
  { 
   "entityId": "auth", 
   "name": "Auth", 
   "contentUrl": "https://subdomain.example.com/Home/Index", 
   "scopes": [ "personal" ] 
  } 
], 

"configurableTabs": [ 
  { 
   "configurationUrl": "https://subdomain.example.com/Home/Configure", 
   "canUpdateConfiguration": true, 
   "scopes": [ 
   "team" 
    ] 
  } 
], 
"permissions": [ "identity", "messageTeamMembers" ], 
"validDomains": [ 
 "{subdomain or ngrok url}" 
], 
"webApplicationInfo": { 
  "id": "{Microsoft Entra AppId}", 
  "resource": "api://subdomain.example.com/{Microsoft Entra AppId}" 
}
} 

Confira também