KINETIC
KINETIC APIProtocol · API reference
MD-Version 2026-06-11 Request access

Case spine

Matters

Recovery matters and campaign dashboards.

POST/v1/mattersCreate matter
GET/v1/mattersList matters
GET/v1/matters/{matter_id}Get matter
PATCH/v1/matters/{matter_id}Update matter
GET/v1/matters/{matter_id}/dashboardGet matter dashboard
POST/v1/matters/{matter_id}/closeClose matter
POST/v1/matters

Create matter

Creates a recovery matter and establishes the primary authority object container.

scope · matters:writeidempotent · Idempotency-Key
§ Body parameters
FieldType
namestring
modestring
lead_counselstring
economicsobject
notesstring
# sandbox: full surface, no production data
curl -X POST https://sandbox.api.microndelta.com/v1/matters \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 4f8a-bd31" \
  -d '{
  "name": "string",
  "mode": "string",
  "lead_counsel": "string",
  "economics": {},
  "notes": "string"
}'
import requests

resp = requests.post(
    "https://sandbox.api.microndelta.com/v1/matters",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
        "Idempotency-Key": "4f8a-bd31",
    },
    json={
        "name": "string",
        "mode": "string",
        "lead_counsel": "string",
        "economics": {},
        "notes": "string"
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/matters", {
  method: "POST",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
    "Content-Type": "application/json",
    "Idempotency-Key": "4f8a-bd31",
  },
  body: JSON.stringify({
    "name": "string",
    "mode": "string",
    "lead_counsel": "string",
    "economics": {},
    "notes": "string"
  }),
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
201 Response
{
  "matter_id": "string",
  "name": "string",
  "mode": "small_judgment",
  "status": "string",
  "organization_id": "string",
  "lead_counsel": "string",
  "economics": {},
  "created_at": "2026-06-01T12:00:00Z"
}
GET/v1/matters

List matters

Lists matters available to the caller, filtered by role and matter permission.

scope · matters:read
# sandbox: full surface, no production data
curl https://sandbox.api.microndelta.com/v1/matters \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11"
import requests

resp = requests.get(
    "https://sandbox.api.microndelta.com/v1/matters",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/matters", {
  method: "GET",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
  },
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
200 Response
{
  "object": "list",
  "data": [
    {
      "matter_id": "...",
      "name": "...",
      "mode": "...",
      "status": "...",
      "organization_id": "...",
      "lead_counsel": "...",
      "economics": "...",
      "created_at": "..."
    }
  ],
  "has_more": false
}
GET/v1/matters/{matter_id}

Get matter

Gets a matter with summary status.

scope · matters:read
§ Path parameters
ParameterType
matter_id
required · path
string
# sandbox: full surface, no production data
curl https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1 \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11"
import requests

resp = requests.get(
    "https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1", {
  method: "GET",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
  },
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
200 Response
{
  "matter_id": "string",
  "name": "string",
  "mode": "small_judgment",
  "status": "string",
  "organization_id": "string",
  "lead_counsel": "string",
  "economics": {},
  "created_at": "2026-06-01T12:00:00Z"
}
PATCH/v1/matters/{matter_id}

Update matter

Updates matter metadata, mode, counsel, economics, and retention settings.

scope · matters:writeidempotent · Idempotency-Key
§ Path parameters
ParameterType
matter_id
required · path
string
§ Body parameters
FieldType
namestring
statusstring
lead_counselstring
economicsobject
retention_policystring
# sandbox: full surface, no production data
curl -X PATCH https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1 \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 4f8a-bd31" \
  -d '{
  "name": "string",
  "status": "string",
  "lead_counsel": "string",
  "economics": {},
  "retention_policy": "string"
}'
import requests

resp = requests.patch(
    "https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
        "Idempotency-Key": "4f8a-bd31",
    },
    json={
        "name": "string",
        "status": "string",
        "lead_counsel": "string",
        "economics": {},
        "retention_policy": "string"
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1", {
  method: "PATCH",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
    "Content-Type": "application/json",
    "Idempotency-Key": "4f8a-bd31",
  },
  body: JSON.stringify({
    "name": "string",
    "status": "string",
    "lead_counsel": "string",
    "economics": {},
    "retention_policy": "string"
  }),
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
200 Response
{
  "matter_id": "string",
  "name": "string",
  "mode": "small_judgment",
  "status": "string",
  "organization_id": "string",
  "lead_counsel": "string",
  "economics": {},
  "created_at": "2026-06-01T12:00:00Z"
}
GET/v1/matters/{matter_id}/dashboard

Get matter dashboard

Returns command dashboard metrics for a matter.

scope · matters:read
§ Path parameters
ParameterType
matter_id
required · path
string
# sandbox: full surface, no production data
curl https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1/dashboard \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11"
import requests

resp = requests.get(
    "https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1/dashboard",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1/dashboard", {
  method: "GET",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
  },
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
200 Response
{
  "matter_id": "string",
  "judgment_value": {
    "amount": 123.45,
    "currency": "string",
    "valuation_time": "2026-06-01T12:00:00Z"
  },
  "known_crypto_exposure": {
    "amount": 123.45,
    "currency": "string",
    "valuation_time": "2026-06-01T12:00:00Z"
  },
  "open_actions": 123,
  "open_packets": 123,
  "alerts": 123,
  "recovery_events": 123,
  "meridian_economics": {
    "amount": 123.45,
    "currency": "string",
    "valuation_time": "2026-06-01T12:00:00Z"
  }
}
POST/v1/matters/{matter_id}/close

Close matter

Closes a matter as paid, settled, exhausted, stayed, or administratively closed.

scope · matters:writeidempotent · Idempotency-Key
§ Path parameters
ParameterType
matter_id
required · path
string
§ Body parameters
FieldType
reasonstring
notesstring
# sandbox: full surface, no production data
curl -X POST https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1/close \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 4f8a-bd31" \
  -d '{
  "reason": "paid",
  "notes": "string"
}'
import requests

resp = requests.post(
    "https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1/close",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
        "Idempotency-Key": "4f8a-bd31",
    },
    json={
        "reason": "paid",
        "notes": "string"
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/matters/mtr_4Fa1/close", {
  method: "POST",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
    "Content-Type": "application/json",
    "Idempotency-Key": "4f8a-bd31",
  },
  body: JSON.stringify({
    "reason": "paid",
    "notes": "string"
  }),
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
200 Response
{
  "matter_id": "string",
  "name": "string",
  "mode": "small_judgment",
  "status": "string",
  "organization_id": "string",
  "lead_counsel": "string",
  "economics": {},
  "created_at": "2026-06-01T12:00:00Z"
}