Compartir a través de


Manifiesto de la aplicación

El manifiesto de aplicación (anteriormente denominado manifiesto de aplicación de Teams) describe cómo se integra la aplicación en el producto de Microsoft Teams. El manifiesto de la aplicación debe ajustarse al esquema hospedado en https://developer.microsoft.com/json-schemas/teams/v1.19/MicrosoftTeams.schema.json. Se admiten las versiones anteriores 1.0, 1.1,...,1.17 y la versión actual es 1.19 (con "v1.x" en la dirección URL). La versión 1.18 no está disponible. Para obtener más información sobre los cambios realizados en cada versión, consulte Registro de cambios de manifiesto de aplicación y para versiones anteriores, consulte Versiones de manifiesto de aplicación.

En la tabla siguiente se enumeran las versiones de manifiesto de aplicación y versión de TeamsJS según diferentes escenarios de aplicación:

Tipo de aplicación Versión de TeamsJS Versión del manifiesto de la aplicación Pasos siguientes
Aplicaciones de Teams extendidas en Outlook y Microsoft 365 TeamsJS v.2.19.0 o posterior v.1.13 o posterior Extender una aplicación de Teams para que se ejecute en Microsoft 365 o Crear una nueva aplicación de Microsoft 365
Aplicaciones existentes solo para Teams Actualización a TeamsJS v.2.19.0 siempre que sea posible (la versión 1.12 sigue siendo compatible*) 1.12 Compatibilidad con versiones anteriores de TeamsJS y Actualizar a TeamsJS v.2.0
Nuevas aplicaciones solo para Teams TeamsJS v.2.19.0 o posterior 1.12 Crear una nueva aplicación de Teams con el Kit de herramientas de Teams

* Use la versión más reciente de TeamsJS (v.2.19.0 o posterior) siempre que sea posible, para aprovechar las mejoras más recientes y la compatibilidad con nuevas características, incluidas las aplicaciones solo de Teams. TeamsJS v.1.12 sigue siendo compatible, pero no se agregan nuevas características ni mejoras. De lo contrario, los esquemas 1.12 y 1.13 son los mismos. Para obtener más información, consulte Biblioteca teamsJS.

Nota:

Si la aplicación de Teams usa la versión 1.13 o posterior del manifiesto de la aplicación, asegúrese de que la aplicación cumple los criterios para ampliar la aplicación para que se ejecute en Microsoft 365 o Outlook.

A continuación se muestra el esquema de manifiesto de aplicación de ejemplo:

Manifiesto de aplicación de ejemplo

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

El esquema define las siguientes propiedades:

$schema

Opcional, pero recomendado: cadena

Dirección URL de https:// que hace referencia al esquema JSON para el manifiesto de la aplicación.

manifestVersion

Obligatorio : cadena

Versión del esquema de manifiesto de aplicación que usa este manifiesto. Use 1.13 para habilitar la compatibilidad con aplicaciones de Teams en outlook y aplicaciones de Microsoft 365; use 1.12 (o versiones anteriores) para aplicaciones solo de Teams.

version

Obligatorio : cadena

La versión de una aplicación específica. Al actualizar algo en el manifiesto de la aplicación, la versión también debe incrementarse. De este modo, cuando se instala el nuevo manifiesto de aplicación, sobrescribe el existente y el usuario recibe la nueva funcionalidad. Cuando esta aplicación se envió a microsoft Teams Store, el nuevo manifiesto de aplicación debe volver a enviarse y volver a validarse. Los usuarios de la aplicación reciben automáticamente el nuevo manifiesto de aplicación actualizado en pocas horas después de que se apruebe el manifiesto de la aplicación.

Si la aplicación solicita un cambio de permisos de acceso, se pide a los usuarios que actualicen y vuelvan a dar los permisos a la aplicación.

La versión de esta cadena debe seguir el estándar de SemVer (MAJOR.MINOR.PATCH).

Nota:

Si la aplicación incluye un complemento de Office, cada segmento de la cadena de versión se limita a un máximo de cinco dígitos. No se admiten las extensiones de cadena de versión preliminar y de metadatos del estándar semver.

Id.

Obligatorio : identificador de aplicación de Microsoft

El id. es un identificador único generado por Microsoft para la aplicación. El formato del identificador es GUID. Usted tiene un id. si su bot está registrado a través de Microsoft Bot Framework. Usted tiene un id. si la aplicación web de la pestaña ya inicia sesión con Microsoft. Debe escribir el identificador aquí. De lo contrario, debe generar un nuevo id. en el portal de registro de aplicación de Microsoft. Use el mismo id. si agrega un bot.

El identificador almacenado en el Centro de Administración de Teams es el identificador de aplicación externa y es visible como ExternalID en los seguimientos.

Nota:

Si va a enviar una actualización a la aplicación existente en AppSource, el identificador del manifiesto de la aplicación no se debe modificar.

developer

Requerido : objeto

Especifica información sobre su empresa. En el caso de las aplicaciones enviadas a la Tienda Teams, estos valores deben coincidir con la información de la descripción de la Tienda Teams. Para obtener más información, consulte las directrices de publicación de la Tienda Teams. El nombre del desarrollador ayuda a mejorar la detectabilidad de la aplicación en la Tienda Teams.

