Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Namespace: microsoft.graph
Wichtig
Die APIs unter der /beta Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.
Veröffentlichen einer App im Microsoft Teams-App-Katalog.
Insbesondere veröffentlicht diese API die App im Katalog Ihrer organization (dem Mandanten-App-Katalog); die erstellte Ressource hat einen distributionMethod-Eigenschaftswert von organization.
Die requiresReview-Eigenschaft ermöglicht es jedem Benutzer, eine App zur Überprüfung durch einen Administrator zu übermitteln. Administratoren können diese Apps über diese API oder das Microsoft Teams Admin Center genehmigen oder ablehnen.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
| Weltweiter Service | US Government L4 | US Government L5 (DOD) | China, betrieben von 21Vianet |
|---|---|---|---|
| ✅ | ✅ | ✅ | ❌ |
Berechtigungen
Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
| Berechtigungstyp | Berechtigungen mit den geringsten Berechtigungen | Berechtigungen mit höheren Berechtigungen |
|---|---|---|
| Delegiert (Geschäfts-, Schul- oder Unikonto) | AppCatalog.Submit | AppCatalog.ReadWrite.All, Directory.ReadWrite.All |
| Delegiert (persönliches Microsoft-Konto) | Nicht unterstützt | Nicht unterstützt |
| Application | Nicht unterstützt | Nicht unterstützt |
Hinweis
- Die Berechtigung wird nur aus Gründen der
Directory.ReadWrite.AllAbwärtskompatibilität unterstützt. Es wird empfohlen, Ihre Lösungen zu aktualisieren, sodass sie eine alternative Berechtigung verwenden, die in der vorherigen Tabelle aufgeführt ist, und diese Berechtigungen in Zukunft nicht mehr verwenden. - Die
AppCatalog.SubmitBerechtigung erlaubt es Ihnen, Apps nur zur Überprüfung zu übermitteln, nicht um sie im Katalog zu veröffentlichen.
HTTP-Anforderung
POST /appCatalogs/teamsApps
So veröffentlichen Sie eine App, die überprüft werden muss:
POST /appCatalogs/teamsApps?requiresReview={Boolean}
Abfrageparameter
| Eigenschaft | Typ | Beschreibung |
|---|---|---|
| requiresReview | Boolean | Dieser optionale Abfrageparameter löst den App-Überprüfungsprozess aus. Benutzer mit Administratorrechten können Apps übermitteln, ohne eine Überprüfung auszulösen. Wenn Benutzer vor der Veröffentlichung eine Überprüfung anfordern möchten, müssen sie requiresReview auf truefestlegen. Ein Benutzer mit Administratorrechten kann sich entscheiden , requiresReview nicht festzulegen oder den Wert auf false festzulegen, und die App wird genehmigt und sofort veröffentlicht. |
Anforderungsheader
| Kopfzeile | Wert |
|---|---|
| Authorization | Bearer {token}. Erforderlich. Erfahren Sie mehr über Authentifizierung und Autorisierung. |
| Content-Type | application/zip. Erforderlich. |
Anforderungstext
Fügen Sie im Anforderungstext eine Teams-ZIP-Manifest-Nutzlast ein. Ausführliche Informationen finden Sie unter Erstellen eines App-Pakets.
Jede App im App-Katalog muss über eine eindeutige Manifest-ID verfügen.
Antwort
Bei erfolgreicher Ausführung gibt diese Methode einen 200 OK Antwortcode und ein teamsApp-Objekt zurück. Wenn das App-Manifest Überprüfungsfehler aufweist, gibt die Anforderung eine Fehlerantwort mit Details zu den Schemafehlern zurück.
Fehlerantwort
Wenn Sie eine Anforderung zum Hochladen eines App-Manifests senden, das fehlende Informationen oder Fehler enthält, erhalten Sie eine Fehlermeldung mit dem inneren Fehlercode UnableToParseTeamsAppManifest. Die details-Eigenschaft des inneren Fehlers enthält den Fehlercode und die Fehlermeldung. In der folgenden Tabelle werden die Fehlercodes beschrieben, die möglicherweise auftreten.
Fehlerantwort
| Fehlercode | Fehlermeldung | Beschreibung |
|---|---|---|
ActivityGroupIdFromActivitiesTypeValidation |
Das Feld "ActivityGroupId" in "ActivityType" muss eine Teilmenge des Felds "ID" in "ActivityGroup" sein. | Das Feld ActivityGroupId in ActivityType ist keine Teilmenge des Felds Id in ActivityGroup im App-Manifest. |
ActivityTypesMustExistWithActivitiesGroupValidation |
Das Manifest sollte keine Aktivitätsgruppe enthalten, wenn Aktivitätstypen fehlen. | Die ActivityGroup-Eigenschaft ist verfügbar, aber die ActivityType-Eigenschaft fehlt im App-Manifest. |
ApiBasedComposeExtensionApiResponseRenderingTemplateFileNullOrEmpty |
API-basierte Compose-Erweiterung muss apiResponseRenderingTemplateFile im Manifest definiert haben. | Für die API-basierte Compose-Erweiterung ist die apiResponseRenderingTemplateFile nicht im App-Manifest definiert. |
ApiBasedComposeExtensionApiSpecificationFileNullOrEmpty |
API-basierte Compose-Erweiterung muss apiSpecificationFile auf dem Manifest definiert haben. | Für die API-basierte Compose-Erweiterung ist die apiSpecificationFile nicht im App-Manifest definiert. |
ApiBasedComposeExtensionManifestCommandIdsNotIncludedInOperationIdsOnApiSpecficationFile |
Befehls-IDs im Manifest sind nicht in den Vorgangs-IDs in der API-Spezifikationsdatei enthalten. | Der Fehler, der auftritt, wenn die Befehls-IDs im App-Manifest nicht in den Vorgangs-IDs der API-Spezifikationsdatei enthalten sind. |
ApiBasedComposeExtensionWithBotId |
Für die API-basierte Compose-Erweiterung darf keine botId definiert werden. | Für die API-basierte Compose-Erweiterung ist botId im App-Manifest definiert. |
ApiBasedComposeExtensionWithCanUpdateConfiguration |
Für API-basierte Compose-Erweiterungen kann canUpdateConfiguration nicht im Manifest definiert werden. | Für die API-basierte Compose-Erweiterung ist canUpdateConfiguration im App-Manifest definiert. |
ApiBasedComposeExtensionWithNoParameter |
API-basierte Erweiterung zum Verfassen muss über Befehlsparameter verfügen, die im Manifest definiert sind. | Für die API-basierte Compose-Erweiterung sind keine Befehlsparameter im App-Manifest definiert. |
ApiSecretServiceAuthTypeComposeExtensionContainsMsftEntraConfiguration |
API-basierte Erweiterung zum Verfassen mit apiSecretServiceAuth authType haben microsoftEntraConfiguration definiert. | Für die API-basierte Compose-Erweiterung ist microsoftEntraConfiguration im App-Manifest definiert. |
ApiSecretServiceAuthTypeComposeExtensionContainsNoApiSecretRegistrationId |
API-basierte Compose-Erweiterung mit apiSecretServiceAuth-authType haben keine apiSecretRegistrationId definiert. | Die API-basierte Compose-Erweiterung mit apiSecretServiceAuth-authType, ohne dass apiSecretRegistrationId im App-Manifest definiert ist. |
ApiSecretServiceAuthTypeComposeExtensionContainsNoApiSecretServiceAuthConfiguration |
API-basierte Compose-Erweiterung mit apiSecretServiceAuth-authType have no apiSecretServiceConfiguration. | Die API-basierte Erweiterung zum Verfassen legt supportsSingleSignOn im App-Manifest nicht auf "true" fest. |
ApiSpecificationFileContainUnsupportedHttpMethod |
API-basierte Compose-Erweiterung verfügen über Server-URLs, für die eine nicht unterstützte HTTP-Methode in apiSpecificationFile definiert ist. Derzeit werden nur GET und POST unterstützt. | Die API-basierte Compose-Erweiterung verfügt über eine nicht unterstützte http-Methode, die in der apiSpecificationFile definiert ist. |
ApiSpecificationFileParameterContainUnsupportedSchemaType |
API-basierte Compose-Erweiterung haben einen nicht unterstützten Parameterschematyp, der in apiSpecificationFile.Arrays wird nicht unterstützt. | Die API-basierte Compose-Erweiterung verfügt über einen nicht unterstützten Parameterschematyp, der in der apiSpecificationFile definiert ist. |
ApiSpecificationFileRequestBodyContainUnsupportedMediaType |
API-basierte Compose-Erweiterung verfügt über einen nicht unterstützten Medientyp, der im Anforderungstext in apiSpecificationFile definiert ist. Derzeit wird nur application/json unterstützt. | Die API-basierte Compose-Erweiterung verfügt über einen nicht unterstützten Medientyp, der im Anforderungstext in der apiSpecificationFile definiert ist. |
ApiSpecificationFileRequestBodyContainUnsupportedSchemaType |
API-basierte Compose-Erweiterung haben einen nicht unterstützten Schematyp, der im Anforderungstext in apiSpecificationFile definiert ist. Derzeit werden Arrays nicht unterstützt. | Die API-basierte Compose-Erweiterung verfügt über einen nicht unterstützten Schematyp, der im Anforderungstext in der apiSpecificationFile definiert ist. |
ApiSpecificationFileRequestBodySchemaContainKeywords |
API-basierte Erweiterung zum Verfassen Schlüsselwörter enthalten. | Die API-basierte Compose-Erweiterung verfügt über Schlüsselwörter, die im Anforderungstext in der apiSpecificationFile definiert sind. |
ApiSpecificationFileRequiredParameterContainUnsupportedLocation |
API-basierte Compose-Erweiterung haben einen nicht unterstützten Parameterspeicherort in apiSpecificationFile für {0}definiert. Derzeit werden nur Pfad und Abfrage unterstützt. | Die API-basierte Compose-Erweiterung verfügt über einen nicht unterstützten Parameterspeicherort, der in der apiSpecificationFile definiert ist. |
ApiSpecificationFileRequiredParameterOrPropertyNotDefinedOnManifest |
API-basierte Erweiterung zum Verfassen verfügen über erforderliche Parameter oder Eigenschaften {0} , die nicht im Manifest definiert sind. | Die API-basierte Erweiterung zum Verfassen verfügt über einen erforderlichen Parameter, der nicht im App-Manifest definiert ist. |
ApiSpecificationFileResponseContainUnsupportedMediaType |
API-basierte Compose-Erweiterung verfügt über einen nicht unterstützten Medientyp, der als Antwort auf apiSpecificationFile definiert wurde. Derzeit wird nur application/json unterstützt. | Die API-basierte Compose-Erweiterung verfügt über einen nicht unterstützten Medientyp, der als Antwort in der apiSpecificationFile definiert ist. |
ApiSpecificationFileServerUrlsContainHttp |
API-basierte Compose-Erweiterungen verfügen über Server-URLs, für die das http-Protokoll in apiSpecificationFile definiert ist. | Die API-basierte Compose-Erweiterung verfügt über Server-URLs, die das http-Protokoll in der apiSpecificationFile enthalten. |
ApiSpecificationFileServerUrlsContainInvalidUrl |
API-basierte Compose-Erweiterung verfügen über Server-URLs, bei denen es sich um ungültige URLs handelt, die in apiSpecificationFile definiert sind. | Die API-basierte Compose-Erweiterung verfügt über eine ungültige URL, die in der apiSpecificationFile definiert ist. |
BotBasedComposeExtensionApiResponseRenderingTemplateFileExists |
Für die botbasierte Compose-Erweiterung kann apiResponseRenderingTemplateFile nicht definiert werden. | Die botbasierte Compose-Erweiterung verfügt über eine apiResponseRenderingTemplateFile-Eigenschaft, die im App-Manifest definiert ist. |
BotBasedComposeExtensionApiSpecificationFileExists |
Für die botbasierte Compose-Erweiterung kann keine apiSpecificationFile definiert werden. | Die Bot-basierte Erweiterung zum Verfassen verfügt über eine API-Spezifikationsdatei, die im App-Manifest definiert ist. |
BotBasedComposeExtensionBotIdNotGuid |
Eine botbasierte Erweiterung zum Verfassen muss die GUID botId aufweisen. | Die botbasierte Compose-Erweiterung botId ist keine GUID. |
BotIdIsNotGuid |
BotId ist kein GUID-Wert. | Der BotId-Wert im App-Manifest ist keine GUID. |
CommonAppIdIsNotGuid |
Feld "ID" ist keine GUID im Manifest. | Die appId ist keine GUID. |
CommonAppIdIsRequiredField |
Das Pflichtfeld "ID" fehlt im Manifest. | Die appId wird nicht angegeben. |
CommonManifestVersionIsRequiredField |
Das Pflichtfeld im Manifest "Manifestversion" fehlt. | Die Manifestversion wird nicht angegeben. |
CommonSchemaUrlIsRequiredField |
Schema-URL muss vorhanden sein. | Das Schema wird nicht bereitgestellt. |
DashboardCardBothIconNameAndUrlPresent |
Das Symbol "Dashboardkarten" sollte nicht sowohl den Symbolnamen als auch die URL enthalten. | Das Symbol "Dashboard-Karten" darf nicht sowohl den Symbolnamen als auch die URL enthalten. |
DashboardCardEntityIdsAreNotUnique |
Die Entitäts-IDs der Dashboard-Karten sollten eindeutig sein. | Die zurückgegebene Entitäts-ID für eine Dashboard Karte ist innerhalb des Manifests nicht eindeutig. |
DeveloperNameIsRequiredField |
Das Pflichtfeld "Name des Entwicklers" fehlt im Manifest. | Der Name des Entwicklers wird nicht angegeben. |
DeveloperNameLengthCheck |
Die maximale Zeichenlänge darf 32 Zeichen nicht überschreiten. | Der Name des Entwicklers ist länger als 32 Zeichen. |
DeveloperPrivacyUrlIsRequiredField |
Das erforderliche Feld "privacyUrl" fehlt im Manifest. | Die privacyUrl fehlt im App-Manifest. |
DeveloperPrivacyUrlMustBeHttps |
Datenschutz-URL muss gesichert sein Support-URL (HTTPS). | Die Datenschutz-URL des Entwicklers hat kein HTTPS verwendet. |
DeveloperTermsOfUseUrlIsRequiredField |
Das erforderliche Feld 'termsOfUseUrl' fehlt im Manifest. | Die termsOfUseUrl fehlt im Manifest. |
DeveloperTermsOfUseUrlMustBeHttps |
URL der Nutzungsbedingungen muss gesichert sein Support-URL (HTTPS). | Die URL der Nutzungsbedingungen des Entwicklers verwendete kein HTTPS. |
DeveloperWebsiteUrlIsRequiredField |
Das erforderliche Feld "websiteUrl" fehlt im Manifest. | Die URL der Entwickler-Website fehlt. |
DeveloperWebsiteUrlMustBeHttps |
Website-URL muss gesichert sein Support-URL (HTTPS). | Die URL der Entwickler-Website verwendete kein HTTPS. |
FullDescriptionCannotBeEmpty |
Die vollständige Beschreibung darf nicht leer sein. | Die vollständige Beschreibung ist leer. |
FullDescriptionLengthCheck |
Die maximale Zeichenlänge für eine lange Beschreibung darf 4.000 Zeichen nicht überschreiten. | Die vollständige Beschreibungslänge beträgt mehr als 4.000 Zeichen. |
GroupChatForBotsLessThanV13 |
Bitte aktualisieren Sie die Version des Manifests auf V1.3, da der Gruppenchatbot ab Manifest v1.3 unterstützt wird. | Der groupChat-Bereich für Bots wird in der App-Manifestversion 1.3 und niedriger nicht unterstützt. |
GroupChatForConfigurableTabsLessThanV13 |
Aktualisieren Sie die Version des Manifests auf V1.3, da konfigurierbare Registerkarten für Gruppenchats ab Manifest v1.3 unterstützt werden. | Der groupChat-Bereich für konfigurierbare Registerkarten wird in der App-Manifestversion 1.3 und niedriger nicht unterstützt. |
InvalidColor32x32IconHeightAndWidth |
Das Symbol Farbe 32x32 sollte 32x32 sein, nur weiß und transparent. | Das Farbsymbol 32x32 hat nicht die richtigen Abmessungen. |
InvalidColorIconHeightAndWidth |
Das Farbsymbol entspricht nicht der erforderlichen Dimension. | Die Abmessungen des Farbsymbols sind falsch. |
InvalidOutlineIconHeightAndWidth |
Das kleine Symbol sollte 32x32 sein, nur weiß und transparent. | Die Abmessungen des Gliederungssymbols sind falsch. |
InvalidOutlineIconTransparency |
Das Gliederungssymbol ist nicht transparent. Es ist Alpha. | Das Gliederungssymbol enthält Pixel, die weder transparent noch weiß sind, mit Alpha-, R-, G-, B-Werten von {0}, {1}{2}, und {3}. |
LocalizationSchemaIsMissing |
Die Eigenschaft "schema" fehlt in der Lokalisierungsdatei. | In der Lokalisierungsdatei fehlt die Eigenschaft "schema". |
LocalizationSchemaDoesNotFollowConventionalSchemaRegex |
Die Lokalisierungsdatei verwendet nicht die richtige Schema-URL: developer.microsoft.jsonschema-URL. | Die Schema-URL in der Lokalisierungsdatei stimmt nicht mit dem erwarteten Format überein: developer.microsoft.json. |
LocalizationSchemaVersionIsNotTheSameAsTheManifestSchemaVersion |
Die Schemaversion der Lokalisierungsdatei unterscheidet sich von der Schemaversion des App-Manifests. | Die Schemaversion in der Lokalisierungsdatei stimmt nicht mit der Version im App-Manifest überein. |
MsftEntraAuthTypeComposeExtensionContainsApiSecretServiceConfiguration |
API-basierte Compose-Erweiterung mit microsoftEntra authType haben apiSecretServiceConfiguration definiert. | Für die API-basierte Compose-Erweiterung ist apiSecretServiceConfiguration im Manifest definiert. |
MsftEntraAuthTypeComposeExtensionContainsNoMsftEntraConfiguration |
API-basierte Compose-Erweiterung mit microsoftEntra authType keine microsoftEntraConfiguration definiert. | Für die API-basierte Compose-Erweiterung ist microsoftEntraConfiguration nicht im App-Manifest definiert. |
MsftEntraAuthTypeComposeExtensionResourceURLNotMatchServerURLOnApiSpec |
API-basierte Compose-Erweiterung mit microsoftEntra authType-Ressourcen-URL im Manifest stimmt nicht mit der Server-URL in der API-Spezifikationsdatei überein. | Die API-basierte Erweiterung zum Verfassen mit der Ressourcen-URL von microsoftEntra authType im App-Manifest stimmt nicht mit der Server-URL in der API-Spezifikationsdatei überein. |
MsftEntraAuthTypeComposeExtensionSupportsSingleSignOnFalse |
API-basierte Compose-Erweiterung mit microsoftEntra authType setzt supportsSingleSignOn nicht auf true. | Die API-basierte Erweiterung zum Verfassen legt supportsSingleSignOn im App-Manifest nicht fest true . |
MsftEntraAuthTypeComposeExtensionWebApplicationInfoOrResourceNotDefined |
API-basierte Erweiterung zum Verfassen mit microsoftEntra authType keine webApplicationInfo oder Ressource auf dem Manifest definiert haben. | Für die API-basierte Compose-Erweiterung mit microsoftEntra authType ist keine webApplicationInfo oder Ressource im App-Manifest definiert. |
NoAuthTypeComposeExtensionContainsAuthConfiguration |
API-basierte Erweiterung zum Verfassen ohne authType haben eine auth-bezogene Konfiguration definiert. | Die API-basierte Compose-Erweiterung mit authType microsoftEntraConfiguration oder apiSecretServiceConfiguration ist nicht im App-Manifest definiert. |
ParameterOnManifestNotDefinedOnApiSpecFile |
API-basierte Compose-Erweiterung haben Parameter {0} für das Manifest, die nicht in der API-Spezifikationsdatei definiert sind. | Die API-basierten Parameter für die Erweiterung zum Verfassen im App-Manifest sind nicht in der API-Spezifikationsdatei definiert. |
ReservedActivitiesValidation |
Das Manifest darf keinen reservierten Aktivitätstyp "systemDefault" enthalten. | Der systemDefault-Aktivitätstyp ist im App-Manifest definiert. |
ReservedStaticTabNameShouldBeNull |
Die Eigenschaft "Name" der reservierten Registerkarte darf nicht angegeben werden. | Die reservierte staticTabs-Namenseigenschaft wurde angegeben. |
SchemaError_AdditionalItems |
Das Schema lässt keine zusätzlichen Elemente zu. | Bei der Validierung des Schemas durch "additionalItems" ist bei der App-Manifestdatei ein Fehler aufgetreten. |
SchemaError_AdditionalProperties |
Eigenschaft {0} wurde nicht definiert, und das Schema lässt keine zusätzlichen Eigenschaften zu. | Die App-Manifestdatei ist bei der additionalProperties-Überprüfung des Schemas fehlgeschlagen. {0} Hier stellt die zusätzliche Eigenschaft dar. |
SchemaError_AllOf |
JSON stimmt nicht mit allen Schemas aus "allOf" überein. | Fehler bei der allOf-Validierung des Schemas für die App-Manifestdatei. |
SchemaError_AnyOf |
JSON stimmt mit keinem Schema aus "anyOf" überein. | Die anyOf-Validierung des Schemas ist für die App-Manifestdatei fehlgeschlagen. |
SchemaError_Const |
Wert {0} stimmt nicht mit Konstante {1}überein. | Die App-Manifestdatei ist bei der Const-Überprüfung des Schemas fehlgeschlagen. Hier steht der Wert, {0} der fehlgeschlagen ist, und {1} stellt den richtigen Wert dar. |
SchemaError_Contains |
Array enthält kein erforderliches Element. | Fehler bei der Überprüfung des App-Manifests bei der Validierung des Schemas. |
SchemaError_ContentEncoding |
String {0} überprüft nicht anhand der Inhaltscodierung.{1} | Bei der contentEncoding-Validierung des Schemas ist bei der App-Manifestdatei ein Fehler aufgetreten. Hier stellt es die Zeichenfolge dar, die nicht mit der Inhaltscodierung übereinstimmt, {0} und {1} stellt die erwartete Inhaltscodierung dar. |
SchemaError_Dependencies |
Fehler bei Abhängigkeiten für Eigenschaft {0} . Fehlende erforderliche Schlüssel. | Fehler bei der Überprüfung der Abhängigkeiten des Schemas für die App-Manifestdatei. {0} Hier stellt die Eigenschaft dar, die fehlgeschlagen ist. |
SchemaError_Else |
JSON stimmt nicht mit dem Schema von "else" überein. | Die App-Manifestdatei ist bei der else Validierung des Schemas fehlgeschlagen. |
SchemaError_Enum |
Der Wert {0} ist in der Aufzählung nicht definiert. | Die App-Manifestdatei ist bei der Enumerationsvalidierung des Schemas fehlgeschlagen. Hier wird der Wert dargestellt, {0} der nicht in der Aufzählung enthalten ist. |
SchemaError_Format |
String {0} überprüft nicht anhand des Formats {1}. | Bei der Formatüberprüfung des Schemas ist bei der App-Manifestdatei ein Fehler aufgetreten. Hier stellt die Zeichenfolge dar, die nicht im erwarteten Format vorliegt, {0} und {1} stellt das erwartete Format dar. |
SchemaError_Id |
Doppelte Schema-ID {0} gefunden. | Bei der ID-Überprüfung des Schemas ist bei der App-Manifestdatei ein Fehler aufgetreten. {0} Hier wird die ID des Schemas dargestellt. |
SchemaError_Maximum |
Die ganze Zahl {0} überschreitet den maximalen Wert von {1}. | Die App-Manifestdatei konnte die maximale Überprüfung des Schemas nicht erreichen. Hier wird der Wert dargestellt, {0} der den Höchstwert überschreitet und {1} den Höchstgrenzwert darstellt. |
SchemaError_MaximumItems |
Die Anzahl {0} der Arrayelemente überschreitet die maximale Anzahl von {1}. | Die App-Manifestdatei ist bei der MaximumItems-Überprüfung des Schemas fehlgeschlagen. {0} Hier wird die Anzahl der Elemente im Array und {1} das maximal zulässige Element dargestellt. |
SchemaError_MaximumLength |
Zeichenfolge {0} überschreitet die maximale Länge von {1}. | Bei der MaximumLength-Überprüfung des Schemas ist für die App-Manifestdatei ein Fehler aufgetreten. Hier stellt die Zeichenfolge dar, {0} die die maximale Länge überschreitet, und {1} stellt die maximale Länge dar. |
SchemaError_MaximumProperties |
Object {0} property count exceeds maximum of {1}. | Bei der Überprüfung des Schemas "maximumProperties" ist für die App-Manifestdatei ein Fehler aufgetreten. {0} Hier wird die Anzahl der bereitgestellten Eigenschaften und {1} die maximal zulässigen Eigenschaften dargestellt. |
SchemaError_Minimum |
Die ganze Zahl {0} ist kleiner als der Mindestwert von {1}. | Die App-Manifestdatei hat die Mindestüberprüfung des Schemas nicht bestanden. Hier stellt es den Wert dar, {0} der den Mindestgrenzwert überschreitet und {1} den Mindestgrenzwert darstellt. |
SchemaError_MinimumItems |
Die Anzahl {0} der Arrayelemente ist kleiner als die Mindestanzahl von {1}. | Bei der Überprüfung des Schemas "minimumItems" ist für die App-Manifestdatei ein Fehler aufgetreten. {0} Hier wird die Anzahl der Elemente im Array und {1} das minimal zulässige Minimum dargestellt. |
SchemaError_MinimumLength |
Die Zeichenfolge {0} ist kleiner als die Mindestlänge von {1}. | Die App-Manifestdatei hat die minimumLength-Überprüfung des Schemas nicht bestanden. Hier stellt die Zeichenfolge, die kleiner als die Mindestlänge ist, {0} und {1} das Minimum dar. |
SchemaError_MinimumProperties |
Die Anzahl {0} der Objekteigenschaften ist kleiner als die Mindestanzahl von {1}. | Die App-Manifestdatei hat die minimumProperties-Überprüfung des Schemas nicht bestanden. {0} Hier wird die Anzahl der bereitgestellten Eigenschaften und {1} die minimal zulässigen Eigenschaften dargestellt. |
SchemaError_MultipleOf |
Eine ganze Zahl {0} ist kein Vielfaches von {1}. | Die App-Manifestdatei ist bei der multipleOf-Validierung des Schemas fehlgeschlagen. {0} Hier wird der ganzzahlige Wert und {1} das erforderliche Vielfache angegeben. |
SchemaError_Not |
JSON ist für das Schema von "nicht" gültig. | Fehler bei der Nichtvalidierung des Schemas bei der App-Manifestdatei. |
SchemaError_OneOf |
JSON ist für mehr als ein Schema aus "oneOf" gültig. | Bei der oneOf-Validierung des Schemas ist bei der App-Manifestdatei ein Fehler aufgetreten. |
SchemaError_Other |
Der Wert entspricht nicht dem Schema für diese Eigenschaft. | Bei der App-Manifestdatei ist bei anderen nicht behandelten Überprüfungen des Schemas ein Fehler aufgetreten. |
SchemaError_Pattern |
Die Zeichenfolge {0} stimmt nicht mit dem Regex-Muster "{1}" überein. | Bei der Musterüberprüfung des Schemas ist bei der App-Manifestdatei ein Fehler aufgetreten. Hier wird der Wert dargestellt, {0} der nicht mit dem Muster übereinstimmt und {1} das erwartete Muster darstellt. |
SchemaError_PatternProperties |
Eigenschaftsnamen mit dem RegEx-Muster "{0}" konnten nicht getestet werden. | Bei der patternProperties-Überprüfung des Schemas ist für die App-Manifestdatei ein Fehler aufgetreten. {0} Hier stellt das Muster für die Eigenschaften dar. |
SchemaError_Required |
Erforderliche Eigenschaften fehlen im Objekt: {0}. | Die App-Manifestdatei hat die erforderliche Überprüfung des Schemas nicht bestanden. {0} Hier werden die erforderlichen Eigenschaften dargestellt. |
SchemaError_Then |
JSON stimmt nicht mit dem Schema von "damals" überein. | Die App-Manifestdatei ist bei der anschließenden Überprüfung des Schemas fehlgeschlagen. |
SchemaError_Type |
Der Wert {0} ist nicht vom erwarteten Typ {1}. | Bei der Typüberprüfung des Schemas ist für die App-Manifestdatei ein Fehler aufgetreten. Hier stellt die Zeichenfolge dar, die nicht im erwarteten Typ enthalten ist, {0} und {1} stellt den erwarteten Typ dar. |
SchemaError_UniqueItems |
Array enthält Elemente, die nicht eindeutig sind. | Die App-Manifestdatei ist bei der Validierung des Schemas mit den UniqueItems fehlgeschlagen. |
SchemaError_Valid |
Die Schemavalidierung schlägt immer fehl. | Die App-Manifestdatei hat die gültige Überprüfung des Schemas nicht bestanden. |
Serialization_FileMissing |
Die Datei {0} wurde im App-Paket nicht gefunden. | Die erwartete Datei fehlt im App-Paket. |
Serialization_FileNotValidJson |
Die Datei konnte nicht als JSON-Objekt analysiert werden. | Die übermittelte Datei entsprach keinem gültigen JSON-Format. |
Serialization_ManifestVersionPropertyMissing |
Die Datei enthält nicht die Eigenschaft "{0}". | Die manifestVersion-Eigenschaft fehlt in der App-Manifestdatei. {0} Hier stellt die Zeichenfolge für die manifestVersion-Eigenschaft dar. |
Serialization_TrailingCommaInManifestJsonFile |
Die JSON-Manifestdatei enthält ein nachgestelltes Komma. | Die App-Manifestdatei enthält ein nachgestelltes Komma. |
ServerUrlsMissingOnApiSpecificationFile |
API-basierte Compose-Erweiterung keine Server-URLs in apiSpecificationFile definiert. | Der Fehler, der auftritt Die API-basierte Erweiterung zum Verfassen hat keine Server-URLs in der apiSpecificationFile definiert. |
ShortDescriptionCannotBeEmpty |
Die Kurzbeschreibung darf nicht leer sein. | Die Kurzbeschreibung war leer. |
ShortDescriptionLengthCheck |
Die maximale Zeichenlänge für eine Kurzbeschreibung darf 80 Zeichen nicht überschreiten. | Die Kurzbeschreibung ist mehr als 80 Zeichen lang. |
ShortNameEqualsReservedName |
Der Kurzname der App darf nicht reserviert werden. | Der Kurzname ist ein reservierter Name. |
ShortNameIsRequiredField |
Der Kurzname der App darf nicht leer sein. | Der Kurzname ist leer. |
ShortNameLengthCheck |
Die maximale Zeichenlänge für den Kurznamen darf 30 Zeichen nicht überschreiten. | Der Kurzname überschreitet 30 Zeichen. |
StaticTabNameCouldNotBeEmpty |
Nicht reservierte staticTabs "Name"-Eigenschaft darf nicht leer sein. | Die staticTabs-Namenseigenschaft ist leer. |
UniqueActivityTypeInActivitiesValidation |
Das Manifest darf keinen doppelten Aktivitätstyp enthalten. | Der Aktivitätstyp ist im App-Manifest nicht eindeutig. |
UniqueIdInActivitiesGroupValidation |
Das Manifest darf keine doppelte ID in Aktivitätsgruppen enthalten. | Die Aktivitätsgruppen-ID ist im App-Manifest nicht eindeutig. |
ValidDomainsContainsUrl |
Die Liste gültiger Domänen muss eine ordnungsgemäß formatierte URL enthalten. | Die in der Lokalisierungsdatei angegebenen Domänen müssen gültig sein. |
VersionCannotBeEmpty |
Das Pflichtfeld "Version" fehlt im Manifest. | Die Version des App-Pakets fehlt. |
VersionContainsOnlyNumbersDotSeparated |
Die App-Version unterstützt nur Zahlen im Format '#.#.#'. | Die Version im App-Paket stimmt nicht mit dem Muster #.#.# überein. |
VersionHasMajorLessThan1 |
Die App-Version sollte nicht mit "0" beginnen. Beispielsweise sind 0.0.1 oder 0.1 keine gültigen App-Versionen, und 1.0/1.5.1/1.0.0/2.5.0 sind gültige App-Versionen. Im Falle eines neuen Updates im Manifest für eine vorhandene App im Store. | Die App-Version ist kleiner als 1.0. Sie müssen Ihre App-Version aktualisieren. Wenn z. B. die aktuelle Version Ihrer App im Store 1.0 ist und Sie ein Update zur Überprüfung übermitteln, muss die App-Version höher als 1.0 sein. |
Beispiele
Beispiel 1: Veröffentlichen einer App im App-Katalog
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
POST https://graph.microsoft.com/beta/appCatalogs/teamsApps
Content-type: application/zip
[Zip file containing a Teams app package]
Informationen zum Erstellen einer ZIP-Datei für eine Microsoft Teams-Anwendung finden Sie unter Erstellen eines App-Pakets.
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 201 Created
Content-Type: application/json
{
"id": "e3e29acb-8c79-412b-b746-e6c39ff4cd22",
"externalId": "b5561ec9-8cab-4aa3-8aa2-d8d7172e4311",
"displayName": "Test App",
"distributionMethod": "organization"
}
Beispiel 2: Hochladen einer neuen Anwendung zur Überprüfung in den App-Katalog einer organization
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
POST https://graph.microsoft.com/beta/appCatalogs/teamsApps?requiresReview=true
Content-type: application/zip
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 201 Created
Location: https://graph.microsoft.com/beta/appCatalogs/teamsApps/e3e29acb-8c79-412b-b746-e6c39ff4cd22
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#appCatalogs/teamsApps/$entity",
"id": "e3e29acb-8c79-412b-b746-e6c39ff4cd22",
"externalId": "b5561ec9-8cab-4aa3-8aa2-d8d7172e4311",
"displayName": "Test App",
"distributionMethod": "organization"
}
Beispiel 3: Genehmigen oder Ablehnen einer App mit ausstehender Überprüfung
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
PATCH https://graph.microsoft.com/beta/appCatalogs/teamsApps/a761ad07-22ef-4a53-9feb-2837c8ad4a84/appDefinitions/YTc2MWFkMDctMjJlZi00YTUzLTlmZWItMjgzN2M4YWQ0YTg0IyMxLjEuOCMjU3VibWl0dGVk
Content-type: application/json
If-Match: InFtSStsNVJHVWdzWUJRU2ZVWGp4RWc9PSI=
{
"publishingState":"published"
}
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#appCatalogs/teamsApps('a761ad07-22ef-4a53-9feb-2837c8ad4a84')/appDefinitions/$entity",
"id": "YTc2MWFkMDctMjJlZi00YTUzLTlmZWItMjgzN2M4YWQ0YTg0IyMxLjEuOCMjUHVibGlzaGVk",
"teamsAppId": "a761ad07-22ef-4a53-9feb-2837c8ad4a84",
"azureADAppId": null,
"displayName": "Ducks",
"version": "1.1.8",
"requiredResourceSpecificApplicationPermissions": [],
"publishingState": "published",
"shortdescription": "quaerat quasi magnam. slight change. 5",
"description": "Aliquid placeat animi debitis accusamus. Non perferendis ullam. Quis est consequuntur vitae provident. Sunt laudantium id aut. slight change 5",
"lastModifiedDateTime": null,
"createdBy": null
}
Beispiel 4: Veröffentlichen einer App mit einem Fehler im App-Manifest im App-Katalog
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
POST https://graph.microsoft.com/v1.0/appCatalogs/teamsApps
Content-type: application/zip
[Zip file containing a Teams app package]
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 200 OK
Content-type: application/json
{
"error": {
"code": "BadRequest",
"message": "name | Required properties are missing from object: [].; developer.websiteUrl | String \"hs://www.yo.com\" does not match regex pattern \"^[Hh][Tt][Tt][Pp][Ss]?://\".",
"innerError": {
"code": "UnableToParseTeamsAppManifest",
"message": "name | Required properties are missing from object: [].; developer.websiteUrl | String \"hs://www.yo.com\" does not match regex pattern \"^[Hh][Tt][Tt][Pp][Ss]?://\".",
"details": [
{
"code": "SchemaError_Required",
"message": "Required properties are missing from object: [].",
"target": "name"
},
{
"code": "SchemaError_Pattern",
"message": "String \"hs://www.yo.com\" does not match regex pattern \"^[Hh][Tt][Tt][Pp][Ss]?://\".",
"target": "developer.websiteUrl"
}
],
"date": "2024-01-18T21:47:58",
"request-id": "d1878136-bc88-421a-b342-c3d883db31a1",
"client-request-id": "d1878136-bc88-421a-b342-c3d883db31a1"
}
}
}