● Case spine
Judgments
Court judgments recorded against a matter, validated deterministically, with a merged enforcement route.
| POST | /v1/judgments/intake | Intake judgment |
| GET | /v1/judgments/{judgment_id} | Get judgment |
| PATCH | /v1/judgments/{judgment_id} | Update judgment |
| POST | /v1/judgments/{judgment_id}/validate | Validate judgment readiness |
| GET | /v1/judgments/{judgment_id}/deadlines | Get judgment deadlines |
| POST | /v1/judgments/{judgment_id}/enforcement | Set enforcement posture |
POST/v1/judgments/intake
Intake judgment
Creates a structured judgment record from entered fields and optional uploaded source references.
scope · judgments:write
§ Body
| Field | Type |
|---|---|
| matter_id required | string |
| court required | string |
| case_number required | string |
| jurisdiction required | string |
| creditor required | string |
| debtor required | string |
| amount required | object · Monetary amount with valuation timestamp. |
| date_entered required | string |
# sandbox: full surface, no production data curl -X POST https://api.kineticanvil.com/v1/judgments/intake \ -H "Authorization: Bearer kx_test_xxxxxxxxxxxxxxxx" \ -H "Anvil-Version: 2026-07-05" \ -H "Content-Type: application/json" \ -d '{"matter_id":"string","court":"string","case_number":"string","jurisdiction":"string","creditor":"string","debtor":"string","amount":{"amount":0,"currency":"string","valuation_time":"2026-07-05T00:00:00Z"},"date_entered":"string"}'
import requests
resp = requests.post(
"https://api.kineticanvil.com/v1/judgments/intake",
headers={
"Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx",
"Anvil-Version": "2026-07-05",
},
json={"matter_id":"string","court":"string","case_number":"string","jurisdiction":"string","creditor":"string","debtor":"string","amount":{"amount":0,"currency":"string","valuation_time":"2026-07-05T00:00:00Z"},"date_entered":"string"},
)
print(resp.json())const resp = await fetch("https://api.kineticanvil.com/v1/judgments/intake", { method: "POST", headers: { "Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx", "Anvil-Version": "2026-07-05", "Content-Type": "application/json", }, body: JSON.stringify({"matter_id":"string","court":"string","case_number":"string","jurisdiction":"string","creditor":"string","debtor":"string","amount":{"amount":0,"currency":"string","valuation_time":"2026-07-05T00:00:00Z"},"date_entered":"string"}), }); console.log(await resp.json());
● 201Anvil-Request-Id: req_01J…
201 Response
{
"judgment_id": "string",
"matter_id": "string",
"court": "string",
"case_number": "string",
"jurisdiction": "string",
"date_entered": "string",
"creditor": "string",
"debtor": "string"
}GET/v1/judgments/{judgment_id}
Get judgment
Gets judgment, validation, deadlines, linked matter, and balance summary.
scope · judgments:read
§ Path parameters
| Parameter | Type |
|---|---|
| judgment_id required · path | string |
# sandbox: full surface, no production data curl https://api.kineticanvil.com/v1/judgments/{judgment_id} \ -H "Authorization: Bearer kx_test_xxxxxxxxxxxxxxxx" \ -H "Anvil-Version: 2026-07-05"
import requests
resp = requests.get(
"https://api.kineticanvil.com/v1/judgments/{judgment_id}",
headers={
"Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx",
"Anvil-Version": "2026-07-05",
},
)
print(resp.json())const resp = await fetch("https://api.kineticanvil.com/v1/judgments/{judgment_id}", { method: "GET", headers: { "Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx", "Anvil-Version": "2026-07-05", }, }); console.log(await resp.json());
● 200Anvil-Request-Id: req_01J…
200 Response
{
"judgment_id": "string",
"matter_id": "string",
"court": "string",
"case_number": "string",
"jurisdiction": "string",
"date_entered": "string",
"creditor": "string",
"debtor": "string"
}PATCH/v1/judgments/{judgment_id}
Update judgment
Updates judgment metadata and review flags.
scope · judgments:write
§ Path parameters
| Parameter | Type |
|---|---|
| judgment_id required · path | string |
§ Body
| Field | Type |
|---|---|
| status optional | string |
| appeal_stay_status optional | string |
| bankruptcy_status optional | string |
| renewal_deadline optional | string |
| review_state optional | object |
# sandbox: full surface, no production data curl -X PATCH https://api.kineticanvil.com/v1/judgments/{judgment_id} \ -H "Authorization: Bearer kx_test_xxxxxxxxxxxxxxxx" \ -H "Anvil-Version: 2026-07-05" \ -H "Content-Type: application/json" \ -d '{"status":"string","appeal_stay_status":"string","bankruptcy_status":"string","renewal_deadline":"string","review_state":{"review_required":true,"review_status":"string","review_owner":"string","review_notes":"string"}}'
import requests
resp = requests.patch(
"https://api.kineticanvil.com/v1/judgments/{judgment_id}",
headers={
"Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx",
"Anvil-Version": "2026-07-05",
},
json={"status":"string","appeal_stay_status":"string","bankruptcy_status":"string","renewal_deadline":"string","review_state":{"review_required":true,"review_status":"string","review_owner":"string","review_notes":"string"}},
)
print(resp.json())const resp = await fetch("https://api.kineticanvil.com/v1/judgments/{judgment_id}", { method: "PATCH", headers: { "Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx", "Anvil-Version": "2026-07-05", "Content-Type": "application/json", }, body: JSON.stringify({"status":"string","appeal_stay_status":"string","bankruptcy_status":"string","renewal_deadline":"string","review_state":{"review_required":true,"review_status":"string","review_owner":"string","review_notes":"string"}}), }); console.log(await resp.json());
● 200Anvil-Request-Id: req_01J…
200 Response
{
"judgment_id": "string",
"matter_id": "string",
"court": "string",
"case_number": "string",
"jurisdiction": "string",
"date_entered": "string",
"creditor": "string",
"debtor": "string"
}POST/v1/judgments/{judgment_id}/validate
Validate judgment readiness
Runs authority, stay/appeal/bankruptcy, consumer/commercial, and required-document gates.
scope · judgments:validate
§ Path parameters
| Parameter | Type |
|---|---|
| judgment_id required · path | string |
§ Body
| Field | Type |
|---|---|
| checks optional | array |
| consumer_debt optional | boolean |
| bankruptcy_known optional | boolean |
| appeal_stay_known optional | boolean |
# sandbox: full surface, no production data curl -X POST https://api.kineticanvil.com/v1/judgments/{judgment_id}/validate \ -H "Authorization: Bearer kx_test_xxxxxxxxxxxxxxxx" \ -H "Anvil-Version: 2026-07-05" \ -H "Content-Type: application/json" \ -d '{"checks":[],"consumer_debt":true,"bankruptcy_known":true,"appeal_stay_known":true}'
import requests
resp = requests.post(
"https://api.kineticanvil.com/v1/judgments/{judgment_id}/validate",
headers={
"Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx",
"Anvil-Version": "2026-07-05",
},
json={"checks":[],"consumer_debt":true,"bankruptcy_known":true,"appeal_stay_known":true},
)
print(resp.json())const resp = await fetch("https://api.kineticanvil.com/v1/judgments/{judgment_id}/validate", { method: "POST", headers: { "Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx", "Anvil-Version": "2026-07-05", "Content-Type": "application/json", }, body: JSON.stringify({"checks":[],"consumer_debt":true,"bankruptcy_known":true,"appeal_stay_known":true}), }); console.log(await resp.json());
● 200Anvil-Request-Id: req_01J…
200 Response
{
"judgment_id": "string",
"enforcement_ready": true,
"review_required": true,
"missing_items": [
"string"
],
"gates": [
{
"gate": "string",
"status": "string",
"reasons": "string",
"required_actions": "string"
}
]
}GET/v1/judgments/{judgment_id}/deadlines
Get judgment deadlines
Returns renewal, service, response, hearing, packet, and monitoring deadlines.
scope · judgments:read
§ Path parameters
| Parameter | Type |
|---|---|
| judgment_id required · path | string |
# sandbox: full surface, no production data curl https://api.kineticanvil.com/v1/judgments/{judgment_id}/deadlines \ -H "Authorization: Bearer kx_test_xxxxxxxxxxxxxxxx" \ -H "Anvil-Version: 2026-07-05"
import requests
resp = requests.get(
"https://api.kineticanvil.com/v1/judgments/{judgment_id}/deadlines",
headers={
"Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx",
"Anvil-Version": "2026-07-05",
},
)
print(resp.json())const resp = await fetch("https://api.kineticanvil.com/v1/judgments/{judgment_id}/deadlines", { method: "GET", headers: { "Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx", "Anvil-Version": "2026-07-05", }, }); console.log(await resp.json());
● 200Anvil-Request-Id: req_01J…
200 Response
{
"object": "list",
"data": [
{
"deadline_id": "string",
"type": "string",
"date": "string",
"owner": "string",
"status": "string"
}
],
"has_more": true
}POST/v1/judgments/{judgment_id}/enforcement
Set enforcement posture
Record the enforcement strategy, venues, and priorities on a judgment. Replaces the v2 enforcement-profile and enforcement-plan pair with one persisted object.
scope · judgments:write
§ Path parameters
| Parameter | Type |
|---|---|
| judgment_id required · path | string |
§ Body
| Field | Type |
|---|---|
| strategy optional | string |
| venues optional | array |
| priorities optional | array |
| notes optional | string |
# sandbox: full surface, no production data curl -X POST https://api.kineticanvil.com/v1/judgments/{judgment_id}/enforcement \ -H "Authorization: Bearer kx_test_xxxxxxxxxxxxxxxx" \ -H "Anvil-Version: 2026-07-05" \ -H "Content-Type: application/json" \ -d '{"strategy":"string","venues":[],"priorities":[],"notes":"string"}'
import requests
resp = requests.post(
"https://api.kineticanvil.com/v1/judgments/{judgment_id}/enforcement",
headers={
"Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx",
"Anvil-Version": "2026-07-05",
},
json={"strategy":"string","venues":[],"priorities":[],"notes":"string"},
)
print(resp.json())const resp = await fetch("https://api.kineticanvil.com/v1/judgments/{judgment_id}/enforcement", { method: "POST", headers: { "Authorization": "Bearer kx_test_xxxxxxxxxxxxxxxx", "Anvil-Version": "2026-07-05", "Content-Type": "application/json", }, body: JSON.stringify({"strategy":"string","venues":[],"priorities":[],"notes":"string"}), }); console.log(await resp.json());
● 200Anvil-Request-Id: req_01J…
200 Response
{
"object": "enforcement",
"judgment_id": "string",
"strategy": "string",
"venues": [
"string"
],
"priorities": [
"string"
],
"notes": "string",
"review_required": true,
"updated_at": "2026-07-05T00:00:00Z"
}