Nombre Tipo Tamaño máximo Necesario Descripción
name Cadena 32 caracteres ✔️ Nombre para mostrar del desarrollador.
websiteUrl Cadena 2048 caracteres ✔️ La dirección URL https:// al sitio web del desarrollador. Este vínculo debe llevar a los usuarios a la página de aterrizaje específica de su empresa o producto.
privacyUrl Cadena 2048 caracteres ✔️ La dirección URL https:// a la directiva de privacidad del desarrollador.
termsOfUseUrl Cadena 2048 caracteres ✔️ La https:// dirección URL a las condiciones de uso del desarrollador.
mpnId Cadena 10 caracteres Opcional El identificador del programa de partners en la nube de Microsoft (anteriormente conocido como identificador de Microsoft Partner Network (MPN) que identifica la organización asociada que crea la aplicación.

name

Requerido : objeto

El nombre de la experiencia de la aplicación, que se muestra a los usuarios en la experiencia de Teams. Para las aplicaciones enviadas a AppSource, estos valores deben coincidir con la información de la entrada de AppSource. Los valores de short y full deben ser diferentes. El nombre de la aplicación ayuda a mejorar la detectabilidad de la aplicación en la Tienda Teams.

Nombre Tipo Tamaño máximo Necesario Descripción
short Cadena 30 caracteres ✔️ El nombre corto para mostrar de la aplicación. Use short la propiedad donde el espacio esté limitado, como el encabezado de la aplicación.
full Cadena 100 caracteres ✔️ Nombre completo de la aplicación, que se usa si el nombre completo de la aplicación supera los 30 caracteres. Use full la propiedad donde haya más espacio, como el catálogo de aplicaciones o la página de detalles de la aplicación.

Nota:

  • En el manifiesto de aplicación v1.17 o posterior, la full propiedad es necesaria y para el manifiesto de aplicación v1.16 o anterior no es necesaria.
  • La short propiedad se usa en todas las superficies de la interfaz de usuario.

description

Requerido : objeto

Describe la aplicación a los usuarios. Para las aplicaciones enviadas a AppSource, estos valores deben coincidir con la información de la entrada de AppSource. La descripción de la aplicación ayuda a mejorar la detectabilidad de la aplicación en la Tienda Teams.

Asegúrese de que la descripción describe su experiencia y ayuda a los clientes potenciales a comprender lo que hace su experiencia. Debe anotar en la descripción completa si se requiere una cuenta externa para su uso. Los valores de short y full deben ser diferentes. La descripción breve no se puede repetir dentro de la descripción larga y no debe incluir ningún otro nombre de aplicación.

Nombre Tipo Tamaño máximo Necesario Descripción
short Cadena 80 caracteres ✔️ Una breve descripción de la experiencia de la aplicación, que se usa cuando el espacio es limitado.
full Cadena 4000 caracteres ✔️ La descripción completa de la aplicación.

localizationInfo

Opcional : objeto

Permite la especificación de un idioma predeterminado y punteros a archivos de idioma adicionales. Consulte localización.

Nombre Tipo Tamaño máximo Necesario Descripción
defaultLanguageTag Cadena ✔️ Etiqueta de idioma para las cadenas de este archivo de manifiesto de aplicación de nivel superior. El valor predeterminado es en-us.
defaultLanguageFile Cadena 2048 caracteres Ruta de acceso de archivo relativa al archivo .json que contiene las cadenas. Si no se especifica, las cadenas se toman directamente del archivo de manifiesto de la aplicación. Se requiere un archivo de idioma predeterminado para los agentes de Copilot que admiten varios idiomas.

localizationInfo.additionalLanguages

Matriz de objetos, cada uno con las siguientes propiedades para especificar traducciones de idioma adicionales.

Nombre Tipo Tamaño máximo Necesario Descripción
languageTag Cadena ✔️ Etiqueta de idioma de las cadenas del archivo proporcionado. Por ejemplo: es
file Cadena 2048 caracteres ✔️ Ruta de acceso de archivo relativa al archivo .json que contiene las cadenas traducidas.

iconos

Requerido : objeto

Iconos usados en la aplicación Teams. Los archivos de icono deben incluirse como parte del paquete de carga. Para obtener más información, consulte Iconos.

Nombre Tipo Tamaño máximo Necesario Descripción
outline Cadena 32 por 32 píxeles ✔️ Ruta de acceso de archivo relativa a un icono de esquema PNG transparente de 32x32. El color del borde debe ser blanco.
color Cadena 192 por 192 píxeles ✔️ Ruta de acceso de archivo relativa a un icono PNG 192x192 de color completo.

accentColor

Requerido : código de color hexadecimal HTML

Color que se va a usar y como fondo para los iconos de color.

El valor debe ser un código de color HTML válido que empiece por "#", como por ejemplo #4464ee. Para obtener más información, vea accentColor.

copilotAgents

Opcional : objeto

Define uno o varios agentes para Microsoft 365 Copilot. Los agentes declarativos son personalizaciones de Microsoft 365 Copilot que se ejecutan en sus mismos modelos de orquestador y base.

Nombre Tipo Tamaño máximo Necesario Descripción
declarativeAgents Matriz de objetos 1 ✔️ Matriz de objetos que definen cada uno un agente declarativo.

declarativeAgents

Representa una personalización de Microsoft 365 Copilot, tal como se define en su archivo de manifiesto.

Nombre Tipo Tamaño máximo Necesario Descripción
id Cadena ✔️ Identificador único del agente. Cuando se usa Microsoft Copilot Studio para compilar agentes, se genera automáticamente. De lo contrario, asigne manualmente el valor según sus propias convenciones o preferencias.
file Cadena 2048 caracteres ✔️ Ruta de acceso relativa del archivo dentro del paquete de la aplicación al archivo de manifiesto del agente declarativo .

configurableTabs

Opcional : matriz

Se usa cuando la experiencia de la aplicación tiene una experiencia de pestaña de canal de equipo que requiere una configuración adicional antes de agregarla. Las pestañas configurables solo se admiten en los ámbitos team y groupChat y se pueden configurar las mismas pestañas varias veces. Sin embargo, solo puede definirlo en el manifiesto de la aplicación una vez.

Nombre Tipo Tamaño máximo Necesario Descripción
configurationUrl Cadena 2048 caracteres ✔️ Dirección URL de https:// que se va a usar al configurar la pestaña.
scopes Matriz de enumeraciones 2 ✔️ Las pestañas configurables solo admiten los team ámbitos y groupChat .
canUpdateConfiguration Booleano Valor que indica si el usuario puede actualizar una instancia de la configuración de la pestaña tras su creación.
Valor predeterminado: true
meetingSurfaces Matriz de enumeraciones 2 Cojunto de ámbitos meetingSurfaceItem donde se admite una pestaña.
Valores predeterminados: sidePanel, stage
context Matriz de enumeraciones 8 Cojunto de ámbitos contextItem donde se admite una pestaña. Valor aceptado: [personalTab, channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingSidePanel, meetingStage].
sharePointPreviewImage Cadena 2048 caracteres Una ruta de acceso de archivo relativa a una imagen de vista previa de pestaña para su uso en SharePoint. Tamaño 1024x768.
supportedSharePointHosts Matriz de enumeraciones 2 Define cómo está disponible la pestaña en SharePoint. Las opciones son sharePointFullPage y sharePointWebPart.

staticTabs

Opcional : matriz

Define un conjunto de pestañas que se pueden anclar de forma predeterminada, sin que el usuario las agregue manualmente. Las pestañas estáticas declaradas en el ámbito personal siempre se anclan a la experiencia personal de la aplicación. Sin embargo, las pestañas ancladas se pueden reordenar agregando los detalles de la pestaña en el mismo orden deseado. Para obtener más información, vea reordenar las pestañas personales estáticas.

Esta propiedad también permite establecer la funcionalidad de aterrizaje predeterminada para una aplicación que admite las funcionalidades de tabulación y bot en el ámbito personal. Para obtener más información, consulte Configuración de la funcionalidad de aterrizaje predeterminada.

Este elemento es una matriz (con un máximo de 16 elementos) y todos los elementos de tipo object. Este bloque solo es necesario para las soluciones que proporcionan una solución de pestaña estática.

Nombre Tipo Tamaño máximo Necesario Descripción
entityId String 64 caracteres ✔️ Un identificador único de la entidad que la pestaña muestra.
name Cadena 128 caracteres Nombre para mostrar de la pestaña.
contentUrl Cadena 2048 caracteres La https:// dirección URL que apunta a la interfaz de usuario de entidad que se mostrará en el lienzo de Teams.
contentBotId Cadena 128 caracteres El identificador de aplicación de Microsoft especificado para el bot en el portal de Bot Framework.
websiteUrl Cadena 2048 caracteres La dirección URL de https:// a la que apuntar si un usuario opta por la vista en un explorador.
searchUrl Cadena 2048 caracteres La dirección URL de https:// a la que apuntar para las consultas de búsqueda de un usuario.
scopes Matriz de enumeraciones 3 ✔️ Especifica si la pestaña ofrece una experiencia en el contexto de un canal de un equipo, o una experiencia con ámbito para un chat de grupo o usuario individual. Las pestañas estáticas solo admiten personal el ámbito.
context Matriz de enumeraciones 8 Conjunto de contextItem contextos en los que se admite una pestaña.
Valores aceptados: personalTab, channelTab, , privateChatTab, meetingDetailsTabmeetingChatTab, meetingStage, , teamLevelAppmeetingSidepanel.
Valores predeterminados: , , , , meetingDetailsTabmeetingChatTab. privateChatTabchannelTabpersonalTab

Nota:

  • Los groupChat ámbitos y team solo se admiten en la versión preliminar del desarrollador público.
  • El teamLevelApp contexto solo está dedicado a los inquilinos de Education.
  • La searchUrl característica no está disponible para los desarrolladores de terceros.
  • Si las pestañas requieren información dependiente del contexto para mostrar contenido relevante o para iniciar un flujo de autenticación, consulte para obtener más información Obtener contexto para la pestaña de Microsoft Teams.

bots

Opcional : matriz

Define una solución de bot, junto con información opcional, como las propiedades de comando predeterminadas.

El elemento es una matriz (máximo de un solo elemento, solo se permite un bot por aplicación) con todos los elementos del tipo object. Este bloque solo es necesario para las soluciones que proporcionan una experiencia de bot.

Nombre Tipo Tamaño máximo Necesario Descripción
botId Cadena ✔️ El ID. de aplicación de Microsoft único para el bot, registrado con Bot Framework. El id. puede ser el mismo que el id. general de la aplicación.
scopes Matriz de enumeraciones 3 ✔️ Especifica si el bot ofrece una experiencia en el contexto de un canal en un team, en un chat de grupo (groupChat) o una experiencia específica para un solo usuario (personal). Estas opciones no son exclusivas.
needsChannelSelector Booleano Describe si el bot usa o no usa una sugerencia del usuario para agregar el bot a un canal específico.
Valor predeterminado: false
isNotificationOnly Booleano Indica si un bot es un bot unidireccional de solo notificación o un bot de conversación.
Valor predeterminado: false
supportsFiles Booleano Indica si el bot es compatible con la capacidad para cargar y descargar archivos en chat personal.
Valor predeterminado: false
supportsCalling Booleano Valor que indica dónde admite llamadas de audio un bot. IMPORTANTE: Esta propiedad es experimental. Las propiedades experimentales pueden estar incompletas y pueden experimentar cambios antes de que estén totalmente disponibles. La propiedad se proporciona solo con fines de prueba y exploración y no se debe usar en aplicaciones de producción.
Valor predeterminado: false
supportsVideo Booleano Valor que indica dónde admite llamadas de vídeo un bot. IMPORTANTE: Esta propiedad es experimental. Las propiedades experimentales pueden estar incompletas y pueden experimentar cambios antes de que estén totalmente disponibles. La propiedad se proporciona solo con fines de prueba y exploración y no se debe usar en aplicaciones de producción.
Valor predeterminado: false

bots.configuration

Opcional : objeto

Nombre Tipo Tamaño máximo Necesario Descripción
team.fetchTask Booleano ✔️ Valor booleano que indica si debe capturar el cuadro de diálogo (denominado módulo de tareas en TeamsJS v1.x) dinámicamente.
Valor predeterminado: false
team.taskInfo Objeto ✔️ Cuadro de diálogo que se va a precargar cuando se usa un bot
team.taskInfo.title String 64 caracteres ✔️ Título del cuadro de diálogo inicial.
team.taskInfo.width Cadena 16 caracteres El ancho del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large, mediumo small.
team.taskInfo.height Cadena 16 caracteres El alto del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large, mediumo small.
team.taskInfo.url Cadena 2048 caracteres Dirección URL de la vista web inicial.
groupChat.fetchTask Booleano ✔️ Valor booleano que indica si debe capturar el cuadro de diálogo dinámicamente.
Valor predeterminado: false
groupChat.taskInfo Objeto Cuadro de diálogo que se iniciará cuando la tarea de captura se establezca en false.
Valor predeterminado: false
groupChat.taskInfo.title String 64 caracteres ✔️ Título del cuadro de diálogo inicial.
groupChat.taskInfo.width Cadena 16 El ancho del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large, mediumo small.
groupChat.taskInfo.height Cadena 16 El alto del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large, mediumo small.
groupChat.taskInfo.url Cadena 2048 caracteres Dirección URL de la vista web inicial.

bots.commandLists

Opcional : matriz

Lista de comandos que el bot puede recomendar a los usuarios. El objeto es una matriz (máximo de tres elementos) con todos los elementos de tipo object; debe definir una lista de comandos independiente para cada ámbito que admita el bot. Para obtener más información, consulte Menús de bot.

Nombre Tipo Tamaño máximo Necesario Descripción
scopes Matriz de enumeraciones 3 ✔️ Especifica el ámbito para el que la lista de comandos es válida. Las opciones son team, personal y groupChat.
commands Matriz de objetos 10 ✔️ Matriz de comandos que admite el bot.

Nota:

El cliente móvil de Teams no admite la aplicación de bot cuando no hay ningún valor en la commandLists propiedad.

bots.commandLists.commands

Requerido : matriz

Nombre Tipo Tamaño máximo Necesario Descripción
title Cadena 32 ✔️ Nombre del comando del bot.
description Cadena 128 caracteres ✔️ Una descripción del texto o un ejemplo sencillos de la sintaxis del comando y sus argumentos.

conectores

Opcional : matriz

El connectors bloque define una tarjeta de conector para Grupos de Microsoft 365 para la aplicación.

El objeto es una matriz (con un máximo de un elemento) y todos los elementos de tipo object. Este bloque solo es necesario para las soluciones que proporcionan un conector.

Nombre Tipo Tamaño máximo Necesario Descripción
configurationUrl Cadena 2048 caracteres ✔️ Dirección URL de https:// que se va a usar al configurar el conector mediante la experiencia de configuración insertada.
scopes Matriz de enumeraciones 1 ✔️ Especifica si el conector ofrece una experiencia en el contexto de un canal en un team o una experiencia específica para un solo usuario (personal). Solo se admite el team ámbito.
connectorId String 64 caracteres ✔️ Un identificador único del conector que coincide con su identificador en el Panel de desarrolladores de conectores.

composeExtensions

Opcional : matriz

Define una extensión de mensajería para la aplicación.

Nota:

El nombre de la característica se cambió de "extensión de redacción" a "extensión de mensaje" en noviembre de 2017, pero el nombre del manifiesto de la aplicación sigue siendo el mismo para que las extensiones existentes sigan funcionando.

El elemento es una matriz (máximo de un elemento) con todos los elementos de tipo object. Este bloque solo es necesario para las soluciones que proporcionan una extensión de mensajería.

Nombre Tipo Tamaño máximo Obligatorio Descripción
botId Cadena El id. único de la aplicación de Microsoft para el bot que respalda la extensión de mensajería, tal como está registrado con el Bot Framework. El id. puede ser el mismo que el id. de aplicación general.
composeExtensionType Cadena ✔️ Tipo de la extensión de redacción. Los valores de enumeración son botBased y apiBased.
authorization Objeto 2 Información relacionada con la autorización de la extensión de mensaje basada en API.
authorization.authType Cadena Enumeración de posibles tipos de autorización. Los valores admitidos son none, apiSecretServiceAuthy microsoftEntra.
authorization.microsoftEntraConfiguration Objeto Detalles de captura de objetos necesarios para realizar el flujo de autenticación de microsoftEntra. Solo se aplica cuando el tipo de autenticación es microsoftEntra.
authorization.microsoftEntraConfiguration.supportsSingleSignOn Booleano Valor que indica si el inicio de sesión único está configurado para la aplicación.
authorization.apiSecretServiceAuthConfiguration Objeto Detalles de captura de objetos necesarios para realizar la autenticación del servicio. Solo se aplica cuando el tipo de autenticación es apiSecretServiceAuth.
authorization.apiSecretServiceAuthConfiguration.apiSecretRegistrationId Cadena 128 caracteres Id. de registro devuelto cuando el desarrollador envía la clave de API a través del Portal para desarrolladores.
apiSpecificationFile Cadena 2048 caracteres Ruta de acceso de archivo relativa al archivo de especificación de API en el paquete de manifiesto.
canUpdateConfiguration Booleano Valor que indica si el usuario puede actualizar la configuración de una extensión de mensaje.
Valor predeterminado: false
commands Matriz de objetos 10 ✔️ Matriz de comandos que admite la extensión de mensajería.
messageHandlers Matriz de objetos 5 Una lista de controladores que permiten invocar aplicaciones cuando se cumplen determinadas condiciones.
messageHandlers.type Cadena Tipo de controlador de mensajes. Debe ser link.
messageHandlers.value.domains Matriz de cadenas 2048 caracteres Matriz de dominios para los que se puede registrar el controlador de mensajes de vínculo.
messageHandlers.value.supportsAnonymizedPayloads Booleano Valor booleano que indica si el controlador de mensajes de vínculo de la aplicación admite el flujo de invocación anónimo.
Valor predeterminado: false

composeExtensions.commands

Su extensión de mensajería debe declarar uno o más comandos con un máximo de 10 comandos. Cada comando aparece en Microsoft Teams como una posible interacción desde el punto de entrada basado en la interfaz de usuario.

Cada elemento de comando es un objeto con la estructura siguiente:

Nombre Tipo Tamaño máximo Necesario Descripción
id String 64 caracteres ✔️ Id. para el comando.
type String Tipo de comando. Uno de query o action.
Valor predeterminado: query
samplePrompts Matriz 5 Propiedad usada por Microsoft 365 Copilot para mostrar al usuario los mensajes admitidos por el complemento.
samplePrompts.text Cadena 128 caracteres ✔️ Contenido del símbolo del sistema de ejemplo.
apiResponseRenderingTemplateFile Cadena 2048 caracteres Ruta de acceso de archivo relativa para el archivo de plantilla de representación de respuesta de api que se usa para dar formato a la respuesta JSON de la API del desarrollador a la respuesta de tarjeta adaptable.
context Matriz de cadenas 3 Define desde dónde se puede invocar la extensión de mensaje. Cualquier combinación de compose,commandBox,message.
Valores predeterminados: compose, commandBox
title Cadena 32 caracteres ✔️ Nombre del comando fácil de usar.
description Cadena 128 caracteres Descripción que aparece a los usuarios para indicar el propósito de este comando.
semanticDescription Cadena 5000 caracteres Descripción semántica del comando para su consumo Microsoft 365 Copilot mediante modelos de lenguaje grande (LLM).
initialRun Booleano Un valor booleano indica si el comando se ejecuta inicialmente sin parámetros.
Valor predeterminado: false
fetchTask Booleano Valor booleano que indica si debe capturar el cuadro de diálogo (denominado módulo de tareas en TeamsJS v1.x) dinámicamente.
Valor predeterminado: false
taskInfo Objeto Especifique el cuadro de diálogo que se va a precargar al usar un comando de extensión de mensaje.
taskInfo.title String 64 caracteres Título del cuadro de diálogo inicial.
taskInfo.width Cadena Ancho del cuadro de diálogo: un número en píxeles o valores de diseño predeterminados como large, mediumo small.
taskInfo.height Cadena Alto del cuadro de diálogo: un número en píxeles o valores de diseño predeterminados como large, mediumo small.
taskInfo.url Cadena Dirección URL de la vista web inicial.
parameters Matriz de objetos 5 Lista de parámetros que toma el comando.
parameters.name String 64 caracteres ✔️ Nombre del parámetro tal como aparece en el cliente. El nombre del parámetro se incluye en la solicitud de usuario.
parameters.title Cadena 32 caracteres ✔️ Título fácil de usar para el parámetro.
parameters.description Cadena 128 caracteres Cadena fácil de usar que describe el propósito de este parámetro.
parameters.semanticDescription Cadena 2000 caracteres Descripción semántica del parámetro para el consumo Microsoft 365 Copilot mediante modelos de lenguaje grande (LLM).
parameters.value Cadena 512 caracteres Valor inicial del parámetro. No se admite el valor.
parameters.inputType Cadena Define el tipo de control que se muestra en un cuadro de diálogo para fetchTask: false. El valor de entrada solo puede ser uno de text, textarea, number, date, time, , toggle, choiceset.
Valor predeterminado: text
parameters.choices Matriz de objetos 10 elementos Las opciones de elección para el choiceset. Use solo cuando parameters.inputType sea choiceset.
parameters.choices.title Cadena 128 caracteres ✔️ Título de la elección.
parameters.choices.value Cadena 512 caracteres ✔️ Valor de la elección.

permissions

Opcional : matriz de cadenas

Matriz de string, que especifica qué permisos solicita la aplicación, lo que permite a los usuarios finales saber cómo funciona la extensión. Las siguientes opciones no son exclusivas:

  • identity Requiere información de identidad de usuario.
  • messageTeamMembers Requiere permiso para enviar mensajes directos a los miembros del equipo.

Al cambiar estos permisos durante la actualización de la aplicación, los usuarios repiten el proceso de consentimiento después de ejecutar la aplicación actualizada. Para obtener más información, consulte Actualizar la aplicación.

Nota:

Actualmente, los permisos están en desuso.

devicePermissions

Opcional : matriz de cadenas

Proporciona las características nativas en el dispositivo de un usuario al que la aplicación solicita acceso. Las opciones son:

  • geolocation
  • media
  • notifications
  • midi
  • openExternal

validDomains

Opcional (excepto Obligatorio cuando se indica): matriz de cadenas

Una lista de dominios válidos para sitios web que la aplicación espera cargar en el cliente de Teams. Las listas de dominios pueden incluir caracteres comodín, por ejemplo *.example.com. El dominio válido coincide exactamente con un segmento del dominio; si necesita que coincida con a.b.example.com entonces use *.*.example.com. Si la configuración de pestañas o la interfaz de usuario de contenido navega a cualquier otro dominio que no sea la configuración de pestañas, ese dominio debe especificarse aquí.

No incluya los dominios de proveedores de identidades que desea admitir en la aplicación. Por ejemplo, para autenticarse mediante un identificador de Google, es necesario redirigir a accounts.google.com, pero no debe incluir accounts.google.com en validDomains[].

Las aplicaciones de Teams que requieren sus propias direcciones URL de SharePoint para funcionar bien, incluyen " {teamsitedomain}" en su lista de dominios válidos.

Importante

No agregue dominios que estén fuera del control, ya sea directamente o mediante caracteres comodín (). Por ejemplo,.yoursite.com es válido, pero *.onmicrosoft.com no es válido, ya que no está bajo su control.

Cuando se usan caracteres comodín, se aplican las reglas siguientes:

  • Si un segmento de subdominio incluye un carácter comodín, debe ser el único carácter del segmento.
  • Cualquier segmento anterior a un segmento con caracteres comodín también debe ser un segmento comodín.

Por ejemplo, *.*.domain.com es válido, pero foo.*.myteam.domain.com no es válido.

El objeto es una matriz con todos los elementos del tipo string. El elemento máximo del objeto es 16 y la longitud máxima es de 2048 caracteres.

WebApplicationInfo

Nota:

La webApplicationInfo propiedad está relacionada con un solo dominio y no se admite para varios dominios. Por lo tanto, si tiene dos aplicaciones hospedadas en dominios diferentes, debe crear manifiestos de aplicación independientes para cada aplicación.

Opcional : objeto

Proporcione su Microsoft Entra id. de aplicación y la información de Microsoft Graph para ayudar a los usuarios a iniciar sesión sin problemas en la aplicación. Si la aplicación está registrada en Microsoft Entra ID, debe proporcionar el identificador de aplicación. Los administradores pueden revisar fácilmente los permisos y conceder consentimiento en el Centro de administración de Teams.

Nombre Tipo Tamaño máximo Necesario Descripción
id Cadena ✔️ Microsoft Entra identificador de aplicación de la aplicación. Este identificador debe ser un GUID.
resource Cadena 2048 caracteres Dirección URL de recurso de la aplicación para adquirir el token de autenticación para SSO.
NOTA: Si no usa el inicio de sesión único, asegúrese de escribir un valor de cadena ficticio en este campo en el manifiesto de la aplicación, por ejemplo, https://example para evitar una respuesta de error. El valor de cadena de dirección URL ficticia no debe contener dominios ni direcciones URL que no estén en el control, ya sea directamente o mediante caracteres comodín. Por ejemplo, yourapp.onmicrosoft.com es válido, pero *.onmicrosoft.com no es válido. Los dominios de nivel superior están prohibidos, por ejemplo, *.com, *.org.

graphConnector

Opcional : objeto

Especifique la configuración del conector de Graph de la aplicación. Si está presente, también debe especificarse webApplicationInfo.id .

Nombre Tipo Tamaño máximo Necesario Descripción
notificationUrl Cadena 2048 caracteres ✔️ Dirección URL a la que se deben enviar las notificaciones del conector de Graph para la aplicación.

showLoadingIndicator

Opcional : booleano

Indica si se va a mostrar o no el indicador de carga cuando se carga una aplicación o pestaña. El valor predeterminado es false.

Nota:

  • Si selecciona showLoadingIndicator como true en el manifiesto de la aplicación, para cargar la página correctamente, modifique las páginas de contenido de las pestañas y diálogos como se describe en Mostrar un documento de indicador de carga nativo .
  • Si no modifica las páginas de contenido de la pestaña, la aplicación de pestaña no se carga y muestra el error There was a problem reaching this app.

IsFullScreen

Opcional : booleano

Indica si una aplicación personal se representa sin una barra de encabezado de pestaña (lo que significa el modo de pantalla completa). Valor predeterminado: false

Nota:

  • isFullScreen solo funciona para las aplicaciones publicadas en su organización. Las aplicaciones de terceros cargadas y publicadas no pueden usar esta propiedad (se omite).

  • El isFullScreen=true parámetro elimina la barra de encabezado y el título proporcionados por Teams de las aplicaciones y los diálogos personales. Sin embargo, se recomienda no usar el isFullScreen=true parámetro con aplicaciones de bot de chat.

activities

Opcional : objeto

Defina las propiedades que usa la aplicación para publicar una fuente de actividades del usuario.

Nombre Tipo Tamaño máximo Necesario Descripción
activityTypes Matriz de objetos 128 elementos Proporciona los tipos de actividades que la aplicación puede publicar en una fuente de actividades de los usuarios.

activities.activityTypes

Nombre Tipo Tamaño máximo Necesario Descripción
type String 64 caracteres ✔️ El tipo de notificación.
description Cadena 128 caracteres ✔️ Una breve descripción de la notificación.
templateText Cadena 128 caracteres ✔️ P. ej.: " {actor} creó la tarea {taskId} para usted"
{
   "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 : cadena

Especifica el ámbito de instalación definido para esta aplicación de forma predeterminada. El ámbito definido es la opción que se muestra en el botón cuando un usuario intenta agregar la aplicación. Las opciones son:

  • personal
  • team
  • groupChat
  • meetings

defaultGroupCapability

Opcional : objeto

Cuando se selecciona un ámbito de instalación de grupo, define la funcionalidad predeterminada cuando el usuario instala la aplicación.

Nombre Tipo Tamaño máximo Necesario Descripción
team Cadena Cuando el ámbito de instalación seleccionado es team, este campo especifica la funcionalidad predeterminada disponible. Opciones: tab, bot o connector.
groupchat Cadena Cuando el ámbito de instalación seleccionado es groupChat, este campo especifica la funcionalidad predeterminada disponible. Opciones: tab, bot o connector.
meetings Cadena Cuando el ámbito de instalación seleccionado es meetings, este campo especifica la funcionalidad predeterminada disponible. Opciones: tab, bot o connector.

configurableProperties

Opcional : matriz

El bloque configurableProperties define las propiedades de la aplicación que los administradores de Teams pueden personalizar. Para más información, consulte Habilitar la personalización de aplicaciones. La característica de personalización de aplicaciones no se admite en aplicaciones personalizadas o aplicaciones personalizadas creadas para su organización (aplicaciones LOB).

Nota:

Se debe definir una propiedad como mínimo. Puede definir un máximo de nueve propiedades en este bloque.

Puede definir cualquiera de las siguientes propiedades:

  • name: nombre para mostrar de la aplicación.
  • shortDescription: descripción breve de la aplicación.
  • longDescription: la descripción larga de la aplicación.
  • smallImageUrl: icono de esquema de la aplicación.
  • largeImageUrl: icono de color de la aplicación.
  • accentColor: el color que se va a usar y un fondo para los iconos de esquema.
  • developerUrl: dirección URL HTTPS del sitio web del desarrollador.
  • privacyUrl: dirección URL HTTPS de la directiva de privacidad del desarrollador.
  • termsOfUseUrl: dirección URL HTTPS de los términos de uso del desarrollador.

supportedChannelTypes

Opcional : matriz

Habilita la aplicación en canales no estándar. Si la aplicación admite un ámbito de equipo y se define esta propiedad, Teams habilita la aplicación en cada tipo de canal en consecuencia. La propiedad supportedChannelTypes solo admite sharedChannels y privateChannels.

Nota:

defaultBlockUntilAdminAction

Opcional : booleano

Cuando la propiedad defaultBlockUntilAdminAction se establece en true, la aplicación se oculta a los usuarios de forma predeterminada hasta que el administrador la permita. Si se establece en true, la aplicación se oculta para todos los inquilinos y usuarios finales. Los administradores de inquilinos pueden ver la aplicación en el Centro de administración de Teams y tomar medidas para permitir o bloquear la aplicación. El valor predeterminado es False. Para obtener más información sobre el bloque de aplicaciones predeterminado, consulte Bloquear aplicaciones de forma predeterminada para los usuarios hasta que un administrador lo apruebe.

publisherDocsUrl

Opcional : cadena

Tamaño máximo : 2048 caracteres

El valor del publisherDocsUrl parámetro es una dirección URL HTTPS segura para la página de documentación e información de la aplicación que los desarrolladores de aplicaciones deciden proporcionar. Los administradores de inquilinos obtienen documentación sobre la aplicación en esta dirección URL. El Centro de administración de Teams muestra la dirección URL en la página de detalles de la aplicación. La documentación puede incluir las instrucciones para que los administradores faciliten la adopción de aplicaciones y el lanzamiento de aplicaciones. En la documentación de la aplicación, también puede incluir instrucciones o información sobre la aplicación que sea útil para el administrador de inquilinos, los usuarios y otras partes interesadas de la empresa.

subscriptionOffer

Opcional : objeto

Especifica la oferta de SaaS asociada a la aplicación.

Nombre Tipo Tamaño máximo Necesario Descripción
offerId Cadena 2048 caracteres ✔️ Identificador único que incluye el identificador del publicador y el identificador de la oferta, que puede encontrar en Centro de partners. Debe dar formato a la cadena como publisherId.offerId.

meetingExtensionDefinition

Opcional : objeto

Especifique la definición de la extensión de reunión. Para obtener más información, vea escenas personalizadas del Modo conferencia en Teams

Nombre Tipo Tamaño máximo Necesario Descripción
scenes Matriz de objetos 5 elementos Escenas admitidas de la reunión.
supportsStreaming Boolean Valor que indica si una aplicación puede transmitir el contenido de audio y vídeo de la reunión a un punto de conexión del protocolo de reunión en tiempo real (RTMP).
Valor predeterminado: false
supportsAnonymousGuestUsers Booleano Valor que indica si una aplicación admite el acceso de usuarios anónimos.
Valor predeterminado: false

Nota:

La supportsAnonymousGuestUsers propiedad del esquema de manifiesto de aplicación v1.16 solo se admite en el nuevo cliente de Teams.

meetingExtensionDefinition.scenes

Nombre Tipo Tamaño máximo Necesario Descripción
id Cadena ✔️ Identificador único de la escena. Este identificador debe ser un GUID.
name Cadena 128 caracteres ✔️ Nombre de la escena.
file Cadena 2048 caracteres ✔️ Ruta de acceso relativa al archivo JSON de metadatos de las escenas.
preview Cadena 2048 caracteres ✔️ Ruta de acceso relativa del archivo al icono de vista previa PNG de las escenas.
maxAudience Entero 50 ✔️ Número máximo de audiencias admitidas en la escena.
seatsReservedForOrganizersOrPresenters Entero 50 ✔️ Número de puestos reservados para organizadores o moderadores.

Autorización

Opcional : objeto

Nota:

authorization solo se admite para la versión 1.12 o posterior del manifiesto de la aplicación.

Especifique y consolide la información relacionada con la autorización de la aplicación.

Nombre Tipo Tamaño máximo Necesario Descripción
permissions Object Lista de permisos que la aplicación necesita para funcionar.

authorization.permissions

Nombre Tipo Tamaño máximo Necesario Descripción
resourceSpecific Matriz de objetos 16 elementos Permisos que protege el acceso a los datos en el nivel de instancia de recursos.

authorization.permissions.resourceSpecific

Nombre Tipo Tamaño máximo Necesario Descripción
type Cadena ✔️ Tipo del permiso de consentimiento específico del recurso (RSC). Opciones: Application y Delegated.
name Cadena 128 caracteres ✔️ Nombre del permiso RSC. Para obtener más información, consulte Permisos de aplicación de RSC y permisos delegados de RSC.

Permisos de aplicación de RSC

Los permisos de aplicación permiten a la aplicación acceder a los datos sin que un usuario haya iniciado sesión. Para obtener información sobre los permisos de aplicación, consulte Permisos de RSC para Microsoft Graph y Microsoft BotSDK.

Permisos delegados de RSC

Los permisos delegados permiten a la aplicación acceder a los datos en nombre del usuario que ha iniciado sesión.

  • Permisos delegados de RSC para un equipo

    Nombre Descripción
    ChannelMeetingParticipant.Read.Group Permite que la aplicación lea la información de los participantes, incluidos el nombre, rol, identificador, horas de unión y salida de las reuniones de canal asociadas a este equipo, en nombre del usuario que ha iniciado sesión.
    ChannelMeetingIncomingAudio.Detect.Group Permite que la aplicación detecte el audio entrante en las reuniones de canal asociadas al equipo.
    ChannelMeetingActiveSpeaker.Read.Group Permite que la aplicación lea a los participantes que envían audio a las reuniones del canal asociadas con el equipo.
    ChannelMeetingAudioVideo.Stream.Group Permite que la aplicación transmita contenido de audio y vídeo desde las reuniones de canal asociadas al equipo.
    InAppPurchase.Allow.Group Permite que la aplicación muestre las ofertas de Marketplace a los usuarios del equipo y complete sus compras dentro de la aplicación, en nombre del usuario que ha iniciado sesión.
    ChannelMeetingStage.Write.Group Permite que la aplicación muestre contenido en la fase de reunión en las reuniones de canal asociadas al equipo, en nombre del usuario que ha iniciado sesión.
    LiveShareSession.ReadWrite.Group Permite a la aplicación crear y sincronizar sesiones de Live Share para el equipo y obtener información relacionada con el acceso, como el nombre y el rol, sobre la lista del equipo y las reuniones asociadas en nombre del usuario que ha iniciado sesión.
    MeetingParticipantReaction.Read.Group Permite a la aplicación leer las reacciones de los participantes en las reuniones de canal asociadas con el equipo.
  • Permisos delegados de RSC para chats o reuniones

    Nombre Descripción
    InAppPurchase.Allow.Chat Permite a la aplicación mostrar las ofertas de Marketplace a los usuarios en el chat, y cualquier reunión asociada, y completar sus compras dentro de la aplicación, en nombre del usuario que ha iniciado sesión.
    MeetingStage.Write.Chat Permite que la aplicación muestre contenido en la fase de reunión en las reuniones asociadas al chat, en nombre del usuario que ha iniciado sesión.
    OnlineMeetingParticipant.Read.Chat Permite que la aplicación lea la información de los participantes, incluidos el nombre, el rol, el identificador, las horas unidas y las horas izquierdas, de la reunión asociada al chat, en nombre del usuario que ha iniciado sesión.
    OnlineMeetingParticipant.ToggleIncomingAudio.Chat Permite a la aplicación alternar el audio entrante para los participantes en las reuniones asociadas al chat, en nombre del usuario que ha iniciado sesión.
    LiveShareSession.ReadWrite.Chat Permite a la aplicación crear y sincronizar sesiones de Live Share para el chat y obtener información relacionada con el acceso, como el nombre y el rol, sobre la lista del chat y las reuniones asociadas en nombre del usuario que ha iniciado sesión.
    MeetingParticipantReaction.Read.Chat Permite a la aplicación leer las reacciones de los participantes en las reuniones asociadas al chat.
    OnlineMeetingIncomingAudio.Detect.Chat Permite que la aplicación detecte cambios en el estado del audio entrante en las reuniones asociadas al chat, en nombre del usuario que ha iniciado sesión.
    OnlineMeetingActiveSpeaker.Read.Chat Permite que la aplicación lea a los participantes que envían audio a las reuniones asociadas al chat.
    OnlineMeetingAudioVideo.Stream.Chat Permite que la aplicación transmita contenido de audio y vídeo de las reuniones asociadas al chat.
  • Permisos delegados de RSC para los usuarios

    Nombre Descripción
    CameraStream.Read.User Permite que la aplicación lea la secuencia de cámara del usuario.
    InAppPurchase.Allow.User Permite que la aplicación muestre las ofertas de Marketplace del usuario y complete las compras del usuario dentro de la aplicación, en nombre del usuario que ha iniciado sesión.
    OutgoingVideoStream.Write.User Permite que la aplicación modifique el vídeo saliente del usuario.
    MicrophoneStream.Read.User Permite que la aplicación lea el flujo de micrófono del usuario.
    MeetingParticipantReaction.Read.User Permite que la aplicación lea las reacciones del usuario mientras participa en una reunión.

extensions

Opcional : objeto

La extensions propiedad especifica complementos de Outlook dentro de un manifiesto de aplicación y simplifica la distribución y adquisición en todo el ecosistema de Microsoft 365. Cada aplicación solo admite una extensión.

Nombre Tipo Tamaño máximo Necesario Descripción
requirements Object Especifica el conjunto de requisitos de cliente o host para la extensión.
runtimes Matriz 20 Configura el conjunto de tiempos de ejecución y acciones que puede usar cada punto de extensión. Para obtener más información, vea Runtimes in Office Add-ins.
ribbons Matriz 20 Define el punto de extensión de las cintas de opciones.
autoRunEvents Matriz 10 Define el punto de extensión de activación basado en eventos.
alternates Matriz 10 Especifica la relación con soluciones alternativas existentes de Microsoft 365. Se usa para ocultar o priorizar complementos del mismo publicador con funcionalidad superpuesta.
audienceClaimUrl Cadena 2048 caracteres Especifica la dirección URL de la extensión y se usa para validar los tokens de identidad de usuario de Exchange. Para obtener más información, consulte dentro del token de identidad de Exchange.

Para obtener más información, vea Manifiesto de complementos de Office para Microsoft 365.

extensions.requirements

El extensions.requirements objeto especifica los ámbitos, los factores de forma y los conjuntos de requisitos de la biblioteca javascript de Office que se deben admitir en el cliente de Office para que se instale el complemento. Los requisitos también se admiten en las propiedades secundarias "ribbon", "runtime", "alternates" y "autoRunEvents" para filtrar selectivamente algunas características del complemento. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365.

Nombre Tipo Tamaño máximo Necesario Descripción
capabilities Matriz 100 Identifica los conjuntos de requisitos.
capabilities.name Cadena ✔️ Identifica el nombre del conjunto de requisitos.
capabilities.minVersion Cadena Identifica la versión mínima del conjunto de requisitos.
capabilities.maxVersion Cadena Identifica la versión máxima del conjunto de requisitos.
scopes Matriz de enumeraciones 1 Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook).
Valor admitido: mail
formFactors Matriz de enumeraciones Identifica los factores de forma que admiten el complemento.
Valores admitidos: mobile, desktop

extensions.runtimes

Opcional : matriz

La extensions.runtimes matriz configura los conjuntos de tiempos de ejecución y las acciones que puede usar cada punto de extensión.

Nombre Tipo Tamaño máximo Necesario Descripción
id String 64 caracteres ✔️ Especifica el identificador del entorno de ejecución.
type Enumeración de cadena ✔️ Especifica el tipo de tiempo de ejecución. El valor de enumeración admitido para el entorno de ejecución basado en explorador es general.
code Objeto ✔️ Especifica la ubicación del código para el tiempo de ejecución. runtime.typeEn función de , los complementos pueden usar un archivo JavaScript o una página HTML con una etiqueta incrustada script que especifica la dirección URL de un archivo JavaScript. Ambas direcciones URL son necesarias en situaciones en las que es runtime.type incierto.
code.page Cadena 2048 caracteres ✔️ Especifica la dirección URL de la página web que contiene una etiqueta incrustada script , que especifica la dirección URL de un archivo JavaScript (que se va a cargar en un entorno de ejecución basado en explorador).
code.script Cadena 2048 caracteres Especifica la dirección URL del archivo JavaScript que se va a cargar en tiempo de ejecución de solo JavaScript.
lifetime Enumeración de cadena Especifica la duración del tiempo de ejecución. Los tiempos de ejecución con una short duración no conservan el estado de las ejecuciones mientras que los tiempos de ejecución con una long duración sí lo hacen. Para obtener más información, vea Runtimes in Office Add-ins.
Valor predeterminado: short
actions Matriz 20 Especifica el conjunto de acciones admitidas por el entorno de ejecución. Una acción ejecuta una función de JavaScript o abre una vista como un panel de tareas.
actions.id String 64 caracteres ✔️ Especifica el identificador de la acción, que se pasa al archivo de código.
actions.type Cadena ✔️ Especifica el tipo de acción. El executeFunction tipo ejecuta una función de JavaScript sin esperar a que finalice y el openPage tipo abre una página en una vista determinada.
actions.displayName String 64 caracteres Especifica el nombre para mostrar de la acción y no es la etiqueta de un botón o un elemento de menú que invoca la acción (que está configurada con tabs.groups.controls.label).
actions.pinnable Booleano Especifica que un panel de tareas admite el anclado, lo que provoca que el panel de tareas siga abierto aunque el usuario cambie la selección.
Valor predeterminado: false
actions.view String 64 caracteres Especifica la vista donde se debe abrir la página. Solo se usa cuando actions.type es openPage.
actions.multiselect Booleano Especifica si el usuario final puede seleccionar varios elementos, como varios mensajes de correo electrónico, y aplicar la acción a todos ellos.
Valor predeterminado: false
actions.supportsNoItemContext Booleano Permite que los complementos del panel de tareas se activen sin el panel de lectura habilitado o un mensaje seleccionado.
Valor predeterminado: false
requirements Objeto Especifica los ámbitos, formFactors y los conjuntos de requisitos de la biblioteca JavaScript de Office que se deben admitir en el cliente de Office para que el tiempo de ejecución se incluya en el complemento. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365.
requirements.capabilities Matriz Identifica los conjuntos de requisitos.
Opciones: name (obligatorio), minVersion, maxVersion
requirements.capabilities.name Cadena ✔️ Identifica el nombre del conjunto de requisitos.
requirements.capabilities.minVersion Cadena Identifica la versión mínima del conjunto de requisitos.
requirements.capabilities.maxVersion Cadena Identifica la versión máxima del conjunto de requisitos.
requirements.scopes Matriz de enumeraciones 1 Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook).
Valor admitido: mail
requirements.formFactors Matriz de enumeraciones Identifica los factores de forma que admiten el complemento.
Valores admitidos: mobile, desktop

