Data Model

Alerts

Suspicious transaction activity alerts requiring investigation.

FieldKeyData TypeRequiredMax LengthDescription
Alert IDalert_idstringYes36Unique identifier for each alert in your system
Entity ID Listentity_id_listarray[string]Yes-List of associated Entity IDs that must map to previously submitted entities
Flagged Transaction ID Listflagged_transaction_id_listarray[string]Yes-Array of Transaction IDs flagged by this alert (must map to submitted transactions)
Alert Sourcesourcestring enum valueYes-TM (Transaction Monitoring) or BM (Blockchain Monitoring)
Alert TitletitlestringYes-Alert title displayed in Rose UI for reference
Alert DescriptiondescriptionstringNo-Free-form description for Rose analysis
Statusstatusstring enum valueYes-OPEN or CLOSED (Rose only analyzes OPEN alerts)
Created Atcreated_atstringYes-ISO8601 datetime when alert was created
Rule Titlerule_titlestringYes-Title of the rule that triggered the alert
Disposition Statusdisposition_statusstring enum valueNo-UNDER_INVESTIGATION, PENDING_INFO, ESCALATED, MONITORING, SUSPICIOUS_CONFIRMED, STR_FILED, CLOSED, CLEARED, NON_REFERRAL, REOPENED
Disposition Notesdisposition_notesstringNo-Free text for disposition narratives and notes
Dispositioned Atdispositioned_atstringNo-ISO8601 datetime when disposition was set
Dispositioned Bydispositioned_bystringNo-Email address of team member who changed disposition
Start Datestart_datestringNo-ISO8601 datetime of first flagged transaction
End Dateend_datestringNo-ISO8601 datetime of last flagged transaction
Reference IDs'reference_idsarray[string]No-Send multiple reference ids for that alert for mapping
Alert Sub Typealert_subtypestringNo-Alert subtype classification (e.g., DIRECT, INDIRECT)
Crypto Transferred Value Percentagecrypto_transferred_value_percentagefloatNo-Percentage of crypto transferred value associated with the alert (0-100)

Entities API Data Model

Entities (Main Model)

Individual persons and business entities involved in transactions.

FieldKeyData TypeRequiredMax LengthDescription
Entity IDentity_idstringYes36Unique identifier for each entity in your system
Typetypestring enum valueYes-INDIVIDUAL or BUSINESS
Date of BirthdobstringNo-ISO8601 date format YYYY-MM-DD
Corporate Tax IDcorporate_tax_idstringNo-Corporate identifier (EIN, FEIN, BN, UTR, CRN, etc.)
Corporate Tax ID Typecorporate_tax_id_typestringNo-Type of tax ID (EIN, FEIN, BN, UTR, CRN, Steuernummer, etc.)
Emailsemailsarray[string]No-List of email addresses
Gendergenderstring enum valueNo-MALE or FEMALE
OccupationoccupationstringNo-Individual's occupation
NamenamestringNo-Legal name of entity
Account Holder Nameaccount_holder_namestringNo-Name of person associated with business account
IP Addressesip_addressesarray[string]No-IPv4 or IPv6 addresses
Phone Numbersphone_numbersarray[string]No-Phone numbers in E.164 format
Registered Atregistered_atstringNo-ISO8601 datetime when entity registered
Mailing Street Addressmailing_street_addressstringNo-Street address
Mailing Citymailing_citystringNo-City/locality
Mailing Statemailing_statestringNo-State/province/region
Mailing Postal Codemailing_postal_codestringNo-Postal/zip code
Mailing Countrymailing_countrystringNo-ISO 3166 alpha-2 country code
WebsitewebsitestringNo-Business website URL
Verification Tierverification_tierstringNo64KYC/verification tier level
Purpose of Accountpurpose_of_accountarray[string]No-Purpose or intended use of the account
IndustryindustrystringNo-Business industry classification
Source of Fundssource_of_fundsarray[string]No-Origin of account holder's funds
Source of Wealthsource_of_wealtharray[string]No-Origin of account holder's overall wealth
Employment Statusemployment_statusstringNo-Employment status (e.g. "employed", "self_employed", "retired")
Nationalitynationalityarray[string]No-ISO 3166 Alpha-2 country codes. Multiple nationalities supported
Citizenshipcitizenshiparray[string]No-ISO 3166 Alpha-2 country codes. Multiple citizenships supported
Tagstagsarray[string]No-Free-text labels/tags/flags
Estimated Monthly Depositsestimated_monthly_depositsMonetaryRangeNo-Expected monthly deposit volume range (see MonetaryRange)
Estimated Monthly Withdrawalsestimated_monthly_withdrawalsMonetaryRangeNo-Expected monthly withdrawal volume range (see MonetaryRange)
Estimated Trades Per Monthestimated_trades_per_monthBaseRangeNo-Expected trades per month (see BaseRange)
Net Worthnet_worthMonetaryRangeNo-Declared net worth range (see MonetaryRange)
Annual Incomeannual_incomeMonetaryRangeNo-Declared annual income range (see MonetaryRange)
UBOuboUBODataNo-Ultimate Beneficial Owner data (see UBOData)
Blockchain Intelblockchain_intelarray[BlockchainIntel]No-Customer-supplied KYT Data (see BlockchainIntel)

