Partilhar via


Manifesto do aplicativo

O manifesto da aplicação (anteriormente denominado manifesto de aplicação do Teams) descreve como a sua aplicação se integra no produto Microsoft Teams. O manifesto do seu aplicativo deve estar em conformidade com o esquema hospedado em https://developer.microsoft.com/json-schemas/teams/v1.19/MicrosoftTeams.schema.json. As versões anteriores 1.0, 1.1,...,1.17 e a versão atual são 1.19 suportadas (utilizando "v1.x" no URL). A versão 1.18 não está disponível. Para obter mais informações sobre as alterações efetuadas em cada versão, veja Registo de alterações do manifesto de aplicação e, para versões anteriores, veja Versões do manifesto da aplicação.

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
Aplicações do Teams expandidas para o Outlook e o 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 Atualize para o TeamsJS v.2.19.0 sempre que possível (a v.1.12 ainda é suportada*) 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

* Utilize o TeamsJS mais recente (v.2.19.0 ou posterior) sempre que possível, para tirar partido das melhorias mais recentes e do novo suporte de funcionalidades, incluindo aplicações apenas do Teams. O TeamsJS v.1.12 continua a ser suportado. No entanto, não são adicionadas novas funcionalidades ou melhorias. Os esquemas 1.12 e 1.13 são os mesmos. Para obter mais informações, veja Biblioteca teamsJS.

Observação

Se a sua aplicação Teams estiver a utilizar a versão 1.13 ou posterior do manifesto da aplicação, certifique-se de que a sua aplicação cumpre os critérios para expandir a sua aplicação para ser executada no Microsoft 365 ou no Outlook.

Segue-se o esquema de manifesto da aplicação de exemplo:

Manifesto de aplicação de exemplo

