Mettre à jour une extension ouverte
Espace de noms: microsoft.graph
Mettez à jour une extension ouverte (objet openTypeExtension ) avec les propriétés dans le corps de la requête :
- Si une propriété dans le corps de la requête correspond au nom d’une propriété existante dans l’extension, les données dans l’extension sont mises à jour.
- Sinon, cette propriété et ses données sont ajoutées à l’extension.
Les données dans une extension peuvent être des types primitifs ou des tableaux de types primitifs.
Consultez le tableau de la section Autorisations pour obtenir la liste des ressources qui prennent en charge les extensions ouvertes.
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
Selon la ressource dans laquelle l’extension a été créée et le type d’autorisation (délégué ou application) demandé, l’autorisation spécifiée dans le tableau suivant est la moins privilégiée requise pour appeler cette API. Pour en savoir plus, notamment sur les Mesures de prudence avant de choisir des autorisations plus privilégiées, recherchez ces autorisations dans Autorisations.
Ressource prise en charge | Déléguée (compte professionnel ou scolaire) | Déléguée (compte Microsoft personnel) | Application |
---|---|---|---|
appareil | Directory.AccessAsUser.All | Non pris en charge | Device.ReadWrite.All |
event | Calendars.ReadWrite | Calendars.ReadWrite | Calendars.ReadWrite |
group | Group.ReadWrite.All | Non pris en charge | Group.ReadWrite.All |
group event | Group.ReadWrite.All | Non pris en charge | Non pris en charge |
group post | Group.ReadWrite.All | Non pris en charge | Group.ReadWrite.All |
message | Mail.ReadWrite | Mail.ReadWrite | Mail.ReadWrite |
organization | Organization.ReadWrite.All | Non pris en charge | Organization.ReadWrite.All |
personal contact | Contacts.ReadWrite | Contacts.ReadWrite | Contacts.ReadWrite |
todoTask | Tasks.ReadWrite | Tasks.ReadWrite | Tasks.ReadWrite.All |
todoTaskList | Tasks.ReadWrite | Tasks.ReadWrite | Tasks.ReadWrite.All |
user | User.ReadWrite | User.ReadWrite | User.ReadWrite.All |
Requête HTTP
Dans la demande, identifiez l’instance de la ressource, utilisez la propriété de navigation extensions de cette instance pour identifier l’extension et effectuez une PATCH
sur cette instance d’extension.
PATCH /devices/{Id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/events/{id}/extensions/{extensionId}
PATCH /groups/{id}/extensions/{extensionId}
PATCH /groups/{id}/events/{id}/extensions/{extensionId}
PATCH /groups/{id}/threads/{id}/posts/{id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/messages/{id}/extensions/{extensionId}
PATCH /organization/{Id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/contacts/{id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/extensions/{extensionId}
PATCH /users/me/todo/lists/{todoTaskListId}/tasks/{taskId}/extensions/{extensionId}
PATCH /users/me/todo/lists/{todoTaskListId}/extensions/{extensionId}
Note: La syntaxe ci-dessus montre quelques méthodes courantes pour identifier une ressource instance, afin de mettre à jour une extension dans celle-ci. Toute autre syntaxe qui vous permet d’identifier ces instances de ressources prend en charge la mise à jour des extensions ouvertes dans celles-ci de la même manière.
Voir la section Corps de la demande concernant l’inclusion dans le corps de la demande de données personnalisées à modifier ou à ajouter à cette extension.
Paramètres du chemin d’accès
Paramètre | Type | Description |
---|---|---|
id | string | Un identificateur unique pour une instance de la collection correspondante. Obligatoire. |
extensionId | string | Cela peut être un nom d’extension qui est un identificateur de texte unique pour une extension ou un nom complet qui concatène l’identificateur de texte unique et le type d’extension. Le nom complet est renvoyé dans la propriété id lorsque vous créez l’extension. Obligatoire. |
En-têtes de demande
Nom | Valeur |
---|---|
Autorisation | Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation. |
Content-Type | application/json |
Corps de la demande
Fournissez un corps JSON d’un objet openTypeExtension, avec les paires nom-valeur requises suivantes et toutes les données personnalisées pour modifier ou ajouter cette extension. Les données dans la charge utile JSON peuvent être des types primitifs ou des tableaux de types primitifs.
Nom | Valeur |
---|---|
@odata.type | microsoft.graph.openTypeExtension |
extensionName | % unique_string % |
Utilisez cette opération pour stocker des données dans la propriété d’extension open, mettre à jour les données stockées ou supprimer les données existantes.
- Pour mettre à jour une propriété dans l’objet d’extension ouvert, vous devez spécifier toutes les propriétés dans le corps de la demande ; sinon, Microsoft Graph supprime les propriétés non spécifiées.
- Pour supprimer des données d’une propriété dans l’objet d’extension ouvert, définissez sa valeur sur null
.
- Pour supprimer une propriété de l’objet d’extension ouvert, ne la transmettez pas dans le corps de la demande PATCH, et Microsoft Graph la supprimera.
- Pour supprimer des données de toutes les propriétés de l’objet d’extension ouvert, mais conserver l’objet d’extension ouvert, mettez à jour les valeurs des propriétés sur null
.
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 200 OK
et l’objet openTypeExtension mis à jour.
Exemple
Demande 1
Le premier exemple montre comment mettre à jour une extension dans un message. L’extension est initialement représentée par la charge utile JSON suivante :
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"@odata.id": "https://graph.microsoft.com/v1.0/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions
('Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')",
"extensionName": "Com.Contoso.Referral",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral",
"companyName": "Wingtip Toys",
"dealValue": 500050,
"expirationDate": "2015-12-03T10:00:00Z"
}
Vous pouvez faire référence à l’extension par son nom :
PATCH https://graph.microsoft.com/v1.0/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Com.Contoso.Referral
Ou vous pouvez faire référence à l’extension par son nom complet :
PATCH https://graph.microsoft.com/v1.0/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral
Vous pouvez utiliser l’un des deux exemples de demande et le corps de la requête suivant pour mettre à jour l’extension ci-dessus en :
- modifiant
companyName
en remplaçantWingtip Toys
parWingtip Toys (USA)
; - modifiant
dealValue
en remplaçant500050
par500100
; - ajoutant de nouvelles données en tant que propriété personnalisée
updated
.
{
"@odata.type": "microsoft.graph.openTypeExtension",
"extensionName": "Com.Contoso.Referral",
"companyName": "Wingtip Toys (USA)",
"dealValue": "500100",
"expirationDate": "2015-12-03T10:00:00.000Z",
"updated": "2015-10-29T11:00:00.000Z"
}
Réponse 1
Voici la réponse qui est la même quelle que soit la méthode utilisée pour faire référence à l’extension.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"@odata.id": "https://graph.microsoft.com/v1.0/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions
('Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral",
"extensionName": "Com.Contoso.Referral",
"companyName": "Wingtip Toys (USA)",
"dealValue": 500100,
"expirationDate": "2015-12-03T10:00:00Z",
"updated": "2015-10-29T11:00:00.000Z"
}
Demande 2
Le deuxième exemple montre comment mettre à jour une extension dans un billet de groupe. L’extension est initialement représentée par la charge utile JSON suivante, avec une valeur expirationDate
de 2015-07-03T13:04:00Z
:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups('37df2ff0-0de0-4c33-8aee-75289364aef6')/threads('AAQkADJizZJpEWwqDHsEpV_KA%3D%3D')/posts('AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA%3D')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate",
"extensionName": "Com.Contoso.Estimate",
"companyName": "Contoso",
"expirationDate": "2015-07-03T13:04:00Z",
"DealValue": 1010100,
"Strings@odata.type": "#Collection(String)",
"topPicks": [
"Employees only",
"Add spouse or guest",
"Add family"
]
}
Voici la demande et le corps de la requête à modifier en remplaçant expirationDate
par 2016-07-30T11:00:00Z
:
PATCH https://graph.microsoft.com/v1.0/groups/37df2ff0-0de0-4c33-8aee-75289364aef6/threads/AAQkADJizZJpEWwqDHsEpV_KA==/posts/AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA=/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate
Content-type: application/json
{
"@odata.type": "Microsoft.OutlookServices.OpenTypeExtension",
"extensionName": "Com.Contoso.Estimate",
"companyName": "Contoso",
"expirationDate": "2016-07-30T11:00:00.000Z",
"DealValue": 1010100,
"topPicks": [
"Employees only",
"Add spouse or guest",
"Add family"
]
}
Réponse 2
Voici la réponse du deuxième exemple qui montre le expirationDate
mis à jour dans l’extension.
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups('37df2ff0-0de0-4c33-8aee-75289364aef6')/threads('AAQkADJizZJpEWwqDHsEpV_KA%3D%3D')/posts('AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA%3D')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate",
"extensionName": "Com.Contoso.Estimate",
"companyName": "Contoso",
"expirationDate": "2016-07-30T11:00:00Z",
"DealValue": 1010100,
"Strings@odata.type": "#Collection(String)",
"topPicks": [
"Employees only",
"Add spouse or guest",
"Add family"
]
}
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