Skip to main content
POST
Risk evaluate

How Evaluation Works

  1. The signal is ingested into risk_signals
  2. Your active policy rules are evaluated (highest priority match wins)
  3. A risk_decision record is created with the outcome
  4. If mint_receipt: true and issuer_id/kid are provided, a fraud_decision_receipt is minted via the attestation service

Decision Outcomes

Built-in receipt types

Request

string
required
Signal type: velocity, ato, deepfake, impersonation, geo_anomaly, behavior, device_fingerprint
string
required
Subject identifier.
integer
required
Risk score (0–100).
string
Defaults to user.
boolean
If true, mints a fraud_decision_receipt after evaluation. Requires issuer_id and kid.
string
Issuer UUID for receipt minting.
string
Key ID for receipt signing.

Response

string
allow | challenge | block | review
string
UUID of the risk decision record.
string
UUID of the ingested risk signal.
string
UUID of the matching policy rule (if any).
string
UUID of the minted receipt (only if mint_receipt: true and succeeded).

Authorizations

X-API-Key
string
header
required

API key for machine-to-machine authentication

Body

application/json
signal_type
enum<string>
required
Available options:
velocity,
ato,
deepfake,
impersonation,
geo_anomaly,
behavior,
device_fingerprint
subject_id
string
required
risk_score
integer
required
Required range: 0 <= x <= 100
subject_type
string
default:user
mint_receipt
boolean
issuer_id
string
kid
string

Response

Risk decision

decision_id
string
signal_id
string
decision
enum<string>
Available options:
allow,
challenge,
block,
review
policy_id
string | null
receipt_id
string | null