Skip to main content

Replaces the whole rule blob. Rules are stored exactly as sent — order preserved, nothing normalized, reshaped, or dropped — because evaluation is first-match-wins and the array order is the policy.

rules
object
required

Customer rules, { preScreen, postScreen }, per the vendor's own rule schema (TrmPolicyRules or ChainalysisPolicyRules). Typed as a free-form object rather than a oneOf over the two: the vendor is a path parameter, no OpenAPI construct selects a body schema from one, and oneOf generates SDK models that do not compile. The server validates the blob against the vendor's schema before writing, so a TRM policy naming a chainalysis.* field is a 400. Clients should validate against those two schemas before submitting.

Neither the sanctions floor nor the terminal ALLOW appears here. Both are generated from code on every screen, so there is nothing to author, edit, or read back, and no request body can weaken them.

revision
integer

The revision this edit was based on. Required to replace an existing policy, and a stale value is rejected with a 409 rather than silently applied. Omit it only when creating the first policy for this vendor.

Required range: x >= 1
Last modified on October 6, 2026