Espacio de nombres: microsoft.graph
Importante
Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Actualizar las propiedades de una sección en el trabajo en equipo de un usuario. Para las secciones definidas por el sistema, solo se puede actualizar la propiedad sortType .
Esta API está disponible en las siguientes implementaciones en la nube nacional.
| Servicio global |
Administración pública de EE. UU. |
Gobierno de EE. UU. L5 (DOD) |
China operado por 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use uno o varios permisos con privilegios más altos solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
| Tipo de permiso |
Permisos con privilegios mínimos |
Permisos con privilegios más altos |
| Delegado (cuenta profesional o educativa) |
TeamworkSection.ReadWrite |
No disponible. |
| Delegado (cuenta personal de Microsoft) |
No admitida. |
No admitida. |
| Aplicación |
TeamworkSection.ReadWrite.All |
Teamwork.Migrate.All |
Solicitud HTTP
PATCH /users/{user-id}/teamwork/sections/{teamworkSection-id}
| Encabezado |
Valor |
| Authorization |
{token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización. |
| Content-Type |
application/json. Obligatorio. |
| If-Match |
El valor de la anotación @microsoft.graph.sectionsVersion devuelto al enumerar secciones, o el valor @odata.etag de cualquier sección recuperada anteriormente. Necesario para el control de simultaneidad optimista. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione una representación JSON de solo las propiedades que se van a actualizar. Se pueden actualizar las siguientes propiedades.
| Propiedad |
Tipo |
Description |
| displayIcon |
sectionDisplayIcon |
Icono mostrado para la sección. |
| displayName |
Cadena |
El nombre para mostrar de la sección. La longitud máxima es de 50 caracteres. Los nombres para mostrar distinguen mayúsculas de minúsculas y deben ser únicos dentro de las secciones de un usuario. No se pueden usar los nombres reservados definidos por el sistema (RecentChats, QuickViews, TeamsAndChannels, MutedChatsMeetingChatsEngageCommunities, , ). |
| isExpanded |
Booleano |
Indica si la sección está expandida en la interfaz de usuario. |
| sortType |
sectionSortType |
El criterio de ordenación de los elementos de la sección. Los valores posibles son: mostRecent, unreadThenMostRecent, nameAlphabetical, userDefinedCustomOrder, unknownFutureValue. |
Importante
Los valores de sortType válidos dependen del tipo de sección:
-
Secciones definidas por el usuario:
mostRecent, unreadThenMostRecent, y userDefinedCustomOrder son válidas. No se admite nameAlphabetical.
-
Secciones definidas por el sistema: los valores válidos dependen de la sección específica. Por ejemplo, las secciones Equipos y Canales admiten
nameAlphabetical, pero las secciones RecentChats y MutedChats no. Cuando la propiedad isHierarchicalViewEnabled se establece en true, solo nameAlphabetical es válido.
Respuesta
Si tiene éxito, este método devuelve un código de 200 OK respuesta y un objeto teamworkSection actualizado en el cuerpo de la respuesta.
Nota:
La respuesta incluye un valor @odata.etag actualizado. Use este valor como If-Match encabezado para las operaciones de mutación posteriores.
Es posible que se produzcan los siguientes errores.
| Código de respuesta |
Mensaje |
400 Bad Request |
Se debe proporcionar al menos una propiedad para la actualización. |
400 Bad Request |
La propiedad "displayName" no debe estar vacía ni ser un espacio en blanco, ni debe superar los 50 caracteres. |
400 Bad Request |
La propiedad '{propertyName}' es de solo lectura o no se puede actualizar. Solo se pueden actualizar displayName, displayIcon, isExpanded y sortType . |
400 Bad Request |
El tipo de ordenación especificado no es válido para esta sección. Para obtener más información, consulte la sección Cuerpo de la solicitud . |
403 Forbidden |
Esta sección es generada por el sistema y no se puede modificar. Solo se puede actualizar la propiedad sortType en las secciones definidas por el sistema. |
404 Not Found |
No se encontró la sección especificada. |
409 Conflict |
Ya existe una sección con este nombre para mostrar. Se devuelve cuando el displayName solicitado coincide con una sección definida por el usuario existente o un nombre de sección definido por el sistema reservado. La comparación distingue mayúsculas de minúsculas. |
412 Precondition Failed |
El If-Match valor del encabezado no coincide con la versión actual de la jerarquía de secciones.
Enumera las secciones de nuevo para recuperar la anotación @microsoft.graph.sectionsVersion actual y vuelve a intentarlo. |
428 Precondition Required |
El If-Match encabezado es necesario para esta operación. |
Ejemplos
Ejemplo 1: Actualizar el nombre para mostrar de una sección
En el ejemplo siguiente se muestra cómo actualizar el nombre para mostrar de un objeto teamworkSection .
Solicitud
En el ejemplo siguiente se muestra la solicitud.
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)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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"
}
Ejemplo 2: Actualizar el criterio de ordenación de una sección
En el ejemplo siguiente se muestra cómo actualizar el criterio de ordenación de un objeto teamworkSection .
Solicitud
En el ejemplo siguiente se muestra la solicitud.
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)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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"
}