App-Manifestschema für öffentliche Entwicklervorschau

Informationen zum Aktivieren der Entwicklervorschau finden Sie unter Öffentliche Entwicklervorschau für Microsoft Teams.

Hinweis

Wenn Sie keine Entwicklervorschaufeatures verwenden, einschließlich der Ausführung persönlicher Teams-Registerkarten und Nachrichtenerweiterungen in Outlook und Microsoft 365-Apps, verwenden Sie stattdessen das App-Manifest (früher Teams-App-Manifest genannt) für allgemein verfügbare Features (GA).

Das App-Manifest beschreibt, wie die App in die Microsoft Teams-Plattform integriert wird. Ihr App-Manifest muss dem Schema entsprechen, das auf https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.jsongehostet wird.

Beispiel-App-Manifest

{
    "$schema": "https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.json",
    "manifestVersion": "devPreview",
    "version": "1.0.0",
    "id": "%MICROSOFT-APP-ID%",
    "devicePermissions": [
        "geolocation",
        "media"
    ],
    "developer": {
        "name": "Publisher Name",
        "websiteUrl": "https://website.com/",
        "privacyUrl": "https://website.com/privacy",
        "termsOfUseUrl": "https://website.com/app-tos",
        "mpnId": "1234567890"
    },
    "localizationInfo": {
        "defaultLanguageTag": "es-es",
        "additionalLanguages": [
            {
                "languageTag": "en-us",
                "file": "en-us.json"
            }
        ]
    },
    "name": {
        "short": "Name of your app (<=30 chars)",
        "full": "Full name of app, if longer than 30 characters"
    },
    "description": {
        "short": "Short description of your app",
        "full": "Full description of your app"
    },
    "icons": {
        "outline": "%FILENAME-32x32px%",
        "color": "%FILENAME-192x192px"
    },
    "accentColor": "%HEX-COLOR%",
    "configurableTabs": [
        {
            "configurationUrl": "https://contoso.com/teamstab/configure",
            "canUpdateConfiguration": true,
            "scopes": [
                "team",
                "groupchat"
            ],
            "context": []
        }
    ],
    "staticTabs": [
        {
            "entityId": "idForPage",
            "name": "Display name of tab",
            "contentUrl": "https://contoso.com/content?host=msteams",
            "contentBotId": "Specifies to the app that tab is an Adaptive Card Tab. You can either provide the contentBotId or contentUrl.",
            "websiteUrl": "https://contoso.com/content",
            "scopes": [
                "personal"
            ]
        }
    ],
    "bots": [
        {
            "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
            "needsChannelSelector": false,
            "isNotificationOnly": false,
            "scopes": [
                "team",
                "personal",
                "groupchat"
            ],
            "supportsFiles": true,
            "commandLists": [
                {
                    "scopes": [
                        "team",
                        "groupchat"
                    ],
                    "commands": [
                        {
                            "title": "Command 1",
                            "description": "Description of Command 1"
                        },
                        {
                            "title": "Command N",
                            "description": "Description of Command N"
                        }
                    ]
                },
                {
                    "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%",
            "configurationUrl": "https://contoso.com/teamsconnector/configure",
            "scopes": [
                "team"
            ]
        }
    ],
    "composeExtensions": [
        {
            "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
            "canUpdateConfiguration": true,
            "commands": [
                {
                    "id": "exampleCmd1",
                    "title": "Example Command",
                    "description": "Command Description; e.g., Search on the web",
                    "initialRun": true,
                    "type": "search",
                    "context": [
                        "compose",
                        "commandBox"
                    ],
                    "parameters": [
                        {
                            "name": "keyword",
                            "title": "Search keywords",
                            "description": "Enter the keywords to search for"
                        }
                    ]
                },
                {
                    "id": "exampleCmd2",
                    "title": "Example Command 2",
                    "description": "Command Description; e.g., Search for a customer",
                    "initialRun": true,
                    "type": "action",
                    "fetchTask": true,
                    "context": [
                        "message"
                    ],
                    "parameters": [
                        {
                            "name": "custinfo",
                            "title": "Customer name",
                            "description": "Enter a customer name",
                            "inputType": "text"
                        }
                    ]
                },
                {
                    "id": "exampleMessageHandler",
                    "title": "Message Handler",
                    "description": "Domains that will create a preview when pasted into the compose box",
                    "messageHandlers": [
                        {
                            "type": "link",
                            "value": {
                                "domains": [
                                    "mysite.someplace.com",
                                    "othersite.someplace.com"
                                ]
                            }
                        }
                    ]
                }
            ]
        }
    ],
    "permissions": [
        "identity",
        "messageTeamMembers"
    ],
    "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"
                }
            ]
        }
    },
    "configurableProperties": [
        "name",
        "shortDescription",
        "longDescription",
        "smallImageUrl",
        "largeImageUrl",
        "accentColor",
        "developerUrl",
        "privacyUrl",
        "termsOfUseUrl"
    ],
    "defaultInstallScope": "meetings",
    "defaultGroupCapability": {
        "meetings": "tab",
        "team": "bot",
        "groupchat": "bot"
    },
    "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
            }
        ]
    }
}

Das Schema definiert die folgenden Eigenschaften:

$schema

Optional, aber empfohlen – Zeichenfolge

Die https:// URL, die auf das JSON-Schema für das App-Manifest verweist.

manifestVersion

Erforderlich – Zeichenfolge

Die Version des App-Manifestschemas, das dieses Manifest verwendet.

Version

Erforderlich – Zeichenfolge

Die Version der jeweiligen App. Wenn Sie etwas in Ihrem App-Manifest aktualisieren, muss auch die Version erhöht werden. Auf diese Weise überschreibt das neue App-Manifest bei der Installation das vorhandene Manifest, und der Benutzer erhält die neue Funktionalität. Wenn diese App an den Microsoft Teams Store übermittelt wurde, muss das neue App-Manifest erneut übermittelt und erneut überprüft werden. Anschließend erhalten Benutzer dieser App das neue aktualisierte App-Manifest in einigen Stunden automatisch, nachdem es genehmigt wurde.

Wenn sich die von der App angeforderten Berechtigungen ändern, werden Benutzer aufgefordert, ein Upgrade durchzuführen und der App erneut zuzustimmen.

Diese Versionszeichenfolge muss dem SemVer-Standard entsprechen (MAJOR.MINOR.PATCH).

Hinweis

Wenn Ihre App ein Office-Add-In enthält, ist jedes Segment der Versionszeichenfolge auf maximal fünf Ziffern beschränkt. Die Zeichenfolgenerweiterungen der Semver-Vorabversion und der Metadatenversion des Semver-Standards werden nicht unterstützt.

id

Erforderlich : Microsoft-App-ID

Die eindeutige, von Microsoft generierte Kennung für diese App. Das Format der ID ist GUID. Wenn Sie einen Bot über Microsoft Bot Framework registriert haben oder sich die Web-App Ihrer Registerkarte bereits bei Microsoft anmeldet, verfügen Sie möglicherweise bereits über eine ID und müssen sie hier eingeben. Andernfalls müssen Sie eine neue ID im Microsoft Application Registration Portal (Meine Anwendungen) generieren, hier eingeben und dann wiederverwenden, wenn Sie einen Bot hinzufügen.

developer

Erforderlich – Objekt

Gibt Informationen zu Ihrem Unternehmen an. Für An Microsoft AppSource (früher Office Store) übermittelte Apps müssen diese Werte mit den Informationen in Ihrem AppSource-Eintrag übereinstimmen.

Name Maximale Größe Erforderlich Beschreibung
name 32 Zeichen ✔️ Der Anzeigename für den Entwickler.
websiteUrl 2048 Zeichen ✔️ Die https://-URL zur Website des Entwicklers. Dieser Link muss Benutzer zur Landing Page Ihres Unternehmens oder des produktspezifischen Angebots führen.
privacyUrl 2048 Zeichen ✔️ Die https://-URL zur Datenschutzerklärung des Entwicklers.
termsOfUseUrl 2048 Zeichen ✔️ Die https://-URL zu den Nutzungsbedingungen des Entwicklers.
mpnId 10 Zeichen Optional: Die Microsoft Partner Network-ID der Partnerorganisation, die die App erstellt.

localizationInfo

Optional – Objekt

Ermöglicht die Angabe einer Standardsprache und Zeiger auf zusätzliche Sprachdateien. Siehe Lokalisierung.

Name Maximale Größe Erforderlich Beschreibung
defaultLanguageTag 4 Zeichen ✔️ Das Sprachtag der Zeichenfolgen in dieser App-Manifestdatei der obersten Ebene.

localizationInfo.additionalLanguages

Ein Array von Objekten, die zusätzliche Sprachübersetzungen angeben.

Name Maximale Größe Erforderlich Beschreibung
languageTag 4 Zeichen ✔️ Das Sprachtag der Zeichenfolgen in der bereitgestellten Datei.
file 2048 Zeichen ✔️ Ein relativer Dateipfad zur .json Datei, die die übersetzten Zeichenfolgen enthält.

name

Erforderlich – Objekt

Der Name Ihrer App-Lösung, der Benutzern in der Microsoft Teams-Umgebung angezeigt wird. Für Apps, die an AppSource übermittelt werden, müssen diese Werte mit den Informationen in Ihrem AppSource-Eintrag übereinstimmen. Die Werte von short und full müssen unterschiedlich sein.

Name Typ Maximale Größe Erforderlich Beschreibung
short String 30 Zeichen ✔️ Der Kurzanzeigename für die App.
full String 100 Zeichen ✔️ Der vollständige Name der App. Sie wird verwendet, wenn der vollständige App-Name 30 Zeichen überschreitet.

description

Erforderlich – Objekt

Beschreibt Ihre App für Benutzer. Für Apps, die an AppSource übermittelt werden, müssen diese Werte mit den Informationen in Ihrem AppSource-Eintrag übereinstimmen.

Stellen Sie sicher, dass Ihre Beschreibung Ihre Erfahrung genau beschreibt und Informationen bereitstellt, die potenziellen Kunden helfen, zu verstehen, was Ihre Erfahrung bewirkt. Sie müssen in der vollständigen Beschreibung angeben, ob ein externes Konto für die Verwendung der App erforderlich ist. Die Werte von short und full müssen unterschiedlich sein. Ihre Kurzbeschreibung darf innerhalb der Langbeschreibung nicht wiederholt werden und keinen anderen App-Namen enthalten.