Para usar extensions.runtimes, consulte creación de comandos de complemento,configuración del tiempo de ejecución para un panel de tareas y configuración del tiempo de ejecución para el comando de función.

extensions.ribbons

Opcional : matriz

La extensions.ribbons propiedad proporciona la capacidad de agregar comandos de complemento (botones y elementos de menú) a la cinta de opciones de la aplicación de Microsoft 365. La definición de la cinta de opciones se selecciona de la matriz en función de los requisitos y el primer orden.

Nombre Tipo Tamaño máximo Necesario Descripción
contexts Matriz 7 Especifica la ventana de aplicación de Microsoft 365 en la que la personalización de la cinta de opciones está disponible para el usuario. Cada elemento de la matriz es un miembro de una matriz de cadenas.
Valores admitidos: mailRead, mailCompose, meetingDetailsOrganizer, meetingDetailsAttendee, , onlineMeetingDetailsOrganizer, logEventMeetingDetailsAttendeedefault
requirements Objeto Especifica los ámbitos, formFactors y los conjuntos de requisitos de la biblioteca JavaScript de Office que se deben admitir en el cliente de Office para que aparezca la personalización de la cinta de opciones. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365.
requirements.capabilities Matriz Identifica los conjuntos de requisitos.
Opciones: name (obligatorio), minVersion, maxVersion
requirements.capabilities.name Cadena ✔️ Identifica el nombre del conjunto de requisitos.
requirements.capabilities.minVersion Cadena Identifica la versión mínima del conjunto de requisitos.
requirements.capabilities.maxVersion Cadena Identifica la versión máxima del conjunto de requisitos.
requirements.scopes Matriz de enumeraciones 1 Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook).
Valor admitido: mail
requirements.formFactors Matriz de enumeraciones Identifica los factores de forma que admiten el complemento.
Valores admitidos: mobile, desktop
tabs Matriz 20 ✔️ Configura las pestañas personalizadas en la cinta de opciones de la aplicación de Microsoft 365.
tabs.id String 64 caracteres Especifica el identificador de la pestaña dentro de la aplicación.
tabs.builtInTabId String 64 caracteres Especifica el identificador de una pestaña integrada de la cinta de Opciones de Office. Para obtener más información sobre los valores posibles, vea Buscar los identificadores de las pestañas integradas de la cinta de opciones de Office. Las únicas propiedades secundarias del objeto tab que se pueden combinar con esta son groups y customMobileRibbonGroups.
tabs.label String 64 caracteres Especifica el texto que se muestra para la pestaña. A pesar de la longitud máxima de 64 caracteres, para alinear correctamente la pestaña de la cinta de opciones, se recomienda limitar la etiqueta a 16 caracteres.
tabs.position Objeto Configura la posición de la pestaña personalizada con respecto a otras pestañas de la cinta de opciones.
tabs.position.builtInTabId String 64 caracteres ✔️ Especifica el identificador de la pestaña integrada en la que se debe colocar la pestaña personalizada junto a . Para obtener más información, vea Buscar los identificadores de controles y grupos de controles.
tabs.position.align Enumeración de cadena ✔️ Define la alineación de la pestaña personalizada con respecto a la pestaña integrada especificada.
Valores admitidos: after, before
tabs.groups Matriz 10 Define grupos de controles en una pestaña de cinta de opciones en un dispositivo que no es móvil. Para dispositivos móviles, consulte tabs.customMobileRibbonGroups.
tabs.groups.id String 64 caracteres Especifica el identificador del grupo de pestañas dentro de la aplicación. Debe ser diferente de cualquier identificador de grupo integrado en la aplicación de Microsoft 365 y en cualquier otro grupo personalizado.
tabs.groups.label String 64 caracteres Especifica el texto mostrado para el grupo. A pesar de la longitud máxima de 64 caracteres, para alinear correctamente la pestaña de la cinta de opciones, se recomienda limitar la etiqueta a 16 caracteres.
tabs.groups.icons Matriz 3 Especifica los iconos que se muestran para el grupo.
tabs.groups.icons.size Número ✔️ Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64.80.484032242016
Tamaños de imagen necesarios: 16, 32, 80.
tabs.groups.icons.url Cadena 2048 caracteres ✔️ Especifica la dirección URL absoluta del icono.
tabs.groups.controls Matriz Configura los botones y menús del grupo.
tabs.groups.controls.id String 64 caracteres ✔️ Especifica el identificador del control dentro de la aplicación. Debe ser diferente de cualquier identificador de control integrado en la aplicación de Microsoft 365 y cualquier otro control personalizado.
tabs.groups.controls.items Matriz Configura los elementos de un control de menú.
tabs.groups.controls.items.id Cadena ✔️ Especifica el identificador de un elemento de menú.
tabs.groups.controls.items.type Enumeración de cadena ✔️ Define el tipo de control del elemento de menú.
Valores admitidos: button
tabs.groups.controls.items.label String 64 caracteres ✔️ Especifica el texto mostrado para el elemento de menú.
tabs.groups.controls.items.icons Matriz Configura los iconos del elemento de menú.
tabs.groups.controls.items.icons.size Número ✔️ Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64.80.484032242016
Tamaños de imagen necesarios: 16, 32, 80.
tabs.groups.controls.items.icons.url URL ✔️ Especifica la dirección URL absoluta del icono.
tabs.groups.controls.items.supertip ✔️ Configura una superinquitación para el elemento de menú. Una superinformación es una característica de interfaz de usuario que muestra un breve cuadro de información de ayuda sobre un control cuando el cursor mantiene el cursor sobre él. El cuadro puede contener varias líneas de texto.
tabs.groups.controls.items.supertip.title String 64 caracteres ✔️ Especifica el texto del título de la supertip.
tabs.groups.controls.items.supertip.description Cadena 128 caracteres ✔️ Especifica la descripción de la supertip.
tabs.groups.controls.items.actionId String 64 caracteres ✔️ Especifica el identificador de la acción que se realiza cuando un usuario selecciona el control o elemento de menú. actionId debe coincidir con algún runtimes.actions.id valor de propiedad.
tabs.groups.controls.items.enabled Booleano Indica si el elemento de menú está habilitado inicialmente.
Valor predeterminado: true
tabs.groups.controls.items.overriddenByRibbonApi Booleano Especifica si el elemento de menú está oculto en las combinaciones de aplicaciones y plataformas que admiten la API (Office.ribbon.requestCreateControls). Esta API instala pestañas contextuales personalizadas en la cinta de opciones.
Valor predeterminado: false
tabs.groups.controls.type Cadena ✔️ Define el tipo de control.
Valores admitidos: button, menu
tabs.groups.controls.builtInControlId String 64 caracteres ✔️ Especifica el identificador de un control de Microsoft 365 existente. Para obtener más información, vea Buscar los identificadores de controles y grupos de controles. Esta propiedad no se puede combinar con ninguna otra propiedad secundaria del objeto de control porque un complemento no puede personalizar los controles integrados.
tabs.groups.controls.label String 64 caracteres ✔️ Especifica el texto mostrado para el control. A pesar de la longitud máxima de 64 caracteres, para alinear correctamente la pestaña de la cinta de opciones, se recomienda limitar la etiqueta a 16 caracteres.
tabs.groups.controls.icons Matriz ✔️ Define los iconos del control. Debe haber al menos tres objetos secundarios; uno cada uno con size propiedades de 16, 32y 80 píxeles.
tabs.groups.controls.icons.size Número ✔️ Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64.80.484032242016
Tamaños de imagen necesarios: 16, , 3280
tabs.groups.controls.icons.url URL Especifica la dirección URL absoluta del archivo de icono.
tabs.groups.controls.supertip Objeto ✔️ Configura una supertip para el control. Una superinformación es una característica de interfaz de usuario que muestra un breve cuadro de información de ayuda sobre un control cuando el cursor mantiene el cursor sobre él. El cuadro puede contener varias líneas de texto.
tabs.groups.controls.supertip.title String 64 caracteres ✔️ Especifica el texto del título de la supertip.
tabs.groups.controls.supertip.description Cadena 128 caracteres ✔️ Especifica la descripción de la supertip.
tabs.groups.controls.actionId String 64 caracteres Obligatorio si el tipo de control es button. No use si el tipo de control es menu. Especifica el identificador de la acción que se realiza cuando un usuario selecciona el control. actionId debe coincidir con la runtime.actions.id propiedad de una acción en el runtimes objeto .
tabs.groups.controls.enabled Booleano Indica si el control está habilitado inicialmente.
Valor predeterminado: true
tabs.groups.controls.overriddenByRibbonApi Booleano Especifica si el control está oculto en las combinaciones de aplicaciones y plataformas que admiten la API (Office.ribbon.requestCreateControls). Esta API instala pestañas contextuales personalizadas en la cinta de opciones.
Valor predeterminado: false
tabs.groups.builtInGroupId String 64 caracteres Especifica el identificador de un grupo integrado. Para obtener más información, vea Buscar los identificadores de controles y grupos de controles. Esta propiedad no se puede combinar con ninguna otra propiedad secundaria del objeto de grupo porque un complemento no puede personalizar los grupos integrados.
tabs.customMobileRibbonGroups Matriz 10 Define grupos de controles en la pestaña predeterminada de la cinta de opciones en un dispositivo móvil. Esta propiedad de matriz solo puede estar presente en objetos de tabulación que tienen una tabs.builtInTabId propiedad establecida en DefaultTab. Para dispositivos que no son móviles, consulte tabs.groups anteriormente.
tabs.customMobileRibbonGroups.id Cadena 250 caracteres ✔️ Especifica el identificador del grupo. Debe ser diferente de cualquier identificador de grupo integrado en la aplicación de Microsoft 365 y en cualquier otro grupo personalizado.
tabs.customMobileRibbonGroups.label Cadena 32 caracteres ✔️ Especifica la etiqueta del grupo.
tabs.customMobileRibbonGroups.controls Matriz 20 ✔️ Define los controles del grupo. Solo se admiten botones móviles.
tabs.customMobileRibbonGroups.controls.id Cadena 250 caracteres ✔️ Especifica el identificador del control, como msgReadFunctionButton.
tabs.customMobileRibbonGroups.controls.type Enumeración de cadena ✔️ Especifica el tipo de control.
Valor admitido: MobileButton
tabs.customMobileRibbonGroups.controls.label Cadena 32 caracteres ✔️ Especifica la etiqueta en el control.
tabs.customMobileRibbonGroups.controls.actionId String 64 caracteres ✔️ Especifica el identificador de la acción que se realiza cuando un usuario selecciona el control. actionId debe coincidir con la runtime.actions.id propiedad de una acción en el runtimes objeto .
tabs.customMobileRibbonGroups.controls.icons Matriz 9 ✔️ Especifica los iconos que aparecen en el control en función de las dimensiones y ppp de la pantalla del dispositivo móvil. Debe haber exactamente 9 iconos.
tabs.customMobileRibbonGroups.controls.icons.size Enumeración numérica ✔️ Tamaño en píxeles del icono. Los tamaños necesarios son 25, 32 y 48. Debe haber exactamente uno de cada tamaño para cada valor posible de la propiedad de scale los iconos.
tabs.customMobileRibbonGroups.controls.icons.url Cadena 2048 caracteres ✔️ Dirección URL completa y absoluta del archivo de imagen del icono.
tabs.customMobileRibbonGroups.controls.icons.scale Enumeración numérica ✔️ Especifica la propiedad UIScreen.scale para dispositivos iOS. Los valores posibles son 1, 2 y 3. Debe haber exactamente uno de cada valor para cada valor posible de la propiedad de size los iconos.

