/v1/obligations/{id}Change an obligation
Edits one obligation in place — retitle it, reword it, move its due date, hand it to somebody else, change its priority or its amount. Body, every field optional: title, description, notes, priority, dueAt, assignedToUserId, amountMinor, slaHours. An absent field leaves the column alone; emptying a nullable one takes its own flag — clearAssignee, clearAmount, clearSla. Moving an obligation's STATUS is not done here: complete, waive and mark-overdue are their own routes because each stamps its own evidence.
Access class: workspace.
Send request
Use the documented inputs to call this endpoint directly.
Parameters
Values are applied to the request and the example on the right.
Request body
application/jsonrequiredResponses
the action's answer
{
"data": {
"amountMinor": 1,
"assignedToUserId": 1,
"breachSeverity": "string",
"completedAt": "string",
"completedByUserId": 1,
"counterpartyId": 1,
"createdAt": "string",
"currency": "string",
"dealRowId": "",
"decisionId": 1,
"description": "string",
"detail": {},
"documentId": 1,
"dueAt": "string",
"escalatedAt": "string",
"escalatedToUserId": 1,
"facilityId": 1,
"id": 1,
"isRecurring": true,
"notes": "string",
"obligationType": "string",
"parentObligationId": 1,
"priority": "string",
"recurrenceRule": "string",
"requiredDocumentType": "string",
"responsibleParty": "string",
"slaBreachAt": "string",
"slaHours": 1,
"status": "string",
"submissionId": 1,
"title": "string",
"updatedAt": "string",
"waivedAt": "string",
"waivedByUserId": 1,
"waivedReason": "string"
}
}a refusal: {"error": "<what a person needs to read>"}. 401 no credential, 402 the plan does not include this, 403 the seat does not, 404 the thing does not exist or is not yours to see.
{
"error": "string"
}