Name Maximale Größe Erforderlich Beschreibung
short 80 Zeichen ✔️ Eine kurze Beschreibung der App; wird verwendet, wenn der Platz begrenzt ist.
full 4.000 Zeichen ✔️ Die vollständige Beschreibung Ihrer App.

Symbole

Erforderlich – Objekt

Symbole, die in der Microsoft Teams-App verwendet werden. Die Symboldateien müssen als Teil des Uploadpakets enthalten sein.

Name Maximale Größe Erforderlich Beschreibung
outline 2048 Zeichen ✔️ Ein relativer Dateipfad zu einem transparenten, 32 x 32 Pixel großen PNG-Kontursymbol. Die Rahmenfarbe muss weiß sein.
color 2048 Zeichen ✔️ Ein relativer Dateipfad zu einem farbigen, 192 x 192 Pixel großen PNG-Symbol.

accentColor

Erforderlich – Zeichenfolge

Eine Farbe, die mit und als Hintergrund für Ihre Gliederungssymbole verwendet werden soll.

Bei dem Wert muss es sich um einen gültigen HTML-Farbcode handeln, der mit "#" beginnt, z. B. #4464ee.

configurableTabs

Optional – Array

Wird verwendet, wenn Ihre App-Erfahrung über eine Teamkanalregisterkarte verfügt, die eine zusätzliche Konfiguration erfordert, bevor sie hinzugefügt wird. Konfigurierbare Registerkarten werden nur im Teams-Bereich unterstützt, und derzeit wird nur eine Registerkarte pro App unterstützt.

Das Objekt ist ein Array, wobei alle Elemente vom Typ object sind. Dieser Block ist nur für Lösungen erforderlich, die eine konfigurierbare Channel-Tab-Lösung bereitstellen.

Name Typ Maximale Größe Erforderlich Beschreibung
configurationUrl Zeichenfolge 2048 Zeichen ✔️ Die https://-URL, die beim Konfigurieren der Registerkarte verwendet werden soll.
canUpdateConfiguration Boolesch Der Wert, der angibt, ob eine Instanz der Registerkartenkonfiguration nach der Erstellung vom Benutzer aktualisiert werden kann.
Standardwert: true
scopes Array von Enumerationen 2 ✔️ Derzeit unterstützen konfigurierbare Registerkarten nur die Bereiche team und groupChat.
context Array von Enumerationen 8 Die Gruppe von contextItem-Bereichen, in denen eine Registerkarte unterstützt wird.
Standardwerte: channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingSidePanel, meetingStage, , . personalTab
sharePointPreviewImage Zeichenfolge 2048 Zeichen Ein relativer Dateipfad zu einem Registerkartenvorschaubild zur Verwendung in SharePoint. Größe: 1024 x 768.
supportedSharePointHosts Array von Enumerationen 2 Definiert, wie Ihre Registerkarte in SharePoint zur Verfügung gestellt wird. Optionen sind sharePointFullPage, sharePointWebPart
meetingSurfaces Array von Enumerationen 2 Der Satz von meetingSurfaceItem Bereichen, zu denen eine Registerkarte gehört.
Standardwerte: sidePanel, stage
supportedPlatform Array von Enumerationen 3 Der Satz von supportedPlatform Bereichen, zu denen eine Registerkarte gehört.
Standardwerte: desktop, mobile, teamsMeetingDevices

staticTabs

Optional – Array

Definiert eine Reihe von Registerkarten, die standardmäßig "angeheftet" werden können, ohne dass der Benutzer sie manuell hinzufügen muss. Im personal-Bereich deklarierte statische Registerkarten werden immer an die persönliche Benutzeroberfläche der App angeheftet. Im team-Bereich deklarierte statische Registerkarten werden derzeit nicht unterstützt.

Rendern Sie Registerkarten mit adaptiven Karten, contentBotId indem Sie anstelle contentUrl von im staticTabs-Block angeben.

Das Objekt ist ein Array (maximal 16 Elemente) mit allen Elementen vom Typ object. Dieser Block ist nur für Lösungen erforderlich, die eine Lösung mit statischen Registerkarten bereitstellen.

Name Typ Maximale Größe Erforderlich Beschreibung
entityId String 64 Zeichen ✔️ Ein eindeutiger Bezeichner für die Entität, die auf der Registerkarte angezeigt wird.
name Zeichenfolge 128 Zeichen ✔️ Der Anzeigename der Registerkarte.
contentUrl Zeichenfolge 2048 Zeichen ✔️ Die https://-URL, die auf die Entitäts-Benutzeroberfläche verweist, die im Microsoft Teams-Canvas angezeigt werden soll.
contentBotId String Die für den Bot im Bot Framework-Portal angegebene Microsoft Teams-App-ID.
websiteUrl Zeichenfolge 2048 Zeichen Die https://-URL, auf die verwiesen werden soll, wenn ein Benutzer sich für die Anzeige in einem Browser entscheidet.
scopes Array von Enumerationen 3 ✔️ Statische Registerkarten unterstützen die personalBereiche , teamund groupChat , was bedeutet, dass sie als Teil der persönlichen Benutzeroberfläche, des Gruppenchats und der Kanalbesprechungen bereitgestellt werden können.
searchUrl Zeichenfolge 2048 Zeichen Die https:// URL, um die Suchabfragen eines Benutzers zu leiten.
context Array von Enumerationen 8 Der Satz von contextItem Bereichen, zu denen eine Registerkarte gehört.
Standardwerte: personalTab, channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingSidePanel, , meetingStageteamLevelApp
supportedPlatform Array von Enumerationen 3 Der Satz von supportedPlatform Bereichen, zu denen eine Registerkarte gehört.
Standardwerte: desktop, mobile, teamsMeetingDevices

Bots

Optional – Array

Definiert eine Bot-Lösung zusammen mit optionalen Informationen wie Standardbefehlseigenschaften.

Das -Objekt ist ein Array (maximal nur ein Element – derzeit ist nur ein Bot pro App zulässig) mit allen Elementen des Typs object. Dieser Block ist nur für Lösungen erforderlich, die einen Bot umfassen.

Name Typ Maximale Größe Erforderlich Beschreibung
botId String ✔️ Die eindeutige Microsoft-App-ID für den Bot, wie bei Bot Framework registriert. Die ID kann mit der Gesamt-App-IDübereinstimmen.
needsChannelSelector Boolesch Beschreibt, ob der Bot einen Benutzerhinweis verwendet, um den Bot einem bestimmten Kanal hinzuzufügen.
Standardwert: false
isNotificationOnly Boolesch Gibt an, ob ein Bot ein unidirektionaler Bot ausschließlich für Benachrichtigungen ist (im Gegensatz zu einem dialogorientierten Bot).
Standardwert: false
supportsFiles Boolesch Gibt an, ob der Bot die Möglichkeit zum Hochladen/Herunterladen von Dateien in persönliche Chats unterstützt.
Standardwert: false
scopes Array von Enumerationen 3 ✔️ Gibt an, ob der Bot eine Umgebung im Kontext eines Kanals in einem team oder Gruppenchat (groupChat) ist, oder aber eine Umgebung einzig für einen bestimmten Benutzer (personal). Diese Optionen sind nicht eindeutig.
supportsCalling Boolesch Ein Wert, der angibt, wo ein Bot Audioanrufe unterstützt. WICHTIG: Dies ist derzeit eine experimentelle Eigenschaft. Experimentelle Eigenschaften sind möglicherweise unvollständig und werden möglicherweise geändert, bevor sie vollständig verfügbar sind. Die Eigenschaft wird nur zu Test- und Erforschungszwecken bereitgestellt und darf nicht in Produktionsanwendungen verwendet werden.
Standardwert: false
supportsVideo Boolescher Wert Ein Wert, der angibt, wo ein Bot Videoanrufe unterstützt. WICHTIG: Dies ist derzeit eine experimentelle Eigenschaft. Experimentelle Eigenschaften sind möglicherweise unvollständig und werden möglicherweise geändert, bevor sie vollständig verfügbar sind. Die Eigenschaft wird nur zu Test- und Erforschungszwecken bereitgestellt und darf nicht in Produktionsanwendungen verwendet werden.
Standardwert: false
requiresSecurityEnabledGroup Boolesch Ein Wert, der angibt, ob die Office-Gruppe des Teams sicherheitsfähig sein muss.
Standardwert: false

bots.configuration

Name Typ Maximale Größe Erforderlich Beschreibung
team.fetchTask Boolescher Wert ✔️ Ein boolescher Wert, der angibt, ob der Dialog (in TeamsJS v1.x als Aufgabenmodul bezeichnet) dynamisch abgerufen werden soll.
Standardwert: false
team.taskInfo.title String 64 Zeichen ✔️ Titel des ersten Dialogfelds.
team.taskInfo.width Zeichenfolge 16 Die Dialogbreite ist entweder eine Zahl in Pixel oder ein Standardlayout wie large, mediumoder small.
team.taskInfo.height String 16 Die Höhe des Dialogfelds ist entweder eine Zahl in Pixel oder ein Standardlayout wie large, mediumoder small.
team.taskInfo.url Zeichenfolge 2048 Zeichen Anfängliche WebView-URL.
groupChat.fetchTask Boolesch ✔️ Ein boolescher Wert, der angibt, ob der Dialog dynamisch abgerufen werden soll.
Standardwert: false
groupChat.taskInfo Objekt Dialogfeld, das gestartet werden soll, wenn der Abruftask auf false festgelegt ist.
Standardwert: false
groupChat.taskInfo.title String 64 Zeichen ✔️ Titel des ersten Dialogfelds.
groupChat.taskInfo.width Zeichenfolge 16 Die Dialogbreite ist entweder eine Zahl in Pixel oder ein Standardlayout wie large, mediumoder small.
groupChat.taskInfo.height String 16 Die Höhe des Dialogfelds ist entweder eine Zahl in Pixel oder ein Standardlayout wie large, mediumoder small.
groupChat.taskInfo.url Zeichenfolge 2048 Zeichen Anfängliche WebView-URL.

bots.commandLists

Eine optionale Liste von Befehlen, die Ihr Bot Benutzern vorschlagen kann. Das Objekt ist ein Array (maximal 2 Elemente) mit allen Elementen vom Typ object; Sie müssen für jeden Bereich, den Ihr Bot unterstützt, eine separate Befehlsliste definieren. Weitere Informationen finden Sie unter Bot-Menüs.