Para usar extensions.ribbons, consulte creación de comandos de complemento, configuración de la interfaz de usuario para el comando del panel de tareas y configuración de la interfaz de usuario para el comando de función.

extensions.autoRunEvents

Opcional : matriz

La extensions.autoRunEvents propiedad define puntos de extensión de activación basados en eventos.

Nombre Tipo Tamaño máximo Necesario Descripción
events Matriz 20 ✔️ Configura el evento que hace que las acciones de un complemento de Outlook se ejecuten automáticamente. Por ejemplo, vea usar alertas inteligentes y los OnMessageSend eventos y OnAppointmentSend en los complementos de Outlook.
events.type String 64 caracteres ✔️ Especifica el tipo de evento. Para ver los tipos admitidos, consulte eventos admitidos.
events.actionId String 64 caracteres ✔️ Identifica la acción que se realiza cuando se desencadena el evento. actionId debe coincidir con runtime.actions.id.
events.options Objeto Configura cómo responde Outlook al evento.
events.options.sendMode Cadena ✔️ Especifica las acciones que se deben realizar durante una acción de envío de correo.
Valores admitidos: promptUser, softBlock, block. Para obtener más información, consulte opciones de modo de envío disponibles.
requirements Objeto Especifica los ámbitos, formFactors y conjuntos de requisitos de la biblioteca javascript de Office que se deben admitir en el cliente de Office para que se ejecute el código de control de eventos. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365.
requirements.capabilities Matriz Identifica los conjuntos de requisitos.
Opciones: name (obligatorio), minVersion, maxVersion
requirements.capabilities.name Cadena ✔️ Identifica el nombre del conjunto de requisitos.
requirements.capabilities.minVersion Cadena Identifica la versión mínima del conjunto de requisitos.
requirements.capabilities.maxVersion Cadena Identifica la versión máxima del conjunto de requisitos.
requirements.scopes Matriz de enumeraciones 1 Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook).
Valor admitido: mail
requirements.formFactors Matriz de enumeraciones Identifica los factores de forma que admiten el complemento.
Valores admitidos: mobile, desktop

