Skip to content

Latest commit

 

History

History
229 lines (169 loc) · 9.18 KB

File metadata and controls

229 lines (169 loc) · 9.18 KB
title Create tableRow
description Add rows to the end of a table.
ms.localizationpriority medium
author lumine2008
ms.subservice excel
doc_type apiPageType
ms.date 04/05/2024

Create tableRow

Namespace: microsoft.graph

[!INCLUDE beta-disclaimer]

Add rows to the end of a table.

The API can accept multiple rows data using this API. Adding one row at a time can lead to performance degradation. The recommended approach is to batch the rows together in a single call rather than doing single row insertion. For best results, collect the rows to be inserted on the application side and perform a single row add operation. Experiment with the number of rows to determine the ideal number of rows to use in a single API call.

This request might occasionally result in a 504 HTTP error. The appropriate response to this error is to repeat the request.

[!INCLUDE national-cloud-support]

Permissions

Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.

[!INCLUDE permissions-table]

HTTP request

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

Request headers

Name Description
Authorization Bearer {token}. Required. Learn more about authentication and authorization.
Content-Type application/json. Required.
Prefer respond-async. Indicates that the request is an async request. Optional.
Workbook-Session-Id {Workbook-Session-Id}. Created from the createSession request. Optional.

Request body

In the request body, provide a JSON object with the following parameters.

Parameter Type Description
index Int32 Optional. Specifies the relative position of the new row. If null, the addition happens at the end. Any rows below the inserted row are shifted downwards. Zero-indexed.
values Json A 2-dimensional array of unformatted values of the table rows.

Response

If successful, this method returns a 201 Created response code and a workbookTableRow object in the response body.

Examples

Example 1: Add two rows to a table

In this example, two rows of data are inserted at the end of the table.

Request

The following example shows a request.

POST https://graph.microsoft.com/beta/me/drive/items/01CCETFLK7GVZTZHSQNRD2AEI5XWTCU6FJ/workbook/tables/Table1/rows
Content-type: application/json

{
  "values": [
    [1, 2, 3],
    [4, 5, 6]
  ]
}

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]


Response

The following example shows the response.

Note: The response object shown here might be shortened for readability.

HTTP/1.1 201 Created
Content-type: application/json

{
  "index": 99,
  "values": [[1, 2, 3]]
}

Example 2: Add two rows to a table asynchronously

Async requests are useful if the request takes longer time than expected. Note that Workbook-Session-Id header is required in issuing async requests. The user needs to Create session before using async rich API features. The header Prefer:respond-async is also required in the async requests.

For async features, the user usually needs to issue 2-3 requests. This request, Get workbookOperation request and optionally Get tableRowOperationResult request.

Request

Here's an example of the async request. Note that 202 Accepted will only happen when the request takes a long time to respond. If the request is completed quickly, it works like a regular sync request, falling back to Example 1.

POST https://graph.microsoft.com/beta/me/drive/items/01CCETFLK7GVZTZHSQNRD2AEI5XWTCU6FJ/workbook/tables/Table1/rows
Content-type: application/json
Prefer: respond-async
Workbook-Session-Id: {Workbook-Session-Id}

{
  "values": [
    [1, 2, 3],
    [4, 5, 6]
  ]
}

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]

[!INCLUDE sample-code] [!INCLUDE sdk-documentation]


Response

Here's another example of the response that will lead to an async operation. For details, see Get workbookOperation and Get tableRowOperationResult.

HTTP/1.1 202 Accepted
Location: https://graph.microsoft.com/beta/me/drive/items/01CCETFLK7GVZTZHSQNRD2AEI5XWTCU6FJ/workbook/operations/0195cfac-bd22-4f91-b276-dece0aa2378b?sessionId=Y2x1c3Rlcj1QU0c0JnNlc3Npb249MTUuU0cyUEVQRjAwMDI4RjI1MS5BMTE2LjEuVTM2LmM4MGRiNjkwLTQwMTktNGNkNS1hYWJiLTJmYzczM2YxZTQ5ZjE0LjUuZW4tVVM1LmVuLVVTMjQuMTAwM2JmZmRhYzUyMzkzOS1Qcml2YXRlMS5TMjQuJTJmUEI0JTJmWjJqZmt1aXhJZHBjeE8xYmclM2QlM2QxNi4xNi4wLjE0NDEwLjM1MDUwMTQuNS5lbi1VUzUuZW4tVVMxLk0xLk4wLjEuUyZ1c2lkPWExOTMyNTU0LTlhNDAtNzYzNi1mNDU3LWEyNjExMmFkNDg2YQ==
Content-type: application/json

{
}