Save explicit inline edits to the same OneDrive file
curl --request POST \
--url https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"kind": "spreadsheet",
"connectionId": "<string>",
"revision": "<string>",
"sheetId": "<string>",
"changes": [
{
"row": 524288,
"column": 8192,
"value": "<string>",
"formula": false
}
]
}
'import requests
url = "https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor"
payload = {
"kind": "spreadsheet",
"connectionId": "<string>",
"revision": "<string>",
"sheetId": "<string>",
"changes": [
{
"row": 524288,
"column": 8192,
"value": "<string>",
"formula": False
}
]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
kind: 'spreadsheet',
connectionId: '<string>',
revision: '<string>',
sheetId: '<string>',
changes: [{row: 524288, column: 8192, value: '<string>', formula: false}]
})
};
fetch('https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'kind' => 'spreadsheet',
'connectionId' => '<string>',
'revision' => '<string>',
'sheetId' => '<string>',
'changes' => [
[
'row' => 524288,
'column' => 8192,
'value' => '<string>',
'formula' => false
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor"
payload := strings.NewReader("{\n \"kind\": \"spreadsheet\",\n \"connectionId\": \"<string>\",\n \"revision\": \"<string>\",\n \"sheetId\": \"<string>\",\n \"changes\": [\n {\n \"row\": 524288,\n \"column\": 8192,\n \"value\": \"<string>\",\n \"formula\": false\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"kind\": \"spreadsheet\",\n \"connectionId\": \"<string>\",\n \"revision\": \"<string>\",\n \"sheetId\": \"<string>\",\n \"changes\": [\n {\n \"row\": 524288,\n \"column\": 8192,\n \"value\": \"<string>\",\n \"formula\": false\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"kind\": \"spreadsheet\",\n \"connectionId\": \"<string>\",\n \"revision\": \"<string>\",\n \"sheetId\": \"<string>\",\n \"changes\": [\n {\n \"row\": 524288,\n \"column\": 8192,\n \"value\": \"<string>\",\n \"formula\": false\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"ok": true
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Documents
Save explicit inline edits to the same OneDrive file
Requires organization membership and Documents, and the member’s Microsoft 365 connection with OneDrive read access. Other people’s drives and SharePoint need the read-all-files permission. Saves also require Document editing, OneDrive write access (full file access outside the member’s own OneDrive) and a matching file version.
POST
/
v1
/
documents
/
microsoft-365
/
files
/
{fileId}
/
editor
Save explicit inline edits to the same OneDrive file
curl --request POST \
--url https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"kind": "spreadsheet",
"connectionId": "<string>",
"revision": "<string>",
"sheetId": "<string>",
"changes": [
{
"row": 524288,
"column": 8192,
"value": "<string>",
"formula": false
}
]
}
'import requests
url = "https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor"
payload = {
"kind": "spreadsheet",
"connectionId": "<string>",
"revision": "<string>",
"sheetId": "<string>",
"changes": [
{
"row": 524288,
"column": 8192,
"value": "<string>",
"formula": False
}
]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
kind: 'spreadsheet',
connectionId: '<string>',
revision: '<string>',
sheetId: '<string>',
changes: [{row: 524288, column: 8192, value: '<string>', formula: false}]
})
};
fetch('https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'kind' => 'spreadsheet',
'connectionId' => '<string>',
'revision' => '<string>',
'sheetId' => '<string>',
'changes' => [
[
'row' => 524288,
'column' => 8192,
'value' => '<string>',
'formula' => false
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor"
payload := strings.NewReader("{\n \"kind\": \"spreadsheet\",\n \"connectionId\": \"<string>\",\n \"revision\": \"<string>\",\n \"sheetId\": \"<string>\",\n \"changes\": [\n {\n \"row\": 524288,\n \"column\": 8192,\n \"value\": \"<string>\",\n \"formula\": false\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"kind\": \"spreadsheet\",\n \"connectionId\": \"<string>\",\n \"revision\": \"<string>\",\n \"sheetId\": \"<string>\",\n \"changes\": [\n {\n \"row\": 524288,\n \"column\": 8192,\n \"value\": \"<string>\",\n \"formula\": false\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/documents/microsoft-365/files/{fileId}/editor")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"kind\": \"spreadsheet\",\n \"connectionId\": \"<string>\",\n \"revision\": \"<string>\",\n \"sheetId\": \"<string>\",\n \"changes\": [\n {\n \"row\": 524288,\n \"column\": 8192,\n \"value\": \"<string>\",\n \"formula\": false\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"ok": true
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Authorizations
denApiKeybearerAuth
Organization API key passed as the x-api-key header. The raw key is the header value; do not prefix it with Bearer.
Path Parameters
Required string length:
1 - 512Pattern:
^[A-Za-z0-9_-]+$Body
application/json
- Option 1
- Option 2
- Option 3
Allowed value:
"spreadsheet"Pattern:
^(google-workspace|microsoft-365|emc_[A-Za-z0-9]+)$Required string length:
1 - 512Required string length:
1 - 200Required array length:
1 - 500 elementsShow child attributes
Show child attributes
Response
Document result.
Was this page helpful?