extensions.alternates

Opcional : matriz

La extensions.alternates propiedad se usa para ocultar o priorizar complementos específicos en el mercado cuando se han publicado varios complementos con funcionalidad superpuesta.

Nombre Tipo Tamaño máximo Necesario Descripción
prefer Object Especifica la compatibilidad con versiones anteriores con un complemento COM equivalente, un complemento XLL o ambos.
prefer.comAddin Objeto Especifica un complemento COM que se debe usar en lugar del complemento web de Microsoft 365 para Windows.
prefer.comAddin.progId String 64 caracteres ✔️ Identifica el tipo de aplicación en el que se puede ejecutar la extensión.
hide Objeto Configura cómo ocultar otro complemento que haya publicado cada vez que se instale el complemento, de modo que los usuarios no vean ambos en la interfaz de usuario de Microsoft 365. Por ejemplo, use esta propiedad cuando haya publicado anteriormente un complemento que use el manifiesto de aplicación XML anterior y lo reemplace por una versión que use el nuevo manifiesto de aplicación JSON.
hide.storeOfficeAddin Objeto Especifica un complemento de Microsoft 365 disponible en Microsoft AppSource.
hide.storeOfficeAddin.officeAddinId String 64 caracteres ✔️ Especifica el identificador del complemento en el mercado que se va a ocultar. El GUID se toma de la propiedad de manifiesto id de la aplicación si el complemento en el mercado usa el manifiesto de aplicación JSON. El GUID se toma del <Id> elemento si el complemento en el mercado usa el manifiesto de aplicación XML.
hide.storeOfficeAddin.assetId String 64 caracteres ✔️ Especifica el identificador de recurso de AppSource del complemento en el mercado que se va a ocultar.
hide.customOfficeAddin Objeto Configura cómo ocultar un complemento en el mercado que no se distribuye a través de AppSource.
hide.customOfficeAddin.officeAddinId String 64 caracteres ✔️ Especifica el identificador del complemento en el mercado que se va a ocultar. El GUID se toma de la propiedad de manifiesto id de la aplicación si el complemento en el mercado usa el manifiesto de aplicación JSON. El GUID se toma del <Id> elemento si el complemento en el mercado usa el manifiesto de aplicación XML.
requirements Objeto Especifica los ámbitos, formFactors y los conjuntos de requisitos de la biblioteca JavaScript de Office que se deben admitir en el cliente de Office para que las propiedades "hide", "prefer" o "alternateIcons" surtan efecto. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365.
requirements.capabilities Matriz Identifica los conjuntos de requisitos.
Opciones: name (obligatorio), minVersion, maxVersion
requirements.capabilities.name Cadena ✔️ Identifica el nombre del conjunto de requisitos.
requirements.capabilities.minVersion Cadena Identifica la versión mínima del conjunto de requisitos.
requirements.capabilities.maxVersion Cadena Identifica la versión máxima del conjunto de requisitos.
requirements.scopes Matriz de enumeraciones 1 Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook).
Valor admitido: mail
requirements.formFactors Matriz de enumeraciones Identifica los factores de forma que admiten el complemento.
Valores admitidos: mobile, desktop
alternateIcons Objeto Especifica los iconos principales que se usan para representar el complemento en versiones anteriores de Office. Esta propiedad es necesaria si el complemento de Office se puede instalar en Office en Mac, licencias perpetuas de Office y versiones de suscripción de Microsoft 365 de Office en Windows anteriores a 2304 (compilación 16320.00000).
alternateIcons.icon Objeto ✔️ Especifica las propiedades del archivo de imagen que se usa para representar el complemento.
alternateIcons.icon.size Enumeración numérica ✔️ Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64.80.484032242016
Tamaños de imagen necesarios: 16, 32, 80.
alternateIcons.icon.url Cadena 2048 caracteres ✔️ Especifica la dirección URL completa y absoluta del archivo de imagen que se usa para representar el complemento. La imagen de icono debe tener 64 x 64 píxeles y usar uno de los siguientes formatos de archivo: GIF, JPG, PNG, EXIF, BMP, TIFF.
alternateIcons.highResolutionIcon Objeto ✔️ Especifica las propiedades del archivo de imagen que se usa para representar el complemento en pantallas con valores altos de PPP.
alternateIcons.highResolutionIcon.size Enumeración numérica ✔️ Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64.80.484032242016
Tamaños de imagen necesarios: 16, 32, 80.
alternateIcons.highResolutionIcon.url Cadena 2048 caracteres ✔️ Especifica la dirección URL completa y absoluta del archivo de imagen que se usa para representar el complemento en pantallas con valores altos de PPP. La imagen de icono debe tener 128 x 128 píxeles y usar uno de los siguientes formatos de archivo: GIF, JPG, PNG, EXIF, BMP, TIFF.