Name Typ Maximale Größe Erforderlich Beschreibung
items.scopes Array von Enumerationen 3 ✔️ Gibt den Bereich an, für den die Befehlsliste gültig ist. Mögliche Optionen sind team, personal und groupChat.
items.commands Array mit Objekten 10 ✔️ Ein Array von Befehlen, die der Bot unterstützt:
title: der Bot-Befehlsname (Zeichenfolge, 32).
description: Eine einfache Beschreibung oder ein Beispiel für die Befehlssyntax und zugehörige Argumente (string, 128)

connectors

Optional – Array

Der connectors -Block definiert einen Connector für Microsoft 365-Gruppen für die App.

Das Objekt ist ein Array (maximal 1 Element) mit allen Elementen vom Typ object. Dieser Block ist nur für Lösungen erforderlich, die einen Connector bereitstellen. Pro App wird nur ein Connector unterstützt.

Name Typ Maximale Größe Erforderlich Beschreibung
configurationUrl Zeichenfolge 2048 Zeichen ✔️ Die https:// URL, die beim Konfigurieren des Connectors mithilfe der Inlinekonfigurationsoberfläche verwendet werden soll.
connectorId String 64 Zeichen ✔️ Ein eindeutiger Bezeichner für den Connector, der seiner ID im Connectors Developer Dashboard entspricht.
scopes Array von Enumerationen 1 ✔️ Gibt an, ob der Connector eine Umgebung im Kontext eines Kanals in einem team oder aber eine Umgebung einzig für einen bestimmten Benutzer (personal) bietet. Derzeit wird nur der team-Bereich unterstützt.

composeExtensions

Optional – Array

Definiert eine Nachrichtenerweiterung für die App.

Hinweis

Der Name des Features wurde im November 2017 von "Compose-Erweiterung" in "Nachrichtenerweiterung" geändert, aber der Name des App-Manifests bleibt unverändert, sodass vorhandene Erweiterungen weiterhin funktionieren.

Das Objekt ist ein Array (maximal 1 Element) mit allen Elementen vom Typ object. Dieser Block ist nur für Lösungen erforderlich, die eine Nachrichtenerweiterung bereitstellen.

Name Typ Maximale Größe Erforderlich Beschreibung
botId String Die eindeutige Microsoft-App-ID für den Bot, welcher der Nachrichtenerweiterung zugeordnet ist, wie beim Bot Framework registriert. Die ID kann mit der Gesamt-App-IDübereinstimmen.
composeExtensionType String Typ der Compose-Erweiterung. Enumerationswerte sind botBased und apiBased.
authorization Objekt 2 Autorisierungsbezogene Informationen für die API-basierte Nachrichtenerweiterung
authorization.authType String Enumeration möglicher Autorisierungstypen. Unterstützte Werte sind none, apiSecretServiceAuthund microsoftEntra.
authorization.microsoftEntraConfiguration Objekt Objekterfassungsdetails, die für den MicrosoftEntra-Authentifizierungsfluss erforderlich sind. Gilt nur, wenn der Authentifizierungstyp ist microsoftEntra.
authorization.microsoftEntraConfiguration.supportsSingleSignOn Boolescher Wert Ein Wert, der angibt, ob einmaliges Anmelden für die App konfiguriert ist.
authorization.apiSecretServiceAuthConfiguration Objekt Objekterfassungsdetails, die für die Dienstauthentifizierung erforderlich sind. Gilt nur, wenn der Authentifizierungstyp ist apiSecretServiceAuth.
authorization.apiSecretServiceAuthConfiguration.apiSecretRegistrationId Zeichenfolge 128 Zeichen Die Registrierungs-ID wird zurückgegeben, wenn der Entwickler den API-Schlüssel über das Entwicklerportal übermittelt.
apiSpecificationFile Zeichenfolge 2048 Zeichen Ein relativer Dateipfad zur API-Spezifikationsdatei im Manifestpaket.
canUpdateConfiguration Boolesch Ein Wert, der angibt, ob die Konfiguration einer Nachrichtenerweiterung vom Benutzer aktualisiert werden kann.
Standardwert: true
commands Objekt-Array 10 Array von Befehlen, die von der Nachrichtenerweiterung unterstützt werden.
messageHandlers Array mit Objekten 5 Eine Liste von Handlern, mit denen Apps aufgerufen werden können, wenn bestimmte Bedingungen erfüllt sind. Domänen müssen auch in validDomainsaufgeführt sein.
messageHandlers.type String Der Typ des Nachrichtenhandlers. Muss "link" sein.
messageHandlers.value.domains Array von Zeichenfolgen 2048 Zeichen Array von Domänen, für die sich der Link-Nachrichtenhandler registrieren kann.
messageHandlers.supportsAnonymizedPayloads Boolesch Ein boolescher Wert, der angibt, ob der Linknachrichtenhandler der App anonymen Aufrufflow unterstützt.
Standardwert: false
Um keine Installation für die Linkentflechtung zu aktivieren, muss der Wert auf truefestgelegt werden.
Hinweis: Die -Eigenschaft supportAnonymousAccess wird durch supportsAnonymizedPayloadsersetzt.
type Typ der Compose-Erweiterung. Unterstützte Werte sind apiBased oder botBased.

composeExtensions.commands

Ihre Nachrichtenerweiterung muss einen oder mehrere Befehle deklarieren. Jeder Befehl wird in Teams als potenzielle Interaktion vom BENUTZEROBERFLÄCHEN-basierten Einstiegspunkt angezeigt. Es gibt maximal 10 Befehle.

Jedes Befehlselement ist ein Objekt mit folgender Struktur:

Name Typ Maximale Größe Erforderlich Beschreibung
id String 64 Zeichen ✔️ Die ID für den Befehl.
type String 64 Zeichen Der Befehlstyp. Entweder query oder action. Standard: query
samplePrompts Array 5 Nein Eigenschaft, die von Copilot verwendet wird, um vom Plug-In unterstützte Eingabeaufforderungen für den Benutzer anzuzeigen.
samplePrompts.text string 128 Zeichen ✔️ Inhalt der Beispielaufforderung.
apiResponseRenderingTemplateFile Zeichenfolge 2048 Zeichen Ein relativer Dateipfad für die API-Antwortrendering-Vorlagendatei , die zum Formatieren der JSON-Antwortantwort von der API des Entwicklers in die Antwort adaptiver Karten verwendet wird.
context Array von Zeichenfolgen 3 Zeichen Definiert, wo die Nachrichtenerweiterung aufgerufen werden kann. Jede Kombination von compose, commandBox, message.
Standardwerte: compose, commandBox
title Zeichenfolge 32 Zeichen ✔️ Der benutzerfreundliche Name des Befehls.
description Zeichenfolge 128 Zeichen Die Beschreibung, die Benutzern angezeigt wird, um den Zweck dieses Befehls anzugeben.
semanticDescription String 5000 Zeichen Semantische Beschreibung des Befehls für die Verwendung durch Copilot mithilfe eines großen Sprachmodells (Large Language Model, LLM).
initialRun Boolesch Ein boolescher Wert, der angibt, ob der Befehl anfänglich ohne Parameter ausgeführt wird.
Standardwert: false
fetchTask Boolesch Ein boolescher Wert, der angibt, ob der Dialog dynamisch abgerufen werden muss.
taskInfo Objekt Geben Sie bei Verwendung eines Nachrichtenerweiterungsbefehls das Dialogfeld an, das vorab laden soll.
taskInfo.title String 64 Zeichen Titel des ersten Dialogfelds.
taskInfo.width Zeichenfolge Dialogbreite: Entweder eine Zahl in Pixel oder ein Standardlayout wie large, mediumoder small.
taskInfo.height String Dialoghöhe: Entweder eine Zahl in Pixel oder ein Standardlayout wie large, mediumoder small.
taskInfo.url Zeichenfolge 2048 Zeichen Anfängliche WebView-URL.
parameters Objekt-Array 5 Die Liste der Parameter, die der Befehl verwendet. Minimum: 1; Maximum: 5
parameter.name String 64 Zeichen ✔️ Der Name des Parameters, wie er im Client angezeigt wird. Dies ist in der Benutzeranforderung enthalten.
Für die API-basierte Nachrichtenerweiterung muss der Name dem parameters.name in der OpenAPI-Beschreibung zugeordnet werden. Wenn Sie auf eine Eigenschaft im Anforderungstextschema verweisen, muss der Name oder abfrageparametern zugeordnet properties.name werden.
parameter.title Zeichenfolge 32 Zeichen ✔️ Benutzerfreundlicher Titel für den Parameter.
parameter.description Zeichenfolge 128 Zeichen Benutzerfreundliche Zeichenfolge, die den Zweck dieses Parameters beschreibt.
parameter.semanticDescription Zeichenfolge 2000 Zeichen Semantische Beschreibung des Parameters für die Verwendung durch das große Sprachmodell.
parameter.inputType String Definiert den Typ des Steuerelements, das in einem Dialogfeld für fetchTask: falseangezeigt wird. Einer von text, textarea, number, date, time, toggle. choiceset
parameter.value String 512 Zeichen Anfangswert für den Parameter.
parameter.choices Array mit Objekten 10 Die Auswahloptionen für choiceset. Wird nur verwendet, wenn parameter.inputTypechoiceset ist.
parameter.choices.title Zeichenfolge 128 Zeichen ✔️ Titel der Auswahl.
parameter.choices.value Zeichenfolge 512 Zeichen ✔️ Value of the choice.

scopeConstraints

Die Bereichseinschränkungen, die einer App auferlegt werden, um anzugeben, in welchen Threads Sie die App installieren können. Wenn keine Einschränkungen angegeben sind, können Sie die App für alle Threads innerhalb des spezifischen Bereichs installieren.

Optional – Objekt

Name Typ Maximale Größe Erforderlich Beschreibung
teams Array 128 Eine Liste der Teamthread-IDs, auf die Ihre App beschränkt ist.
teams.id String 64 Zeichen ✔️ Thread-ID des Teams.
groupChats Array 128 Eine Liste der Chatthread-IDs, auf die Ihre App beschränkt ist.
groupChats.id String 64 Zeichen ✔️ Die Thread-ID des Chats.

Berechtigungen

Optional : Array von Zeichenfolgen

Ein Array von string, das angibt, welche Berechtigungen die App anfordert, sodass Endbenutzer wissen, wie die Erweiterung funktioniert. Die folgenden Optionen sind nicht eindeutig:

  • identity Erfordert Benutzeridentitätsinformationen.
  • messageTeamMembers Erfordert die Berechtigung zum Senden von direkten Nachrichten an Teammitglieder.