{
    "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.19/MicrosoftTeams.schema.json",
    "manifestVersion": "1.19",
    "version": "1.0.0",
    "id": "%MICROSOFT-APP-ID%",
    "localizationInfo": {
        "defaultLanguageTag": "en",
        "defaultLanguageFile": "en.json",
        "additionalLanguages": [
            {
                "languageTag": "es",
                "file": "es.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.",
    "copilotAgents": {
        "declarativeAgents": [
            {
                "id": "agent1",
                "file": "declarativeAgent1.json"
            }
        ]
    },
    "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://example.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

O URL de https:// que referencia o Esquema JSON para o manifesto da aplicação.

manifestVersion

Necessário – Cadeia

A versão do esquema de manifesto da aplicação que este manifesto está a utilizar. Utilize 1.13 para ativar o suporte de aplicações do Teams no Outlook e na aplicação Microsoft 365; utilize 1.12 (ou anterior) para aplicações apenas do Teams.

versão

Necessário – Cadeia

A versão de um aplicativo específico. Quando atualiza algo no manifesto da aplicação, a versão também tem de ser incrementada. Desta forma, quando o novo manifesto de aplicação é instalado, substitui o existente e o utilizador recebe a nova funcionalidade. Quando esta aplicação foi submetida para a Microsoft Teams Store, o novo manifesto de aplicação tem de ser novamente submetido e revogado. Os utilizadores da aplicação recebem automaticamente o novo manifesto de aplicação atualizado poucas horas após a aprovação do manifesto da aplicação.

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 a sua aplicação incluir um Suplemento do Office, cada segmento da cadeia de versão está limitado a um máximo de cinco dígitos. As extensões de cadeia de versão de pré-lançamento e metadados do semver standard não são suportadas.

ID

Necessário – ID da aplicação Microsoft

A ID é um identificador exclusivo gerado pela Microsoft para o aplicativo. O formato do 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.

O ID armazenado no Teams Administração Center é o ID da Aplicação Externa e é visível como ExternalID nos rastreios.

Observação

Se estiver a submeter uma atualização para a sua aplicação existente no AppSource, o ID no manifesto da aplicação não pode ser modificado.

developer

Necessário – Objeto

Especifica informações sobre a sua empresa. Para aplicações submetidas para a Loja Teams, estes valores têm de corresponder às informações na sua listagem da Loja Teams. Para obter mais informações, consulte as diretrizes de publicação da Loja Teams. O nome do programador ajuda a melhorar a deteção de aplicações na Loja Teams.

Nome Tipo Tamanho máximo Obrigatório Descrição
name Cadeia de caracteres 32 caracteres ✔️ O nome de exibição do desenvolvedor.
websiteUrl Cadeia de caracteres 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 Cadeia de caracteres 2048 caracteres ✔️ A URL https:// para a política de privacidade do desenvolvedor.
termsOfUseUrl Cadeia de caracteres 2048 caracteres ✔️ A URL https:// para os termos de uso do desenvolvedor.
mpnId Cadeia de caracteres 10 caracteres Opcional O ID do Programa de Parceiros da Microsoft Cloud (anteriormente conhecido como ID do Microsoft Partner Network (MPN) que identifica a organização parceira que está a criar a aplicação.

nome

Necessá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 da aplicação ajuda a melhorar a deteção da sua aplicação na Loja Teams.

Nome Tipo Tamanho máximo Obrigatório Descrição
short Cadeia de caracteres 30 caracteres ✔️ O nome de exibição curto para o aplicativo. Utilize short a propriedade onde o espaço é limitado, como o cabeçalho da aplicação.
full Cadeia de caracteres 100 caracteres ✔️ O nome completo do aplicativo, utilizado se o nome completo do aplicativo exceder 30 caracteres. Utilize full a propriedade onde há mais espaço, como o catálogo de aplicações ou a página de detalhes da aplicação.

Observação

  • No manifesto da aplicação v1.17 ou posterior, a full propriedade é necessária e, para o manifesto da aplicação v1.16 ou anterior, não é necessária.
  • A short propriedade é utilizada em todas as superfícies de IU.

description

Necessá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 da aplicação ajuda a melhorar a deteção de aplicações na Loja Teams.

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. A sua breve descrição não pode ser repetida dentro da descrição longa e não pode incluir qualquer outro nome de aplicação.

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

localizationInfo

Opcional – Objeto

Permite a especificação de um idioma predefinido e aponta para ficheiros de idioma adicionais. Consulte a localização.

Nome Tipo Tamanho máximo Obrigatório Descrição
defaultLanguageTag Cadeia de caracteres ✔️ A etiqueta de idioma para as cadeias neste ficheiro de manifesto de aplicação de nível superior. O padrão é en-us.
defaultLanguageFile Cadeia de caracteres 2048 caracteres Um caminho de ficheiro relativo para o ficheiro .json que contém as cadeias. Se não for especificado, as cadeias são obtidas diretamente do ficheiro de manifesto da aplicação. É necessário um ficheiro de idioma predefinido para agentes copilot que suportam vários idiomas.

localizationInfo.additionalLanguages

Uma matriz de objetos, cada um com as seguintes propriedades para especificar traduções de idioma adicionais.

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

ícones

Necessá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 Tipo Tamanho máximo Obrigatório Descrição
outline Cadeia de caracteres 32 x 32 pixels ✔️ Um caminho de arquivo relativo para um ícone de contorno PNG transparente de 32x32. A cor do limite tem de ser branca.
color Cadeia de caracteres 192 x 192 pixels ✔️ Um caminho de arquivo relativo para um ícone PNG colorido de 192x192.

accentColor

Obrigatório – código de cor Hexadecima html

Uma cor a utilizar e como fundo para os í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.

copilotAgents

Opcional – Objeto

Define um ou mais agentes para Microsoft 365 Copilot. Os agentes declarativos são personalizações de Microsoft 365 Copilot que são executadas no mesmo orquestrador e modelos de base.

Nome Tipo Tamanho máximo Obrigatório Descrição
declarativeAgents Matriz de objetos 1 ✔️ Matriz de objetos que cada um define um agente declarativo.

declarativeAgents

Representa uma personalização de Microsoft 365 Copilot, conforme definido pelo respetivo ficheiro de manifesto.

Nome Tipo Tamanho máximo Obrigatório Descrição
id Cadeia de caracteres ✔️ Identificador exclusivo do agente. Ao utilizar Microsoft Copilot Studio para criar agentes, este é gerado automaticamente. Caso contrário, atribua manualmente o valor de acordo com as suas próprias convenções ou preferência.
file Cadeia de caracteres 2048 caracteres ✔️ Caminho de ficheiro relativo no pacote de aplicação para o ficheiro de manifesto do agente declarativo .

configurbleTabs

Opcional – Matriz

Utilizado quando a sua experiência de aplicação tem uma experiência de separador de canal de equipa que requer configuração adicional 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, pode defini-lo no manifesto da aplicação 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 ✔️ Os separadores configuráveis suportam apenas os team âmbitos 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.
Valor predefinido: true
meetingSurfaces Matriz de enumerações 2 O conjunto de meetingSurfaceItem escopos em que uma guia é compatível.
Valores predefinidos: sidePanel, stage
context Matriz de enumerações 8 O conjunto de contextItem escopos em que uma guia é compatível. Valor aceite: [personalTab, channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingSidePanel, meetingStage].
sharePointPreviewImage Cadeia de caracteres 2048 caracteres 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 separadores que podem ser afixados por predefinição, sem que o utilizador os adicione manualmente. As guias estáticas declaradas no escopo personal são sempre vinculadas à experiência pessoal do aplicativo. No entanto, os separadores afixados podem ser reordenados ao adicionar os detalhes do separador pela mesma ordem pretendida. Para obter mais informações, veja Reordenar separadores pessoais estáticos.

Esta propriedade também lhe permite definir a capacidade de destino predefinida para uma aplicação que suporta funcionalidades de separador e bot no âmbito pessoal. Para obter mais informações, veja Configurar a capacidade de destino predefinida.

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 a apresentar do separador.
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 O ID da aplicação Microsoft especificado 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 ✔️ Especifica se o separador oferece uma experiência no contexto de um canal numa equipa ou uma experiência confinada a um chat de utilizador ou grupo individual. Os separadores estáticos suportam personal apenas o âmbito.
context Matriz de enumerações 8 O conjunto de contextItem contextos em que um separador é suportado.
Valores aceites: personalTab, , channelTab, privateChatTabmeetingChatTab, , meetingDetailsTab, meetingStage, , . teamLevelAppmeetingSidepanel
Valores predefinidos: personalTab, , channelTabprivateChatTab, meetingChatTab, . meetingDetailsTab

Observação

  • Os groupChat âmbitos e team são suportados apenas na pré-visualização do programador público.
  • O teamLevelApp contexto é dedicado apenas para inquilinos do Education.
  • A searchUrl funcionalidade não está disponível para programadores 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 (no máximo, apenas um elemento— só é permitido um bot por aplicação) 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.
Valor predefinido: false
isNotificationOnly Boolean Indica se um bot é um bot unidirecional, somente para notificação, em vez de um bot de conversa.
Valor predefinido: false
supportsFiles Boolean Indica se o bot é compatível com a capacidade de carregar/baixar arquivos em chat pessoal.
Valor predefinido: false
supportsCalling Booliano Um valor que indica onde um bot dá suporte a chamadas de áudio. IMPORTANTE: esta propriedade é experimental. 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.
Valor predefinido: false
supportsVideo Booliano Um valor que indica onde um bot oferece suporte a chamadas com vídeo. IMPORTANTE: esta propriedade é experimental. 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.
Valor predefinido: false

bots.configuration

Opcional – Objeto

Nome Tipo Tamanho máximo Obrigatório Descrição
team.fetchTask Booliano ✔️ Um valor booleano que indica se deve obter a caixa de diálogo (referida como módulo de tarefas no TeamsJS v1.x) dinamicamente.
Valor predefinido: false
team.taskInfo Objeto ✔️ A caixa de diálogo a pré-carregar quando utiliza um bot
team.taskInfo.title String 64 caracteres ✔️ Título inicial da caixa de diálogo.
team.taskInfo.width Cadeia de caracteres 16 carateres A largura da caixa de diálogo é um número em píxeis ou um esquema predefinido, como large, mediumou small.
team.taskInfo.height Cadeia de caracteres 16 carateres A altura da caixa de diálogo é um número em píxeis ou um esquema predefinido, como large, mediumou small.
team.taskInfo.url Cadeia de caracteres 2048 caracteres URL inicial da webview.
groupChat.fetchTask Booliano ✔️ Um valor booleano que indica se deve obter a caixa de diálogo dinamicamente.
Valor predefinido: false
groupChat.taskInfo Objeto Caixa de diálogo a iniciar ao obter a tarefa definida como false.
Valor predefinido: 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 píxeis ou um esquema predefinido, como large, mediumou small.
groupChat.taskInfo.height Cadeia de caracteres 16 A altura da caixa de diálogo é um número em píxeis ou um esquema predefinido, como large, mediumou small.
groupChat.taskInfo.url Cadeia de caracteres 2048 caracteres URL inicial da webview.

bots.commandLists

Opcional – Matriz

Uma lista de comandos que seu bot pode recomendar aos usuários. O objeto é uma matriz (máximo de três elementos) com todos os elementos do tipo object; tem de definir uma lista de comandos separada para cada âmbito suportado pelo bot. Para obter mais informações, confira Menus de Bot.

Nome Tipo Tamanho máximo Obrigatório Descrição
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.
commands Matriz de objetos 10 ✔️ Uma matriz de comandos suportados pelo bot.

Observação

O cliente móvel do Teams não suporta a aplicação de bot quando não existe nenhum valor na commandLists propriedade.

bots.commandLists.commands

Necessário – Matriz

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 card para Grupos do Microsoft 365 para a aplicação.

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 URL de https:// a utilizar ao configurar o conector com a experiência de configuração inline.
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). O team âmbito só é suportado.
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 da funcionalidade foi alterado de "compor extensão" para "extensão de mensagem" em novembro de 2017, mas o nome do manifesto da aplicação permanece o mesmo para que as extensões existentes continuem a funcionar.

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 com autorização para a extensão de mensagens baseada em API.
authorization.authType Cadeia de caracteres Enumeração de possíveis tipos de autorização. Os valores suportados são none, apiSecretServiceAuthe microsoftEntra.
authorization.microsoftEntraConfiguration Objeto Detalhes de captura de objetos necessários para fazer o fluxo de autenticação microsoftEntra. Aplicável apenas quando o tipo de autenticação for microsoftEntra.
authorization.microsoftEntraConfiguration.supportsSingleSignOn Booliano Um valor que indica se o início de sessão único está configurado para a aplicação.
authorization.apiSecretServiceAuthConfiguration Objeto Objeto que captura os detalhes necessários para realizar a autenticação do serviço. Aplicável apenas quando o tipo de autenticação for apiSecretServiceAuth.
authorization.apiSecretServiceAuthConfiguration.apiSecretRegistrationId Cadeia de caracteres 128 caracteres ID de registo devolvido quando o programador submete a chave de API através do Portal do Programador.
apiSpecificationFile Cadeia de caracteres 2048 caracteres Um caminho de ficheiro relativo para o ficheiro 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 utilizador.
Valor predefinido: false
commands Matriz de objetos 10 ✔️ Matriz de comandos com suporte da extensão de mensagens.
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 booleano que indica se o processador de mensagens de ligação da aplicação suporta o fluxo de invocação anónimo.
Valor predefinido: 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
id String 64 caracteres ✔️ A ID do comando.
type String O tipo do comando. Um de query ou action.
Valor predefinido: query
samplePrompts Matriz 5 Propriedade utilizada por Microsoft 365 Copilot para apresentar pedidos suportados pelo plug-in ao utilizador.
samplePrompts.text Cadeia de caracteres 128 caracteres ✔️ Conteúdo do pedido de exemplo.
apiResponseRenderingTemplateFile Cadeia de caracteres 2048 caracteres Um caminho de ficheiro relativo para o ficheiro de modelo de composição de resposta da API utilizado para formatar a resposta JSON da API do programador para a resposta do Cartão Ajustável.
context Matriz de cadeias de caracteres 3 Define de onde a extensão da mensagem pode ser invocada. Qualquer combinação de compose, commandBox e message.
Valores predefinidos: 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 carateres Descrição semântica do comando para consumo por Microsoft 365 Copilot através de Modelos de Linguagem Grande (LLMs).
initialRun Booliano Um valor Booleano indica se o comando é executado inicialmente sem parâmetros.
Valor predefinido: false
fetchTask Booliano Um valor Booleano que indica se tem de obter a caixa de diálogo (referida como módulo de tarefas no TeamsJS v1.x) dinamicamente.
Valor predefinido: false
taskInfo Objeto Especifique a caixa de diálogo a pré-carregar quando utilizar 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 valores de esquema predefinidos, como large, mediumou small.
taskInfo.height Cadeia de caracteres Altura da caixa de diálogo – um número em píxeis ou valores de esquema predefinidos, como large, mediumou small.
taskInfo.url Cadeia de caracteres URL inicial da webview.
parameters Matriz de objetos 5 A lista de parâmetros que o comando usa.
parameters.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.
parameters.title Cadeia de caracteres 32 caracteres ✔️ Título amigável para o parâmetro.
parameters.description Cadeia de caracteres 128 caracteres Cadeia de caracteres amigável que descreve a finalidade desse parâmetro.
parameters.semanticDescription Cadeia de caracteres 2000 carateres Descrição semântica do parâmetro para consumo por Microsoft 365 Copilot através de Modelos de Linguagem Grande (LLMs).
parameters.value Cadeia de caracteres 512 caracteres Valor inicial para o parâmetro. O valor não é suportado.
parameters.inputType Cadeia de caracteres Define o tipo de controlo apresentado numa caixa de diálogo para fetchTask: false. O valor de entrada só pode ser um de text, textarea, number, date, time, toggle, . choiceset
Valor predefinido: text
parameters.choices Matriz de objetos 10 itens As opções de escolha para choiceset. Use apenas quando parameters.inputType for choiceset.
parameters.choices.title Cadeia de caracteres 128 caracteres ✔️ Títulor da escolha.
parameters.choices.value Cadeia de caracteres 512 caracteres ✔️ O valor da escolha.

permissões

Opcional – Matriz de cadeias de carateres

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 utilizador.
  • messageTeamMembers Requer permissão para enviar mensagens diretas aos membros da equipa.

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 carateres

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) – Matriz de cadeias

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 com um ID do Google, é necessário redirecionar para accounts.google.com, no entanto, não pode 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 estejam fora do seu controlo, diretamente ou através de carateres universais (). Por exemplo,.yoursite.com é válido, mas *.onmicrosoft.com não é válido porque não está sob o seu controlo.

Ao utilizar carateres universais, aplicam-se as seguintes regras:

  • Se um segmento de subdomínio incluir um caráter universal, tem de ser o único caráter no segmento.
  • Qualquer segmento anterior a um segmento de caráter universal também tem de ser um segmento de carateres universais.

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

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

webApplicationInfo

Observação

A webApplicationInfo propriedade está relacionada com um único domínio e não é suportada para vários domínios. Por conseguinte, se tiver duas aplicações alojadas em domínios diferentes, terá de criar manifestos de aplicação separados para cada aplicação.

Opcional – Objeto

Forneça o seu ID de Aplicação Microsoft Entra e informações do Microsoft Graph para ajudar os utilizadores a iniciar sessão na sua aplicação de forma totalmente integrada. Se a sua aplicação estiver registada no Microsoft Entra ID, tem de fornecer o ID da Aplicação. 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 da aplicação. 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 não estiver a utilizar o SSO, certifique-se de que introduz um valor de cadeia fictício neste campo no manifesto da aplicação, por exemplo, https://example para evitar uma resposta de erro. O valor da cadeia de URL fictício não pode conter domínios ou URLs que não estejam no seu controlo, diretamente ou através de carateres universais. Por exemplo, yourapp.onmicrosoft.com é válido, mas *.onmicrosoft.com não é válido. Os domínios de nível superior são proibidos, por exemplo, *.com, *.org.

graphConnector

Opcional – Objeto

Especifique a configuração do conector de gráfico do aplicativo. Se estiver presente, webApplicationInfo.id também tem de 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 – Booleano

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 selecionar showLoadingIndicator como verdadeiro no manifesto da aplicação, para carregar a página corretamente, modifique as páginas de conteúdo dos seus separadores e caixas de diálogo, conforme descrito em Mostrar um documento de indicador de carregamento nativo .
  • Se não modificar as páginas de conteúdo do separador, a aplicação de separador não carrega e mostra o erro There was a problem reaching this app.

isFullScreen

Opcional – Booleano

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

Observação

  • isFullScreen funciona apenas para aplicativos publicados em sua organização. As aplicações de terceiros carregadas e publicadas não podem utilizar esta propriedade (é ignorada).

  • O isFullScreen=true parâmetro elimina a barra de cabeçalho e o título fornecidos pelo Teams de aplicações e caixas de diálogo pessoais. No entanto, recomenda-se que não utilize o isFullScreen=true parâmetro com aplicações de chat bot.

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 String 64 caracteres ✔️ O tipo de notificação.
description Cadeia de caracteres 128 caracteres ✔️ Uma breve descrição da notificação.
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

Especifica o escopo de instalação definido para este aplicativo por padrão. O âmbito definido é a opção apresentada no botão quando um utilizador tenta adicionar a aplicação. As opções são:

  • personal
  • team
  • groupChat
  • meetings

defaultGroupCapability

Opcional – Objeto

Quando um âmbito de instalação de grupo é selecionado, define a capacidade predefinida quando o utilizador instala a aplicação.

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. A funcionalidade de personalização de aplicações não é suportada em aplicações personalizadas ou aplicações personalizadas criadas para a sua organização (aplicações LOB).

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ó suporta sharedChannels 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 ativar o separador para canais privados e partilhados, veja Obter contexto em canais privados e obter contexto em canais partilhados

defaultBlockUntilAdminAction

Opcional – Booleano

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 aplicações predefinido, consulte Bloquear aplicações por predefinição para utilizadores até que um administrador aprove.

publisherDocsUrl

Opcional – Cadeia

Tamanho máximo - 2048 carateres

O valor do publisherDocsUrl parâmetro é um URL HTTPS seguro para a página de documentação e informações da aplicação que os programadores de aplicações optam por fornecer. Os administradores de inquilinos obtêm documentação sobre a aplicação neste URL. O centro de administração do Teams apresenta o URL na página de detalhes da aplicação. A documentação pode incluir as instruções para os administradores facilitarem a adoção de aplicações e a implementação de aplicações. Na documentação da aplicação, também pode incluir instruções ou informações sobre a aplicação que são úteis para o administrador de inquilinos, utilizadores e outros intervenientes empresariais.

subscriptionOffer

Opcional – Objeto

Especifica a oferta de SaaS associada ao seu aplicativo.

Nome Tipo Tamanho máximo Obrigatório Descrição
offerId Cadeia de caracteres 2048 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).
Valor predefinido: false
supportsAnonymousGuestUsers Booliano Um valor que indica se uma aplicação suporta o acesso de utilizadores anónimos.
Valor predefinido: false

Observação

A supportsAnonymousGuestUsers propriedade no esquema de manifesto da aplicação v1.16 é suportada 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ó é suportado para a versão 1.12 ou posterior do manifesto da aplicação.

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 de consentimento específico do recurso (RSC). Opções: Application e Delegated.
name Cadeia de caracteres 128 caracteres ✔️ O nome da permissão RSC. Para obter mais informações, veja RSC application permissions and RSC delegated permissions (Permissões de aplicações RSC e permissões delegadas do RSC)

Permissões da aplicação 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 aplicação, veja Permissões RSC para o Microsoft Graph e o 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 equipa

    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 a aplicação detete áudio recebido em reuniões de canal associadas à equipa.
    ChannelMeetingActiveSpeaker.Read.Group Permite que a aplicação leia os participantes que estão a enviar áudio para as reuniões de canal associadas à equipa.
    ChannelMeetingAudioVideo.Stream.Group Permite que a aplicação transmita conteúdos de áudio-vídeo a partir de reuniões de canal associadas à equipa.
    InAppPurchase.Allow.Group Permite que a aplicação mostre ofertas do marketplace aos utilizadores na equipa e conclua as compras na aplicação, em nome do utilizador com sessão iniciada.
    ChannelMeetingStage.Write.Group Permite que a aplicação mostre conteúdo na fase da reunião em reuniões de canal associadas à equipa, em nome do utilizador com sessão iniciada.
    LiveShareSession.ReadWrite.Group Permite que a aplicação crie e sincronize sessões live share para a equipa e obtenha informações relacionadas com o acesso, como o nome e a função, sobre a lista da equipa e quaisquer reuniões associadas, em nome do utilizador com sessão iniciada.
    MeetingParticipantReaction.Read.Group Permite que a aplicação leia as reações dos participantes em reuniões de canal associadas à equipa.
  • Permissões delegadas do RSC para conversas ou reuniões

    Nome Descrição
    InAppPurchase.Allow.Chat Permite que a aplicação mostre ofertas do marketplace aos utilizadores no chat e a qualquer reunião associada e conclua as compras na aplicação, em nome do utilizador com sessão iniciada.
    MeetingStage.Write.Chat Permite que a aplicação mostre conteúdo na fase da reunião em reuniões associadas ao chat, em nome do utilizador com sessão iniciada.
    OnlineMeetingParticipant.Read.Chat Permite que a aplicação leia as informações dos participantes, incluindo o nome, a função, o ID, a adesão e os horários à esquerda, da reunião associada ao chat, em nome do utilizador com sessão iniciada.
    OnlineMeetingParticipant.ToggleIncomingAudio.Chat Permite que a aplicação alterne o áudio recebido para os participantes em reuniões associadas ao chat, em nome do utilizador com sessão iniciada.
    LiveShareSession.ReadWrite.Chat Permite que a aplicação crie e sincronize sessões de Live Share para o chat e obtenha informações relacionadas com o acesso, como o nome e a função, sobre a lista do chat e quaisquer reuniões associadas, em nome do utilizador com sessão iniciada.
    MeetingParticipantReaction.Read.Chat Permite que a aplicação leia as reações dos participantes em reuniões associadas ao chat.
    OnlineMeetingIncomingAudio.Detect.Chat Permite que a aplicação detete alterações na status de áudio recebido em reuniões associadas ao chat, em nome do utilizador com sessão iniciada.
    OnlineMeetingActiveSpeaker.Read.Chat Permite que a aplicação leia os participantes que estão a enviar áudio para as reuniões associadas ao chat.
    OnlineMeetingAudioVideo.Stream.Chat Permite que a aplicação transmita em fluxo conteúdos de áudio-vídeo de reuniões associadas ao chat.
  • Permissões delegadas do RSC para utilizadores

    Nome Descrição
    CameraStream.Read.User Permite que a aplicação leia o fluxo da câmara do utilizador.
    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 a aplicação modifique o vídeo de saída do utilizador.
    MicrophoneStream.Read.User Permite que a aplicação leia o fluxo de microfone do utilizador.
    MeetingParticipantReaction.Read.User Permite que a aplicação leia as reações do utilizador durante a participação numa reunião.

extensions

Opcional – Objeto

A extensions propriedade especifica suplementos do Outlook num manifesto de aplicação e simplifica a distribuição e aquisição no ecossistema do Microsoft 365. Cada aplicação suporta apenas uma extensão.

Nome Tipo Tamanho máximo Obrigatório Descrição
requirements Objeto Especifica o conjunto de requisitos de cliente ou anfitrião para a extensão.
runtimes Matriz 20 Configura o conjunto de runtimes e ações que podem ser utilizados por cada ponto de extensão. Para obter mais informações, consulte runtimes nos Suplementos do Office.
ribbons Matriz 20 Define o ponto de extensão dos frisos.
autoRunEvents Matriz 10 Define o ponto de extensão de ativação baseado em eventos.
alternates Matriz 10 Especifica a relação para alternar soluções existentes do Microsoft 365. É utilizado para ocultar ou atribuir prioridades a suplementos do mesmo fabricante com funcionalidades sobrepostas.
audienceClaimUrl Cadeia de caracteres 2048 caracteres Especifica o URL da extensão e é utilizado para validar os tokens de identidade de utilizador do Exchange. Para obter mais informações, veja dentro do token de identidade do Exchange

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

extensions.requirements

O extensions.requirements objeto especifica os âmbitos, os fatores de formulário e os conjuntos de requisitos da Biblioteca JavaScript do Office que têm de ser suportados no cliente do Office para que o suplemento seja instalado. Os requisitos também são suportados nas propriedades subordinadas "ribbon", "runtime", "alternates" e "autoRunEvents" para filtrar seletivamente algumas funcionalidades do suplemento. Para obter mais informações, consulte Especificar os requisitos do Suplemento do Office no manifesto unificado do Microsoft 365.

Nome Tipo Tamanho máximo Obrigatório Descrição
capabilities Matriz 100 Identifica os conjuntos de requisitos.
capabilities.name Cadeia de caracteres ✔️ Identifica o nome do conjunto de requisitos.
capabilities.minVersion Cadeia de caracteres Identifica a versão mínima do conjunto de requisitos.
capabilities.maxVersion Cadeia de caracteres Identifica a versão máxima do conjunto de requisitos.
scopes Matriz de enumerações 1 Identifica os âmbitos nos quais o suplemento pode ser executado e define as aplicações do Microsoft 365 nas quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor suportado: mail
formFactors Matriz de enumerações Identifica os fatores de formulário que suportam o suplemento.
Valores suportados: mobile, desktop

extensions.runtimes

Opcional – Matriz

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

Nome Tipo Tamanho máximo Obrigatório Descrição
id String 64 caracteres ✔️ Especifica o ID do runtime.
type Enumeração de cadeias ✔️ Especifica o tipo de runtime. O valor de enumeração suportado para o runtime baseado no browser é general.
code Objeto ✔️ Especifica a localização do código para o runtime. Com base no runtime.type, os suplementos podem utilizar um ficheiro JavaScript ou uma página HTML com uma etiqueta incorporada script que especifica o URL de um ficheiro JavaScript. Ambos os URLs são necessários em situações em que o runtime.type é incerto.
code.page Cadeia de caracteres 2048 caracteres ✔️ Especifica o URL da página Web que contém uma etiqueta incorporada script , que especifica o URL de um ficheiro JavaScript (a carregar num runtime baseado no browser).
code.script Cadeia de caracteres 2048 caracteres Especifica o URL do ficheiro JavaScript a carregar no runtime apenas javaScript.
lifetime Enumeração de cadeias Especifica a duração do runtime. Os runtimes com uma short duração não preservam o estado entre execuções enquanto os runtimes com uma long duração o fazem. Para obter mais informações, consulte Runtimes nos Suplementos do Office.
Valor predefinido: short
actions Matriz 20 Especifica o conjunto de ações suportadas pelo runtime. Uma ação está a executar uma função JavaScript ou a abrir uma vista, como um painel de tarefas.
actions.id String 64 caracteres ✔️ Especifica o ID da ação, que é transmitido para o ficheiro de código.
actions.type Cadeia de caracteres ✔️ Especifica o tipo de ação. O executeFunction tipo executa uma função JavaScript sem aguardar que seja concluída e o openPage tipo abre uma página numa determinada vista.
actions.displayName String 64 caracteres Especifica o nome a apresentar da ação e não é a etiqueta de um botão ou 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 predefinido: false
actions.view String 64 caracteres Especifica a vista onde a página tem de ser aberta. É utilizado apenas quando actions.type é openPage.
actions.multiselect Booliano Especifica se o utilizador final pode selecionar vários itens, como múltiplas mensagens de e-mail, e aplicar a ação a todos eles.
Valor predefinido: false
actions.supportsNoItemContext Booliano Permite que os suplementos do painel de tarefas ativem sem o painel de leitura ativado ou uma mensagem selecionada.
Valor predefinido: false
requirements Objeto Especifica os âmbitos, o formulárioFactores e os conjuntos de requisitos da Biblioteca JavaScript do Office que têm de ser suportados no cliente do Office para que o runtime seja incluído no suplemento. Para obter mais informações, consulte Especificar os requisitos do 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 do 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 âmbitos nos quais o suplemento pode ser executado e define as aplicações do Microsoft 365 nas quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor suportado: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que suportam o suplemento.
Valores suportados: mobile, desktop

Para utilizar extensions.runtimeso , veja criar comandos de suplementos, configurar o runtime para um painel de tarefas e configurar o runtime para o comando da função.

extensions.ribbons

Opcional – Matriz

A extensions.ribbons propriedade fornece a capacidade de adicionar comandos de suplemento ( botões e itens de menu) ao friso da aplicação do Microsoft 365. A definição do friso é selecionada na matriz com base nos requisitos e na ordem inicial.

Nome Tipo Tamanho máximo Obrigatório Descrição
contexts Matriz 7 Especifica a janela da aplicação do Microsoft 365 na qual a personalização do friso está disponível para o utilizador. Cada item na matriz é um membro de uma matriz de cadeia.
Valores suportados: mailRead, , mailCompose, meetingDetailsOrganizer, meetingDetailsAttendee, onlineMeetingDetailsOrganizer, , , logEventMeetingDetailsAttendeedefault
requirements Objeto Especifica os âmbitos, o formulárioFactores e os conjuntos de requisitos da Biblioteca JavaScript do Office que têm de ser suportados no cliente do Office para que a personalização do friso seja apresentada. Para obter mais informações, consulte Especificar os requisitos do 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 do 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 âmbitos nos quais o suplemento pode ser executado e define as aplicações do Microsoft 365 nas quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor suportado: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que suportam o suplemento.
Valores suportados: mobile, desktop
tabs Matriz 20 ✔️ Configura os separadores personalizados no friso da aplicação Microsoft 365.
tabs.id String 64 caracteres Especifica o ID do separador na aplicação.
tabs.builtInTabId String 64 caracteres Especifica o ID de um separador incorporado do friso do Office. Para obter mais informações sobre os valores possíveis, consulte Localizar os IDs dos separadores incorporados do friso do Office. As únicas outras propriedades subordinados do objeto de separador que podem ser combinadas com este são groups e customMobileRibbonGroups.
tabs.label String 64 caracteres Especifica o texto apresentado para o separador. Apesar do comprimento máximo de 64 carateres, para alinhar corretamente o separador no friso, recomendamos que limite a etiqueta a 16 carateres.
tabs.position Objeto Configura a posição do separador personalizado em relação a outros separadores no friso.
tabs.position.builtInTabId String 64 caracteres ✔️ Especifica o ID do separador incorporado ao qual o separador personalizado deve ser posicionado junto a. Para obter mais informações, veja Localizar os IDs de controlos e grupos de controlo.
tabs.position.align Enumeração de cadeias ✔️ Define o alinhamento do separador personalizado em relação ao separador incorporado especificado.
Valores suportados: after, before
tabs.groups Matriz 10 Define grupos de controlos num separador do friso num dispositivo não móvel. Para dispositivos móveis, consulte tabs.customMobileRibbonGroups.
tabs.groups.id String 64 caracteres Especifica o ID do grupo de separadores na aplicação. Tem de ser diferente de qualquer ID de grupo incorporado na aplicação do Microsoft 365 e de qualquer outro grupo personalizado.
tabs.groups.label String 64 caracteres Especifica o texto apresentado para o grupo. Apesar do comprimento máximo de 64 carateres, para alinhar corretamente o separador no friso, recomendamos que limite a etiqueta a 16 carateres.
tabs.groups.icons Matriz 3 Especifica os ícones apresentados para o grupo.
tabs.groups.icons.size Número ✔️ Especifica o tamanho do ícone em píxeis, enumerado como 16,20,24,32,40,48,,8064..
Tamanhos de imagem necessários: 16, , 3280.
tabs.groups.icons.url Cadeia de caracteres 2048 caracteres ✔️ Especifica o URL absoluto do ícone.
tabs.groups.controls Matriz Configura os botões e menus no grupo.
tabs.groups.controls.id String 64 caracteres ✔️ Especifica o ID do controlo na aplicação. Tem de ser diferente de qualquer ID de controlo incorporado na aplicação do Microsoft 365 e de qualquer outro controlo personalizado.
tabs.groups.controls.items Matriz Configura os itens para um controlo de menu.
tabs.groups.controls.items.id Cadeia de caracteres ✔️ Especifica o ID de um item de menu.
tabs.groups.controls.items.type Enumeração de cadeias ✔️ Define o tipo de controlo do item de menu.
Valores suportados: button
tabs.groups.controls.items.label String 64 caracteres ✔️ Especifica o texto apresentado para o item de menu.
tabs.groups.controls.items.icons Matriz Configura os ícones do item de menu.
tabs.groups.controls.items.icons.size Número ✔️ Especifica o tamanho do ícone em píxeis, enumerado como 16,20,24,32,40,48,,8064..
Tamanhos de imagem necessários: 16, , 3280.
tabs.groups.controls.items.icons.url URL ✔️ Especifica o URL absoluto do ícone.
tabs.groups.controls.items.supertip ✔️ Configura uma supertipa para o item de menu. Uma supertipa é uma funcionalidade de IU que apresenta uma breve caixa de informações de ajuda sobre um controlo quando o cursor paira sobre o mesmo. A caixa pode conter múltiplas linhas de texto.
tabs.groups.controls.items.supertip.title String 64 caracteres ✔️ Especifica o texto de título da sobretipa.
tabs.groups.controls.items.supertip.description Cadeia de caracteres 128 caracteres ✔️ Especifica a descrição da sobretipa.
tabs.groups.controls.items.actionId String 64 caracteres ✔️ Especifica o ID da ação que é efetuada quando um utilizador seleciona o controlo ou item de menu. O actionId tem de corresponder a algum runtimes.actions.id valor de propriedade.
tabs.groups.controls.items.enabled Booliano Indica se o item de menu está inicialmente ativado.
Valor predefinido: true
tabs.groups.controls.items.overriddenByRibbonApi Booliano Especifica se o item de menu está oculto nas combinações de aplicações e plataformas que suportam a API (Office.ribbon.requestCreateControls). Esta API instala separadores contextuais personalizados no friso.
Valor predefinido: false
tabs.groups.controls.type Cadeia de caracteres ✔️ Define o tipo de controlo.
Valores suportados: button, menu
tabs.groups.controls.builtInControlId String 64 caracteres ✔️ Especifica o ID de um controlo existente do Microsoft 365. Para obter mais informações, veja Localizar os IDs de controlos e grupos de controlo. Esta propriedade não pode ser combinada com outras propriedades subordinadas do objeto de controlo porque os controlos incorporados não são personalizáveis por um suplemento.
tabs.groups.controls.label String 64 caracteres ✔️ Especifica o texto apresentado para o controlo. Apesar do comprimento máximo de 64 carateres, para alinhar corretamente o separador no friso, recomendamos que limite a etiqueta a 16 carateres.
tabs.groups.controls.icons Matriz ✔️ Define os ícones do controlo. Tem de haver, pelo menos, três objetos subordinados; cada um com size propriedades de 16, 32e 80 píxeis.
tabs.groups.controls.icons.size Número ✔️ Especifica o tamanho do ícone em píxeis, enumerado como 16,20,24,32,40,48,,8064..
Tamanhos de imagem necessários: 16, , 3280
tabs.groups.controls.icons.url URL Especifica o URL absoluto para o ficheiro de ícone.
tabs.groups.controls.supertip Objeto ✔️ Configura uma supertipa para o controlo. Uma supertipa é uma funcionalidade de IU que apresenta uma breve caixa de informações de ajuda sobre um controlo quando o cursor paira sobre o mesmo. A caixa pode conter múltiplas linhas de texto.
tabs.groups.controls.supertip.title String 64 caracteres ✔️ Especifica o texto de título da sobretipa.
tabs.groups.controls.supertip.description Cadeia de caracteres 128 caracteres ✔️ Especifica a descrição da sobretipa.
tabs.groups.controls.actionId String 64 caracteres Necessário se o tipo de controlo for button. Não utilize se o tipo de controlo for menu. Especifica o ID da ação que é efetuada quando um utilizador seleciona o controlo. O actionId tem de corresponder à runtime.actions.id propriedade de uma ação no runtimes objeto.
tabs.groups.controls.enabled Booliano Indica se o controlo está inicialmente ativado.
Valor predefinido: true
tabs.groups.controls.overriddenByRibbonApi Booliano Especifica se o controlo está oculto nas combinações de aplicações e plataformas que suportam a API (Office.ribbon.requestCreateControls). Esta API instala separadores contextuais personalizados no friso.
Valor predefinido: false
tabs.groups.builtInGroupId String 64 caracteres Especifica o ID de um grupo incorporado. Para obter mais informações, veja Localizar os IDs de controlos e grupos de controlo. Esta propriedade não pode ser combinada com outras propriedades subordinadas do objeto de grupo porque os grupos incorporados não são personalizáveis por um suplemento.
tabs.customMobileRibbonGroups Matriz 10 Define grupos de controlos no separador predefinido do friso num dispositivo móvel. Esta propriedade de matriz só pode estar presente em objetos de separador que tenham uma tabs.builtInTabId propriedade definida como DefaultTab. Para dispositivos não móveis, consulte tabs.groups acima.
tabs.customMobileRibbonGroups.id Cadeia de caracteres 250 carateres ✔️ Especifica o ID do grupo. Tem de ser diferente de qualquer ID de grupo incorporado na aplicação do Microsoft 365 e de qualquer outro grupo personalizado.
tabs.customMobileRibbonGroups.label Cadeia de caracteres 32 caracteres ✔️ Especifica a etiqueta no grupo.
tabs.customMobileRibbonGroups.controls Matriz 20 ✔️ Define os controlos no grupo. Apenas os botões móveis são suportados.
tabs.customMobileRibbonGroups.controls.id Cadeia de caracteres 250 carateres ✔️ Especifica o ID do controlo, como msgReadFunctionButton.
tabs.customMobileRibbonGroups.controls.type Enumeração de cadeias ✔️ Especifica o tipo de controlo.
Valor suportado: MobileButton
tabs.customMobileRibbonGroups.controls.label Cadeia de caracteres 32 caracteres ✔️ Especifica a etiqueta no controlo.
tabs.customMobileRibbonGroups.controls.actionId String 64 caracteres ✔️ Especifica o ID da ação que é efetuada quando um utilizador seleciona o controlo. O actionId tem de corresponder à runtime.actions.id propriedade de uma ação no runtimes objeto.
tabs.customMobileRibbonGroups.controls.icons Matriz 9 ✔️ Especifica os ícones que aparecem no controlo consoante as dimensões e o DPI do ecrã do dispositivo móvel. Tem de haver exatamente 9 ícones.
tabs.customMobileRibbonGroups.controls.icons.size Enumeração de números ✔️ Tamanho em píxeis do ícone. Os tamanhos necessários são 25, 32 e 48. Tem de existir 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 ✔️ O URL completo e absoluto do ficheiro de imagem do ícone.
tabs.customMobileRibbonGroups.controls.icons.scale Enumeração de números ✔️ Especifica a propriedade UIScreen.scale para dispositivos iOS. Os valores possíveis são 1, 2 e 3. Tem de existir exatamente um de cada valor para cada valor possível da propriedade dos size ícones.

Para utilizar extensions.ribbonso , veja criar comandos de suplemento,configurar a IU para o comando do painel de tarefas e configurar a IU para o comando de função.

extensions.autoRunEvents

Opcional – Matriz

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

Nome Tipo Tamanho máximo Obrigatório Descrição
events Matriz 20 ✔️ Configura o evento que faz com que as ações num Suplemento do Outlook são executadas automaticamente. Por exemplo, veja Utilizar alertas inteligentes e os OnMessageSend eventos e OnAppointmentSend nos seus Suplementos do Outlook.
events.type String 64 caracteres ✔️ Especifica o tipo de evento. Para tipos suportados, veja eventos suportados.
events.actionId String 64 caracteres ✔️ Identifica a ação que é efetuada quando o evento é acionado. O actionId tem de corresponder a runtime.actions.id.
events.options Objeto Configura a forma como o Outlook responde ao evento.
events.options.sendMode Cadeia de caracteres ✔️ Especifica as ações a efetuar durante uma ação de envio de correio.
Valores suportados: promptUser, , blocksoftBlock. Para obter mais informações, veja opções de modo de envio disponíveis.
requirements Objeto Especifica os âmbitos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que têm de ser suportados no cliente do Office para que o código de processamento de eventos seja executado. Para obter mais informações, consulte Especificar os requisitos do 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 do 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 âmbitos nos quais o suplemento pode ser executado e define as aplicações do Microsoft 365 nas quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor suportado: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que suportam o suplemento.
Valores suportados: mobile, desktop

extensions.alternates

Opcional – Matriz

A extensions.alternates propriedade é utilizada para ocultar ou atribuir prioridades a suplementos específicos no mercado quando tiver publicado vários suplementos com funcionalidades sobrepostas.

Nome Tipo Tamanho máximo Obrigatório Descrição
prefer Objeto Especifica a retrocompatibilidade com um suplemento COM equivalente, suplemento XLL ou ambos.
prefer.comAddin Objeto Especifica um suplemento COM que tem de ser utilizado em vez do Suplemento Web do Microsoft 365 para Windows.
prefer.comAddin.progId String 64 caracteres ✔️ Identifica o tipo de aplicação no qual a extensão pode ser executada.
hide Objeto Configura como ocultar outro suplemento que publicou sempre que o suplemento está instalado, para que os utilizadores não vejam ambos na IU do Microsoft 365. Por exemplo, utilize esta propriedade quando tiver publicado anteriormente um suplemento que utilize o manifesto da aplicação XML antigo e estiver a substituí-lo por uma versão que utilize o novo manifesto da aplicação JSON.
hide.storeOfficeAddin Objeto Especifica um Suplemento do Microsoft 365 disponível no Microsoft AppSource.
hide.storeOfficeAddin.officeAddinId String 64 caracteres ✔️ Especifica o ID do suplemento no mercado a ocultar. O GUID é retirado da propriedade do manifesto id da aplicação se o suplemento no mercado utilizar o manifesto da aplicação JSON. O GUID é retirado do <Id> elemento se o suplemento no mercado utilizar o manifesto da aplicação XML.
hide.storeOfficeAddin.assetId String 64 caracteres ✔️ Especifica o ID do recurso do AppSource do suplemento no mercado para ocultar.
hide.customOfficeAddin Objeto Configura como ocultar um suplemento no mercado que não é distribuído através do AppSource.
hide.customOfficeAddin.officeAddinId String 64 caracteres ✔️ Especifica o ID do suplemento no mercado a ocultar. O GUID é retirado da propriedade do manifesto id da aplicação se o suplemento no mercado utilizar o manifesto da aplicação JSON. O GUID é retirado do <Id> elemento se o suplemento no mercado utilizar o manifesto da aplicação XML.
requirements Objeto Especifica os âmbitos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que têm de ser suportados no cliente do Office para que as propriedades "ocultar", "preferir" ou "alternateIcons" entrem em vigor. Para obter mais informações, consulte Especificar os requisitos do 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 do 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 âmbitos nos quais o suplemento pode ser executado e define as aplicações do Microsoft 365 nas quais a extensão pode ser executada. Por exemplo, mail (Outlook).
Valor suportado: mail
requirements.formFactors Matriz de enumerações Identifica os fatores de formulário que suportam o suplemento.
Valores suportados: mobile, desktop
alternateIcons Objeto Especifica os ícones de main utilizados para representar o suplemento em versões mais antigas do Office. Esta propriedade é necessária se o suplemento do Office for instalável no Office para Mac, licenças perpétuas do Office e versões de subscrição do Microsoft 365 do Office no Windows anteriores à 2304 (Compilação 16320.00000).
alternateIcons.icon Objeto ✔️ Especifica as propriedades do ficheiro de imagem utilizado para representar o suplemento.
alternateIcons.icon.size Enumeração de números ✔️ Especifica o tamanho do ícone em píxeis, enumerado como 16,20,24,32,40,48,,8064..
Tamanhos de imagem necessários: 16, , 3280.
alternateIcons.icon.url Cadeia de caracteres 2048 caracteres ✔️ Especifica o URL absoluto completo do ficheiro de imagem que é utilizado para representar o suplemento. A imagem do ícone tem de ter 64 x 64 píxeis e utilizar um dos seguintes formatos de ficheiro: GIF, JPG, PNG, EXIF, BMP, TIFF.
alternateIcons.highResolutionIcon Objeto ✔️ Especifica as propriedades do ficheiro de imagem utilizado para representar o suplemento em ecrãs de PPP elevados.
alternateIcons.highResolutionIcon.size Enumeração de números ✔️ Especifica o tamanho do ícone em píxeis, enumerado como 16,20,24,32,40,48,,8064..
Tamanhos de imagem necessários: 16, , 3280.
alternateIcons.highResolutionIcon.url Cadeia de caracteres 2048 caracteres ✔️ Especifica o URL completo e absoluto do ficheiro de imagem que é utilizado para representar o suplemento em ecrãs de PPP elevados. A imagem do ícone tem de ter 128 x 128 píxeis e utilizar um dos seguintes formatos de ficheiro: GIF, JPG, PNG, EXIF, BMP, TIFF.

dashboardCards

Opcional – Matriz

Define uma lista de cartões que podem ser afixados a um dashboard, como Microsoft Viva Connections, para fornecer uma vista resumida das informações da aplicação. Para saber mais sobre como criar cartões para Viva Connections Dashboard, veja Descrição geral das Extensões de Cartão Adaptável Com Tecnologia de Bot.

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

dashboardCards.dashboardCard

Define um único dashboard card e as respetivas propriedades.

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

dashboardCards.dashboardCard.icon

Define as propriedades do ícone de um determinado dashboard card.

Nome Tipo Tamanho máximo Obrigatório Descrição
iconUrl Cadeia de caracteres 2048 caracteres Localização do ícone da card, a apresentar na caixa de ferramentas e card barra.
officeUIFabricIconName Cadeia de caracteres 255 caracteres O nome amigável do ícone da IU do Office UI Fabric ou Fluent UI para o card. Este valor é utilizado se iconUrl não for especificado.

dashboardCards.dashboardCard.contentSource

Define a origem de conteúdo de uma determinada dashboard card.

Nome Tipo Tamanho máximo Obrigatório Descrição
sourceType Cadeia de caracteres Representa a origem do conteúdo de um card. Opção: bot.
botConfiguration Objeto A configuração da origem do bot. Necessário se estiver sourceType 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. O ID tem de ser um GUID.

Criar um ficheiro de manifesto de aplicação

Se a sua aplicação não tiver um ficheiro de manifesto de aplicação, terá de criá-lo.

Para criar um ficheiro de manifesto de aplicação:

  1. Utilize o esquema de manifesto da aplicação de exemplo para criar um ficheiro de .json.
  2. Salve-o na raiz da pasta do seu projeto como manifest.json.

Eis um exemplo do esquema de manifesto da aplicação para uma aplicação de separador com o SSO ativado:

Observação

O conteúdo de exemplo de manifesto de aplicação apresentado aqui destina-se apenas a uma aplicação de separador. Utiliza valores de exemplo para URI de subdomínio. Para obter mais informações, veja Exemplo de esquema de manifesto de aplicação.

{ 
"$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