Namespace: microsoft.graph
Importante
As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.
Adicione um item, como um chat, canal, reunião ou comunidade, a uma seção definida pelo usuário no trabalho em equipe de um usuário. Cada item pode pertencer a apenas uma seção por vez. Só é possível adicionar itens que estão atualmente em uma seção definida pelo sistema. Se o item já estiver em outra seção definida pelo usuário, use a ação de mover para realocá-lo.
Essa API está disponível nas seguintes implantações de nuvem nacional.
| Serviço global |
Governo dos EUA L4 |
US Government L5 (DOD) |
China operada pela 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Permissões
Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.
| Tipo de permissão |
Permissões menos privilegiadas |
Permissões com privilégios mais elevados |
| Delegado (conta corporativa ou de estudante) |
TeamworkSection.ReadWrite |
Indisponível. |
| Delegado (conta pessoal da Microsoft) |
Sem suporte. |
Sem suporte. |
| Application |
TeamworkSection.ReadWrite.All |
Teamwork.Migrate.All |
Solicitação HTTP
POST /users/{user-id}/teamwork/sections/{teamworkSection-id}/items
| Cabeçalho |
Valor |
| Autorização |
{token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
| Content-Type |
application/json. Obrigatório. |
| If-Match |
O valor da anotação @microsoft.graph.sectionsVersion retornado quando você lista seções ou o valor @odata.etag de qualquer seção recuperada anteriormente. Necessário para controle de simultaneidade otimista. |
Corpo da solicitação
No corpo da solicitação, forneça uma representação JSON de um objeto teamworkSectionItem .
A tabela a seguir lista as propriedades que você pode definir ao adicionar um teamworkSectionItem.
| Propriedade |
Tipo |
Descrição |
| id |
Cadeia de caracteres |
A ID da conversa do chat, canal, reunião ou comunidade para adicionar à seção. Para um item da comunidade (Viva Engage), você pode fornecer a ID da comunidade simples retornada ao listar comunidades (por exemplo, eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ) ou a ID completa do 19:{communityId}@EngageCommunity thread. Quando você fornece uma ID da comunidade simples, o serviço a normaliza automaticamente para o 19:{communityId}@EngageCommunity formato; uma ID que já inclui o prefixo de thread é usada no estado em que se encontra. Obrigatório. |
Resposta
Se for bem-sucedido, esse método retornará um código de 201 Created resposta e um objeto teamworkSectionItem no corpo da resposta.
Observação
A resposta inclui um valor @odata.etag atualizado. Use esse valor como o If-Match cabeçalho para todas as operações de mutação subsequentes.
Os erros a seguir são possíveis.
| Código da resposta |
Mensagem |
400 Bad Request |
A propriedade 'id' é necessária e não deve estar vazia. |
400 Bad Request |
A ID do item especificada não é válida. Forneça um chat, canal, reunião ou ID da comunidade válido. |
400 Bad Request |
O número máximo de itens nesta seção foi atingido. |
403 Forbidden |
O acesso a este recurso é negado. O chamador deve ser um membro da conversa que está sendo adicionada. |
404 Not Found |
A seção especificada não foi encontrada. |
409 Conflict |
Este item já está nesta seção. |
409 Conflict |
Este item já está associado a outra seção. Use a API de movimentação para realocá-lo. A resposta inclui um conflictingSectionId detalhe com a ID da seção que atualmente contém o item. |
412 Precondition Failed |
O If-Match valor do cabeçalho não corresponde à versão atual da hierarquia de seção.
Liste as seções novamente para recuperar a anotação atual @microsoft.graph.sectionsVersion e tente novamente. |
428 Precondition Required |
O If-Match cabeçalho é necessário para esta operação. |
Exemplos
Exemplo 1: Adicionar um chat a uma seção
O exemplo a seguir mostra como adicionar um chat a uma seção.
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/beta/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890/items
Content-type: application/json
If-Match: "1742515200"
{
"id": "19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new TeamworkSectionItem
{
Id = "19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2",
};
// 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}"].Items.PostAsync(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.ItemTeamworkSectionsItemItemsRequestBuilderPostRequestConfiguration{
Headers: headers,
}
requestBody := graphmodels.NewTeamworkSectionItem()
id := "19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2"
requestBody.SetId(&id)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
items, err := graphClient.Users().ByUserId("user-id").Teamwork().Sections().ByTeamworkSectionId("teamworkSection-id").Items().Post(context.Background(), requestBody, configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamworkSectionItem teamworkSectionItem = new TeamworkSectionItem();
teamworkSectionItem.setId("19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2");
TeamworkSectionItem result = graphClient.users().byUserId("{user-id}").teamwork().sections().byTeamworkSectionId("{teamworkSection-id}").items().post(teamworkSectionItem, requestConfiguration -> {
requestConfiguration.headers.add("If-Match", "\"1742515200\"");
});
const options = {
authProvider,
};
const client = Client.init(options);
const teamworkSectionItem = {
id: '19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2'
};
await client.api('/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890/items')
.version('beta')
.post(teamworkSectionItem);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Teamwork\Sections\Item\Items\ItemsRequestBuilderPostRequestConfiguration;
use Microsoft\Graph\Beta\Generated\Models\TeamworkSectionItem;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new TeamworkSectionItem();
$requestBody->setId('19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2');
$requestConfiguration = new ItemsRequestBuilderPostRequestConfiguration();
$headers = [
'If-Match' => '"1742515200"',
];
$requestConfiguration->headers = $headers;
$result = $graphServiceClient->users()->byUserId('user-id')->teamwork()->sections()->byTeamworkSectionId('teamworkSection-id')->items()->post($requestBody, $requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.Teams
$params = @{
id = "19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2"
}
New-MgBetaUserTeamworkSectionItem -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.items.items_request_builder import ItemsRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
from msgraph_beta.generated.models.teamwork_section_item import TeamworkSectionItem
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TeamworkSectionItem(
id = "19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2",
)
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').items.post(request_body, request_configuration = request_configuration)
Resposta
O exemplo a seguir mostra a resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
HTTP/1.1 201 Created
Content-type: application/json
Location: https://graph.microsoft.com/beta/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890/items/19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2
{
"@odata.type": "#microsoft.graph.teamworkSectionItem",
"@odata.etag": "\"1742515210\"",
"id": "19:d5b2c3a4-e6f7-8901-abcd-ef3456789012@thread.v2",
"itemType": "chat",
"createdDateTime": "2026-03-08T10:00:00Z",
"lastModifiedDateTime": null
}
O exemplo a seguir mostra como adicionar uma comunidade do Viva Engage a uma seção. A solicitação fornece a ID de comunidade simples retornada quando você lista comunidades. O serviço normaliza a ID da comunidade para o 19:{communityId}@EngageCommunity formato retornado na resposta.
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/beta/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890/items
Content-type: application/json
If-Match: "1742515210"
{
"id": "eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new TeamworkSectionItem
{
Id = "eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ",
};
// 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}"].Items.PostAsync(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.ItemTeamworkSectionsItemItemsRequestBuilderPostRequestConfiguration{
Headers: headers,
}
requestBody := graphmodels.NewTeamworkSectionItem()
id := "eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ"
requestBody.SetId(&id)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
items, err := graphClient.Users().ByUserId("user-id").Teamwork().Sections().ByTeamworkSectionId("teamworkSection-id").Items().Post(context.Background(), requestBody, configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamworkSectionItem teamworkSectionItem = new TeamworkSectionItem();
teamworkSectionItem.setId("eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ");
TeamworkSectionItem result = graphClient.users().byUserId("{user-id}").teamwork().sections().byTeamworkSectionId("{teamworkSection-id}").items().post(teamworkSectionItem, requestConfiguration -> {
requestConfiguration.headers.add("If-Match", "\"1742515210\"");
});
const options = {
authProvider,
};
const client = Client.init(options);
const teamworkSectionItem = {
id: 'eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ'
};
await client.api('/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890/items')
.version('beta')
.post(teamworkSectionItem);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Teamwork\Sections\Item\Items\ItemsRequestBuilderPostRequestConfiguration;
use Microsoft\Graph\Beta\Generated\Models\TeamworkSectionItem;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new TeamworkSectionItem();
$requestBody->setId('eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ');
$requestConfiguration = new ItemsRequestBuilderPostRequestConfiguration();
$headers = [
'If-Match' => '"1742515210"',
];
$requestConfiguration->headers = $headers;
$result = $graphServiceClient->users()->byUserId('user-id')->teamwork()->sections()->byTeamworkSectionId('teamworkSection-id')->items()->post($requestBody, $requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.Teams
$params = @{
id = "eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ"
}
New-MgBetaUserTeamworkSectionItem -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.items.items_request_builder import ItemsRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
from msgraph_beta.generated.models.teamwork_section_item import TeamworkSectionItem
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TeamworkSectionItem(
id = "eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ",
)
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').items.post(request_body, request_configuration = request_configuration)
Resposta
O exemplo a seguir mostra a resposta. A propriedade id é retornada no formato normalizado 19:{communityId}@EngageCommunity .
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
HTTP/1.1 201 Created
Content-type: application/json
Location: https://graph.microsoft.com/beta/users/10f8c3a6-3e2a-4e8b-9c7d-5a4b6c8d9e0f/teamwork/sections/a1b2c3d4-e5f6-7890-abcd-ef1234567890/items/19:eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ@EngageCommunity
{
"@odata.type": "#microsoft.graph.teamworkSectionItem",
"@odata.etag": "\"1742515220\"",
"id": "19:eyJfdHlwZSI6Ikdyb3VwIiwiaWQiOiIxOTAzMzYyMTIyMTAifQ@EngageCommunity",
"itemType": "community",
"createdDateTime": "2026-03-08T10:05:00Z",
"lastModifiedDateTime": null
}