Create a risk check
POST
Scores an identity against device, network, email and benefit history signals, then applies your rules to return a decision.
apiKeyheader
AuthorizationBearer <token>Your secret API key, for example az_live_.... Use az_test_... keys against the sandbox.
application/json- body
event*stringValue in
"signup""trial_start""credit_claim""coupon_redeem""referral"identity*Everything you know about the person making the request. Send as much as you can.
benefit?async?booleanScore in the background and send a check.completed webhook.
Default
falseThe check was scored.
application/json- response
id*stringscore*integerRisk score. Higher means more likely to be abuse.
Range
0 <= value <= 100decision*stringValue in
"allow""review""deny"matchedRule?|ID of the rule that produced the decision.
signals*array<>createdAt*stringFormat
date-timecurl -X POST 'https://api.abusezero.com/v1/checks' \ -H 'Content-Type: application/json' \ -d '{ "event": "trial_start", "identity": { "email": "jane@example.com", "ip": "203.0.113.42", "deviceId": "dev_9f8a7b6c" }, "benefit": { "type": "free_trial", "plan": "pro" }}'Example Response
{ "id": "string", "score": 0, "decision": "allow", "matchedRule": "string", "signals": [ { "name": "string", "weight": 0, "detail": "string" } ], "createdAt": "2019-08-24T14:15:22Z"}