dashboardCards

Opcional : matriz

Define una lista de tarjetas que se pueden anclar a un panel, como Microsoft Viva Connections, para proporcionar una vista resumida de la información de la aplicación. Para más información sobre cómo crear tarjetas para Viva Connections panel, consulte Información general sobre las extensiones de tarjeta adaptable con tecnología de bot.

Este elemento es una matriz de dashboardCard elementos de tipo object.

dashboardCards.dashboardCard

Define una sola tarjeta de panel y sus propiedades.

Nombre Tipo Tamaño máximo Necesario Descripción
id Cadena ✔️ Identificador único de esta tarjeta de panel. El identificador debe ser un GUID.
displayName Cadena 255 caracteres ✔️ Nombre para mostrar de la tarjeta.
description Cadena 255 caracteres ✔️ Descripción de la tarjeta.
pickerGroupId Cadena ✔️ Identificador del grupo en el selector de tarjetas. El identificador debe ser un GUID.
icon Objeto Especifica el icono de la tarjeta.
contentSource Objeto ✔️ Especifica el origen del contenido de la tarjeta.
defaultSize Cadena ✔️ Tamaño de representación de la tarjeta del panel. Opciones: medium o large.

dashboardCards.dashboardCard.icon

Define las propiedades de icono de una tarjeta de panel determinada.