MonetaryRange

Used for monetary estimates (deposits, withdrawals, income, net worth).

Field

Key

Data Type

Required

Max
Length

Description

Lower Bound

lower_bound

integer

No*

Lower bound of the range

Upper Bound

upper_bound

integer

No*

Upper bound of the range

Currency

currency

integer

Yes

Currency ID from Axle's supported currencies

*At least one of lower_bound or upper_bound must be provided.


BaseRange

Used for count-based estimates (e.g. trades per month)

Field

Key

Data Type

Required

Max
Length

Description

Lower Bound

lower_bound

integer

No*

Lower bound of the range

Upper Bound

upper_bound

integer

No*

Upper bound of the range

*At least one of lower_bound or upper_bound must be provided.


UBOData

Field

Key

Data Type

Required

Max
Length

Description

Individual UBOs

individual

array[IndividualUBO]

No*

Array of individual person UBOs

Corporate UBOs

corporate

array[CorporateUBO]

No*

Array of corporate entity UBOs

*At least one of individual or corporate must contain entries.


IndividualUBO

Field

Key

Data Type

Required

Max
Length

Description

ID

id

integer

Yes

Client-provided unique ID within this payload

First Name

first_name

string

Yes

256

First/given name

Middle Name

middle_name

string

No

256

Middle name

Last Name

last_name

string

Yes

Last name

DOB

dob

string

No

10

ISO8601 date format YYYY-MM-DD

Email

email

string

No

Email address

Phone

phone

string

No

Phone number in E.164 format

Nationality

nationality

array[string]

No

ISO 3166 Alpha-2 country codes

Citizenship

citizenship

array[string]

No

ISO 3166 Alpha-2 country codes

Country of Birth

country_of_birth

string

No

ISO 3166 Alpha-2 country code

City of Birth

city_of_birth

string

No

City of birth

Tax Residency

tax_residency

array[string]

No

ISO 3166 Alpha-2 country codes

Ownership Percentage

ownership_percentage

float

No

Ownership stake (0-100)

Role

role

string

No

Job title / role

Controller

controller

bool

No

Has control of corporation (CEO, CFO, owner or equivalent)

Street Address

street_address

string

No

Street address

City

city

string

No

256

City

State

state

string

No

256

State or province

Postal Code

postal_code

string

No

32

Postal/ZIP code

Country

country

string

No

ISO 3166 Alpha-2 country code

CorporateUBO

Field

Key

Data Type

Required

Max
Length

Description

ID

id

integer

Yes

Client-provided unique ID within this payload

Entity Name

entity_name

string

Yes

256

Legal entity name

Formation Country

formation_country

string

No

ISO 3166 Alpha-2 code

Formation Date

formation_date

string

No

10

Date of formation (YYYY-MM-DD)

Ownership Percentage

ownership_percentage

float

No

Ownership stake (0-100)

Street Address

street_address

string

No

Street address

City

city

string

No

256

City

State

state

string

No

256

State or province

Postal Code

postal_code

string

No

32

Postal/ZIP code

Country

country

string

No

ISO 3166 Alpha-2 country code

Children

children

array[UBOChild]

No

Child UBOs relationship

UBOChild


Field

Key

Data Type

Required

Max
Length

Description

ID

id

integer

Yes

References another UBO's id in the same payload

Relative Ownership

relative_ownership

float

No

Ownership percentage the child has of this corporate UBO (0-100)


Transaction API Data Model

Transaction (Main Model)

Field

Key

Data Type

Required

Max Length

Description

Transaction ID

transaction_id

string

Yes

255

Unique identifier in your system

Type

type

Transaction Types(ENUM)

No

-

Transaction type (see Transaction Types below)

Subtype

subtype

Transaction Subtypes(ENUM)

No

-

Transaction subtype (see Transaction Subtypes below)

Event Time

event_time

string

Yes

-

ISO8601 datetime (YYYY-MM-DDTHH:MM:SS or YYYY-MM-DDTHH:MM:SSZ)

Amount

amount

string

Yes

-

Transaction value as decimal string (e.g., "1234.56")

Amount Currency

amount_currency

string enum value

Yes

-

Currency enum for amount (e.g., "USD" - see currency endpoints)

Sender

sender

TransactionSender

No

-

Transaction sender details (see TransactionSender model)

Receiver

receiver

TransactionReceiver

No

-