Wenn Sie diese Berechtigungen beim Aktualisieren Ihrer App ändern, müssen Ihre Benutzer den Zustimmungsprozess wiederholen, wenn sie die aktualisierte App zum ersten Mal ausführen.

devicePermissions

Optional : Array von Zeichenfolgen

Gibt die nativen Features auf dem Gerät eines Benutzers an, auf die Ihre App Zugriff anfordern kann. Mögliche Optionen sind:

  • geolocation
  • media
  • notifications
  • midi
  • openExternal

validDomains

Optional, außer Erforderlich, wo angegeben

Eine Liste gültiger Domänen, von denen die App erwartet, Inhalte zu laden. Domain-Auflistungen können Platzhalter enthalten, zum Beispiel *.example.com. Die gültige Domäne entspricht genau einem Segment der Domäne. Wenn sie a.b.example.com entsprechen muss, verwenden Sie *.*.example.com. Wenn Die Registerkartenkonfiguration oder die Inhalts-UI zu einer anderen Domäne wechseln muss, die nicht für die Registerkartenkonfiguration verwendet wird, muss diese Domäne hier angegeben werden.

Hinweis

Office-Add-Ins, die mit einer extensions Eigenschaft im Manifest konfiguriert sind, ignorieren Domänen, die einen Wildcard enthalten. Wenn Ihre App ein Office-Add-In enthält, geben Sie den vollständigen Domänennamen für die Domänen an, auf die das Add-In zugreift.

Es ist jedoch nicht erforderlich, die Domänen von Identitätsanbietern, die Sie unterstützen möchten, in Ihre App einzuschließen. Wenn Sie sich beispielsweise mit einer Google-ID authentifizieren möchten, müssen Sie zu accounts.google.com umleiten. Sie dürfen jedoch nicht accounts.google.com in validDomains[]einschließen.

Wichtig

Fügen Sie keine Domänen hinzu, die außerhalb Ihrer Kontrolle liegen, weder direkt noch über Platzhalter. Beispielsweise yourapp.onmicrosoft.com ist gültig, aber *.onmicrosoft.com nicht gültig.

Das Objekt ist ein Array, wobei alle Elemente vom Typ string sind. Das maximale Element des Objekts ist 16 und die maximale Länge beträgt 2048 Zeichen.

webApplicationInfo

Optional – Objekt

Geben Sie Ihre Microsoft Entra App-ID und Graph-Informationen an, damit sich Benutzer nahtlos bei Ihrer Microsoft Entra-App anmelden können.

Name Typ Maximale Größe Erforderlich Beschreibung
id String ✔️ Microsoft Entra Anwendungs-ID der App. Diese ID muss eine GUID sein.
resource Zeichenfolge 2048 Zeichen Ressourcen-URL der App zum Abrufen des Authentifizierungstokens für SSO.

graphConnector

Optional – Objekt

Geben Sie die Graph-Connectorkonfiguration der App an. Wenn dies vorhanden ist, muss auch webApplicationInfo.id angegeben werden.

Name Typ Maximale Größe Erforderlich Beschreibung
notificationUrl string 2048 Zeichen ✔️ Die https:// URL, an die Graph-connector-Benachrichtigungen für die Anwendung gesendet werden müssen.

showLoadingIndicator

Optional – Boolescher Wert

Gibt an, ob der Ladeindikator angezeigt werden soll, wenn eine App oder Registerkarte geladen wird.
Standardwert: false

Hinweis

  • Wenn Sie in Ihrem App-Manifest die Option true auswählen showLoadingIndicator , ändern Sie die Inhaltsseiten Ihrer Registerkarten und Dialogfelder, um die Seite ordnungsgemäß zu laden, wie unter Anzeigen eines nativen Ladeindikatordokuments beschrieben.
  • Wenn Sie die Inhaltsseiten ihrer Registerkarte nicht ändern, wird die Registerkarten-App nicht geladen und zeigt den Fehler There was a problem reaching this appan.

isFullScreen

Optional – Boolescher Wert

Gibt an, wo eine persönliche App mit oder ohne Registerkartenkopfleiste gerendert wird.
Standardwert: false

Hinweis

isFullScreen funktioniert nur für Apps, die in Ihrer Organisation veröffentlicht wurden.

Aktivitäten

Optional – Objekt

Definiert die Eigenschaften, die Ihre App zum Posten eines Benutzeraktivitätsfeeds verwendet.

Name Typ Maximale Größe Erforderlich Beschreibung
activityTypes Array mit Objekten 128 Elemente Geben Sie die Arten von Aktivitäten an, die Ihre App in einem Benutzeraktivitätsfeed veröffentlichen kann. Der systemDefault Aktivitätstyp ist eine reservierte und ungültige Zeichenfolge.

activities.activityTypes

Name Typ Maximale Größe Erforderlich Beschreibung
type Zeichenfolge 32 Zeichen ✔️ Der Benachrichtigungstyp. Siehe unten.
description Zeichenfolge 128 Zeichen ✔️ Eine kurze Beschreibung der Benachrichtigung. Siehe unten.
templateText Zeichenfolge 128 Zeichen ✔️ Beispiel: "{actor} hat die Aufgabe {taskId} für Sie erstellt."
{
   "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"
         }
      ]
   }
}

configurableProperties

Optional – Array

Der configurableProperties-Block definiert die App-Eigenschaften, die Microsoft Teams-Administratoren anpassen können. Weitere Informationen finden Sie unter Aktivieren der App-Anpassung.

Hinweis

Es muss mindestens eine Eigenschaft definiert werden. Sie können in diesem Block maximal neun Eigenschaften definieren.

Sie können eine der folgenden Eigenschaften definieren:

  • name: Der Anzeigename der App.
  • shortDescription: Die Kurzbeschreibung der App.
  • longDescription: Die detaillierte Beschreibung der App.
  • smallImageUrl: Das Kontursymbol der App.
  • largeImageUrl: Das Farbsymbol der App.
  • accentColor: Die Farbe, die mit und als Hintergrund für Ihre Gliederungssymbole verwendet werden soll.
  • developerUrl: Die HTTPS-URL der Website des Entwicklers.
  • privacyUrl: Die HTTPS-URL der Datenschutzerklärung des Entwicklers.
  • termsOfUseUrl: Die HTTPS-URL der Nutzungsbedingungen des Entwicklers.

supportedChannelTypes

Optional – Array

Aktiviert Ihre App in nicht standardmäßigen Kanälen. Wenn Ihre App einen Teambereich unterstützt und diese Eigenschaft definiert ist, aktiviert Microsoft Teams Ihre App in jedem Kanaltyp entsprechend. Derzeit werden die Kanaltypen „Privat“ und „Freigegeben“ unterstützt.

Hinweis

  • Wenn Ihre App einen Teambereich unterstützt, funktioniert dieser in den Standardkanälen unabhängig von den in dieser Eigenschaft definierten Werten.
  • Ihre Anwendung kann die individuellen Eigenschaften der einzelnen Kanaltypen berücksichtigen, um ordnungsgemäß zu funktionieren. Informationen zum Aktivieren Ihrer Registerkarte für private und freigegebene Kanäle finden Sie unter Abrufen des Kontexts in privaten Kanälen und Abrufen von Kontext in freigegebenen Kanälen.

defaultBlockUntilAdminAction

Optional – Boolescher Wert

Ein -Wert, der angibt, ob eine App standardmäßig blockiert wird, bis der Administrator sie zulässt.
Standardwert: false

publisherDocsUrl

Optional – Zeichenfolge

Die https:// URL zu der Seite, die zusätzliche App-Informationen für die Administratoren bereitstellt. Die maximale Länge der Zeichenfolge beträgt 2048 Zeichen.

defaultInstallScope

Optional – Zeichenfolge

Gibt den standardmäßig für diese App definierten Installationsbereich an. Der definierte Bereich ist die Option, die auf der Schaltfläche angezeigt wird, wenn ein Benutzer versucht, die App hinzuzufügen. Mögliche Optionen sind:

  • personal
  • team
  • groupChat
  • meetings

defaultGroupCapability

Optional – Objekt

Wenn ein Gruppeninstallationsbereich ausgewählt ist, wird die Standardfunktion definiert, wenn der Benutzer die App installiert. Mögliche Optionen sind:

  • team
  • groupchat
  • meetings
Name Typ Maximale Größe Erforderlich Beschreibung
team String Wenn der ausgewählte Installationsbereich team ist, gibt dieses Feld die verfügbare Standardfunktion an.
Optionen: tab, bot oder connector.
groupchat String Wenn der ausgewählte Installationsbereich groupchat ist, gibt dieses Feld die verfügbare Standardfunktion an.
Optionen: tab, bot oder connector.
meetings String Wenn der ausgewählte Installationsbereich meetings ist, gibt dieses Feld die verfügbare Standardfunktion an.
Optionen: tab, bot oder connector.

subscriptionOffer

Optional – Objekt

Gibt das Ihrer App zugeordnete SaaS-Angebot an.

Name Typ Maximale Größe Erforderlich Beschreibung
offerId string 2048 Zeichen ✔️ Ein eindeutiger Bezeichner, der Ihre Publisher-ID und Angebots-ID enthält. Diese finden Sie im Partner Center. Sie müssen die Zeichenfolge als publisherId.offerId formatieren.

meetingExtensionDefinition

Optional – Objekt

Geben Sie die Besprechungserweiterungsdefinition an. Weitere Informationen finden Sie unter benutzerdefinierten Szenen im Zusammen-Modus in Teams.

Name Typ Maximale Größe Erforderlich Beschreibung
scenes Array mit Objekten 5 Elemente Unterstützte Besprechungsszenen.
supportsStreaming Boolesch Ein boolescher Wert, der angibt, ob eine App die Audio- und Videoinhalte der Besprechung an einen RTMP-Endpunkt (Real-Time Meeting Protocol) streamen kann.
Standardwert: false
videoFiltersConfigurationUrl Zeichenfolge 2048 Zeichen Die https:// URL zum Konfigurieren der Videofilter.
supportsAnonymousGuestUsers Boolesch Ein boolescher Wert, der angibt, ob die App den Zugriff durch anonyme Gastbenutzer unterstützt.
Standardwert: false

meetingExtensionDefinition.scenes

