Publier teamsApp
Espace de noms: microsoft.graph
Publier une application dans le catalogue d’applications Microsoft Teams.
Plus précisément, cette API publie l’application dans le catalogue de votre organization (le catalogue d’applications client). La ressource créée a une valeur de propriété distributionMethod .organization
La propriété requiresReview permet à tout utilisateur de soumettre une application pour révision par un administrateur. Les administrateurs peuvent approuver ou rejeter ces applications via cette API ou le Centre d’administration Microsoft Teams.
Cette API est disponible dans les déploiements de cloud national suivants.
Service global | Gouvernement des États-Unis L4 | Us Government L5 (DOD) | Chine gérée par 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ❌ |
Autorisations
Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.
Type d’autorisation | Autorisations avec privilèges minimum | Autorisations privilégiées plus élevées |
---|---|---|
Déléguée (compte professionnel ou scolaire) | AppCatalog.Submit | AppCatalog.ReadWrite.All, Directory.ReadWrite.All |
Déléguée (compte Microsoft personnel) | Non prise en charge. | Non prise en charge. |
Application | Non prise en charge. | Non prise en charge. |
Remarque
L’autorisation Directory.ReadWrite.All est prise en charge uniquement pour la compatibilité descendante. Nous vous recommandons de mettre à jour vos solutions pour utiliser une autorisation différente répertoriée dans le tableau précédent et d’éviter d’utiliser ces autorisations à l’avenir.
Requête HTTP
POST /appCatalogs/teamsApps
Pour publier une application qui nécessite une révision :
POST /appCatalogs/teamsApps?requiresReview={Boolean}
Paramètres de requête
Propriété | Type | Description |
---|---|---|
requiresReview | Valeur booléenne | Ce paramètre de requête facultatif déclenche le processus de révision de l’application. Les utilisateurs disposant de privilèges d’administrateur peuvent envoyer des applications sans déclencher de révision. Si les utilisateurs souhaitent demander une révision avant la publication, ils doivent définir requiresReview sur true . Un utilisateur disposant de privilèges d’administrateur peut choisir de ne pas définir requiresReview ou de définir la valeur sur false et l’application est approuvée et immédiatement publiée. |
En-têtes de demande
En-tête | Valeur |
---|---|
Autorisation | Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation. |
Content-Type | application/zip. Obligatoire. |
Corps de la demande
Dans le corps de la demande, incluez une charge utile de manifeste zip Teams. Pour plus d’informations, consultez Créer un package d’application.
Chaque application du catalogue d’applications doit avoir un ID de manifeste unique.
Réponse
Si elle réussit, cette méthode renvoie un 200 OK
code de réponse et un objet teamsApp . Si le manifeste de l’application comporte des erreurs de validation, la demande retourne une réponse d’erreur avec des détails sur les erreurs de schéma.
Exemples
Exemple 1 : Publier une application dans le catalogue d’applications
Demande
L’exemple suivant illustre une demande.
POST https://graph.microsoft.com/v1.0/appCatalogs/teamsApps
Content-type: application/zip
[Zip file containing a Teams app package]
Pour plus d’informations sur la création d’un fichier zip d’application Microsoft Teams, consultez Créer un package d’application.
Réponse
L’exemple suivant illustre la réponse.
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"
}
Exemple 2 : Charger une nouvelle application pour révision dans le catalogue d’applications d’une organization
Demande
L’exemple suivant illustre une demande.
POST https://graph.microsoft.com/v1.0/appCatalogs/teamsApps?requiresReview=true
Content-type: application/zip
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 201 Created
Location: https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/e3e29acb-8c79-412b-b746-e6c39ff4cd22
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#appCatalogs/teamsApps/$entity",
"id": "e3e29acb-8c79-412b-b746-e6c39ff4cd22",
"externalId": "b5561ec9-8cab-4aa3-8aa2-d8d7172e4311",
"displayName": "Test App",
"distributionMethod": "organization"
}
Exemple 3 : Approuver ou rejeter une application en attente de révision
Demande
L’exemple suivant illustre une demande.
PATCH https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/a761ad07-22ef-4a53-9feb-2837c8ad4a84/appDefinitions/YTc2MWFkMDctMjJlZi00YTUzLTlmZWItMjgzN2M4YWQ0YTg0IyMxLjEuOCMjU3VibWl0dGVk
Content-type: application/json
If-Match: InFtSStsNVJHVWdzWUJRU2ZVWGp4RWc9PSI=
{
"publishingState":"published"
}
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$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
}
Exemple 4 : Publier une application dans le catalogue d’applications avec une erreur dans le manifeste de l’application
Demande
L’exemple suivant illustre une demande.
POST https://graph.microsoft.com/v1.0/appCatalogs/teamsApps
Content-type: application/zip
[Zip file containing a Teams app package]
Réponse
L’exemple suivant illustre la réponse.
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"
}
}
}
Contenu connexe
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour