watchlists.add
LivePer-counterparty subscription shorthand.
Description
alert_on accepts any subset of new_episode, commitment_due, trust_change. Per ADR-0021 §subscriptions.
Input schema
| Field | Type | Required | Description |
|---|---|---|---|
counterparty_id | string | yes | Counterparty to watch. |
alert_on | Array<'new_episode' | 'commitment_due' | 'trust_change'> | no | Default: all three. |
Output shape
typescript
{ watchlist_entry_id: string }Example call
JSON-RPC tools/call request body (omit the JSON-RPC envelope when using an SDK; the SDK adds it for you):
jsontools/call params
{ "name": "watchlists.add", "arguments": { "counterparty_id": "entity_01HXSARAH", "alert_on": ["new_episode", "commitment_due"] } }Example response
Tool results are always wrapped as content[0].text with a stringified JSON body. The shape below is what you get back from JSON.parse(result.content[0].text):
jsonparsed result body
{ "watchlist_entry_id": "wlst_01H..." }Errors this tool can return
| Code | Meaning |
|---|---|
invalid_arguments | Tool input failed Zod validation. |
unauthorized | Missing or invalid bearer token. |
quota_exceeded | Per-minute, daily call, or daily inference budget exceeded. |
not_found | The requested resource (action_id, decision_id, counterparty_id, etc.) was not found. |
See the full error catalog for resolution steps on each code, plus the standard transport-layer responses (401, 429).