Observe que essa API pode aceitar várias linhas de dados. Adicionar uma linha por vez pode afetar o desempenho. A abordagem recomendada é agrupar as linhas em uma única chamada, em vez de inserir linhas individuais. Para obter melhores resultados, colete as linhas a serem inseridas no lado do aplicativo e execute uma única operação de adição de linha. Experimente o número de linhas para determinar o número ideal de linhas a serem usadas em uma única chamada de API.
Essa solicitação pode ocasionalmente resultar em um 504 HTTP erro. A resposta apropriada para esta mensagem de erro é repetir a solicitação.
Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas 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 privilegiadas mais altas
Delegado (conta corporativa ou de estudante)
Files.ReadWrite
Indisponível.
Delegado (conta pessoal da Microsoft)
Sem suporte.
Sem suporte.
Aplicativo
Sem suporte.
Sem suporte.
Solicitação HTTP
POST /me/drive/items/{id}/workbook/tables/{id|name}/rows
POST /me/drive/root:/{item-path}:/workbook/tables/{id|name}/rows
POST /me/drive/items/{id}/workbook/worksheets/{id|name}/tables/{id|name}/rows
POST /me/drive/root:/{item-path}:/workbook/worksheets/{id|name}/tables/{id|name}/rows
respond-assíncrona. Indica que a solicitação é uma solicitação assíncrona. Opcional.
Workbook-Session-Id
{Workbook-Session-Id}. Criado a partir da solicitação createSession . Opcional.
Corpo da solicitação
Forneça um objeto JSON com os seguintes parâmetros no corpo da solicitação.
Parâmetro
Tipo
Descrição
índice
Int32
Opcional. Especifica a posição relativa da nova linha. Se for nulo, a adição ocorre no final. Todas as linhas abaixo da linha inserida serão deslocadas para baixo. Indexado com zero.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
using Microsoft.Kiota.Abstractions.Serialization;
var requestBody = new WorkbookTableRow
{
Values = new UntypedArray(new List<UntypedNode>
{
new UntypedArray(new List<UntypedNode>
{
new UntypedDouble(1),
new UntypedDouble(2),
new UntypedDouble(3),
}),
new UntypedArray(new List<UntypedNode>
{
new UntypedDouble(4),
new UntypedDouble(5),
new UntypedDouble(6),
}),
}),
};
// To initialize your graphClient, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Drives["{drive-id}"].Items["{driveItem-id}"].Workbook.Tables["{workbookTable-id}"].Rows.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
WorkbookTableRow workbookTableRow = new WorkbookTableRow();
LinkedList<LinkedList<UntypedNode>> values = new LinkedList<LinkedList<UntypedNode>>();
LinkedList<UntypedNode> = new LinkedList<UntypedNode>();
.add(1d);
.add(2d);
.add(3d);
values.add();
LinkedList<UntypedNode> 4 = new LinkedList<UntypedNode>();
4.add(4d);
4.add(5d);
4.add(6d);
values.add(4);
workbookTableRow.setValues(values);
WorkbookTableRow result = graphClient.drives().byDriveId("{drive-id}").items().byDriveItemId("{driveItem-id}").workbook().tables().byWorkbookTableId("{workbookTable-id}").rows().post(workbookTableRow);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.workbook_table_row import WorkbookTableRow
# To initialize your graph_client, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = WorkbookTableRow(
values = [
[
1,
2,
3,
],
[
4,
5,
6,
],
],
)
result = await graph_client.drives.by_drive_id('drive-id').items.by_drive_item_id('driveItem-id').workbook.tables.by_workbook_table_id('workbookTable-id').rows.post(request_body)
Exemplo 2: Adicionar duas linhas a uma tabela de forma assíncrona
As solicitações assíncronas serão úteis se a solicitação levar mais tempo do que o esperado. Observe que o Workbook-Session-Id cabeçalho é necessário ao emitir solicitações assíncronas. O usuário precisa criar sessão antes de usar recursos de API avançados assíncronos. O cabeçalho Prefer:respond-async também é necessário nas solicitações assíncronas.
Aqui está um exemplo da solicitação assíncrona. Observe que 202 Accepted isso só acontecerá quando a solicitação demorar muito tempo para responder. Se a solicitação for concluída rapidamente, ela funcionará como uma solicitação de sincronização regular, voltando ao Exemplo 1.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
using Microsoft.Kiota.Abstractions.Serialization;
var requestBody = new WorkbookTableRow
{
Values = new UntypedArray(new List<UntypedNode>
{
new UntypedArray(new List<UntypedNode>
{
new UntypedDouble(1),
new UntypedDouble(2),
new UntypedDouble(3),
}),
new UntypedArray(new List<UntypedNode>
{
new UntypedDouble(4),
new UntypedDouble(5),
new UntypedDouble(6),
}),
}),
};
// To initialize your graphClient, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Drives["{drive-id}"].Items["{driveItem-id}"].Workbook.Tables["{workbookTable-id}"].Rows.PostAsync(requestBody, (requestConfiguration) =>
{
requestConfiguration.Headers.Add("Prefer", "respond-async");
requestConfiguration.Headers.Add("Workbook-Session-Id", "{Workbook-Session-Id}");
});
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
WorkbookTableRow workbookTableRow = new WorkbookTableRow();
LinkedList<LinkedList<UntypedNode>> values = new LinkedList<LinkedList<UntypedNode>>();
LinkedList<UntypedNode> = new LinkedList<UntypedNode>();
.add(1d);
.add(2d);
.add(3d);
values.add();
LinkedList<UntypedNode> 4 = new LinkedList<UntypedNode>();
4.add(4d);
4.add(5d);
4.add(6d);
values.add(4);
workbookTableRow.setValues(values);
WorkbookTableRow result = graphClient.drives().byDriveId("{drive-id}").items().byDriveItemId("{driveItem-id}").workbook().tables().byWorkbookTableId("{workbookTable-id}").rows().post(workbookTableRow, requestConfiguration -> {
requestConfiguration.headers.add("Prefer", "respond-async");
requestConfiguration.headers.add("Workbook-Session-Id", "{Workbook-Session-Id}");
});
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.drives.item.items.item.workbook.tables.item.rows.rows_request_builder import RowsRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
from msgraph.generated.models.workbook_table_row import WorkbookTableRow
# To initialize your graph_client, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = WorkbookTableRow(
values = [
[
1,
2,
3,
],
[
4,
5,
6,
],
],
)
request_configuration = RequestConfiguration()
request_configuration.headers.add("Prefer", "respond-async")
request_configuration.headers.add("Workbook-Session-Id", "{Workbook-Session-Id}")
result = await graph_client.drives.by_drive_id('drive-id').items.by_drive_item_id('driveItem-id').workbook.tables.by_workbook_table_id('workbookTable-id').rows.post(request_body, request_configuration = request_configuration)