Skip to main content
POST
Add an address exception for a screening 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

Body

application/json

Adds one address exception to the (environment, vendor) list. Omit chain to apply it to every chain, and appliesToScope to apply it at every screening moment.

address
string
required

The address to except, in its native casing.

Required string length: 1 - 256
disposition
enum<string>
required

Whether the entry exempts the address from the customer's own rules, or blocks it. Both evaluate below the sanctions floor, so ALLOW can never unblock a sanctioned address.

Available options:
ALLOW,
DENY
chain
enum<string>
Available options:
ETH,
EVM,
FLOW,
SOL,
ALGO,
STARK,
COSMOS,
BTC,
ECLIPSE,
SUI,
SPARK,
TRON,
APTOS,
TON,
STELLAR,
ALEO,
TEMPO,
MIDNIGHT
appliesToScope
enum<string>

Which scopes an address entry applies to. Separate from ScreeningPolicyScopeEnum because ALL is meaningful here and meaningless on a policy row. ALL is the default and the overwhelmingly common intent — a blocked actor is normally blocked everywhere — and narrowing is available for the customer who wants it.

Available options:
ALL,
SIGN_IN,
TRANSACTION
note
string

Human-readable label to identify this entry in the dashboard.

Maximum string length: 255

Response

The created address entry

A customer address exception, belonging to the (environment, vendor) pair rather than to one policy — a denylist should have one answer to "is this actor blocked?" whichever screening moment is being resolved. Matched by a chain-aware fold of the address, not a plain lowercase, because base58 and base32 chains are case-significant. An absent chain applies the entry to every chain.

id
string
required
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"

address
string
required

The address, in the casing it was submitted with.

appliesToScope
enum<string>
required

Which scopes an address entry applies to. Separate from ScreeningPolicyScopeEnum because ALL is meaningful here and meaningless on a policy row. ALL is the default and the overwhelmingly common intent — a blocked actor is normally blocked everywhere — and narrowing is available for the customer who wants it.

Available options:
ALL,
SIGN_IN,
TRANSACTION
disposition
enum<string>
required

Whether the entry exempts the address from the customer's own rules, or blocks it. Both evaluate below the sanctions floor, so ALLOW can never unblock a sanctioned address.

Available options:
ALLOW,
DENY
chain
enum<string>
Available options:
ETH,
EVM,
FLOW,
SOL,
ALGO,
STARK,
COSMOS,
BTC,
ECLIPSE,
SUI,
SPARK,
TRON,
APTOS,
TON,
STELLAR,
ALEO,
TEMPO,
MIDNIGHT
note
string

Human-readable label to identify this entry in the dashboard.

Maximum string length: 255
createdAt
string<date-time>

ISO 8601 timestamp of when the entry was added.

Last modified on August 30, 2026