Skip to content

Save an edit of one row through a dashboard form

PATCH /dashboard/{id}/widget/{key}/row/{rowId}

Writes as the caller, in their own row scope. Only declared, visible fields that were sent are written (a read-only field never is on a save, so a stamp cannot reset what the row holds); every other column keeps its value. required and the author's rules are judged on the row as it will read after the write. expected_version is the version the person opened. Errors: 400 validation_error, 400 form_invalid with issues, 403 form_not_allowed, 403 field_protected, 404 not_found, 409 row_version_conflict with current_version, 409 idempotency_key_reused, 409 form_row_moved, 409 form_row_label_invalid (the picker's label field was since protected or re-typed), 413 form_too_large.

Path Parameters

idstring
required·

Resource id

keystring
required·

Widget key

rowIdstring
required·

Row id

Request Body

expected_versioninteger
submission_idstring
valuesobject

Response Body

messagestring
refreshstring[]
replayedboolean
resultstring
Possible values:
updatedunchanged
row_idstring
versioninteger
curl -X PATCH 'https://api.elaichi.ai/dashboard/<id>/widget/<key>/row/<rowId>' \
  -H 'Authorization: Bearer $ELAICHI_API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{"values":{},"expected_version":0,"submission_id":"your_submission_id"}'
const body = {
  "values": {},
  "expected_version": 0,
  "submission_id": "your_submission_id"
};

const response = await fetch('https://api.elaichi.ai/dashboard/<id>/widget/<key>/row/<rowId>', {
  method: 'PATCH',
  headers: {
    'Authorization': 'Bearer ' + process.env.ELAICHI_API_TOKEN,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify(body),
});

const data = await response.json();
console.log(data);
import os
import requests

url = "https://api.elaichi.ai/dashboard/<id>/widget/<key>/row/<rowId>"
headers = {
    "Authorization": f"Bearer {os.environ['ELAICHI_API_TOKEN']}",
    "Content-Type": "application/json",
}
payload = {
    "values": {},
    "expected_version": 0,
    "submission_id": "your_submission_id"
}

response = requests.patch(url, headers=headers, json=payload)
print(response.json())