Name Typ Maximale Größe Erforderlich Beschreibung
id String ✔️ Der eindeutige Bezeichner für die Szene. Diese ID muss eine GUID sein.
name Zeichenfolge 128 Zeichen ✔️ Der Name der Szene.
file Zeichenfolge 2048 Zeichen ✔️ Der relative Dateipfad zur JSON-Metadatendatei der Szenen.
preview Zeichenfolge 2048 Zeichen ✔️ Der relative Dateipfad zum PNG-Vorschausymbol der Szenen.
maxAudience Ganze Zahl 50 ✔️ Die maximale Anzahl von Zielgruppen, die in der Szene unterstützt werden.
seatsReservedForOrganizersOrPresenters Ganze Zahl 50 ✔️ Die Anzahl der Plätze, die für Organisatoren oder Moderatoren reserviert sind.

meetingExtensionDefinition.videoFilters

Dieses Objekt gibt von Besprechungen unterstützte Videofilter an.

Name Typ Maximale Größe Erforderlich Beschreibung
id String ✔️ Der eindeutige Bezeichner für den Videofilter. Diese ID muss eine GUID sein.
name Zeichenfolge 128 Zeichen ✔️ Der Name des Videofilters.
thumbnail Zeichenfolge 2048 Zeichen ✔️ Der relative Dateipfad zur Miniaturansicht des Videofilters.

Autorisierung

Optional – Objekt

Hinweis

authorization wird nur für die App-Manifestversion 1.12 oder höher unterstützt.

Spezifizieren und konsolidieren Sie autorisierungsbezogene Informationen für die App.

Name Typ Maximale Größe Erforderlich Beschreibung
permissions Object Liste der Berechtigungen, welche die App benötigt, um zu funktionieren.

authorization.permissions

Name Typ Maximale Größe Erforderlich Beschreibung
resourceSpecific Array mit Objekten 16 Elemente Berechtigungen, die den Datenzugriff auf Ebene der Ressourceninstanz schützen.

authorization.permissions.resourceSpecific

Name Typ Maximale Größe Erforderlich Beschreibung
type String ✔️ Der Typ der ressourcenspezifischen Zustimmung (RSC)-Berechtigung.
Optionen: Application und Delegated.
name Zeichenfolge 128 Zeichen ✔️ Der Name der RSC-Berechtigung. Weitere Informationen finden Sie unter RSC-Anwendungsberechtigungen und delegierte RSC-Berechtigungen.

RSC-Anwendungsberechtigungen

Anwendungsberechtigungen ermöglichen der App den Zugriff auf Daten, ohne dass ein Benutzer angemeldet ist. Informationen zu Anwendungsberechtigungen finden Sie unter RSC-Berechtigungen für Microsoft Graph und Microsoft BotSDK.

Delegierte RSC-Berechtigungen

Delegierte Berechtigungen ermöglichen der App den Zugriff auf Daten im Namen des angemeldeten Benutzers.

  • Delegierte RSC-Berechtigungen für ein Team

    Name Beschreibung
    ChannelMeetingParticipant.Read.Group Ermöglicht es der App, im Namen des angemeldeten Benutzers die Teilnehmerinformationen (Name, Rolle, ID, Beitritts- und Abwesenheitszeiten) von Channel-Meetings zu lesen, die mit diesem Team verbunden sind.
    ChannelMeetingIncomingAudio.Detect.Group Ermöglicht der App das Erkennen eingehender Audiodaten in Kanalbesprechungen, die dem Team zugeordnet sind.
    ChannelMeetingActiveSpeaker.Read.Group Ermöglicht der App das Lesen der Teilnehmer, die derzeit Audiodaten an die Kanalbesprechungen senden, die dem Team zugeordnet sind.
    ChannelMeetingAudioVideo.Stream.Group Ermöglicht der App das Streamen von Audio-Video-Inhalten aus Kanalbesprechungen, die dem Team zugeordnet sind.
    InAppPurchase.Allow.Group Ermöglicht es der App, Marketplace-Angebote für Benutzer im Team anzuzeigen und ihre Einkäufe innerhalb der App im Namen des angemeldeten Benutzers abzuschließen.
    ChannelMeetingStage.Write.Group Ermöglicht der App das Anzeigen von Inhalten auf der Besprechungsphase in Kanalbesprechungen, die dem Team zugeordnet sind, im Namen des angemeldeten Benutzers.
    LiveShareSession.ReadWrite.Group Ermöglicht der App das Erstellen und Synchronisieren von Live Share-Sitzungen für Besprechungen, die dem Team zugeordnet sind. Stellen Sie zugriffsbezogene Informationen zur Besprechungsliste bereit, z. B. die Besprechungsrolle des Mitglieds, im Namen des angemeldeten Benutzers.
    MeetingParticipantReaction.Read.Group Ermöglicht der App das Lesen von Reaktionen von Teilnehmern in Kanalbesprechungen, die dem Team zugeordnet sind.
  • DELEGIERTE RSC-Berechtigungen für Chats oder Besprechungen

    Name Beschreibung
    InAppPurchase.Allow.Chat Ermöglicht es der App, Marketplace-Angebote für die Benutzer im Chat und jede zugehörige Besprechung anzuzeigen und ihre Einkäufe innerhalb der App im Namen des angemeldeten Benutzers abzuschließen.
    MeetingStage.Write.Chat Ermöglicht der App das Anzeigen von Inhalten auf der Besprechungsphase in Besprechungen, die dem Chat zugeordnet sind, im Namen des angemeldeten Benutzers.
    OnlineMeetingParticipant.Read.Chat Ermöglicht der App das Lesen von Teilnehmerinformationen, einschließlich Name, Rolle, ID, Beigetretener und verlassener Zeiten, der Besprechung, die dem Chat zugeordnet ist, im Namen des angemeldeten Benutzers.
    OnlineMeetingParticipant.ToggleIncomingAudio.Chat Ermöglicht der App das Umschalten eingehender Audiodaten für Teilnehmer an Besprechungen, die dem Chat zugeordnet sind, im Namen des angemeldeten Benutzers.
    LiveShareSession.ReadWrite.Chat Ermöglicht der App das Erstellen und Synchronisieren von Live Share-Sitzungen für Besprechungen, die dem Chat zugeordnet sind. Stellen Sie zugriffsbezogene Informationen zur Besprechungsliste bereit, z. B. die Besprechungsrolle des Mitglieds, im Namen des angemeldeten Benutzers.
    MeetingParticipantReaction.Read.Chat Ermöglicht der App das Lesen von Reaktionen von Teilnehmern in Besprechungen, die dem Chat zugeordnet sind.
    OnlineMeetingIncomingAudio.Detect.Chat Ermöglicht der App das Erkennen von Änderungen im status eingehender Audiodaten in Besprechungen, die dem Chat zugeordnet sind, im Namen des angemeldeten Benutzers.
    OnlineMeetingActiveSpeaker.Read.Chat Ermöglicht der App das Lesen von Teilnehmern, die derzeit Audiodaten an die Besprechungen senden, die dem Chat zugeordnet sind.
    OnlineMeetingAudioVideo.Stream.Chat Ermöglicht der App das Streamen von Audiovideoinhalten von Besprechungen, die dem Chat zugeordnet sind.
  • Delegierte RSC-Berechtigungen für Benutzer

    Name Beschreibung
    CameraStream.Read.User Ermöglicht der App das Lesen des Kameradatenstroms des Benutzers.
    InAppPurchase.Allow.User Ermöglicht es der App, dem Benutzer Angebote auf dem Marktplatz zu zeigen und die Einkäufe des Benutzers innerhalb der App im Namen des angemeldeten Benutzers abzuschließen.
    OutgoingVideoStream.Write.User Ermöglicht der App, das ausgehende Video des Benutzers zu ändern.
    MicrophoneStream.Read.User Ermöglicht der App das Lesen des Mikrofonstreams des Benutzers.
    MeetingParticipantReaction.Read.User Ermöglicht der App, die Reaktionen von Benutzern während der Teilnahme an einer Besprechung zu lesen.

Erweiterungen

Optional – Objekt

Die extensions -Eigenschaft gibt Outlook-Add-Ins innerhalb eines App-Manifests an und vereinfacht die Verteilung und den Erwerb im gesamten Microsoft 365-Ökosystem. Jede App unterstützt nur eine Erweiterung.

Name Typ Maximale Größe Erforderlich Beschreibung
requirements Object Gibt die Client- oder Hostanforderungen für die Erweiterung an.
runtimes Array Konfiguriert die Laufzeiten und Aktionen, die von jedem Erweiterungspunkt verwendet werden können. Weitere Informationen finden Sie unter Laufzeiten in Office-Add-Ins.
ribbons Array Definiert den Erweiterungspunkt des Menübands.
autoRunEvents Array Definiert den ereignisbasierten Aktivierungserweiterungspunkt.
alternates Array Gibt die Beziehung zu alternativen vorhandenen Microsoft 365-Lösungen an. Es wird verwendet, um Add-Ins desselben Herausgebers mit überlappender Funktionalität auszublenden oder zu priorisieren.
audienceClaimUrl Zeichenfolge 2048 Zeichen Gibt die URL für Ihre Erweiterung an und wird zum Überprüfen von Exchange-Benutzeridentitätstoken verwendet. Weitere Informationen finden Sie unter Innerhalb des Exchange-Identitätstokens.

Weitere Informationen finden Sie unter Office-Add-Ins-Manifest für Microsoft 365.

extensions.requirements

Das extensions.requirements -Objekt gibt die Bereiche, Formfaktoren und Anforderungssätze der Office JavaScript-Bibliothek an, die auf dem Office-Client unterstützt werden müssen, damit das Add-In installiert werden kann. Anforderungen werden auch für die untergeordneten Eigenschaften "ribbon", "runtime", "alternates" und "autoRunEvents" unterstützt, um selektiv einige Features des Add-Ins herauszufiltern. Weitere Informationen finden Sie unter Angeben von Office-Add-In-Anforderungen im einheitlichen Manifest für Microsoft 365.

Name Typ Maximale Größe Erforderlich Beschreibung
requirements.capabilities Array Identifiziert die Anforderungssätze.
Optionen: name (erforderlich), minVersion, maxVersion
requirements.capabilities.name String ✔️ Gibt den Namen des Anforderungssatzes an.
requirements.capabilities.minVersion String Gibt die Mindestversion für den Anforderungssatz an.
requirements.capabilities.maxVersion String Gibt die maximale Version für den Anforderungssatz an.
requirements.scopes Array von Enumerationen 1 Identifiziert die Bereiche, in denen das Add-In ausgeführt werden kann, und definiert die Microsoft 365-Anwendungen, in denen die Erweiterung ausgeführt werden kann. Beispiel mail : (Outlook).
Unterstützter Wert: mail
requirements.formFactors Array von Enumerationen Identifiziert die Formfaktoren, die das Add-In unterstützen.
Unterstützte Werte: mobile, desktop