Transaction receiver details (see TransactionReceiver model)

Balance

balance

string

No

-

Account balance after transaction as decimal string

Blockchain

blockchain

BlockchainDetails

No

-

Blockchain transaction details (see BlockchainDetails model)

Status

status

TransactionStatus

No

-

Current Status of the Transaction

Descriptor

descriptor

string

No

-

Additional description of the transaction

Tags

tags

array[string]

No

-

Free-form tags associated with the transaction

TransactionSender

FieldKeyData TypeRequiredMax LengthDescription
Entity IDentity_idstringNo*-Unique entity identifier (must map to submitted entity)
NamenamestringNo*-Entity name (mutually exclusive with entity_id)
Blockchain Addressesblockchain_addressesarray[string]No-Associated blockchain addresses
Asset Outasset_outCurrencyAmountNo-Asset going out from sender (see CurrencyAmount model)
Blockchain Intelblockchain_intelarray[BlockchainIntel]No-Customer-supplied KYT Data (see BlockchainIntel)

*Either entity_id or name can be provided, but not both

TransactionReceiver

FieldKeyData TypeRequiredMax LengthDescription
Entity IDentity_idstringNo*-Unique entity identifier (must map to submitted entity)
NamenamestringNo*-Entity name (mutually exclusive with entity_id)
Blockchain Addressesblockchain_addressesarray[string]No-Associated blockchain addresses
Asset Inasset_inCurrencyAmountNo-Asset coming in to receiver (see CurrencyAmount model)
Blockchain Intelblockchain_intelarray[BlockchainIntel]No-Customer-supplied KYT Data

*Either entity_id or name can be provided, but not both

CurrencyAmount

FieldKeyData TypeRequiredMax LengthDescription
AmountamountstringYes-Amount value as decimal string (e.g., "123.456")
Currency IDcurrency_idintegerNo*-Currency identifier
Currency Typecurrency_typestring enum valueNo*-Type of currency: FIAT or CRYPTO

*Both currency_id and currency_type must be provided together or both omitted

BlockchainDetails

FieldKeyData TypeRequiredMax LengthDescription
Transaction Hashtransaction_hashstringNo-Transaction hash on the blockchain
Chain IDchain_idintegerNo-Blockchain network identifier (see chain endpoints)

Transaction Types

String Enum ValueDescription
DEPOSITAll funding operations
WITHDRAWALAll cash-out operations
PAYMENTAll payment operations
TRANSFERAll transfer operations
TRADEAll trading operations
FEEAll fee operations
CREDITAll credit operations
INTERESTAll interest/reward operations
LOANAll loan operations
REMITTANCEAll remittance operations
INTERNALAll internal operations
CHARGEBACKAll chargeback operations
OTHERAll other/unspecified operations
TRANSACTIONGeneric transaction type

Transaction Subtypes

String Enum ValueDescription
TRADEAll trading operations
MARGINMargin trading operations
PTL-SALEPrivate token launch sales
EARN_ALLOCATIONEarning program allocations
EARN_REWARDEarning program rewards
STAKINGAll staking operations
REWARDGeneric rewards and dividends
ROLLOVERInvestment rollovers
DEPOSIT_BANKTraditional bank deposits
DEPOSIT_CRYPTOAll cryptocurrency deposits
DEPOSIT_FIATFiat currency deposits
DEPOSIT_PROCESSORPayment processor deposits
ACCOUNT_DEPOSITAccount funding operations
VAULT_DEPOSITVault/savings deposits
WITHDRAWAL_BANKTraditional bank withdrawals
WITHDRAWAL_CRYPTOAll cryptocurrency withdrawals
WITHDRAWAL_FIATFiat currency withdrawals
WITHDRAWAL_PROCESSORPayment processor withdrawals
CASH_WITHDRAWALATM/cash withdrawals
VAULT_WITHDRAWALVault/savings withdrawals
E_TRANSFER_SENTElectronic transfer sent
E_TRANSFER_RECEIVEDElectronic transfer received
INTERNAL_TRANSFERInternal account transfers
BALANCE_TRANSFERBalance transfers between accounts
P2P_TRANSFERPerson-to-person transfers
WIRE_TRANSFERWire transfers
ACH_TRANSFERACH batch-based transfers
RTP_TRANSFERReal-Time Payments transfers
CHECK_TRANSFERPhysical check transfers
CARD_PURCHASECard-based purchases
BILL_PAYMENTBill payment transactions
LOAN_REPAYMENTLoan repayment transactions
CRYPTO_PAYMENTCryptocurrency payment transactions
CARD_SETTLEMENTCard settlement operations
SERVICE_FEEService fees
SUBSCRIPTION_FEESubscription fees
CASHBACKCashback rewards
CREDIT_TRANSACTIONCredit transactions
PROMOTIONAL_CREDITPromotional credits
INTEREST_EARNEDInterest earned
INTEREST_CHARGEDInterest charged
TRAVEL_EXPENSETravel-related expenses
SETTLEDSettlement operations
PREPAID_CARD_LOADPrepaid Card Load

