Skip to main content
GET
Get the screening policy for a vendor

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

environmentId
string
required

ID of the environment

Required string length: 36
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"95b11417-f18f-457f-8804-68e361f9164f"

providerType
enum<string>
required

Screening vendor the policy belongs to Screening vendor a policy belongs to. Deliberately not ProviderEnum, which is a 44-value auth/social/onramp list of which only these two are screening vendors. The Dynamic sanctions provider is absent because the sanctions floor is generated from code and is not configurable.

Available options:
trmWalletScreening,
chainalysisAddressScreening
scope
enum<string>
required

Which screening moment this policy governs. An environment holds one policy per vendor per scope, authored independently. Which screening moment a policy governs. An environment holds one policy per vendor per scope, authored independently — a customer may alert at sign-in and block on transactions, or skip the paid vendor call at one and not the other. Two values, not three: an "applies to both" policy would make the overlap with a single-scope row unrepresentable as a unique constraint.

Available options:
SIGN_IN,
TRANSACTION

Response

The screening policy for this environment and vendor

One vendor's screening policy in one environment, for one scope.

providerType
enum<string>
required

Screening vendor a policy belongs to. Deliberately not ProviderEnum, which is a 44-value auth/social/onramp list of which only these two are screening vendors. The Dynamic sanctions provider is absent because the sanctions floor is generated from code and is not configurable.

Available options:
trmWalletScreening,
chainalysisAddressScreening
scope
enum<string>
required

Which screening moment a policy governs. An environment holds one policy per vendor per scope, authored independently — a customer may alert at sign-in and block on transactions, or skip the paid vendor call at one and not the other. Two values, not three: an "applies to both" policy would make the overlap with a single-scope row unrepresentable as a unique constraint.

Available options:
SIGN_IN,
TRANSACTION
revision
integer
required

Generation counter. Echo it back on update as the concurrency precondition.

schemaVersion
integer
required

Rule-language version that governs how rules is parsed.

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.

addressEntryCount
integer
required

Number of live address entries applying to THIS scope — those marked ALL plus those narrowed to it. Entries themselves belong to the (environment, vendor) pair, not to this policy.

enabled
boolean
required

Whether the policy is live.

updatedAt
string<date-time>

ISO 8601 timestamp of the last mutation.

Last modified on August 30, 2026