extensions.runtimes

Das extensions.runtimes Array konfiguriert die Sätze von Laufzeiten und Aktionen, die jeder Erweiterungspunkt verwenden kann.

Name Typ Maximale Größe Erforderlich Beschreibung
id String 64 Zeichen ✔️ Gibt die ID für die Runtime an.
type Zeichenfolgenenumeration ✔️ Gibt den Typ der Laufzeit an. Der unterstützte Enumerationswert für die browserbasierte Runtime ist general.
code Objekt ✔️ Gibt den Speicherort des Codes für die Runtime an. Basierend auf runtime.typekönnen Add-Ins entweder eine JavaScript-Datei oder eine HTML-Seite mit einem eingebetteten script Tag verwenden, das die URL einer JavaScript-Datei angibt. Beide URLs sind in Situationen erforderlich, in denen unsicher runtime.type ist.
code.page URL ✔️ Gibt die URL der Webseite an, die ein eingebettetes script Tag enthält, das die URL einer JavaScript-Datei angibt (die in eine browserbasierte Runtime geladen werden soll).
code.script URL Gibt die URL der JavaScript-Datei an, die in die reine JavaScript-Runtime geladen werden soll.
lifetime Zeichenfolgenenumeration Gibt die Lebensdauer der Laufzeit an. Laufzeiten mit einer short Lebensdauer behalten den Zustand nicht über Alle Ausführungen hinweg bei, während Laufzeiten mit einer long Lebensdauer dies tun. Weitere Informationen finden Sie unter Runtimes in Office-Add-Ins.
actions Array Gibt den Satz von Aktionen an, die von der Runtime unterstützt werden. Eine Aktion führt entweder eine JavaScript-Funktion aus oder öffnet eine Ansicht, z. B. einen Aufgabenbereich.
actions.id String 64 Zeichen ✔️ Gibt die ID für die Aktion an, die an die Codedatei übergeben wird.
actions.type String ✔️ Gibt den Aktionstyp an. Der executeFunction Typ führt eine JavaScript-Funktion aus, ohne darauf zu warten, dass sie abgeschlossen ist, und der openPage Typ öffnet eine Seite in einer bestimmten Ansicht.
actions.displayName String 64 Zeichen Gibt den Anzeigenamen der Aktion an, und es ist nicht die Bezeichnung einer Schaltfläche oder eines Menüelements, die die Aktion aufruft (die mit tabs.groups.controls.labelkonfiguriert ist).
actions.pinnable Boolesch Gibt an, dass ein Aufgabenbereich das Anheften unterstützt, sodass der Aufgabenbereich geöffnet bleibt, wenn der Benutzer die Auswahl ändert.
Standardwert: false
actions.view String 64 Zeichen Gibt die Ansicht an, in der die Seite geöffnet werden muss. Sie wird nur verwendet, wenn actions.type ist openPage.
actions.multiselect Boolesch Gibt an, ob der Endbenutzer mehrere Elemente auswählen kann, z. B. mehrere E-Mail-Nachrichten, und die Aktion auf alle anwenden kann.
actions.supportsNoItemContext Boolesch Ermöglicht die Aktivierung von Aufgabenbereich-Add-Ins, ohne dass der Lesebereich aktiviert oder eine Nachricht ausgewählt ist.
requirements Objekt Gibt die Bereiche, formFactors und Anforderungssätze der Office JavaScript-Bibliothek an, die auf dem Office-Client unterstützt werden müssen, damit die Runtime in das Add-In eingeschlossen werden kann. Weitere Informationen finden Sie unter Angeben von Office-Add-In-Anforderungen im einheitlichen Manifest für Microsoft 365.
requirements.capabilities Array Identifiziert die Anforderungssätze.
Optionen: name (erforderlich), minVersion, maxVersion
requirements.capabilities.name String ✔️ Gibt den Namen des Anforderungssatzes an.
requirements.capabilities.minVersion String Gibt die Mindestversion für den Anforderungssatz an.
requirements.capabilities.maxVersion String Gibt die maximale Version für den Anforderungssatz an.
requirements.scopes Array von Enumerationen 1 Identifiziert die Bereiche, in denen das Add-In ausgeführt werden kann, und definiert die Microsoft 365-Anwendungen, in denen die Erweiterung ausgeführt werden kann. Beispiel mail : (Outlook).
Unterstützter Wert: mail
requirements.formFactors Array von Enumerationen Identifiziert die Formfaktoren, die das Add-In unterstützen.
Unterstützte Werte: mobile, desktop

Informationen zur Verwendung extensions.runtimesvon finden Sie unter Erstellen von Add-In-Befehlen, Konfigurieren der Runtime für einen Aufgabenbereich und Konfigurieren der Laufzeit für den Funktionsbefehl.

extensions.ribbons

Die extensions.ribbons -Eigenschaft bietet die Möglichkeit, Add-In-Befehle (Schaltflächen und Menüelemente) zum Menüband der Microsoft 365-Anwendung hinzuzufügen. Die Menübanddefinition wird aus dem Array basierend auf den Anforderungen und der ersten Reihenfolge ausgewählt.

