Title here
Summary here
When you send a validation request to the OnSefy API, you receive a JSON response that includes a summary, flagged risk patterns, and per-field diagnostics. This section walks through how to read and act on that output.
{
"status": true,
"summary": {
"risk_level": 0,
"verify_label": "Legit",
"risk_score": 1.68,
"score_confidence": "70%",
"engine": "NeonShield"
},
"risk_patterns": [
"user_agent_flag"
],
"parameters": {
"name": {
"data": "Nkosi Mokoena"
},
"user_agent": {
"field_name": "user_agent",
"error_code": 42,
"os": "Bot",
"device": "Virtual Other",
"message": "Bot detected"
},
"email": {
"data": "nkosim@webmail.co.za"
},
"phone": {
"data": "+27731234567",
"country_code_digit": 27,
"country_code": "ZA"
},
"ip": {
"ip": "105.224.101.129",
"data": "105.224.101.129",
"country": "South Africa",
"country_code": "ZA"
}
},
"transaction_id": "44de328f-3132-4911-85ab-38194edc914a",
"timestamp": "2025-05-18T14:31:14.445139+00:00"
}
Field | Type | Description |
---|---|---|
risk_level | int | 0 = Legit, 1 = Suspicious, 2 = Fraud |
verify_label | string | Label representing risk: Legit , Suspicious , or Fraud |
risk_score | float | Score from 0–10, higher = higher risk |
score_confidence | string | You can use in decison making like same score with low confidence (50-99% ) |
engine | string | Internal AI engine used to analyze input (NeonShield ) |
Pattern Name | Explanation |
---|---|
phone_flag | Phone failed format or known spam pattern |
phone_ip_mismatch | Phone number country and IP country don’t match |
name_email_similarity | Name and email appear synthetically similar or generic |
These patterns help you understand why the score was generated and take actions based on trust logic.
{
"field_name": "phone",
"error_code": 32,
"country_code": "NA",
"message": "Invalid phone number format."
}
NA
indicates that the country couldn’t be detected from the number.{
"data": "user@gmail.com"
}
{
"ip": "35.242.177.6",
"data": "35.242.177.6",
"country": "United Kingdom",
"country_code": "GB"
}
{
"field_name": "name",
"error_code": 24,
"data": "John Doe",
"message": "Blocked due to suspicious name."
}
{
"os": "Mac OS X",
"device": "Mac"
}
Field | Description |
---|---|
transaction_id | Unique identifier per request |
timestamp | ISO UTC time of when the request was processed |
"status": true
confirms a successful API call.