rollbackToSequence
curl --request POST \
--url https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"args": {
"meetingId": "meeting_123example",
"targetSequence": 100,
"reason": "Removing spam content added by compromised account"
}
}
'import requests
url = "https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence"
payload = { "args": {
"meetingId": "meeting_123example",
"targetSequence": 100,
"reason": "Removing spam content added by compromised account"
} }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
args: {
meetingId: 'meeting_123example',
targetSequence: 100,
reason: 'Removing spam content added by compromised account'
}
})
};
fetch('https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence', 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://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence",
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([
'args' => [
'meetingId' => 'meeting_123example',
'targetSequence' => 100,
'reason' => 'Removing spam content added by compromised account'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence"
payload := strings.NewReader("{\n \"args\": {\n \"meetingId\": \"meeting_123example\",\n \"targetSequence\": 100,\n \"reason\": \"Removing spam content added by compromised account\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"args\": {\n \"meetingId\": \"meeting_123example\",\n \"targetSequence\": 100,\n \"reason\": \"Removing spam content added by compromised account\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"args\": {\n \"meetingId\": \"meeting_123example\",\n \"targetSequence\": 100,\n \"reason\": \"Removing spam content added by compromised account\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"errorMessage": "",
"errorData": {},
"value": {
"success": true,
"operationsRemoved": 23,
"newVersion": 101
}
}{}{}Notes
rollbackToSequence
the notes document from the remaining operations. This is used for administrative recovery from errors or malicious edits. Requires host permissions. The rollback is logged in the audit trail with the reason provided. After removing operations, the document is rebased from scratch to ensure consistency.
POST
/
api
/
run
/
notes
/
mutations
/
rollbackToSequence
rollbackToSequence
curl --request POST \
--url https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"args": {
"meetingId": "meeting_123example",
"targetSequence": 100,
"reason": "Removing spam content added by compromised account"
}
}
'import requests
url = "https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence"
payload = { "args": {
"meetingId": "meeting_123example",
"targetSequence": 100,
"reason": "Removing spam content added by compromised account"
} }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
args: {
meetingId: 'meeting_123example',
targetSequence: 100,
reason: 'Removing spam content added by compromised account'
}
})
};
fetch('https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence', 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://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence",
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([
'args' => [
'meetingId' => 'meeting_123example',
'targetSequence' => 100,
'reason' => 'Removing spam content added by compromised account'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence"
payload := strings.NewReader("{\n \"args\": {\n \"meetingId\": \"meeting_123example\",\n \"targetSequence\": 100,\n \"reason\": \"Removing spam content added by compromised account\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"args\": {\n \"meetingId\": \"meeting_123example\",\n \"targetSequence\": 100,\n \"reason\": \"Removing spam content added by compromised account\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://connvo-dev.convex.cloud/api/run/notes/mutations/rollbackToSequence")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"args\": {\n \"meetingId\": \"meeting_123example\",\n \"targetSequence\": 100,\n \"reason\": \"Removing spam content added by compromised account\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"errorMessage": "",
"errorData": {},
"value": {
"success": true,
"operationsRemoved": 23,
"newVersion": 101
}
}{}{}Authorizations
Standard user authentication token issued via WorkOS. Provide as Authorization: Bearer <user-token>.
Body
application/json
Show child attributes
Show child attributes
⌘I