Name Typ Maximale Größe Erforderlich Beschreibung
contexts Array 7 Gibt das Microsoft 365-Anwendungsfenster an, in dem die Menübandanpassung für den Benutzer verfügbar ist. Jedes Element im Array ist ein Element eines Zeichenfolgenarrays.
Unterstützte Werte: mailRead, mailCompose, meetingDetailsOrganizer, meetingDetailsAttendee, onlineMeetingDetailsOrganizer, logEventMeetingDetailsAttendeedefault
requirements Objekt Gibt die Bereiche, formFactors und Office JavaScript Library-Anforderungssätze an, die auf dem Office-Client unterstützt werden müssen, damit die Menübandanpassung angezeigt wird. Weitere Informationen finden Sie unter Angeben von Office-Add-In-Anforderungen im einheitlichen Manifest für Microsoft 365.
requirements.capabilities Array Identifiziert die Anforderungssätze.
Optionen: name (erforderlich), minVersion, maxVersion
requirements.capabilities.name String ✔️ Gibt den Namen des Anforderungssatzes an.
requirements.capabilities.minVersion String Gibt die Mindestversion für den Anforderungssatz an.
requirements.capabilities.maxVersion String Gibt die maximale Version für den Anforderungssatz an.
requirements.scopes Array von Enumerationen 1 Identifiziert die Bereiche, in denen das Add-In ausgeführt werden kann, und definiert die Microsoft 365-Anwendungen, in denen die Erweiterung ausgeführt werden kann. Beispiel mail : (Outlook).
Unterstützter Wert: mail
requirements.formFactors Array von Enumerationen Identifiziert die Formfaktoren, die das Add-In unterstützen.
Unterstützte Werte: mobile, desktop
tabs Array ✔️ Konfiguriert die benutzerdefinierten Registerkarten im Menüband der Microsoft 365-Anwendung.
tabs.id String 64 Zeichen Gibt die ID für die Registerkarte in der App an.
tabs.builtinTabId String 64 Zeichen Gibt die ID einer integrierten Registerkarte des Office-Menübands an. Die möglichen Werte variieren je nach Office-Hostanwendung. Derzeit werden nur Outlook-Add-Ins unterstützt, und der einzige zulässige Wert für Outlook ist "TabDefault". Die Standardregisterkarte hängt davon ab, wo das Outlook-Add-In angezeigt wird, wie in der Eigenschaft "extensions.ribbons.contexts" festgelegt. Im Standard Outlook-Fensters ist dies die Registerkarte Start, in einem Nachrichtenfenster die Registerkarte Nachricht und in einem Besprechungsfenster die Registerkarte Besprechung.
tabs.label String 64 Zeichen Gibt den Text an, der für die Registerkarte angezeigt wird.
tabs.position Objekt Konfiguriert die Position der benutzerdefinierten Registerkarte relativ zu anderen Registerkarten im Menüband.
tabs.position.builtinTabId String 64 Zeichen ✔️ Gibt die ID der integrierten Registerkarte an, neben der die benutzerdefinierte Registerkarte positioniert werden soll. Weitere Informationen finden Sie unter Suchen der IDs von Steuerelementen und Steuerelementgruppen.
tabs.position.align Zeichenfolgenenumeration ✔️ Definiert die Ausrichtung der benutzerdefinierten Registerkarte relativ zur angegebenen integrierten Registerkarte.
Unterstützte Werte: after, before
tabs.groups Array Definiert Gruppen von Steuerelementen auf einer Registerkarte des Menübands auf einem nicht mobilen Gerät. Informationen zu mobilen Geräten finden Sie tabs.customMobileRibbonGroups unten.
tabs.groups.id String 64 Zeichen Gibt die ID für die Registerkartengruppe innerhalb der App an. Sie muss sich von jeder integrierten Gruppen-ID in der Microsoft 365-Anwendung und jeder anderen benutzerdefinierten Gruppe unterscheiden.
tabs.groups.label String 64 Zeichen Gibt den text an, der für die Gruppe angezeigt wird.
tabs.groups.icons Array Gibt die Symbole an, die für die Gruppe angezeigt werden.
tabs.groups.icons.size Zahl ✔️ Gibt die Größe des Symbols in Pixeln an, das als 16,,,,2432,40,48,,6480 aufgezählt20 wird.
Erforderliche Imagegrößen: 16, 32, 80.
tabs.groups.icons.url URL ✔️ Gibt die absolute URL des Symbols an.
tabs.groups.controls Array Konfiguriert die Schaltflächen und Menüs in der Gruppe.
tabs.groups.controls.id String 64 Zeichen ✔️ Gibt die ID für das Steuerelement innerhalb der App an. Sie muss sich von jeder integrierten Steuerelement-ID in der Microsoft 365-Anwendung und jedem anderen benutzerdefinierten Steuerelement unterscheiden.
tabs.groups.controls.items Array Konfiguriert die Elemente für ein Menüsteuerelement.
tabs.groups.controls.items.id String ✔️ Gibt die ID für die Elemente in der App an.
tabs.groups.controls.items.type Zeichenfolgenenumeration ✔️ Definiert den Typ der Steuerelementelemente.
Unterstützte Werte: menu, button
tabs.groups.controls.items.label String 64 Zeichen ✔️ Gibt den Text an, der für die Elemente angezeigt wird.
tabs.groups.controls.items.icons Array Konfiguriert die Symbole für das benutzerdefinierte Element.
tabs.groups.controls.items.icons.size Zahl ✔️ Gibt die Größe des Symbols in Pixeln an, das als 16,,,,2432,40,48,,6480 aufgezählt20 wird.
Erforderliche Imagegrößen: 16, 32, 80.
tabs.groups.controls.items.icons.url URL ✔️ Gibt die absolute URL des Symbols an.
tabs.groups.controls.items.supertip ✔️ Konfiguriert einen Supertip für das benutzerdefinierte Element. Ein Supertip ist ein Benutzeroberflächenfeature, das ein kurzes Feld mit Hilfeinformationen zu einem Steuerelement anzeigt, wenn der Cursor darauf zeigt. Das Feld kann mehrere Textzeilen enthalten.
tabs.groups.controls.items.supertip.title String 64 Zeichen ✔️ Gibt den Titeltext des Supertips an.
tabs.groups.controls.items.supertip.description Zeichenfolge 128 Zeichen ✔️ Gibt die Beschreibung des Supertips an.
tabs.groups.controls.items.actionId String 64 Zeichen ✔️ Gibt die ID der Aktion an, die ausgeführt wird, wenn ein Benutzer das Steuerelement oder das Menüelement auswählt. Die actionId muss mit runtime.actions.idübereinstimmen.
tabs.groups.controls.items.enabled Boolesch Gibt an, ob das Steuerelement anfänglich aktiviert ist.
Standardwert: true
tabs.groups.controls.items.overriddenByRibbonApi Boolesch Gibt an, ob eine Gruppe, schaltfläche, ein Menü oder ein Menüelement in Anwendungs- und Plattformkombinationen ausgeblendet wird, die die API (Office.ribbon.requestCreateControls) unterstützen, die benutzerdefinierte kontextbezogene Registerkarten auf dem Menüband installiert.
Standardwert: false
tabs.groups.controls.type String ✔️ Definiert den Steuerelementtyp.
Unterstützte Werte: button, menu
tabs.groups.controls.builtinControlId String 64 Zeichen ✔️ Gibt die ID eines vorhandenen Microsoft 365-Steuerelements an. Weitere Informationen finden Sie unter Suchen der IDs von Steuerelementen und Steuerelementgruppen.
tabs.groups.controls.label String 64 Zeichen ✔️ Gibt den für das Steuerelement angezeigten Text an.
tabs.groups.controls.icons Array ✔️ Definiert die Symbole für das Steuerelement. Es müssen mindestens drei untergeordnete Objekte vorhanden sein; eine mit size jeweils den Eigenschaften 16, 32und 80 Pixeln.
tabs.groups.controls.icons.size Zahl ✔️ Gibt die Größe des Symbols in Pixeln an, das als 16,,,,2432,40,48,,6480 aufgezählt20 wird.
Erforderliche Imagegröße: 16, 32, 80
tabs.groups.controls.icons.url URL Gibt die absolute URL zum Symbol an.
tabs.groups.controls.supertip Objekt ✔️ Konfiguriert einen Supertip für das Steuerelement.
tabs.groups.controls.supertip.title String 64 Zeichen ✔️ Gibt den Titeltext des Supertips an.
tabs.groups.controls.supertip.description Zeichenfolge 128 Zeichen ✔️ Gibt die Beschreibung des Supertips an.
tabs.groups.controls.actionId String 64 Zeichen Erforderlich, wenn der Steuerelementtyp ist button. Verwenden Sie nicht, wenn der Steuerelementtyp ist menu. Gibt die ID der Aktion an, die ausgeführt wird, wenn ein Benutzer das Steuerelement auswählt. Der actionId muss mit der runtime.actions.id -Eigenschaft einer Aktion im runtimes -Objekt übereinstimmen.
tabs.groups.controls.enabled Boolesch Gibt an, ob das Steuerelement anfänglich aktiviert ist.
Standardwert: true
tabs.groups.controls.overriddenByRibbonApi Boolesch Gibt an, ob eine Gruppe, schaltfläche, ein Menü oder ein Menüelement in Anwendungs- und Plattformkombinationen ausgeblendet wird, die die API (Office.ribbon.requestCreateControls) unterstützen, die benutzerdefinierte Kontextregisterkarten auf dem Menüband installiert.
Standardwert: false
tabs.groups.builtinGroupId String 64 Zeichen Gibt die ID einer integrierten Gruppe an. Weitere Informationen finden Sie unter Suchen der IDs von Steuerelementen und Steuerelementgruppen.
tabs.customMobileRibbonGroups Array 10 Definiert Gruppen von Steuerelementen auf der Standardregisterkarte des Menübands auf einem mobilen Gerät. Diese Arrayeigenschaft kann nur auf Registerkartenobjekten vorhanden sein, die über eine tabs.builtinTabId Eigenschaft verfügen, die auf "DefaultTab" festgelegt ist. Für nicht mobile Geräte siehe tabs.groups oben.
tabs.customMobileRibbonGroups.id String 250 Zeichen ✔️ Gibt die ID der Gruppe an. Sie muss sich von jeder integrierten Gruppen-ID in der Microsoft 365-Anwendung und jeder anderen benutzerdefinierten Gruppe unterscheiden.
tabs.customMobileRibbonGroups.label Zeichenfolge 32 Zeichen ✔️ Gibt die Bezeichnung für die Gruppe an.
tabs.customMobileRibbonGroups.controls Array 20 ✔️ Definiert die Steuerelemente in der Gruppe. Es werden nur mobile Schaltflächen unterstützt.
tabs.customMobileRibbonGroups.controls.id String 250 Zeichen ✔️ Gibt die ID des Steuerelements an, z. B. "msgReadFunctionButton".
tabs.customMobileRibbonGroups.controls.type Zeichenfolgenenumeration ✔️ Gibt den Typ des Steuerelements an. Derzeit wird nur "MobileButton" unterstützt.
tabs.customMobileRibbonGroups.controls.label Zeichenfolge 32 Zeichen ✔️ Gibt die Bezeichnung des Steuerelements an.
tabs.customMobileRibbonGroups.controls.actionId String 64 Zeichen ✔️ Gibt die ID der Aktion an, die ausgeführt wird, wenn ein Benutzer das Steuerelement auswählt. Der actionId muss mit der runtime.actions.id -Eigenschaft einer Aktion im runtimes -Objekt übereinstimmen.
tabs.customMobileRibbonGroups.controls.icons Array 9 ✔️ Gibt die Symbole an, die abhängig von den Abmessungen und dpi des Bildschirms des mobilen Geräts auf dem Steuerelement angezeigt werden. Es müssen genau 9 Symbole vorhanden sein.
tabs.customMobileRibbonGroups.controls.icons.size Zahlenenumerung ✔️ Größe des Symbols in Pixel. Die möglichen Größen sind 25, 32 und 48. Für jeden möglichen Wert der -Eigenschaft der Symbole scale muss genau eine größe vorhanden sein.
tabs.customMobileRibbonGroups.controls.icons.url Zeichenfolge 2048 Zeichen ✔️ Die vollständige, absolute URL der Bilddatei des Symbols.
tabs.customMobileRibbonGroups.controls.icons.scale Zahlenenumerung ✔️ Gibt die UIScreen.scale-Eigenschaft für iOS-Geräte an. Die möglichen Werte sind 1, 2 und 3. Für jeden möglichen Wert der Eigenschaft der Symbole size muss genau ein Wert vorhanden sein.

Informationen zur Verwendung extensions.ribbonsvon finden Sie unter Erstellen von Add-In-Befehlen, Konfigurieren der Benutzeroberfläche für den Aufgabenbereichbefehl und Konfigurieren der Benutzeroberfläche für den Funktionsbefehl.

extensions.autoRunEvents

Die extensions.autoRunEvents -Eigenschaft definiert ereignisbasierte Aktivierungserweiterungspunkte.

Name Typ Maximale Größe Erforderlich Beschreibung
events Array 20 ✔️ Konfiguriert das Ereignis, das bewirkt, dass Aktionen in einem Outlook-Add-In automatisch ausgeführt werden. Weitere Informationen finden Sie beispielsweise unter Verwenden intelligenter Warnungen und der OnMessageSend Ereignisse und OnAppointmentSend in Ihren Outlook-Add-Ins.
events.type String 64 Zeichen Gibt den Ereignistyp an. Informationen zu unterstützten Typen finden Sie unter Unterstützte Ereignisse.
events.actionId String 64 Zeichen Identifiziert die Aktion, die ausgeführt wird, wenn das Ereignis ausgelöst wird. Die actionId muss mit runtime.actions.idübereinstimmen.
events.options Objekt Konfiguriert, wie Outlook auf das Ereignis reagiert.
events.options.sendMode String ✔️ Gibt die Aktionen an, die während einer E-Mail-Sendeaktion ausgeführt werden sollen.
Unterstützte Werte: promptUser, softBlock, block. Weitere Informationen finden Sie unter Verfügbare Sendemodusoptionen.
requirements Objekt Gibt die Bereiche, formFactors und Anforderungssätze der Office JavaScript-Bibliothek an, die auf dem Office-Client unterstützt werden müssen, damit der Ereignisbehandlungscode ausgeführt werden kann. Weitere Informationen finden Sie unter Angeben von Office-Add-In-Anforderungen im einheitlichen Manifest für Microsoft 365.
requirements.capabilities Array Identifiziert die Anforderungssätze.
Optionen: name (erforderlich), minVersion, maxVersion
requirements.capabilities.name String ✔️ Gibt den Namen des Anforderungssatzes an.
requirements.capabilities.minVersion String Gibt die Mindestversion für den Anforderungssatz an.
requirements.capabilities.maxVersion String Gibt die maximale Version für den Anforderungssatz an.
requirements.scopes Array von Enumerationen 1 Identifiziert die Bereiche, in denen das Add-In ausgeführt werden kann, und definiert die Microsoft 365-Anwendungen, in denen die Erweiterung ausgeführt werden kann. Beispiel mail : (Outlook).
Unterstützter Wert: mail
requirements.formFactors Array von Enumerationen Identifiziert die Formfaktoren, die das Add-In unterstützen.
Unterstützte Werte: mobile, desktop

extensions.alternates

Die extensions.alternates -Eigenschaft wird verwendet, um bestimmte marktinterne Add-Ins auszublenden oder zu priorisieren, wenn Sie mehrere Add-Ins mit überlappenden Funktionen veröffentlicht haben.

