● Enforcement
Claw
Claw campaigns: focus, expand, pressure, actions, boards.
| POST | /v1/claw/campaigns | Create Claw campaign |
| GET | /v1/claw/campaigns | List Claw campaigns |
| GET | /v1/claw/campaigns/{campaign_id} | Get Claw campaign |
| PATCH | /v1/claw/campaigns/{campaign_id} | Update Claw campaign |
| POST | /v1/claw/campaigns/{campaign_id}/focus | Focus Claw |
| POST | /v1/claw/campaigns/{campaign_id}/expand | Expand Claw |
| POST | /v1/claw/campaigns/{campaign_id}/pressure | Set pressure level |
| POST | /v1/claw/campaigns/{campaign_id}/actions | Create Claw action |
| GET | /v1/claw/campaigns/{campaign_id}/board | Get Claw board |
Create Claw campaign
Creates a lawful enforcement campaign around a judgment, target set, exchange/issuer opportunities, sanctions gates, and economics.
| Field | Type |
|---|---|
| matter_id | string |
| judgment_id | string |
| mode | string |
| target_set | object |
This operation refuses to run without a granted authority model on the parent matter. A missing grant returns 403 authority_required. It never soft-passes.
# sandbox: full surface, no production data curl -X POST https://sandbox.api.microndelta.com/v1/claw/campaigns \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 4f8a-bd31" \ -d '{ "matter_id": "string", "judgment_id": "string", "mode": "string", "target_set": {} }'
import requests
resp = requests.post(
"https://sandbox.api.microndelta.com/v1/claw/campaigns",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
"Idempotency-Key": "4f8a-bd31",
},
json={
"matter_id": "string",
"judgment_id": "string",
"mode": "string",
"target_set": {}
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns", { method: "POST", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", "Content-Type": "application/json", "Idempotency-Key": "4f8a-bd31", }, body: JSON.stringify({ "matter_id": "string", "judgment_id": "string", "mode": "string", "target_set": {} }), }); console.log(await resp.json());
{
"campaign_id": "string",
"matter_id": "string",
"judgment_id": "string",
"mode": "measured",
"pressure_level": 123,
"target_set": {},
"operator_state": {
"focus_score": 123.45,
"expand_queue": 123,
"next_claw_action": "string"
},
"gates": [
{
"gate": "...",
"status": "...",
"reasons": "...",
"required_actions": "..."
}
]
}List Claw campaigns
Lists Claw campaigns accessible to caller.
# sandbox: full surface, no production data curl https://sandbox.api.microndelta.com/v1/claw/campaigns \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11"
import requests
resp = requests.get(
"https://sandbox.api.microndelta.com/v1/claw/campaigns",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns", { method: "GET", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", }, }); console.log(await resp.json());
{
"object": "list",
"data": [
{
"campaign_id": "...",
"matter_id": "...",
"judgment_id": "...",
"mode": "...",
"pressure_level": "...",
"target_set": "...",
"operator_state": "...",
"gates": "..."
}
],
"has_more": false
}Get Claw campaign
Gets campaign configuration, pressure level, action board, gates, and metrics.
| Parameter | Type |
|---|---|
| campaign_id required · path | string |
# sandbox: full surface, no production data curl https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11"
import requests
resp = requests.get(
"https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk", { method: "GET", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", }, }); console.log(await resp.json());
{
"campaign_id": "string",
"matter_id": "string",
"judgment_id": "string",
"mode": "measured",
"pressure_level": 123,
"target_set": {},
"operator_state": {
"focus_score": 123.45,
"expand_queue": 123,
"next_claw_action": "string"
},
"gates": [
{
"gate": "...",
"status": "...",
"reasons": "...",
"required_actions": "..."
}
]
}Update Claw campaign
Updates campaign mode, target set, operator state, and review flags.
| Parameter | Type |
|---|---|
| campaign_id required · path | string |
| Field | Type |
|---|---|
| mode | string |
| target_set | object |
| pressure_level | integer |
This operation refuses to run without a granted authority model on the parent matter. A missing grant returns 403 authority_required. It never soft-passes.
# sandbox: full surface, no production data curl -X PATCH https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 4f8a-bd31" \ -d '{ "mode": "string", "target_set": {}, "pressure_level": 123 }'
import requests
resp = requests.patch(
"https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
"Idempotency-Key": "4f8a-bd31",
},
json={
"mode": "string",
"target_set": {},
"pressure_level": 123
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk", { method: "PATCH", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", "Content-Type": "application/json", "Idempotency-Key": "4f8a-bd31", }, body: JSON.stringify({ "mode": "string", "target_set": {}, "pressure_level": 123 }), }); console.log(await resp.json());
{
"campaign_id": "string",
"matter_id": "string",
"judgment_id": "string",
"mode": "measured",
"pressure_level": 123,
"target_set": {},
"operator_state": {
"focus_score": 123.45,
"expand_queue": 123,
"next_claw_action": "string"
},
"gates": [
{
"gate": "...",
"status": "...",
"reasons": "...",
"required_actions": "..."
}
]
}Focus Claw
Ranks wallets, exchanges, issuers, packets, actions, and operator tasks by actionability.
| Parameter | Type |
|---|---|
| campaign_id required · path | string |
| Field | Type |
|---|---|
| criteria | array |
| weights | object |
This operation refuses to run without a granted authority model on the parent matter. A missing grant returns 403 authority_required. It never soft-passes.
# sandbox: full surface, no production data curl -X POST https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/focus \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 4f8a-bd31" \ -d '{ "criteria": [ "string" ], "weights": {} }'
import requests
resp = requests.post(
"https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/focus",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
"Idempotency-Key": "4f8a-bd31",
},
json={
"criteria": [
"string"
],
"weights": {}
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/focus", { method: "POST", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", "Content-Type": "application/json", "Idempotency-Key": "4f8a-bd31", }, body: JSON.stringify({ "criteria": [ "string" ], "weights": {} }), }); console.log(await resp.json());
{
"campaign_id": "string",
"ranked_targets": [
{
"target_type": "string",
"target_id": "string",
"focus_score": 123.45,
"reason": "string"
}
]
}Expand Claw
Adds lawful graph expansion leads, attribution leads, legal process targets, and counterparty opportunities.
| Parameter | Type |
|---|---|
| campaign_id required · path | string |
| Field | Type |
|---|---|
| expansion_types | array |
| max_leads | integer |
This operation refuses to run without a granted authority model on the parent matter. A missing grant returns 403 authority_required. It never soft-passes.
# sandbox: full surface, no production data curl -X POST https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/expand \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 4f8a-bd31" \ -d '{ "expansion_types": [ "string" ], "max_leads": 123 }'
import requests
resp = requests.post(
"https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/expand",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
"Idempotency-Key": "4f8a-bd31",
},
json={
"expansion_types": [
"string"
],
"max_leads": 123
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/expand", { method: "POST", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", "Content-Type": "application/json", "Idempotency-Key": "4f8a-bd31", }, body: JSON.stringify({ "expansion_types": [ "string" ], "max_leads": 123 }), }); console.log(await resp.json());
{
"campaign_id": "string",
"leads": [
{}
]
}Set pressure level
Moves campaign across lawful pressure levels: observe, prepare, preserve, discover, freeze/block, seize/turn over, recover/distribute.
| Parameter | Type |
|---|---|
| campaign_id required · path | string |
| Field | Type |
|---|---|
| pressure_level | integer |
| reason | string |
| counsel_approval_id | string |
This operation refuses to run without a granted authority model on the parent matter. A missing grant returns 403 authority_required. It never soft-passes.
# sandbox: full surface, no production data curl -X POST https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/pressure \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 4f8a-bd31" \ -d '{ "pressure_level": 123, "reason": "string", "counsel_approval_id": "string" }'
import requests
resp = requests.post(
"https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/pressure",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
"Idempotency-Key": "4f8a-bd31",
},
json={
"pressure_level": 123,
"reason": "string",
"counsel_approval_id": "string"
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/pressure", { method: "POST", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", "Content-Type": "application/json", "Idempotency-Key": "4f8a-bd31", }, body: JSON.stringify({ "pressure_level": 123, "reason": "string", "counsel_approval_id": "string" }), }); console.log(await resp.json());
{
"campaign_id": "string",
"matter_id": "string",
"judgment_id": "string",
"mode": "measured",
"pressure_level": 123,
"target_set": {},
"operator_state": {
"focus_score": 123.45,
"expand_queue": 123,
"next_claw_action": "string"
},
"gates": [
{
"gate": "...",
"status": "...",
"reasons": "...",
"required_actions": "..."
}
]
}Create Claw action
Creates a campaign action: watch, packet, discovery, exchange, issuer, sanctions, legal process, ledger, or reporting task.
| Parameter | Type |
|---|---|
| campaign_id required · path | string |
| Field | Type |
|---|---|
| type | string |
| title | string |
| owner_id | string |
| due_at | date-time |
| linked_packet_id | string |
| review_required | boolean |
This operation refuses to run without a granted authority model on the parent matter. A missing grant returns 403 authority_required. It never soft-passes.
# sandbox: full surface, no production data curl -X POST https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/actions \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 4f8a-bd31" \ -d '{ "type": "string", "title": "string", "owner_id": "string", "due_at": "2026-06-01T12:00:00Z", "linked_packet_id": "string", "review_required": true }'
import requests
resp = requests.post(
"https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/actions",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
"Idempotency-Key": "4f8a-bd31",
},
json={
"type": "string",
"title": "string",
"owner_id": "string",
"due_at": "2026-06-01T12:00:00Z",
"linked_packet_id": "string",
"review_required": True
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/actions", { method: "POST", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", "Content-Type": "application/json", "Idempotency-Key": "4f8a-bd31", }, body: JSON.stringify({ "type": "string", "title": "string", "owner_id": "string", "due_at": "2026-06-01T12:00:00Z", "linked_packet_id": "string", "review_required": true }), }); console.log(await resp.json());
{
"action_id": "string",
"matter_id": "string",
"campaign_id": "string",
"type": "string",
"title": "string",
"owner_id": "string",
"priority": "string",
"status": "string"
}Get Claw board
Gets operator board with focus queue, expand queue, pressure state, legal packets, alerts, and blockers.
| Parameter | Type |
|---|---|
| campaign_id required · path | string |
# sandbox: full surface, no production data curl https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/board \ -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \ -H "MD-Version: 2026-06-11"
import requests
resp = requests.get(
"https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/board",
headers={
"Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
"MD-Version": "2026-06-11",
},
)
print(resp.json())const resp = await fetch("https://sandbox.api.microndelta.com/v1/claw/campaigns/cam_91Lk/board", { method: "GET", headers: { "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx", "MD-Version": "2026-06-11", }, }); console.log(await resp.json());
{
"campaign": {
"campaign_id": "string",
"matter_id": "string",
"judgment_id": "string",
"mode": "measured",
"pressure_level": 123,
"target_set": {},
"operator_state": {
"focus_score": "...",
"expand_queue": "...",
"next_claw_action": "..."
},
"gates": [
"..."
]
},
"focus_queue": [
{}
],
"expand_queue": [
{}
],
"packet_queue": [
{
"packet_id": "...",
"matter_id": "...",
"type": "...",
"status": "...",
"authorized_sender": "...",
"review_state": "...",
"source_refs": "...",
"audit": "..."
}
],
"alerts": [
{
"alert_id": "...",
"matter_id": "...",
"type": "...",
"severity": "...",
"status": "...",
"target": "...",
"reason": "...",
"created_at": "..."
}
],
"blockers": [
{
"gate": "...",
"status": "...",
"reasons": "...",
"required_actions": "..."
}
]
}