Nombre Tipo Tamaño máximo Necesario Descripción
iconUrl Cadena 2048 caracteres Ubicación del icono de la tarjeta, que se mostrará en el cuadro de herramientas y la barra de tarjetas.
officeUIFabricIconName Cadena 255 caracteres Nombre descriptivo de office UI Fabric o icono de interfaz de usuario de Fluent para la tarjeta. Este valor se usa si iconUrl no se especifica.

dashboardCards.dashboardCard.contentSource

Define el origen de contenido de una tarjeta de panel determinada.

Nombre Tipo Tamaño máximo Necesario Descripción
sourceType Cadena Representa el origen del contenido de una tarjeta. Opción: bot.
botConfiguration Objeto Configuración del origen del bot. Obligatorio si está sourceType establecido en bot.

dashboardCards.dashboardCard.contentSource.botConfiguration

Nombre Tipo Tamaño máximo Necesario Descripción
botId Cadena El ID. de aplicación de Microsoft único para el bot, registrado con Bot Framework. El identificador debe ser un GUID.

Creación de un archivo de manifiesto de aplicación

Si la aplicación no tiene un archivo de manifiesto de aplicación, debe crearlo.

Para crear un archivo de manifiesto de aplicación:

  1. Use el esquema de manifiesto de aplicación de ejemplo para crear un archivo .json.
  2. Guárdelo en la raíz de la carpeta del proyecto como manifest.json.

Este es un ejemplo del esquema de manifiesto de aplicación para una aplicación de pestaña con sso habilitado:

Nota:

El contenido de ejemplo de manifiesto de aplicación que se muestra aquí es solo para una aplicación de pestaña. Usa valores de ejemplo para el URI de subdominio. Para obtener más información, consulte esquema de manifiesto de aplicación de ejemplo.

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

Vea también