Name Typ Maximale Größe Erforderlich Beschreibung
prefer Object Gibt die Abwärtskompatibilität mit einem entsprechenden COM-Add-In, XLL-Add-In oder beidem an.
prefer.comAddin Objekt Gibt ein COM-Add-In an, das anstelle des Microsoft 365-Web-Add-Ins für Windows verwendet werden muss.
prefer.comAddin.progId String 64 Zeichen ✔️ Gibt den Anwendungstyp an, in dem die Erweiterung ausgeführt werden kann.
hide Objekt Konfiguriert, wie ein anderes Add-In ausgeblendet wird, das Sie bei jeder Installation des Add-Ins veröffentlicht haben, damit Benutzer nicht beides auf der Microsoft 365-Benutzeroberfläche sehen. Verwenden Sie diese Eigenschaft beispielsweise, wenn Sie zuvor ein Add-In veröffentlicht haben, das das alte XML-App-Manifest verwendet, und Sie es durch eine Version ersetzen, die das neue JSON-App-Manifest verwendet.
hide.storeOfficeAddin Objekt Gibt ein in Microsoft AppSource verfügbares Microsoft 365-Add-In an.
hide.storeOfficeAddin.officeAddinId String 64 Zeichen ✔️ Gibt die ID des auszublendenden Add-Ins im Markt an. Die GUID stammt aus der App-Manifesteigenschaft id , wenn das marktinterne Add-In das JSON-App-Manifest verwendet. Die GUID wird aus dem <Id> -Element übernommen, wenn das marktinterne Add-In das XML-App-Manifest verwendet.
hide.storeOfficeAddin.assetId String 64 Zeichen ✔️ Gibt die AppSource-Ressourcen-ID des im Markt befindlichen Add-Ins an, das ausgeblendet werden soll.
hide.customOfficeAddin Objekt Konfiguriert das Ausblenden eines marktinternen Add-Ins, das nicht über AppSource verteilt wird.
hide.customOfficeAddin.officeAddinId String 64 Zeichen ✔️ Gibt die ID des auszublendenden Add-Ins im Markt an. Die GUID stammt aus der App-Manifesteigenschaft id , wenn das marktinterne Add-In das JSON-App-Manifest verwendet. Die GUID wird aus dem <Id> -Element übernommen, wenn das marktinterne Add-In das XML-App-Manifest verwendet.
requirements Objekt Gibt die Bereiche, formFactors und Office JavaScript Library-Anforderungssätze an, die auf dem Office-Client unterstützt werden müssen, damit die Eigenschaften "hide", "prefer" oder "alternateIcons" wirksam werden. Weitere Informationen finden Sie unter Angeben von Office-Add-In-Anforderungen im einheitlichen Manifest für Microsoft 365.
requirements.capabilities Array Identifiziert die Anforderungssätze.
Optionen: name (erforderlich), minVersion, maxVersion
requirements.capabilities.name String ✔️ Gibt den Namen des Anforderungssatzes an.
requirements.capabilities.minVersion String Gibt die Mindestversion für den Anforderungssatz an.
requirements.capabilities.maxVersion String Gibt die maximale Version für den Anforderungssatz an.
requirements.scopes Array von Enumerationen 1 Identifiziert die Bereiche, in denen das Add-In ausgeführt werden kann, und definiert die Microsoft 365-Anwendungen, in denen die Erweiterung ausgeführt werden kann. Beispiel mail : (Outlook).
Unterstützter Wert: mail
requirements.formFactors Array von Enumerationen Identifiziert die Formfaktoren, die das Add-In unterstützen.
Unterstützte Werte: mobile, desktop
alternateIcons Objekt Gibt die Standard Symbole an, die verwendet werden, um das Add-In in älteren Versionen von Office darzustellen. Diese Eigenschaft ist erforderlich , wenn das Office-Add-In in Office auf Mac, unbefristeten Office-Lizenzen und Microsoft 365-Abonnementversionen von Office unter Windows vor 2304 (Build 16320.00000) installiert werden kann.
alternateIcons.icon Objekt ✔️ Gibt die Eigenschaften der Bilddatei an, die zum Darstellen des Add-Ins verwendet wird.
alternateIcons.icon.size Zahlenenumerung ✔️ Diese Eigenschaft ist für die zukünftige Verwendung reserviert. Der Wert muss 64 sein.
alternateIcons.icon.url Zeichenfolge 2048 Zeichen ✔️ Gibt die vollständige, absolute URL der Bilddatei an, die zum Darstellen des Add-Ins verwendet wird. Das Symbolbild muss 64 x 64 Pixel groß sein und eines der folgenden Dateiformate verwenden: GIF, JPG, PNG, EXIF, BMP, TIFF.
alternateIcons.highResolutionIcon Objekt ✔️ Gibt die Eigenschaften der Bilddatei an, die verwendet wird, um das Add-In auf Bildschirmen mit hohem DPI-Wert darzustellen.
alternateIcons.highResolutionIcon.size Zahlenenumerung ✔️ Diese Eigenschaft ist für die zukünftige Verwendung reserviert. Der Wert muss 64 (nicht 128) sein.
alternateIcons.highResolutionIcon.url Zeichenfolge 2048 Zeichen ✔️ Gibt die vollständige, absolute URL der Bilddatei an, die verwendet wird, um das Add-In auf Bildschirmen mit hohem DPI-Wert darzustellen. Das Symbolbild muss 128 x 128 Pixel groß sein und eines der folgenden Dateiformate verwenden: GIF, JPG, PNG, EXIF, BMP, TIFF.

Aktionen

Hinweis

  • Aktionen für Microsoft 365 sind in der öffentlichen Entwicklervorschau verfügbar.

  • Aktionen werden für die Microsoft 365 (Office)-App für Web und Desktop unterstützt.

Das -Objekt ist ein Array von Aktionsobjekten. Dieser Block ist nur für Lösungen erforderlich, die Aktionen enthalten.

Name Typ Maximale Größe Erforderlich Beschreibung
id String 64 Zeichen ✔️ Eine Bezeichnerzeichenfolge im Standardgebietsschema, die zum Katalogisieren von Aktionen verwendet wird. Muss für alle Aktionen für diese App eindeutig sein. Beispiel: openDocInContoso.
displayName String 64 Zeichen ✔️ Ein Anzeigename für die Aktion. Großbuchstaben des Ersten Buchstabens und des Markennamens. Beispiel: Zu Lieferanten hinzufügen, In Contoso öffnen und Signaturen anfordern.
description String ✔️ Gibt die Beschreibung der Aktionen an.
intent Zeichenfolgenenumeration ✔️ Gibt den Typ der Absicht an. Die unterstützten Enumerationswerte sind open, addTound custom.
handlers Array mit Objekten ✔️ Ein Array von Handlerobjekten definiert, wie Aktionen verwaltet werden. Fügen Sie in der aktuellen öffentlichen Vorschau einen einzelnen Handler für jede Aktion hinzu.

actions.handlers

Definiert die Handler der Aktion. Die Handler sind ein Array von Handlerobjekten. Jede Aktion muss über mindestens einen Handler verfügen.

Name Typ Maximale Größe Erforderlich Beschreibung
supportedObjects Object Objekte, die definieren, welche Objekte diese Aktion auslösen können.
type Zeichenfolgenenumeration ✔️ Gibt den Handlertyp von Aktionen an. Der unterstützte Enumerationswert ist openPage.
pageInfo Objekt Erforderlich, wenn der Handlertyp ist openPage. Objekt, das Metadaten der zu öffnenden Seite enthält.

actions.handlers.supportedObjects

Die unterstützten Objekttypen, die diese Aktion auslösen können.

Name Typ Maximale Größe Erforderlich Beschreibung
file Object Unterstützte Dateitypen.
file.extensions Array aus Zeichenfolgen Array von Zeichenfolgen. Dateierweiterungen des Dateityps, den die Aktion auslösen kann. Beispiel: pdf und docx.

actions.handlers.pageInfo

Erforderlich, wenn der Handlertyp ist openPage. Objekt, das Metadaten der zu öffnenden Seite enthält.

Name Typ Maximale Größe Erforderlich Beschreibung
PageId String Wird der EntityId der statischen Registerkarte zugeordnet.
SubPageId String Wird der SubEntityId der statischen Registerkarte zugeordnet.

dashboardCards

Optional – Array

Definiert eine Liste von Karten, die an eine Dashboard angeheftet werden können, z. B. Microsoft Viva Connections, um eine zusammengefasste Ansicht von App-Informationen bereitzustellen. Weitere Informationen zum Erstellen von Karten für Viva Connections Dashboard finden Sie unter Übersicht über botgestützte Erweiterungen für adaptive Karten.

Die dashboardCards -Eigenschaft ist ein Array von Elementen des Typs object.

dashboardCards.dashboardCard

Definiert eine einzelne Dashboard Karte und deren Eigenschaften.

Name Typ Maximale Größe Erforderlich Beschreibung
id String ✔️ Ein eindeutiger Bezeichner für diesen Dashboard Karte. Die ID muss eine GUID sein.
displayName String 255 Zeichen ✔️ Anzeigename des Karte.
description String 255 Zeichen ✔️ Beschreibung des Karte.
pickerGroupId String ✔️ ID der Gruppe in der Karte-Auswahl. Die ID muss eine GUID sein.
icon Objekt Gibt das Symbol für die Karte an.
contentSource Objekt ✔️ Gibt die Quelle des Inhalts des Karte an
defaultSize String ✔️ Renderinggröße für die Dashboard Karte. Optionen: medium oder large.

dashboardCards.dashboardCard.icon

Definiert die Symboleigenschaften eines bestimmten Dashboard Karte.

Name Typ Maximale Größe Erforderlich Beschreibung
iconUrl Zeichenfolge 2048 Zeichen Position des Symbols für die Karte, die in der Toolbox und Karte angezeigt werden soll.
officeUIFabricIconName String 255 Zeichen Anzeigename des Office UI Fabric- oder Fluent-UI-Symbols für die Karte. Dieser Wert wird verwendet, wenn iconUrl nicht angegeben ist.

dashboardCards.dashboardCard.contentSource

Definiert die Inhaltsquelle einer bestimmten Dashboard Karte.

Name Typ Maximale Größe Erforderlich Beschreibung
sourceType String Stellt die Quelle des Inhalts eines Karte dar. Optionen: bot.
botConfiguration Objekt Die Konfiguration für die Botquelle. Erforderlich, wenn auf sourceType festgelegt botist.

dashboardCards.dashboardCard.contentSource.botConfiguration

Name Typ Maximale Größe Erforderlich Beschreibung
botId String Die eindeutige Microsoft-App-ID für den Bot, wie bei Bot Framework registriert. Die ID muss eine GUID sein.

Siehe auch