Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Mettez à jour les propriétés dans la définition du schemaExtension spécifié. Les mises à jour additives de l’extension ne peuvent être effectuées que lorsque l’extension se trouve dans le InDevelopment ou Available status. Cela signifie que les propriétés personnalisées ou les types de ressources cibles ne peuvent pas être supprimés de la définition, mais que de nouvelles propriétés personnalisées peuvent être ajoutées et la description de l’extension modifiée.
La mise à jour s’applique à toutes les ressources incluses dans la propriété targetTypes de l’extension. Ces ressources font partie des types de ressources de prise en charge.
Pour les flux délégués, l’utilisateur connecté peut mettre à jour une extension de schéma tant que la propriété propriétaire de l’extension est définie sur appId d’une application dont l’utilisateur connecté est propriétaire. Cette application peut être celle qui a initialement créé l’extension, ou une autre application appartenant à l’utilisateur connecté.
Ce critère pour la propriété owner permet à un utilisateur connecté d’effectuer des mises à jour par le biais d’autres applications dont il n’est pas propriétaire, telles que Microsoft Graph Explorer. Lorsque vous utilisez Graph Explorer pour mettre à jour une ressource schemaExtension, incluez la propriété owner dans le corps de la requête PATCH.
L’une des autorisations suivantes est nécessaire pour appeler cette API. Pour plus d’informations, notamment sur la façon de choisir les autorisations, voir Autorisations.
Type d’autorisation
Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins)
Dans le corps de la demande, fournissez les valeurs pour les champs appropriés qui doivent être mis à jour. Les propriétés existantes qui ne sont pas incluses dans le corps de la demande conserveront leurs valeurs précédentes ou seront recalculées en fonction des modifications apportées à d’autres valeurs des propriétés. Pour de meilleures performances, n’incluez pas de valeurs existantes qui n’ont pas changé.
Collection de types et de noms de propriété qui composent la définition d’extension de schéma. Seules les modifications additives sont autorisées.
status
Chaîne
État du cycle de vie de l’extension du schéma. L’état initial lors de la création est InDevelopment. Les transitions d’états possibles sont de InDevelopment à Available et Available à Deprecated.
targetTypes
String collection
Définissez des types de Microsoft Graph (prenant en charge les extensions) auxquels peut s’appliquer l’extension de schéma. Seules les modifications additives sont autorisées.
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 204 No Content. Si vous tentez d’exécuter cette requête à partir d’une application dont vous n’êtes pas propriétaire (et sans affecter à la propriété owner la valeur appId d’une application que vous possédez), retourne un 403 Forbidden code de réponse.
Exemple
Demande
L’exemple suivant illustre une demande. Vous devez inclure la propriété owner si vous exécutez la requête à partir d’une application dont vous n’êtes pas propriétaire. Dans ce cas, définissez la propriété owner sur l’appId d’une application dont vous êtes propriétaire.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new SchemaExtension
{
Owner = "ef4cb9a8-97c3-4ca7-854b-5cb5ced376fa",
Properties = new List<ExtensionSchemaProperty>
{
new ExtensionSchemaProperty
{
Name = "courseId",
Type = "Integer",
},
new ExtensionSchemaProperty
{
Name = "courseName",
Type = "String",
},
new ExtensionSchemaProperty
{
Name = "courseType",
Type = "String",
},
new ExtensionSchemaProperty
{
Name = "courseSupervisors",
Type = "String",
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.SchemaExtensions["{schemaExtension-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
SchemaExtension schemaExtension = new SchemaExtension();
schemaExtension.setOwner("ef4cb9a8-97c3-4ca7-854b-5cb5ced376fa");
LinkedList<ExtensionSchemaProperty> properties = new LinkedList<ExtensionSchemaProperty>();
ExtensionSchemaProperty extensionSchemaProperty = new ExtensionSchemaProperty();
extensionSchemaProperty.setName("courseId");
extensionSchemaProperty.setType("Integer");
properties.add(extensionSchemaProperty);
ExtensionSchemaProperty extensionSchemaProperty1 = new ExtensionSchemaProperty();
extensionSchemaProperty1.setName("courseName");
extensionSchemaProperty1.setType("String");
properties.add(extensionSchemaProperty1);
ExtensionSchemaProperty extensionSchemaProperty2 = new ExtensionSchemaProperty();
extensionSchemaProperty2.setName("courseType");
extensionSchemaProperty2.setType("String");
properties.add(extensionSchemaProperty2);
ExtensionSchemaProperty extensionSchemaProperty3 = new ExtensionSchemaProperty();
extensionSchemaProperty3.setName("courseSupervisors");
extensionSchemaProperty3.setType("String");
properties.add(extensionSchemaProperty3);
schemaExtension.setProperties(properties);
SchemaExtension result = graphClient.schemaExtensions().bySchemaExtensionId("{schemaExtension-id}").patch(schemaExtension);
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, consultez https://aka.ms/ContentUserFeedback.