Transaction Status

Status
PENDING
PROCESSING
AUTHORIZED
COMPLETED
FAILED
DECLINED
CANCELLED
REFUNDED
PARTIALLY_REFUNDED
REVERSED
ON_HOLD
EXPIRED
SCHEDULED
IN_TRANSIT
AWAITING_CONFIRMATION
PARTIALLY_COMPLETED
QUEUED
SUSPENDED
DISPUTED
WRITTEN_OFF
ATTEMPTED
UNKNOWN
CAPTURED
SETTLEMENT_ERROR

Blockchain Intel (shared)

BlockchainIntel

FieldKeyTypeRequiredDescription
Vendorvendorstring enum valueYesData provider identifier. Accepted: chainalysis_kyt
Vendor Versionvendor_versionstringYesProvider API version. E.g. v2 or v1
Fetched Atfetched_atstringYesISO8601 datetime when the intel was retrieved from the provider
DatadataobjectYesVendor-specific structured payload. Shape defined per vendor × vendor_version pair. Refer Blockchain->Data

data shape by context:

Attached tovendorAccepted versionsdata shape
Transaction sender/receiverchainalysis_kytv2Transfer direct exposure — see "Transaction transfer exposure"
Entitychainalysis_kytv1, v2KYT user details — see "Entity KYT user details (v2 / v1)"

BlockchainIntel -> Data

Transaction transfer exposure (chainalysis_kyt · v2)

Used when blockchain_intel is attached to a transaction sender/receiver. data = the KYT direct-exposure response from GET /api/kyt/v2/transfers/{externalId}/exposures.

No result: send "direct": null to signal the lookup ran but returned nothing.

FieldKeyTypeRequiredDescription
Direct Namedirect.namestringNoIdentified counterparty name (e.g. Binance, Tornado Cash). Null if unknown
Direct Category IDdirect.categoryIdintegerNoChainalysis numeric category ID

Entity KYT user details v2 (chainalysis_kyt · v2)

Used when blockchain_intel is attached to an entity. data = the KYT user-details response from GET /api/kyt/v2/users/{externalUserId}.

FieldKeyData TypeRequiredDescription
User IDuserIdstringNoChainalysis KYT user identifier
Risk ScoreriskScorestring (enum)NoSEVERE / HIGH / MEDIUM / LOW. Null if the user has no activity
Score Updated DatescoreUpdatedDatestringNoISO8601 datetime when Chainalysis last updated the risk score
Created AtcreatedAtstringNoISO8601 datetime when the user was created in KYT
Last ActivitylastActivitystringNoISO8601 datetime timestamp of the user's most recent activity
Exposure DetailsexposureDetailsarray[KYTExposureDetail]NoPer-category exposure breakdown (see KYTExposureDetail)
PropertiespropertiesobjectNo{ "active": boolean, "country": string } (ISO 3166-1 alpha-2). v2 only

Entity KYT user details v1 (chainalysis_kyt · v1)

Used when blockchain_intel is attached to an entity with vendor_version: "v1". data = the response from GET /api/kyt/v1/users/{userId}. Same as v2 except: legacy score, creationDate instead of createdAt, and no properties.

FieldKeyData TypeRequiredDescription
User IDuserIdstringNoChainalysis KYT user identifier
Risk ScoreriskScorestring (enum)NoSEVERE / HIGH / MEDIUM / LOW. Null if no activity
Score (legacy)scorestring (enum)Nored / amber / green. Legacy risk color, superseded by riskScore. v1 only
Score Updated DatescoreUpdatedDatestringNoISO8601 datetime when the risk score was last updated
Creation DatecreationDatestringNoISO8601 datetime when the user was created in KYT (v1's equivalent of createdAt)
Last ActivitylastActivitystringNoISO8601 datetime of the user's most recent activity
Exposure DetailsexposureDetailsarray[KYTExposureDetail]NoPer-category exposure breakdown (see KYTExposureDetail)

KYTExposureDetail

One entry per exposure category in exposureDetails (entity KYT user details, v1 and v2).

FieldKeyData TypeRequiredDescription
ClusterclusterobjectNo{ "name": string, "categoryId": integer, "category": string }. category (name string) is v1 only
Sent Direct ExposuresentDirectExposurefloatNoUSD value of direct exposure from funds sent
Sent Indirect ExposuresentIndirectExposurefloatNoUSD value of indirect exposure from funds sent
Received Direct ExposurereceivedDirectExposurefloatNoUSD value of direct exposure from funds received
Received Indirect ExposurereceivedIndirectExposurefloatNoUSD value of indirect exposure from funds received