Thresholds
Thresholds are per user — every API key belonging to the user shares them. See Policy engine for how they’re evaluated.
GET /v1/thresholds
Section titled “GET /v1/thresholds”curl https://sandbox-api.nuez.app/v1/thresholds \ -H "Authorization: Bearer <jwt>"{ "per_tx_limit_ars": 100000, "daily_limit_ars": 300000, "monthly_limit_ars": 2000000, "whitelist_cbus": [], "require_approval_above_ars": 500000}If the user has no thresholds row yet, returns the server defaults (DEFAULT_PER_TX_LIMIT_ARS etc.) rather than an error.
PUT /v1/thresholds
Section titled “PUT /v1/thresholds”Writes new thresholds immediately — unlike the propose_threshold_change MCP tool, this endpoint does not send a WhatsApp confirmation first.
curl -X PUT https://sandbox-api.nuez.app/v1/thresholds \ -H "Authorization: Bearer <jwt>" \ -H "Content-Type: application/json" \ -d '{ "per_tx_limit_ars": 150000, "daily_limit_ars": 400000, "monthly_limit_ars": 2500000, "whitelist_cbus": ["0000003100010000123456"], "require_approval_above_ars": 600000 }'Returns 204 No Content on success. All five fields are expected in the body — omitted numeric fields are written as 0, which (per the policy engine) disables that particular limit rather than blocking everything.