Espace de noms: microsoft.graph
Importante
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 d’une section dans le travail d’équipe d’un utilisateur. Pour les sections définies par le système, seule la propriété sortType peut être mise à jour.
Cette API est disponible dans les déploiements cloud nationaux suivants.
| Service global |
Gouvernement américain L4 |
Gouvernement américain L5 (DOD) |
Chine exploitée par 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Autorisations
Choisissez l’autorisation ou les autorisations marquées comme étant les moins privilégiées pour cette API. Utilisez une ou plusieurs autorisations privilégiées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, voir Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez la référence des autorisations.
| Type d’autorisation |
Autorisations les moins privilégiées |
Autorisations à privilèges plus élevés |
| Déléguée (compte professionnel ou scolaire) |
TeamworkSection.ReadWrite |
Non disponible. |
| Déléguée (compte Microsoft personnel) |
Non prise en charge. |
Non prise en charge. |
| Application |
TeamworkSection.ReadWrite.All |
Teamwork.Migrate.All |
Requête HTTP
PATCH /users/{user-id}/teamwork/sections/{teamworkSection-id}
| En-tête |
Valeur |
| Autorisation |
Porteur {token}. Obligatoire. En savoir plus sur l’authentification et les autorisations. |
| Content-Type |
application/json. Obligatoire. |
| If-Match |
Valeur de l’annotation @microsoft.graph.sectionsVersion renvoyée lorsque vous répertoriez des sections, ou valeur @odata.etag d’une section précédemment récupérée. Obligatoire pour le contrôle d’accès concurrentiel optimiste. |
Corps de la demande
Dans le corps de la demande, fournissez une représentation JSON des propriétés à mettre à jour. Les propriétés suivantes peuvent être mises à jour.
| Propriété |
Type |
Description |
| displayIcon |
sectionDisplayIcon |
Icône affichée pour la section. |
| displayName |
String |
Nom d’affichage de la section. La longueur maximale est de 50 caractères. Les noms complets respectent la casse et doivent être uniques dans les sections d’un utilisateur. Les noms réservés définis par le système (RecentChats, , TeamsAndChannelsQuickViews, MeetingChatsMutedChatsEngageCommunities, ) ne peuvent pas être utilisés. |
| isExpanded |
Booléen |
Indique si la section est développée dans l’interface utilisateur. |
| sortType |
sectionSortType |
Ordre de tri des éléments de la section. Les valeurs possibles sont : mostRecent, unreadThenMostRecent, nameAlphabetical, userDefinedCustomOrder, unknownFutureValue. |
Importante
Les valeurs sortType valides dépendent du type de section :
-
Les sections définies par l’utilisateur :
mostRecent, unreadThenMostRecentet userDefinedCustomOrder sont valides.
nameAlphabetical n’est pas pris en charge.
-
Sections définies par le système : les valeurs valides dépendent de la section spécifique. Par exemple, les sections Teams et Canaux prennent en charge
nameAlphabetical, mais pas les sections RecentChats et MutedConversations . Lorsque la propriété isHierarchicalViewEnabled est définie sur true, seule est nameAlphabetical valide.
Réponse
En cas de réussite, cette méthode renvoie un 200 OK code de réponse et un objet teamworkSection mis à jour dans le corps de la réponse.
Remarque
La réponse inclut une valeur @odata.etag mise à jour. Utilisez cette valeur comme en-tête pour toutes les If-Match opérations de mutation ultérieures.
Les erreurs suivantes sont possibles.
| Code de réponse |
Message |
400 Bad Request |
Au moins une propriété doit être fournie pour la mise à jour. |
400 Bad Request |
La propriété « displayName » ne doit pas être vide ou blanc, et ne doit pas dépasser 50 caractères. |
400 Bad Request |
La propriété '{propertyName}' est en lecture seule ou ne peut pas être mise à jour. Seuls displayName, displayIcon, isExpanded et sortType peuvent être mis à jour. |
400 Bad Request |
Le type de tri spécifié n’est pas valide pour cette section. Pour plus d’informations, consultez la section Corps de la requête . |
403 Forbidden |
Cette section est générée par le système et ne peut pas être modifiée. Seule la propriété sortType peut être mise à jour sur les sections définies par le système. |
404 Not Found |
La section spécifiée est introuvable. |
409 Conflict |
Une section portant déjà ce nom d’affichage existe. Renvoyé lorsque le displayName demandé correspond à une section existante définie par l’utilisateur ou à un nom de section réservé défini par le système. La comparaison est sensible à la casse. |
412 Precondition Failed |
La If-Match valeur de l’en-tête ne correspond pas à la version actuelle de la hiérarchie de section.
Listez à nouveau les sections pour récupérer l’annotation actuelle @microsoft.graph.sectionsVersion et réessayez. |
428 Precondition Required |
L’en-tête If-Match est obligatoire pour cette opération. |
Exemples
Exemple 1 : mise à jour du nom complet d’une section
L’exemple suivant montre comment mettre à jour le nom d’affichage d’un objet teamworkSection .
Demande
L’exemple suivant illustre une demande.
PATCH https://graph.microsoft.com/beta/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890
Content-type: application/json
If-Match: "1742515200"
{
"displayName": "Important Conversations"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new TeamworkSection
{
DisplayName = "Important Conversations",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].Teamwork.Sections["{teamworkSection-id}"].PatchAsync(requestBody, (requestConfiguration) =>
{
requestConfiguration.Headers.Add("If-Match", "\"1742515200\"");
});
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
graphusers "github.com/microsoftgraph/msgraph-beta-sdk-go/users"
//other-imports
)
headers := abstractions.NewRequestHeaders()
headers.Add("If-Match", "\"1742515200\"")
configuration := &graphusers.ItemTeamworkSectionsItemRequestBuilderPatchRequestConfiguration{
Headers: headers,
}
requestBody := graphmodels.NewTeamworkSection()
displayName := "Important Conversations"
requestBody.SetDisplayName(&displayName)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
sections, err := graphClient.Users().ByUserId("user-id").Teamwork().Sections().ByTeamworkSectionId("teamworkSection-id").Patch(context.Background(), requestBody, configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamworkSection teamworkSection = new TeamworkSection();
teamworkSection.setDisplayName("Important Conversations");
TeamworkSection result = graphClient.users().byUserId("{user-id}").teamwork().sections().byTeamworkSectionId("{teamworkSection-id}").patch(teamworkSection, requestConfiguration -> {
requestConfiguration.headers.add("If-Match", "\"1742515200\"");
});
const options = {
authProvider,
};
const client = Client.init(options);
const teamworkSection = {
displayName: 'Important Conversations'
};
await client.api('/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890')
.version('beta')
.update(teamworkSection);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Teamwork\Sections\Item\TeamworkSectionItemRequestBuilderPatchRequestConfiguration;
use Microsoft\Graph\Beta\Generated\Models\TeamworkSection;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new TeamworkSection();
$requestBody->setDisplayName('Important Conversations');
$requestConfiguration = new TeamworkSectionItemRequestBuilderPatchRequestConfiguration();
$headers = [
'If-Match' => '"1742515200"',
];
$requestConfiguration->headers = $headers;
$result = $graphServiceClient->users()->byUserId('user-id')->teamwork()->sections()->byTeamworkSectionId('teamworkSection-id')->patch($requestBody, $requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.Teams
$params = @{
displayName = "Important Conversations"
}
Update-MgBetaUserTeamworkSection -UserId $userId -TeamworkSectionId $teamworkSectionId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.users.item.teamwork.sections.item.teamwork_section_item_request_builder import TeamworkSectionItemRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
from msgraph_beta.generated.models.teamwork_section import TeamworkSection
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TeamworkSection(
display_name = "Important Conversations",
)
request_configuration = RequestConfiguration()
request_configuration.headers.add("If-Match", "\"1742515200\"")
result = await graph_client.users.by_user_id('user-id').teamwork.sections.by_teamwork_section_id('teamworkSection-id').patch(request_body, request_configuration = request_configuration)
Réponse
L’exemple suivant illustre la réponse.
Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.type": "#microsoft.graph.teamworkSection",
"@odata.etag": "\"1742515210\"",
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"displayName": "Important Conversations",
"displayIcon": {
"iconType": "⭐",
"displayName": "Star",
"contentUrl": null,
"skinTone": null
},
"sectionType": "userDefined",
"sortType": "mostRecent",
"isExpanded": true,
"isHierarchicalViewEnabled": false,
"createdDateTime": "2025-01-15T10:30:00Z",
"lastModifiedDateTime": "2026-03-08T09:15:00Z"
}
Exemple 2 : mise à jour de l’ordre de tri d’une section
L’exemple suivant montre comment mettre à jour l’ordre de tri d’un objet teamworkSection .
Demande
L’exemple suivant illustre une demande.
PATCH https://graph.microsoft.com/beta/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890
Content-type: application/json
If-Match: "1742515210"
{
"sortType": "unreadThenMostRecent"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new TeamworkSection
{
SortType = SectionSortType.UnreadThenMostRecent,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].Teamwork.Sections["{teamworkSection-id}"].PatchAsync(requestBody, (requestConfiguration) =>
{
requestConfiguration.Headers.Add("If-Match", "\"1742515210\"");
});
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
graphusers "github.com/microsoftgraph/msgraph-beta-sdk-go/users"
//other-imports
)
headers := abstractions.NewRequestHeaders()
headers.Add("If-Match", "\"1742515210\"")
configuration := &graphusers.ItemTeamworkSectionsItemRequestBuilderPatchRequestConfiguration{
Headers: headers,
}
requestBody := graphmodels.NewTeamworkSection()
sortType := graphmodels.UNREADTHENMOSTRECENT_SECTIONSORTTYPE
requestBody.SetSortType(&sortType)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
sections, err := graphClient.Users().ByUserId("user-id").Teamwork().Sections().ByTeamworkSectionId("teamworkSection-id").Patch(context.Background(), requestBody, configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamworkSection teamworkSection = new TeamworkSection();
teamworkSection.setSortType(SectionSortType.UnreadThenMostRecent);
TeamworkSection result = graphClient.users().byUserId("{user-id}").teamwork().sections().byTeamworkSectionId("{teamworkSection-id}").patch(teamworkSection, requestConfiguration -> {
requestConfiguration.headers.add("If-Match", "\"1742515210\"");
});
const options = {
authProvider,
};
const client = Client.init(options);
const teamworkSection = {
sortType: 'unreadThenMostRecent'
};
await client.api('/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890')
.version('beta')
.update(teamworkSection);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Teamwork\Sections\Item\TeamworkSectionItemRequestBuilderPatchRequestConfiguration;
use Microsoft\Graph\Beta\Generated\Models\TeamworkSection;
use Microsoft\Graph\Beta\Generated\Models\SectionSortType;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new TeamworkSection();
$requestBody->setSortType(new SectionSortType('unreadThenMostRecent'));
$requestConfiguration = new TeamworkSectionItemRequestBuilderPatchRequestConfiguration();
$headers = [
'If-Match' => '"1742515210"',
];
$requestConfiguration->headers = $headers;
$result = $graphServiceClient->users()->byUserId('user-id')->teamwork()->sections()->byTeamworkSectionId('teamworkSection-id')->patch($requestBody, $requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.Teams
$params = @{
sortType = "unreadThenMostRecent"
}
Update-MgBetaUserTeamworkSection -UserId $userId -TeamworkSectionId $teamworkSectionId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.users.item.teamwork.sections.item.teamwork_section_item_request_builder import TeamworkSectionItemRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
from msgraph_beta.generated.models.teamwork_section import TeamworkSection
from msgraph_beta.generated.models.section_sort_type import SectionSortType
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TeamworkSection(
sort_type = SectionSortType.UnreadThenMostRecent,
)
request_configuration = RequestConfiguration()
request_configuration.headers.add("If-Match", "\"1742515210\"")
result = await graph_client.users.by_user_id('user-id').teamwork.sections.by_teamwork_section_id('teamworkSection-id').patch(request_body, request_configuration = request_configuration)
Réponse
L’exemple suivant illustre la réponse.
Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.type": "#microsoft.graph.teamworkSection",
"@odata.etag": "\"1742515220\"",
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"displayName": "Important Conversations",
"displayIcon": {
"iconType": "⭐",
"displayName": "Star",
"contentUrl": null,
"skinTone": null
},
"sectionType": "userDefined",
"sortType": "unreadThenMostRecent",
"isExpanded": true,
"isHierarchicalViewEnabled": false,
"createdDateTime": "2025-01-15T10:30:00Z",
"lastModifiedDateTime": "2026-03-08T09:20:00Z"
}