POST https://api.trmlabs.com/public/v2/transaction-monitoring/transactions with body: {"txHash": "<hash>", "chain": "ethereum", "accountExternalId": "<your_internal_user_id>"} immediately after broadcasting each transaction
TRM processes the transaction and generates alerts asynchronously; poll GET /public/v2/transaction-monitoring/alerts?status=OPEN or configure a webhook callback URL in the TRM console to receive push notifications
For each alert, inspect risk_indicators (array of {category, riskScore}); categories include SANCTIONS, DARKNET_MARKET, STOLEN_FUNDS, RANSOMWARE, TERRORISM_FINANCING
Implement an alert disposition workflow: POST /public/v2/transaction-monitoring/alerts/{alertId}/update with {"status": "CLOSED", "validity": "TRUE_POSITIVE", "closedReason": "<reason>"} to record compliance decisions
File SARs (Suspicious Activity Reports) via your FinCEN/FINTRAC reporting system for TRUE_POSITIVE high-severity alerts; retain TRM alert IDs as supporting evidence in the SAR narrative
Export alert and disposition data monthly via GET /public/v2/transaction-monitoring/alerts?startTime=<ISO8601>&endTime=<ISO8601> for regulatory reporting and AML program reviews
Known gotchas
TRM processes new blockchain transactions with a lag (typically seconds to minutes) depending on chain finality; do not treat a clean initial screen as final — alerts can be generated after the initial POST response
The accountExternalId field links blockchain activity to your internal user; omitting it breaks user-level risk aggregation and makes it impossible to generate per-user risk profiles required by most AML programs
TRM API rate limits apply per API key; high-volume VASPs should request elevated limits — hitting rate limits causes 429 errors that silently drop monitoring registrations if not retried
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp