Quick Start

Please select the product you wish to use to quickly set up the optimal payloads for your use-case

Choose your setup

Server
Please choose your backend environment for quick integration
  • cURL
    cURL
  • Java
    Java
  • Python
    Python
  • PHP
    PHP
Industry
Please choose your industry to see relevant example payloads
  • iGaming
    iGaming
  • Ecommerce
    Ecommerce
  • Travel and Ticketing
    Travel and Ticketing
  • Banking and Insurance
    Banking and Insurance
  • Online Lending
    Online Lending
  • Payment Gateways
    Payment Gateways
  • Crypto exchange
    Crypto exchange
Use case
Please choose your use case to see relevant example payloads
  • Register
    Register
  • Login
    Login
  • Deposit
    Deposit
  • Withdrawal
    Withdrawal
  • Payment
    Payment

Available Digital Footprint Analysis modules are:

Email APIPhone API
IP APIEmail Verification API
Device Fingerprinting 

Check the Admin Panel overview to learn more about the interface.

Risk Scores can be customized in the Admin Panel.

Please refer to the SDK references to use our device fingerprinting functionality.


Developer Resources

Authentication 

Our API uses a standard HTTP Authorization header. This protects your account and the data within it, so only you and SEON can access them.        

You must provide authentication for all API requests using the following format:  
X-API-KEY: [license_key]

 

Error Details

In case of problems with the API request payload or authentication, SEON returns specific error codes in the error property of the response body. You should be able to understand the exact issue based on the returned error codes.  

For a detailed list of error codes, please check the API Reference - Error codes.

 

Rate Limits

Rate limits are in place to prevent misuse and overloading of our systems. The limit takes into account all requests with a specific license key, not individual API requests.  

There is a 2 request/second limit for trial accounts. After the trial period, this limit increases to 10 requests/second. 

 

Timeout logic

All client integrations should be able to cope with client-side timeout responses to avoid timeout errors in case of degraded API performance. We recommend adding at least 500-1000 ms to the timeout set on the SEON's setting page when configuring timeout in your back-side API implementation. 


Integration Steps

At its core, our fraud prevention platform operates in three simple steps:

  1. You send user / transaction / device data.
  2. We enrich the data and deliver a risk score based on rules.
  3. You give feedback on the results.

Integration timeline

You can find a detailed timeline here to see how long it takes to get results with SEON.

Step 1 - Providing the Data

All the user, transaction and device data is sent via the Fraud API. Your first step is to define payloads for the API, populating it with as many relevant data points as possible. All the fields are optional, but the more you fill, the more precise our results will be.

  • For custom business-specific data points, use the custom_fields object.
  • The config object helps you to fine-tune settings such as versions, response and aggregating data enrichment APIs, when required.
  • You must define the authentication points aka. action_type-s (account_register, account_login, purchase etc.) where risk assessment data can be collected or fraud should be prevented.
  • For device fingerprinting, you can use our JavaScript snippet for web apps, and the SDKs for iOS and Android mobile apps. Use the session to send the encrypted payload returned by the SDK (supported by JS Agent v4, iOS SDK 3.0.1, Android SDK 3.0.2) for device data collection.

Custom support

Please get in touch with your dedicated account manager to tailor and validate your specific payloads.

Step 2 - Enrichment and Scoring

SEON is designed to give you full transparency behind every score and decision (a.k.a. state). This is why every data point will be available in the response.

By default, the fraud scores are based on preset rules, which can be reviewed in the Scoring Engine. A score of 10+ is considered risky. Standard thresholds for each state are:

StateThreshold
APPROVE0 - 10
REVIEW10 - 20
DECLINE20+

Step 3 - Feedback

Providing feedback is the key to refining the rules and getting more precise fraud scores. This is particularly important when discovering false positives and false negatives.

Every transaction state should therefore be set to the appropriate category:

StateCategory
APPROVESafe transaction.
REVIEWSuspicious transaction, not confirmed fraud yet.
DECLINEConfirmed fraudulent transaction.

 

You can also create categories of fraud reasons in the Machine Learning section of your Settings page , which support the Label API (e.g. chargeback, bonus abuser or postback data from payment: authorized, lost or stolen etc.)

negative labels

Fraud API

SEON's proprietary API combines our email, phone number, IP, and AML APIs with device fingerprinting so that you can request and receive our enriched data, rules, and scoring in a single API call.

Good to know

  • The API is fully modular, meaning you can choose to enable or disable each sub-APIs (Email, Phone, IP, or AML) or the device fingerprinting tool. Use the config object to enable or disable modules.
  • You can use the custom_fields object to send almost any custom data point to SEON. Your team can also use custom fields in rules to create a completely custom ruleset.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

 

Request Attributes

TypeRequired
config
objectno
action_type
stringno
ip
stringno
transaction_id
stringno
affiliate_id
stringno
affiliate_name
stringno
order_memo
stringno
email
stringno
email_domain
stringno
payment_id
stringno
password_hash
stringno
user_fullname
stringno
user_name
stringno
user_firstname
stringno
user_middlename
stringno
user_lastname
stringno
user_pob
stringno
user_photoid_number
stringno
user_id
stringno
user_created
integerno
user_category
stringno
user_account_status
stringno
user_bank_account
stringno
user_bank_name
stringno
user_balance
floatno
user_verification_level
stringno
user_dob
dateno
user_country
stringno
user_city
stringno
user_region
stringno
user_zip
stringno
user_street
stringno
user_street2
stringno
session_id
stringno
session
stringno
device_id
stringno
payment_mode
stringno
payment_provider
stringno
card_fullname
stringno
card_bin
stringno
card_hash
stringno
card_expire
dateno
card_last
stringno
avs_result
stringno
cvv_result
booleanno
status_3d
stringno
sca_method
stringno
phone_number
stringno
transaction_type
stringno
transaction_amount
floatno
transaction_currency
stringno
items
array of objectsno
shipping_country
stringno
shipping_city
stringno
shipping_region
stringno
shipping_zip
stringno
shipping_street
stringno
shipping_street2
stringno
shipping_phone
stringno
shipping_fullname
stringno
shipping_method
stringno
billing_country
stringno
billing_city
stringno
billing_region
stringno
billing_zip
stringno
billing_street
stringno
billing_street2
stringno
billing_phone
stringno
discount_code
stringno
gift
booleanno
gift_message
booleanno
merchant_category
stringno
merchant_id
stringno
merchant_created_at
integerno
merchant_country
stringno
receiver_fullname
stringno
receiver_bank_account
stringno
details_url
stringno
regulation
stringno
bonus_campaign_id
stringno
brand_id
stringno
custom_fields
objectno

HTTP Endpoint

POST

https://api.seon.io/SeonRestService/fraud-api/v2.0/
PHP
Ecommerce
Withdrawal

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
id
string
state
string
fraud_score
number
ip_details
object
email_details
object
bin_details 
object
phone_details
object
aml_details
object
version
string
applied_rules
array of object
device_details
object
calculation_time
integer
seon_id
integer
rule_category_details
array of object
Response
{
 "success": true,
 "error": {},
 "data": {
  "id": "67c2810c2de1",
  "state": "DECLINE",
  "fraud_score": 95.75,
  "bin_details": {
   "card_bin": "414141",
   "bin_bank": "VERMONT NATIONAL BANK",
   "bin_card": "VISA",
   "bin_type": "CREDIT",
   "bin_level": "CLASSIC",
   "bin_country": "UNITED STATES",
   "bin_country_code": "US",
   "bin_website": "www.vermontnationalbank.com",
   "bin_phone": "+1 802 476 0030",
   "bin_valid": true,
   "card_issuer": "VISA"
  },
  "version": "v2.0",
  "applied_rules": [
   {
    "id": "1000702",
    "name": "Phone possible is equal to true",
    "operation": "+",
    "score": 1.11
   },
   {
    "id": "1000682",
    "name": "has_pep_match is not listed on watchlist2",
    "operation": "+",
    "score": 0
   },
   {
    "id": "P106",
    "name": "Customer is using a datacenter ISP",
    "operation": "+",
    "score": 10
   },
   {
    "id": "1000715",
    "name": "Temp ARC 2 category specific rule",
    "operation": null,
    "score": 0
   },
   {
    "id": "P110",
    "name": "IP address was found on 4 spam blacklists",
    "operation": "+",
    "score": 4
   },
   {
    "id": "1000671",
    "name": "has_sanction_match is equal to true",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000687",
    "name": "has_sanction_match is not listed on watchlist2",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000707",
    "name": "Rule C (User category is equal to VIP)",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000718",
    "name": "Domain creation date is greater than 1 month ago",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000670",
    "name": "has_watchlist_match is equal to false",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000696",
    "name": "Phone number valid is equal to true",
    "operation": "+",
    "score": 1.11
   },
   {
    "id": "P112",
    "name": "Customer is using public proxy",
    "operation": "+",
    "score": 10
   },
   {
    "id": "1000716",
    "name": "Temp ARC 2",
    "operation": "+",
    "score": 30
   },
   {
    "id": "1000713",
    "name": "Temp ARC category specific rule",
    "operation": null,
    "score": 0
   },
   {
    "id": "1000699",
    "name": "Phone country is equal to HU",
    "operation": "+",
    "score": 1.11
   },
   {
    "id": "E123",
    "name": "Email is not similar to user full name",
    "operation": "+",
    "score": 1
   },
   {
    "id": "1000674",
    "name": "Free email is equal to true",
    "operation": "+",
    "score": 1.11
   },
   {
    "id": "1000680",
    "name": "has_crimelist_match is not listed on watchlist2",
    "operation": "+",
    "score": 0
   },
   {
    "id": "PH100",
    "name": "At least 2 online profiles were found",
    "operation": "+",
    "score": 5.2
   },
   {
    "id": "1000666",
    "name": "has_crimelist_match is equal to false",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000706",
    "name": "Rule B (Affiliate full name is equal to Affiliate Two)",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000692",
    "name": "Sanction list match is equal to true",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000705",
    "name": "Rule A (Affiliate ID is equal to a002)",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000685",
    "name": "has_watchlist_match is not listed on watchlist2",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000698",
    "name": "Phone type is equal to Mobile",
    "operation": "+",
    "score": 1.11
   },
   {
    "id": "1000668",
    "name": "has_pep_match is equal to false",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000708",
    "name": "Rule D (User account status is equal to verified)",
    "operation": "+",
    "score": 0
   },
   {
    "id": "1000714",
    "name": "ARC User full name is equal to User full name",
    "operation": "+",
    "score": 30
   },
   {
    "id": "1000647",
    "name": "Count if Previous Email address similarity is equal to SIMILAR Email for the same Email domain is greater than 0",
    "operation": "+",
    "score": 0
   }
  ],
  "calculation_time": 2327,
  "seon_id": 12602,
  "ip_details": {
   "ip": "1.2.3.4",
   "score": 24,
   "country": "AU",
   "state_prov": "Queensland",
   "city": "Brisbane",
   "timezone_offset": "+10:00",
   "isp_name": "APNIC Pty Ltd",
   "latitude": -27.48203,
   "longitude": 153.01358,
   "type": "DCH",
   "open_ports": [],
   "tor": false,
   "vpn": false,
   "web_proxy": false,
   "public_proxy": true,
   "spam_number": 4,
   "spam_urls": [
    "zen.spamhaus.org",
    "xbl.spamhaus.org",
    "noptr.spamrats.com",
    "dyna.spamrats.com"
   ]
  },
  "email_details": {
   "email": "testing.fv2@gmail.com",
   "score": 2.1100000000000003,
   "deliverable": true,
   "domain_details": {
    "domain": "gmail.com",
    "tld": ".com",
    "registered": true,
    "created": "1995-08-13 04:00:00",
    "updated": "2022-07-11 09:25:59",
    "expires": "2023-08-12 04:00:00",
    "registrar_name": "MarkMonitor Inc.",
    "registered_to": "Google LLC",
    "disposable": false,
    "free": true,
    "custom": false,
    "dmarc_enforced": true,
    "spf_strict": true,
    "valid_mx": true,
    "accept_all": false,
    "suspicious_tld": false,
    "website_exists": true
   },
   "account_details": {
    "apple": {
     "registered": false
    },
    "ebay": {
     "registered": null
    },
    "facebook": {
     "registered": false,
     "url": null,
     "name": null,
     "photo": null
    },
    "flickr": {
     "registered": false
    },
    "foursquare": {
     "registered": false
    },
    "github": {
     "registered": false
    },
    "google": {
     "registered": true,
     "photo": null
    },
    "gravatar": {
     "registered": false
    },
    "instagram": {
     "registered": null
    },
    "lastfm": {
     "registered": null
    },
    "linkedin": {
     "registered": null,
     "url": null,
     "name": null,
     "company": null,
     "title": null,
     "location": null,
     "website": null,
     "twitter": null,
     "photo": null
    },
    "microsoft": {
     "registered": false
    },
    "myspace": {
     "registered": false
    },
    "pinterest": {
     "registered": false
    },
    "skype": {
     "registered": false,
     "country": null,
     "city": null,
     "gender": null,
     "name": null,
     "id": null,
     "handle": null,
     "bio": null,
     "age": null,
     "language": null,
     "state": null,
     "photo": null
    },
    "spotify": {
     "registered": false
    },
    "tumblr": {
     "registered": false
    },
    "twitter": {
     "registered": false
    },
    "vimeo": {
     "registered": null
    },
    "weibo": {
     "registered": false
    },
    "yahoo": {
     "registered": null
    }
   },
   "breach_details": {
    "haveibeenpwned_listed": false,
    "number_of_breaches": 0,
    "first_breach": null,
    "breaches": []
   }
  },
  "phone_details": {
   "number": 36707770000,
   "valid": true,
   "type": "MOBILE",
   "country": "HU",
   "carrier": "Vodafone Hungary",
   "score": 9.64,
   "account_details": {
    "facebook": {
     "registered": true
    },
    "google": {
     "registered": false
    },
    "twitter": {
     "registered": true
    },
    "instagram": {
     "registered": null
    },
    "yahoo": {
     "registered": null
    },
    "whatsapp": {
     "registered": null,
     "photo": null,
     "last_seen": null
    },
    "telegram": {
     "registered": true,
     "photo": null,
     "last_seen": 1654980251
    },
    "viber": {
     "registered": false,
     "photo": null,
     "last_seen": null
    }
   }
  },
  "aml_details": {
   "has_crimelist_match": false,
   "has_pep_match": false,
   "has_watchlist_match": false,
   "has_sanction_match": true,
   "result_payload": {
    "searched_at": "2022-10-28T12:56:23.451Z",
    "sanctionlist_sources": [
     {
      "source_name": "ofac-consolidated",
      "source_full_name": "Office of Foreign Assets Control",
      "source_version": "2022-06-21"
     },
     {
      "source_name": "ofac-sdn",
      "source_full_name": "Office of Foreign Assets Control",
      "source_version": "2022-10-28"
     },
     {
      "source_name": "eu",
      "source_full_name": "European Union Financial Sanctions",
      "source_version": "2022-10-21"
     },
     {
      "source_name": "hmt",
      "source_full_name": "HM Treasury's Office for Financial Sanctions",
      "source_version": "2022-10-21"
     },
     {
      "source_name": "un",
      "source_full_name": "United Nations Security Council",
      "source_version": "2022-10-22"
     },
     {
      "source_name": "dfat",
      "source_full_name": "Department of Foreign Affairs and Trade",
      "source_version": "2022-10-11"
     },
     {
      "source_name": "seco",
      "source_full_name": "State Secretariat for Economic Affairs",
      "source_version": "2022-10-13"
     },
     {
      "source_name": "bis",
      "source_full_name": "Bureau for Industry and Security",
      "source_version": "2022-10-02"
     },
     {
      "source_name": "canada-consolidated",
      "source_full_name": "Global Affairs Canada",
      "source_version": "2022-10-28"
     },
     {
      "source_name": "world-bank",
      "source_full_name": "The world bank",
      "source_version": "2022-10-26"
     },
     {
      "source_name": "afdb",
      "source_full_name": "African Development Bank",
      "source_version": "2022-10-24"
     },
     {
      "source_name": "aiib",
      "source_full_name": "Asian Infrastructure Investment Bank",
      "source_version": "2022-10-27"
     },
     {
      "source_name": "iadb",
      "source_full_name": "Inter-American Development Bank",
      "source_version": "2022-10-22"
     },
     {
      "source_name": "eu-air",
      "source_full_name": "European Commission Mobility and transport",
      "source_version": "2022-06-01"
     },
     {
      "source_name": "moi-qa",
      "source_full_name": "Ministry of Interior Sate of Qatar",
      "source_version": "2022-06-01"
     },
     {
      "source_name": "repet",
      "source_full_name": "Public Registry of Persons and Entities linked to acts of Terrorism and their Financing",
      "source_version": "2022-10-24"
     },
     {
      "source_name": "fiuaz",
      "source_full_name": "The Financial Monitoring Service of the Republic of Azerbaijan",
      "source_version": "2022-05-31"
     },
     {
      "source_name": "sdfm",
      "source_full_name": "The State Financial Monitoring Service of Ukraine",
      "source_version": "2022-10-07"
     },
     {
      "source_name": "fiukg",
      "source_full_name": "The State Service of Financial Intelligence under the Ministry of Finance of the Kyrgyz Republic",
      "source_version": "2022-10-24"
     },
     {
      "source_name": "dttot",
      "source_full_name": "Financial Transaction Reporting and Analysis Center Indonesia",
      "source_version": "2022-05-27"
     },
     {
      "source_name": "mfat",
      "source_full_name": "New Zealand Police",
      "source_version": "2022-08-25"
     },
     {
      "source_name": "nbctf",
      "source_full_name": "National Bureau for Counter Terror Financing of Israel",
      "source_version": "2022-10-28"
     },
     {
      "source_name": "mlcu",
      "source_full_name": "Egyptian Anti-Money Laundering and Terrorist Financing Unit",
      "source_version": "2022-06-02"
     },
     {
      "source_name": "nazk",
      "source_full_name": null,
      "source_version": "2022-10-28"
     }
    ],
    "crimelist_entries": [],
    "watchlist_entries": [],
    "sanctionlist_entries": [
     {
      "found": "fuzzy",
      "id": 5712,
      "name": "ABDURRAHMAN IQBAL MOHAMAD",
      "addresses": [],
      "akas": [
       {
        "name": "Rahman, Mohamad Iqbal",
        "original": "",
        "type": "strong"
       },
       {
        "name": "A Rahman, Mohamad Iqbal",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Abu Jibril Abdurrahman",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Fikiruddin Muqti",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Fihiruddin Muqti",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Abdul Rahman, Mohamad Iqbal",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Rahman Mohamad Iqbal",
        "original": "",
        "type": "strong"
       },
       {
        "name": "A Rahman Mohamad Iqbal",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Abdul Rahman Mohamad Iqbal",
        "original": "",
        "type": "strong"
       }
      ],
      "nationality": "",
      "country": "Indonesia",
      "program": "Al-Qaida",
      "source": {
       "source_name": "un",
       "source_full_name": "United Nations Security Council",
       "source_version": "2022-10-27"
      },
      "attributes": [
       {
        "key": "Comments1",
        "value": "Review pursuant to Security Council resolution 1822 (2008) was concluded on 8 Jun. 2010. Review pursuant to Security Council resolution 2368 (2017) was concluded on 4 Dec. 2019 INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Individuals"
       },
       {
        "key": "Designation",
        "value": ""
       },
       {
        "key": "Title",
        "value": ""
       }
      ],
      "birth_precision": "exact",
      "birth_date": "1957-08-17",
      "birth_place": "",
      "mother_name": "",
      "id_number": "",
      "id_type": "",
      "first_seen": "2021-01-10T09:47:37.000Z",
      "last_seen": "2021-01-10T09:47:37.000Z"
     },
     {
      "found": "fuzzy",
      "id": 45238,
      "name": "Mohamad   Iqbal   ABDURRAHMAN",
      "addresses": [],
      "akas": [
       {
        "name": "Rahman,Mohamad,, IQBAL",
        "original": "",
        "type": "no information"
       },
       {
        "name": "A Rahman,Mohamad,, IQBAL",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Abu,Jibril,, ABDURRAHMAN",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Fikiruddin,,, MUQTI",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Fihiruddin,,, MUQTI",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Mohamad Iqbal,,, ABDUL RAHMAN",
        "original": "",
        "type": "no information"
       }
      ],
      "nationality": "",
      "country": "",
      "program": "QDi.086",
      "source": {
       "source_name": "mfat",
       "source_full_name": "New Zealand Police",
       "source_version": "2022-09-02"
      },
      "attributes": [
       {
        "key": "Associated with",
        "value": "Al Qaeda"
       },
       {
        "key": "Entry Date 2",
        "value": "23/06/2004\r\n\r\nAmended 6/12/2019 SCA/2/20 (01)"
       },
       {
        "key": "Fiscal_Code",
        "value": ""
       },
       {
        "key": "Fiscal_Code_2",
        "value": ""
       },
       {
        "key": "NID",
        "value": "3603251708570001"
       },
       {
        "key": "NZ_designation_date",
        "value": "37692"
       },
       {
        "key": "Other_2",
        "value": "Review pursuant to Security Council resolution 1822 (2008) was concluded on 8 Jun. 2010. Review pursuant to Security Council resolution 2368 (2017) was concluded on 4 Dec. 2019."
       },
       {
        "key": "Passport_1",
        "value": ""
       },
       {
        "key": "Passport_1_additional_details",
        "value": ""
       },
       {
        "key": "Passport_2",
        "value": ""
       },
       {
        "key": "Passport_2_additional_details",
        "value": ""
       },
       {
        "key": "Passport_3",
        "value": ""
       },
       {
        "key": "Passport_3_additional_details",
        "value": ""
       },
       {
        "key": "Passport_4",
        "value": ""
       },
       {
        "key": "Passport_4_additional_details",
        "value": ""
       },
       {
        "key": "Title",
        "value": ""
       }
      ],
      "birth_precision": "",
      "birth_date": "21049 21414",
      "birth_place": "Korleko-Lombok Timur Indonesia Tirpas-Selong Village East Lombok Indonesia Indonesia",
      "mother_name": "",
      "id_number": "159",
      "id_type": "159",
      "first_seen": "2022-05-31T16:16:50.000Z",
      "last_seen": "2022-06-01T21:06:52.000Z"
     },
     {
      "found": "fuzzy",
      "id": 46284,
      "name": "MOHAMAD IQBAL ABDURRAHMAN",
      "addresses": [],
      "akas": [
       {
        "name": "???? ????? ??? ??????",
        "original": "",
        "type": "no information"
       },
       {
        "name": "???? ????? ??? ??????",
        "original": "",
        "type": "no information"
       }
      ],
      "nationality": "",
      "country": "",
      "program": "QI.A.86.03",
      "source": {
       "source_name": "nbctf",
       "source_full_name": "National Bureau for Counter Terror Financing of Israel",
       "source_version": "2022-10-28"
      },
      "attributes": [
       {
        "key": "Date_of_Designation_In_Israel",
        "value": "40869"
       },
       {
        "key": "Designated_by_English",
        "value": "The State Security Cabinet (SSC)"
       },
       {
        "key": "Designation",
        "value": "????? ?? ???? ? ???? ?? ?? ???? 2 ???? ????? ????? ???? ????? 2005 "
       },
       {
        "key": "Foreign_Designation",
        "value": "?????\"?  ??\"?"
       }
      ],
      "birth_precision": "",
      "birth_date": "",
      "birth_place": "",
      "mother_name": "",
      "id_number": "11",
      "id_type": "11",
      "first_seen": "2022-06-01T21:56:14.000Z",
      "last_seen": "2022-06-01T21:56:14.000Z"
     },
     {
      "found": "fuzzy",
      "id": 48603,
      "name": "MOHAMAD IQBAL ABDURRAHMAN",
      "addresses": [],
      "akas": [],
      "nationality": "",
      "country": "",
      "program": "Security Council Consolidated Sanctions List",
      "source": {
       "source_name": "mlcu",
       "source_full_name": "Egyptian Anti-Money Laundering and Terrorist Financing Unit",
       "source_version": "2022-09-25"
      },
      "attributes": [
       {
        "key": "ID_number",
        "value": "3603251708570000"
       },
       {
        "key": "Listing_date",
        "value": "28 Jan. 2003 ( amended on 26 Nov. 2004, 16 May 2011, 10 Jun. 2011\r\n)"
       },
       {
        "key": "Menu_Codes",
        "value": "QDi"
       },
       {
        "key": "Other_names_confirmed",
        "value": "a) Rahman,\r\nMohamad Iqbal \r\nb) A Rahman, Mohamad Iqbal \r\nc) Abu Jibril Abdurrahman \r\nd) Fikiruddin Muqti \r\ne) Fihiruddin\r\nMuqti \r\nf) Abdul Rahman, Mohamad Iqbal"
       },
       {
        "key": "Place_of_birth",
        "value": "a) Korleko-Lombok Timur, Indonesia \r\nb) Tirpas-Selong\r\nVillage, East Lombok, Indonesia \r\nc) Korleko-Lombok Timur, Indonesia"
       },
       {
        "key": "additional_information",
        "value": "Review pursuant to Security Council resolution 1822 (2008) was concluded on 8 Jun.\r\n2010. INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-wework/\r\nNotices/View-UN-Notices-Individuals"
       },
       {
        "key": "the_address",
        "value": "Jalan Nakula, Komplek Witana Harja III Blok C\r\n106-107, Tangerang, Indonesia"
       }
      ],
      "birth_precision": "",
      "birth_date": "17 Aug. 1957",
      "birth_place": "",
      "mother_name": "",
      "id_number": "QDi.086",
      "id_type": "QDi.086",
      "first_seen": "2022-06-02T17:52:58.000Z",
      "last_seen": "2022-06-02T17:52:58.000Z"
     },
     {
      "found": "fuzzy",
      "id": 1,
      "name": "MOHAMAD IQBAL ABDURRAHMAN",
      "addresses": [],
      "akas": [
       {
        "name": "A RAHMAN Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "ABDUL RAHMAN Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "ABDURRAHMAN Abu Jibril",
        "original": "",
        "type": "no information"
       },
       {
        "name": "ABDURRAHMAN Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "MUQTI Fihiruddin",
        "original": "",
        "type": "no information"
       },
       {
        "name": "MUQTI Fikiruddin",
        "original": "",
        "type": "no information"
       },
       {
        "name": "RAHMAN Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "IQBAL A Rahman Mohamad",
        "original": "",
        "type": "no information"
       },
       {
        "name": "IQBAL Abdul Rahman Mohamad",
        "original": "",
        "type": "no information"
       },
       {
        "name": "IQBAL Rahman Mohamad",
        "original": "",
        "type": "no information"
       }
      ],
      "nationality": "Indonesia",
      "country": "",
      "program": "ISIL (Da'esh) and Al-Qaida",
      "source": {
       "source_name": "hmt",
       "source_full_name": "HM Treasury's Office for Financial Sanctions",
       "source_version": "2022-10-28"
      },
      "attributes": [
       {
        "key": "LastUpdated",
        "value": "31/12/2020"
       },
       {
        "key": "ListedOn",
        "value": "24/01/2003"
       },
       {
        "key": "Other Information",
        "value": "(UK Sanctions List Ref):AQD0235 (UN Ref):QDi.086 Review pursuant to Security Council resolution 1822 (2008) was concluded on 8 Jun. 2010. Review pursuant to Security Council resolution 2368 (2017) was concluded on 4 Dec. 2019. INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Individuals."
       },
       {
        "key": "Position",
        "value": ""
       },
       {
        "key": "Title",
        "value": ""
       }
      ],
      "birth_precision": "default",
      "birth_date": "17/08/1958",
      "birth_place": "(1) Indonesia (2) Indonesia (1) Tirpas-Selong Village, East Lombok (2) Korleko-Lombok Timur",
      "mother_name": "",
      "id_number": "NI Number: 3603251708570001",
      "id_type": "",
      "first_seen": "2021-01-10T09:32:35.000Z",
      "last_seen": "2022-10-28T02:22:34.000Z"
     },
     {
      "found": "fuzzy",
      "id": 2396,
      "name": "Mohamad Iqbal Abdurrahman",
      "addresses": [],
      "akas": [
       {
        "name": "Rahman, Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "A Rahman, Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Abu Jibril Abdurrahman",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Fikiruddin Muqti",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Fihiruddin Muqti",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Abdul Rahman, Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Rahman Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "A Rahman Mohamad Iqbal",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Abdul Rahman Mohamad Iqbal",
        "original": "",
        "type": "no information"
       }
      ],
      "nationality": "Indonesian",
      "country": "",
      "program": "1267/1989/2253 (ISIL (Da'esh) and Al-Qaida)",
      "source": {
       "source_name": "dfat",
       "source_full_name": "Department of Foreign Affairs and Trade",
       "source_version": "2022-10-28"
      },
      "attributes": [
       {
        "key": "Additional Information",
        "value": "National identification number: 3603251708570001. "
       },
       {
        "key": "Listing Information",
        "value": "Listed by UN 1267 Committee on 28 January 2003 (amended 26 November 2004, 16 May 2011, 10 June 2011, 6 Dec 2020)."
       }
      ],
      "birth_precision": "default",
      "birth_date": "21049",
      "birth_place": "Korleko-Lombok Timur, Indonesia. Tirpas-Selong Village, East Lombok, Indonesia, korleko-Lombok Timur, Indonesia",
      "mother_name": "",
      "id_number": "",
      "id_type": "",
      "first_seen": "2021-01-10T09:39:38.000Z",
      "last_seen": "2022-10-28T02:27:41.000Z"
     },
     {
      "found": "fuzzy",
      "id": 4230,
      "name": "Mohamad Iqbal Abdurrahman",
      "addresses": [],
      "akas": [
       {
        "name": "Mohamad Iqbal Rahman",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Mohamad Iqbal A Rahman",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Abu Jibril Abdurrahman",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Fikiruddin Muqti",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Fihiruddin Muqti",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Mohamad Iqbal Abdul Rahman",
        "original": "",
        "type": "no information"
       }
      ],
      "nationality": "IDN",
      "country": "",
      "program": "TAQA",
      "source": {
       "source_name": "eu",
       "source_full_name": "European Union Financial Sanctions",
       "source_version": "2022-10-28"
      },
      "attributes": [
       {
        "key": "Addr_leba_numtitle",
        "value": "597/2011 (OJ L162)"
       },
       {
        "key": "Addr_leba_publication_date",
        "value": "2011-06-22"
       },
       {
        "key": "Addr_leba_url",
        "value": "http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2011:162:0003:0006:EN:PDF"
       },
       {
        "key": "EU_ref_num",
        "value": "EU.1010.96"
       },
       {
        "key": "Entity_remark",
        "value": ""
       },
       {
        "key": "Naal_function",
        "value": ""
       },
       {
        "key": "Naal_gender",
        "value": "M"
       },
       {
        "key": "Naal_leba_numtitle",
        "value": "215/2003 (OJ L28)"
       },
       {
        "key": "Naal_leba_url",
        "value": "http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2003:028:0041:0042:EN:PDF"
       },
       {
        "key": "Naal_title",
        "value": ""
       }
      ],
      "birth_precision": "",
      "birth_date": "N/A",
      "birth_place": "IDN, Korleko-Lombok Timur",
      "mother_name": "",
      "id_number": "3603251708570001 (id-National identification card) (no: (national identification number))",
      "id_type": "",
      "first_seen": "2021-01-10T09:43:34.000Z",
      "last_seen": "2022-10-28T02:38:56.000Z"
     },
     {
      "found": "fuzzy",
      "id": 7007,
      "name": "Mohamad Iqbal ABDURRAHMAN",
      "addresses": [],
      "akas": [
       {
        "name": "Mohamad Iqbal A RAHMAN",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Abu Jibril ABDURRAHMAN",
        "original": "",
        "type": "strong"
       },
       {
        "name": "ABU JIBRIL",
        "original": "",
        "type": "weak"
       },
       {
        "name": "Mohamad Iqbal RAHMAN",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Fihiruddin MUQTI",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Fikiruddin MUQTI",
        "original": "",
        "type": "strong"
       },
       {
        "name": "Mohamad Iqbal ABDUL RAHMAN",
        "original": "",
        "type": "strong"
       }
      ],
      "nationality": "Indonesia",
      "country": "Indonesia",
      "program": "SDGT",
      "source": {
       "source_name": "ofac-sdn",
       "source_full_name": "Office of Foreign Assets Control",
       "source_version": "2022-10-28"
      },
      "attributes": [
       {
        "key": "National ID No.",
        "value": "3603251708570001"
       }
      ],
      "birth_precision": "approximately",
      "birth_date": "",
      "birth_place": "",
      "mother_name": "",
      "id_number": "3.603251708570001e15",
      "id_type": "National ID No.",
      "first_seen": "2021-01-10T09:48:04.000Z",
      "last_seen": "2022-10-28T03:29:17.000Z"
     },
     {
      "found": "fuzzy",
      "id": 39766,
      "name": "MOHAMAD IQBAL ABDURRAHMAN",
      "addresses": [],
      "akas": [],
      "nationality": "Indonesia",
      "country": "Indonesia",
      "program": "Al-Qaida",
      "source": {
       "source_name": "repet",
       "source_full_name": "Public Registry of Persons and Entities linked to acts of Terrorism and their Financing",
       "source_version": "2022-10-28"
      },
      "attributes": [
       {
        "key": "Comments",
        "value": "Review pursuant to Security Council resolution 1822 (2008) was concluded on 8 Jun. 2010. Review pursuant to Security Council resolution 2368 (2017) was concluded on 4 Dec. 2019 INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Individuals"
       },
       {
        "key": "deListedOn",
        "value": ""
       },
       {
        "key": "gender",
        "value": ""
       },
       {
        "key": "listedOn",
        "value": "06/12/2019"
       },
       {
        "key": "place_of_birth",
        "value": "Indonesia  Korleko-Lombok Timur "
       },
       {
        "key": "referenceNumber",
        "value": "QDi.086"
       }
      ],
      "birth_precision": "",
      "birth_date": "",
      "birth_place": "",
      "mother_name": "",
      "id_number": "111451",
      "id_type": "dataId",
      "first_seen": "2022-05-24T16:17:37.000Z",
      "last_seen": "2022-10-28T02:26:52.000Z"
     },
     {
      "found": "fuzzy",
      "id": 40276,
      "name": "MOHAMAD IQBAL ABDURRAHMAN",
      "addresses": [],
      "akas": [
       {
        "name": "???? ????? ??? ??????",
        "original": "",
        "type": "no information"
       },
       {
        "name": "Rahman, Mohamad Iqbal",
        "original": "",
        "type": "no information"
       }
      ],
      "nationality": "Indonesia",
      "country": "",
      "program": "",
      "source": {
       "source_name": "moi-qa",
       "source_full_name": "Ministry of Interior Sate of Qatar",
       "source_version": "2022-10-28"
      },
      "attributes": [
       {
        "key": "designId",
        "value": "1"
       },
       {
        "key": "designLegalBasis",
        "value": "Security Council Resolutions 1267( 1999) , 1989( 2011) ,  2253( 2015)"
       },
       {
        "key": "designLinkDecEn",
        "value": "List of sanctions imposed against ISIS"
       },
       {
        "key": "designLinkUrl",
        "value": "https://scsanctions.un.org/fop/fop?xml=htdocs/resources/xml/en/consolidated.xml&xslt=htdocs/resources/xsl/en/al-qaida-r.xsl"
       },
       {
        "key": "designNumber",
        "value": "-"
       },
       {
        "key": "listedOn",
        "value": "2003-01-28"
       },
       {
        "key": "referenceNumber",
        "value": "QDi.086"
       },
       {
        "key": "sancId",
        "value": "1"
       },
       {
        "key": "sanctionRegimeEn",
        "value": "Security Council Committee established pursuant to resolutions 1267 (1999), 1989 (2011) and 2253 (2015) regarding the Islamic State in Iraq and the Levant (ISIS), Al-Qaeda"
       }
      ],
      "birth_precision": "",
      "birth_date": "",
      "birth_place": "",
      "mother_name": "",
      "id_number": "111451",
      "id_type": "dataId",
      "first_seen": "2022-05-24T16:24:11.000Z",
      "last_seen": "2022-10-28T02:28:31.000Z"
     }
    ],
    "pep_entries": []
   }
  }
 }
}

JavaScript Agent v5

You can integrate our optional device fingerprinting module directly into a web app, by using our JavaScript agent. Please, use our CDN hosted script to ensure you always load the latest available version.

  1. Include the JavaScript Agent for example inside the <head> tags of your website or web app. You can also lazy-load it or execute it upon specific actions (e.g. clicking on Login, Payment, and Registration buttons, before calling the API). In this case, you must ensure that the module has been loaded successfully before invoking its methods.
  2. Set a unique session_id for your client using the seon.config() function.
  3. Call the seon.getBase64Session() function to get the encrypted payload for the device.
  4. Send the returned session payload string to your backend and add to the session property in your Fraud API request. The Fraud API call should be still executed if the session is missing, due to a non-executed JS snippet. Tip: Add timeout to JS and utilize Fraud API call after.

All the device fingerprinting data will be available in the response of the Fraud API, and accessible on the Admin Panel of the Transactions Details page.

 

 

Configuration parameters

To configure the JavaScript module, you need to call seon.config() function:

JSON Attributes

Required
host
no
session_id
yes
audio_fingerprint
no
canvas_fingerprint
no
webgl_fingerprint
no
onSuccess
no
onError
no

 

 

Integration

Fingerprinting can be triggered by seon.getBase64Session() function. After collecting all the available information, the function returns an encrypted base64 encoded payload.

 

 

 

 

Payload

SEON JavaScript library collects device information and prepares an encrypted payload to use in Fraud API. The information on client side is not readable, we’ll reveal in the Fraud API response and on the Admin Panel. Some fields can be null, if the actual browser does not support or return data for that specific data point. In every other case, data types are preserved. Find a sample payload on the right side.

 

 

Common issues

  • The session is provided in the Fraud API request, but the device_details is null in the response and there is no device information on the Transaction details page. - This means the encrypted payload is corrupted. Please look into your integration and check again.
  • The v4 version of the JavaScript Agent is not compatible with the Fraud API v1, we highly recommend to upgrade because of security and performance reasons.
  • If you use CSP (Content Security Policy) headers on your site, you must allow the following domains in connect-src directive for full functionality based on your host configuration.

    Default: *.seondnsresolve.com
    seondf.com: *.seondfresolver.com
    deviceinf.com: *.deviceinfresolver.com
    getdeviceinf.com: *.getdeviceinfresolver.com
<html>
  <head>
    ...
    <script src="[source_url]"></script>
  </head>
  <body>
    ...
  </body>
</html>

You can use the following script source URLs ([source_url]):

  • https://cdn.seondf.com/js/v5/agent.js
  • https://cdn.deviceinf.com/js/v5/agent.js
  • https://cdn.getdeviceinf.com/js/v5/agent.js

 

 

 

 

 

 

 

 

 

 

 

 

seon.config({
  host: "seondf.com",
  session_id: "[session_id]",
  audio_fingerprint: true,
  canvas_fingerprint: true,
  webgl_fingerprint: true,
  onSuccess: function(message) {
    console.log("success", message);
  },
  onError: function(message) {
    console.log("error", message);
  }
});

 

 

 

seon.getBase64Session(function(data) {
  if (data) {
    console.log("Session payload", data);
  } else {
    console.log("Failed to retrieve session data.");
  }
});

iOS SDK

You can integrate our device fingerprinting module directly into iOS mobile apps, by using our SDK found on GitHub. It will collect information based on the user’s software and hardware configuration.

  • The SDK returns an encrypted, base64 encoded string to add in the session property in the Fraud API request. It isn’t permitted to access or modify the payload on the clients.
  • JSON structured device details will be returned in the Fraud API response.

JSON Attributes

Type
type
string
source
string
session_id
string
accessories_count
integer
audio_mute_status
boolean
audio_volume_current
integer
battery_charging
boolean
battery_level
integer
carrier_country
string
carrier_name
string
cpu_count
integer
cpu_type
string
device_adid
string
device_hash
string
device_name
string
device_orientation
string
device_udid
string
free_storage
unsigned long
icloud_ubiquity_token
string
ios_device_name
string
ios_version
string
is_emulator
boolean
is_jailbroken
boolean
kernel_arch
string
kernel_name
string
kernel_version
string
last_boot_time
integer
network_config
string
pasteboard_hash
string
physical_memory
unsigned long
region_country
string
region_language
string
region_timezone
string
screen_brightness
integer
screen_height
double
screen_width
double
system_uptime
integer
total_storage
unsigned long
wifi_mac_address
string
wifi_ssid
string
dns_ip
string
dns_ip_country
string
dns_ip_isp
string
device_ip_address
string
device_ip_country
string
device_ip_isp
string
Response
{
 "device_details": {
  "type": "ios",
  "source": "ios-4.0.0",
  "session_id": "seosseion_id",
  "accessories_count": 0,
  "audio_mute_status": true,
  "audio_volume_current": 97,
  "battery_charging": false,
  "battery_level": 82,
  "carrier_country": "HU",
  "carrier_name": "Telenor HU",
  "cpu_count": 6,
  "cpu_type": "ARM_64",
  "device_adid": "00000000-0000-0000-0000-000000000000",
  "device_hash": "3b3ca138e2bf5cb97997dd7321bf2bc0efbfbe129f43e67b845e685baf090000",
  "device_name": "iPhone 11 Pro",
  "device_orientation": "Portrait",
  "device_udid": "E7E185B2-9991-4B53-0000-7C4A2FFA8059",
  "free_storage": 176508846080,
  "icloud_ubiquity_token": "0d5705a4 dd8fe10b 69fa14a9 a8ad1a06 5b088f2a",
  "ios_device_name": "iPhone 11",
  "ios_version": "14.6",
  "is_emulator": false,
  "is_jailbroken": false,
  "kernel_arch": "arm64",
  "kernel_name": "Darwin",
  "kernel_version": "18F72",
  "last_boot_time": 1623312341,
  "network_config": "WIFI",
  "pasteboard_hash": null,
  "physical_memory": 3960438784,
  "region_country": "HU",
  "region_language": "en",
  "region_timezone": "+02:00",
  "screen_brightness": 52,
  "screen_height": 2436,
  "screen_width": 1125,
  "system_uptime": 5906,
  "total_storage": 255881465856,
  "wifi_mac_address": "ea:63:da:b5:5a:e0",
  "wifi_ssid": "WIFI_SSID",
  "dns_ip": "89.134.46.87",
  "dns_ip_country": "HU",
  "dns_ip_isp": "UPC Magyarorszag Kft.",
  "device_ip_address": "37.76.21.185",
  "device_ip_country": "HU",
  "device_ip_isp": "Public Pool For Mobile Internet Users"
 }
}

Android SDK

You can integrate our device fingerprinting module directly into Android mobile apps, by using our SDK found on GitHub. It will collect information based on the user’s software and hardware configuration.

  • The SDK returns an encrypted, base64 encoded string to add in the session property in the Fraud API request. It isn’t permitted to access or modify the payload on the clients.
  • JSON structured device details will be revealed in the Fraud API response.

JSON Attributes

Type
type
string
source
string
session_id
string
android_id
string
android_version
string
app_guid
string
audio_mute_status
boolean
audio_volume_current
integer
battery_charging
boolean
battery_health
string
battery_level
integer
battery_temperature
float
battery_voltage
integer
build_device
string
build_id
string
build_manufacturer
string
build_number
string
build_time
integer
carrier_country
string
carrier_name
string
cpu_count
integer
cpu_hash
string
cpu_speed
double
cpu_type
string
device_hash
string
device_cellular_id
string
device_name
string
free_storage
integer
has_proximity_sensor
boolean
is_emulator
boolean
is_rooted
boolean
kernel_arch
string
kernel_name
string
kernel_version
string
last_boot_time
integer
network_config
string
pasteboard_hash
string
physical_memory
integer
region_country
string
region_language
string
region_timezone
string
screen_brightness
integer
screen_height
integer
screen_scale
integer
screen_width
integer
sensor_hash
string
system_uptime
integer
total_storage
integer
wifi_mac_address
string
wifi_ssid
string
dns_ip
string
dns_ip_country
string
dns_ip_isp
string
device_ip_address
string
device_ip_country
string
device_ip_isp
string
Response
{
 "device_details": {
  "session_id": "test_session",
  "type": "android",
  "dns_ip": "89.134.46.87",
  "dns_ip_country": "HU",
  "dns_ip_isp": "UPC Magyarorszag Kft.",
  "source": "android-4.1.0",
  "device_hash": "702ec69fa2538ed37ddca2d29210bba6f7801ab9cf2f47bdec260f5dc84fd9cc",
  "device_name": "LGE LG-H502",
  "device_cellular_id": "352104070316496",
  "android_id": "9cb5c5698c590fdc",
  "build_id": "MRA58K",
  "build_device": "my90ds",
  "build_time": 1550069867,
  "build_number": "MRA58K",
  "build_manufacturer": "LGE",
  "app_guid": "66dc9430-a09f-4dcb-ab16-cd5b1c3d7316",
  "android_version": "23 (6.0)",
  "last_boot_time": 1623315851,
  "system_uptime": 495,
  "sensor_hash": "ea8170d27b08a39d3a697c9da5e8c0190174ebb302fc35e77da17690abb61576",
  "audio_volume_current": 28,
  "audio_mute_status": true,
  "battery_level": 80,
  "battery_charging": false,
  "battery_temperature": 29,
  "battery_voltage": 4063,
  "battery_health": "GOOD",
  "has_proximity_sensor": true,
  "cpu_type": "ARMv7 Processor rev 3 (v7l)",
  "cpu_count": 4,
  "cpu_speed": 1300,
  "cpu_hash": "6bae8487b6bd0d18f12910a12d79b43e79a21f8fa11bb0b44ca15b6a9f4c5cbe",
  "kernel_name": "Linux",
  "kernel_version": "3.10.72",
  "kernel_arch": "armv7l",
  "physical_memory": 979608000,
  "screen_brightness": 100,
  "screen_height": 1187,
  "screen_width": 720,
  "screen_scale": 2,
  "total_storage": 3854680064,
  "free_storage": 395546624,
  "network_config": "WIFI",
  "wifi_mac_address": "64:BC:0C:91:DC:01",
  "wifi_ssid": "WIFI_SSID",
  "carrier_name": null,
  "pasteboard_hash": "50ba875a2d572ed0c2632d3920d73a827588f0d86500b2e3145a788c86fdc83c",
  "region_timezone": "+02:00",
  "region_language": "en",
  "region_country": "GB",
  "carrier_country": null,
  "is_emulator": false,
  "is_rooted": false,
  "device_ip_address": "84.2.42.16",
  "device_ip_country": "HU",
  "device_ip_isp": "Magyar Telekom"
 }
}

Label API

Label API allows you to automatically feedback to improve our machine learning algorithm. This helps to reduce the number of false positives and false negatives for you.

Good to know

  • You can create custom positive and negative labels on your Settings page.
  • You can label any transaction that is less than a year old with Label API.
  • For the most consistent results, please add max 10,000 transactions to each API request. Feel free to send multiple requests to label more transactions.
  • Providing feedback is key to refining the rules and getting more precise fraud scores. Learn more about the feedback loop on our Feedback Loops & Label API page.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

You must replace [id] with your transaction_id that you have provided during the Fraud API call or was generated automatically.

Request Attributes

TypeRequired
label
stringyes

 

HTTP Endpoint

PUT

https://api.seon.io/SeonRestService/fraud-api/label/[id]
PHP
Generic
Generic

Request (multiple)

You can also label multiple transactions with one API call using the URL below.

JSON Attributes

TypeRequired
transactions
array of label objectsyes

HTTP Endpoint

PUT

https://api.seon.io/SeonRestService/fraud-api/label/
PHP
Generic
Generic

Lists API

Add any data point to a blacklist, whitelist, or custom list with this API. Reset any Fraud API request and response parameters, add a comment, and expiration through a single request.

Good to know

  • Use a PUT request to add any data points to a list.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

Request Attributes

TypeRequired
data_field
stringyes
value
stringyes
state
stringyes
comment
stringno
expire_day
integerno

HTTP Endpoint

PUT

https://api.seon.io/SeonRestService/fraud-api/state-field/
PHP
Generic
Generic

Self Exclusion API

Online gambling operators can enable self-exclusion lists using our bespoke API if required by law. The API uses the email address, phone number, full name, date of birth, user country, and user zip fields.

Good to know

  • Identify users with their email addresses or user IDs.
  • Use PUT request to exclude users, and use DELETE request to reverse the exclusion.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

Request Attributes

TypeRequired
user_ids
array No
emails
array No

HTTP Endpoint

PUT

https://api.seon.io/SeonRestService/fraud-api/exclude
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
created_id_rules
object map
created_email_rules
object map
failed_ids
object
failed_emails
object
Response
{
 "success": true,
 "error": {},
 "data": {
  "created_id_rules": {
   "id1": {
    "id": "1000001",
    "name": "Exclude customer [id: 123]",
    "operation": "DECLINE",
    "score": 100
   }
  },
  "created_email_rules": {
   "example1@example.com": {
    "id": "100000",
    "name": "Exclude customer [email: example1@example.com]",
    "operation": "DECLINE",
    "score": 100
   }
  },
  "failed_ids": {},
  "failed_emails": {}
 }
}

Delete request

JSON Attributes

TypeRequired
user_ids
array no
emails
array no

HTTP Endpoint

DELETE

https://api.seon.io/SeonRestService/fraud-api/exclude
PHP
Generic
Generic

Delete response

The endpoint returns JSON structured response.

JSON Attributes 

Type
created_id_rules
object map
created_email_rules
object map
failed_ids
object
failed_emails
object
Response
{
  "success": true,
  "error": {},
  "data": {
    "deleted_id_rules": {
        "deleted_id_rules": [
            "1000000 - Exclude customer [id: id1]",
            "1000001 - Exclude customer [id: id2]",
        ],
        "deleted_email_rules": [
            "1000002 - Exclude customer [email: example1@example.com]",
            "1000003 - Exclude customer [email: example2@example.com]"
        ],
        "failed_ids": [],
        "failed_emails": []
    }
}

Exclude User from Rule API

Created for highly API-dependent integrations, this API allows you to exclude specific users from the effects of a certain custom rule.

Good to know

  • Use the Rule ID to define which rule should not be applied to the selected user.
  • Identify the users with their user ID, email address, card hash, or IP address.
  • Use POST requests to exclude users from rules and DELETE requests to reverse the exclusion.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

 

Request Attributes

TypeRequired
rule_id
integeryes
field
stringyes
value
stringyes
expiration
stringno

HTTP Endpoint

POST

https://api.seon.io/SeonRestService/fraud-api/rule-exclude
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
data
object
error
object
success
boolean
Response
{
 "data": {},
 "error": {},
 "success": true
}

Delete request

 

Request Attributes

TypeRequired
rule_id
integeryes
field
stringyes
value
stringyes

HTTP Endpoint

DELETE

https://api.seon.io/SeonRestService/fraud-api/rule-exclude
PHP
Generic
Generic

Delete response

The endpoint returns JSON structured response.

JSON Attributes

Type
data
object
error
object
success
boolean
Response
{
 "data": {},
 "error": {},
 "success": true
}

Erase API

Under certain data protection regulations, companies that handle personal data are required to delete it upon request. With our Erase API, you can erase all data related to one or multiple users by providing email addresses or user IDs.

Good to know

  • Identify user data to be deleted using email addresses or user IDs.
  • You can send up to 50 emails or IDs in each request to delete all data connected to them.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

Request Attributes

TypeRequired
user_ids
array no
emails
array no

 

Optional query string parameters

POST

https://api.seon.io/SeonRestService/erase-api?dry_run=true

JSON Attributes

ValueRequired
dry_run
boolean no 

HTTP Endpoint

POST

https://api.seon.io/SeonRestService/erase-api?dry_run=false
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
transaction_records
integer
email_records
integer
phone_records
integer
ip_records
integer
dry_run
boolean
Response
{
 "success": true,
 "error": {},
 "data": {
  "transaction_records": 1,
  "email_records": 0,
  "phone_records": 0,
  "ip_records": 1,
  "dry_run": false
 }
}

Webhooks

Webhooks let you set up connections between third party platforms or apps with real time information regarding certain events. When one of those events is triggered, we’ll send a HTTP POST request with JSON payload to the configured webhook URL. 

Each webhook request sent by SEON is cryptographically signed to ensure the integrity and authenticity of the payload. The payload is signed using the HMAC-SHA256 algorithm. The signing key is the customer's license key, and the signature is sent in the Digest header. An example of this header would be the following: Digest: SHA-256=<hash>. To verify the digest, please hash the whole HTTP payload using the HMAC-SHA256 algorithm and compare it to the hash provided in the Digest header.

Our webhooks are delivered in most cases but should there be a failure, we don’t retry or queue the request.

  • You can set up the events and webhook URLs in the Admin Panel of your Settings page.

Available events

EventDescription
transaction:status_updateAny time a transaction state has changed.
lists:blacklist-whitelistAny value has been added to blacklist or whitelist or removed from them.

lists:customlist

Any value has been added to Custom lists or removed from them.

{
  "event": "transaction:status_update",
  "date": "2017-08-30T13:47:42+00:00",
  "transactions": [
    {
      "id": "e601f2dae8f9",
      "seon_id": 1488721,
      "state": "REVIEW",
      "label": "Marked as review"
    }
  ]
}

 

{
  "event": "lists:blacklist-whitelist",
  "date": "2017-08-30T13:47:42+00:00",
  "values": [
    {
      "data_field": "user_id",
      "value": "111",
      "state": "blacklist"
    },
    {
      "data_field": "user_id",
      "value": "222",
      "state": "whitelist"
    },
    {
      "data_field": "user_id",
      "value": "333",
      "state": "normal"
    }
  ]
}

 

 {
  "event": "lists:customlist",
  "date": "2017-08-30T13:47:42+00:00",
  "values": [
    {
    "data_field": "user_id",
    "value": "413132231",
    "state": "watchlist"
    },
    {
    "data_field": "user_id",
    "value": "3243112",
    "state": "custom_sample_list"
    }
   ]
 }

 


Email API

Our standalone email enrichment tool that will help you learn about the approximate minimum age of an email address, its provider, and any connected online profiles.

Good to know

  • Use the Fraud API if you want to use the Email API together with any of our  Phone API, IP API, and Device Fingerprinting.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.
  • Email API requests are limited to 120/minute during your SEON free trial.

Request

The [email_address] in the request URI should include the full email address, for example: example@example.com

 

Optional query string parameters

Add the following parameters to the request URL for more control over the returned data, as seen in the example URL below.

GET

https://api.seon.io/SeonRestService/email-api/v2.2/[email_address]?include=history,flags,id&flags_timeframe_days=10&timeout=3000

Request Attributes

ValueRequired
include
historyno
include
flagsno
include
idno
flags_timeframe_days
[number of days]no
timeout
[number of milliseconds]no

HTTP Endpoint

GET

https://api.seon.io/SeonRestService/email-api/v2.2/[email_address]
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
email
string
score
number
deliverable
boolean
domain_details
object
account_details
object
breach_details
object
applied_rules
array of object
history
object
flags
array of object
id
string
Response
{
 "success": true,
 "error": {},
 "data": {
  "email": "test2022-05-25ev2.2@gmail.com",
  "score": 15,
  "deliverable": false,
  "domain_details": {
   "domain": "gmail.com",
   "tld": ".com",
   "registered": true,
   "created": "1995-08-13 04:00:00",
   "updated": "2021-07-11 09:36:42",
   "expires": "2022-08-12 04:00:00",
   "registrar_name": "MarkMonitor Inc.",
   "registered_to": "Google LLC",
   "disposable": false,
   "free": true,
   "custom": false,
   "dmarc_enforced": true,
   "spf_strict": true,
   "valid_mx": true,
   "accept_all": false,
   "suspicious_tld": false,
   "website_exists": true
  },
  "account_details": {
   "apple": {
    "registered": false
   },
   "ebay": {
    "registered": false
   },
   "facebook": {
    "registered": false,
    "url": null,
    "name": null,
    "photo": null
   },
   "flickr": {
    "registered": false,
    "username": null
   },
   "foursquare": {
    "registered": false,
    "bio": null,
    "photo": null,
    "profile_url": null
   },
   "github": {
    "registered": false
   },
   "google": {
    "registered": false,
    "photo": null
   },
   "gravatar": {
    "registered": false,
    "location": null,
    "name": null,
    "profile_url": null,
    "username": null
   },
   "instagram": {
    "registered": false
   },
   "lastfm": {
    "registered": false
   },
   "linkedin": {
    "registered": false,
    "url": null,
    "name": null,
    "company": null,
    "title": null,
    "location": null,
    "website": null,
    "twitter": null,
    "photo": null,
    "connection_count": null
   },
   "microsoft": {
    "registered": false
   },
   "myspace": {
    "registered": false
   },
   "pinterest": {
    "registered": false
   },
   "skype": {
    "registered": false,
    "country": null,
    "city": null,
    "gender": null,
    "name": null,
    "id": null,
    "handle": null,
    "bio": null,
    "age": null,
    "language": null,
    "state": null,
    "photo": null
   },
   "spotify": {
    "registered": false
   },
   "tumblr": {
    "registered": false
   },
   "twitter": {
    "registered": false
   },
   "vimeo": {
    "registered": false
   },
   "weibo": {
    "registered": false
   },
   "yahoo": {
    "registered": false
   },
   "discord": {
    "registered": false
   },
   "ok": {
    "registered": false,
    "city": null,
    "age": null,
    "date_joined": null
   },
   "kakao": {
    "registered": true
   },
   "booking": {
    "registered": false
   },
   "airbnb": {
    "registered": false,
    "about": null,
    "created_at": null,
    "first_name": null,
    "identity_verified": null,
    "location": null,
    "image": null,
    "reviewee_count": null,
    "trips": null,
    "work": null
   },
   "amazon": {
    "registered": false
   },
   "qzone": {
    "registered": false
   },
   "adobe": {
    "registered": false
   },
   "mailru": {
    "registered": false
   },
   "wordpress": {
    "registered": false
   },
   "imgur": {
    "registered": false
   },
   "disneyplus": {
    "registered": false
   },
   "netflix": {
    "registered": false
   },
   "jdid": {
    "registered": false
   },
   "flipkart": {
    "registered": true
   },
   "bukalapak": {
    "registered": true
   },
   "archiveorg": {
    "registered": true
   },
   "lazada": {
    "registered": false
   },
   "zoho": {
    "registered": false
   },
   "samsung": {
    "registered": false
   },
   "evernote": {
    "registered": false
   },
   "envato": {
    "registered": false
   },
   "patreon": {
    "registered": false
   },
   "tokopedia": {
    "registered": false
   },
   "rambler": {
    "registered": false
   },
   "quora": {
    "registered": false
   },
   "atlassian": {
    "registered": false
   }
  },
  "breach_details": {
   "haveibeenpwned_listed": false,
   "number_of_breaches": 0,
   "first_breach": null,
   "breaches": []
  },
  "applied_rules": [
   {
    "id": "E121",
    "name": "Email is not deliverable",
    "operation": "+",
    "score": 4
   },
   {
    "id": "E114",
    "name": "Domain is a free provider. No online profiles were found. It was not involved in a data breach",
    "operation": "+",
    "score": 10
   },
   {
    "id": "E122",
    "name": "5 or more digits in email handle or in username",
    "operation": "+",
    "score": 1
   }
  ],
  "id": "89d3d669-4448-4905-9e06-ffb7a9db190e",
  "history": {
   "hits": 1,
   "customer_hits": 1,
   "first_seen": 1653484792,
   "last_seen": 1653484792
  },
  "flags": []
 }
}

Email Verification API

Our quick email verification tool will tell you whether an email address is valid and deliverable using a  fast SMTP-MX check.

Good to know

  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.
  • Email Verification API requests are limited to 120/minute during your SEON free trial.

Request

The [email_address] in the request URI should include the full email address, for example: example@example.com

 

Optional query string parameters

Add the following parameters to the request URL for more control over the returned data, as seen in the example URL below.

GET

https://api.seon.io/SeonRestService/email-verification/v1.0/[email_address]?include=id

Request Attributes

ValueRequired
include
id no

HTTP Endpoint

GET

https://api.seon.io/SeonRestService/email-verification/v1.0/[email_address]
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
id
string
valid_format
boolean
deliverable
boolean
inbox_full
boolean
domain_details
object
Response
{
 "success": true,
 "error": {},
 "data": {
  "id": "P100",
  "valid_format": true,
  "deliverable": true,
  "inbox_full": false,
  "domain_details": {
   "domain": "example.com",
   "tld": ".com",
   "registered": true,
   "disposable": false,
   "free": false,
   "custom": true,
   "dmarc_enforced": false,
   "spf_strict": true,
   "valid_mx": true,
   "accept_all": false,
   "suspicious_tld": false,
   "website_exists": true,
   "created": "1994-11-01 05:00:00",
   "updated": "2019-05-07 20:09:37"
  }
 }
}

Phone API

Unlock insights into a user's phone number's history and find social or digital profiles connected to it.

Good to know

  • Use the Fraud API if you want to use the Phone API together any of our Email API, IP API, and Device Fingerprinting.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.
  • Phone API requests are limited to 120/minute during your SEON free trial.

Request

 

Optional query string parameters

In order to request additional or receive less information, use the following parameters in the request URL as in the example below:

GET

https://api.seon.io/SeonRestService/phone-api/v1.4/[phone_number]?include=cnam_lookup, hlr_details,history,flags,id&flags_timeframe_days=10&exclude=photo,last_seen&timeout=3000

Request Attributes

ValueRequired
include
historyno
include
flagsno
include
idno
include
cnam_lookupno
include
hlr_detailsno
flags_timeframe_days
[number of days]no
exclude
photono
exclude
last_seenno
timeout
[number of milliseconds]no

HTTP Endpoint

GET

https://api.seon.io/SeonRestService/phone-api/v1.4/[phone_number]
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
number
integer
valid
boolean
disposable
boolean
type
string
country
string
carrier
string
score
number
account_details
object
applied_rules
array of object
hlr_details
object
cnam_details
object
history
object
flags
array of object
id
string
Response
{
 "data": {
  "account_details": {
   "bukalapak": {
    "registered": false
   },
   "facebook": {
    "registered": false
   },
   "flipkart": {
    "registered": false
   },
   "google": {
    "account_id": null,
    "full_name": null,
    "registered": false
   },
   "instagram": {
    "registered": false
   },
   "jdid": {
    "registered": true
   },
   "kakao": {
    "registered": true
   },
   "line": {
    "name": null,
    "photo": null,
    "registered": false
   },
   "microsoft": {
    "registered": false
   },
   "ok": {
    "age": null,
    "registered": false
   },
   "skype": {
    "age": null,
    "bio": null,
    "city": null,
    "country": null,
    "gender": null,
    "handle": null,
    "id": null,
    "language": null,
    "name": null,
    "photo": null,
    "registered": false,
    "state": null
   },
   "snapchat": {
    "registered": false
   },
   "telegram": {
    "last_seen": null,
    "photo": null,
    "registered": false
   },
   "twitter": {
    "registered": false
   },
   "viber": {
    "last_seen": null,
    "name": null,
    "photo": null,
    "registered": false
   },
   "whatsapp": {
    "about": null,
    "last_seen": null,
    "photo": null,
    "registered": false
   },
   "yahoo": {
    "registered": true
   },
   "zalo": {
    "date_of_birth": null,
    "name": null,
    "registered": false,
    "uid": null
   }
  },
  "applied_rules": [
   {
    "id": "PH102",
    "name": "No online profiles were found",
    "operation": "+",
    "score": 4
   }
  ],
  "carrier": "Telenor Hungary",
  "country": "HU",
  "disposable": false,
  "flags": [],
  "history": {
   "customer_hits": 1,
   "first_seen": 1653484836,
   "hits": 1,
   "last_seen": 1653484836
  },
  "id": "9d0ecd23-7296-46cb-8c05-0f1300e90b91",
  "number": 36200130525,
  "score": 4,
  "type": "mobile",
  "valid": true
 },
 "error": {},
 "success": true
}

IP API

Identify suspicious VPN and proxy connections and pinpoint users with accurate geolocation information.

Good to know

  • Use the Fraud API if you want to use the IP API together with any of our Email API, Phone API, and Device Fingerprinting.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.
  • IP API requests are limited to 120/minute during your SEON free trial.

Request

The [ip] in the request URI should include the full IPv4 or IPv6 address, example: 1.1.1.1 or 2001:db8:3333:4444:5555:6666:7777:8888 .

Optional query string parameters

In order to request additional or receive less information, use following parameters in the request URL as in the example below:

GET

https://api.seon.io/SeonRestService/ip-api/v1.1/[ip]?include=history,flags,id&flags_timeframe_days=10

Request Attributes

ValueRequired
include
historyno
include
flagsno
include
idno
flags_timeframe_days
[number of days]no

HTTP Endpoint

GET

https://api.seon.io/SeonRestService/ip-api/v1.1/[ip]
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
ip
string
score
number
country
string
state_prov
string
city
string
timezone_offset
string
isp_name
string
latitude
number
longitude
number
type
string
open_ports
array
tor
boolean
harmful
boolean
vpn
boolean
web_proxy
boolean
public_proxy
boolean
spam_number
integer
spam_urls
array
applied_rules
array of object
history
object
flags
array of object
id
string
Response
{
 "success": true,
 "error": {},
 "data": {
  "ip": "1.1.1.1",
  "score": 100,
  "country": "HK",
  "state_prov": "Hong Kong",
  "city": "Hong Kong",
  "timezone_offset": "+08:00",
  "isp_name": "APNIC and CloudFlare DNS Resolver Project",
  "latitude": 22.28552,
  "longitude": 114.15769,
  "type": "CDN",
  "open_ports": [
   80
  ],
  "tor": false,
  "harmful": false,
  "vpn": false,
  "web_proxy": false,
  "public_proxy": false,
  "spam_number": 3,
  "spam_urls": [
   "bl.emailbasura.org",
   "l2.apews.org",
   "dyna.spamrats.com"
  ],
  "applied_rules": [
   {
    "id": "P102",
    "name": "Port 80 is open on the IP address",
    "operation": "+",
    "score": 1
   },
   {
    "id": "P100",
    "name": "There is 1 suspicious open port on the IP address",
    "operation": "+",
    "score": 4
   },
   {
    "id": "P109",
    "name": "IP address was found on 3 spam blacklists",
    "operation": "+",
    "score": 2
   }
  ],
  "history": {
   "hits": 3,
   "customer_hits": 1,
   "first_seen": 1573567581,
   "last_seen": 1573639346
  },
  "flags": [
   {
    "note": "Blacklisted by API",
    "date": 1573138956,
    "industry": "Online gambling operator"
   }
  ],
  "id": "b06c5055-d1bf-4400-b2c9-ab3edd7171d6"
 }
}

AML API

Check PEP, sanctions, and high-risk names list to counter fincrime all in one place using SEON. Maintain anti-money laundering compliance easily by turning on automatic monitoring.

Good to know:

  • Enter a customer's full name and their name separated into each of the first, middle, and last name fields for the best results.
  • If you'd like to enable automatic monitoring for a name set monitoring_required to true in your request.
  • AML screening is not fully automatic, your team will have to review potential matches.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

 

Attributes

TypeRequired
config 
objectno
user_id
stringno
user_fullname 
stringyes
user_firstname
stringno
user_middlename
stringno
user_lastname
stringno
user_dob 
dateno
user_pob
stringno
user_photoid_number
stringno

 

HTTP Endpoint

POST

https://api.seon.io/SeonRestService/aml-api/v1.0
PHP
Generic
Generic

Response

JSON attributes

  
has_crimelist_match
boolean 
has_pep_match
boolean 
has_watchlist_match
boolean 
has_sanction_match
boolean 
result_payload
object 
Response
{
 "success": true,
 "error": {},
 "data": {
  "has_crimelist_match": false,
  "has_pep_match": false,
  "has_watchlist_match": false,
  "has_sanction_match": true,
  "result_payload": {
   "searched_at": "2022-10-28T12:51:15.170Z",
   "sanctionlist_sources": [
    {
     "source_name": "ofac-consolidated",
     "source_full_name": "Office of Foreign Assets Control",
     "source_version": "2022-06-21"
    }
   ],
   "crimelist_entries": [],
   "watchlist_entries": [],
   "sanctionlist_entries": [
    {
     "found": "fuzzy",
     "id": 5712,
     "name": "ABDURRAHMAN IQBAL MOHAMAD",
     "addresses": [],
     "akas": [
      {
       "name": "Rahman, Mohamad Iqbal",
       "original": "",
       "type": "strong"
      }
     ],
     "nationality": "",
     "country": "Indonesia",
     "program": "Al-Qaida",
     "source": {
      "source_name": "un",
      "source_full_name": "United Nations Security Council",
      "source_version": "2022-10-27"
     },
     "attributes": [
      {
       "key": "Comments1",
       "value": "Review pursuant to Security Council resolution 1822 (2008) was concluded on 8 Jun. 2010. Review pursuant to Security Council resolution 2368 (2017) was concluded on 4 Dec. 2019 INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Individuals"
      },
      {
       "key": "Designation",
       "value": ""
      },
      {
       "key": "Title",
       "value": ""
      }
     ],
     "birth_precision": "exact",
     "birth_date": "1957-08-17",
     "birth_place": "",
     "mother_name": "",
     "id_number": "",
     "id_type": "",
     "first_seen": "2021-01-10T09:47:37.000Z",
     "last_seen": "2021-01-10T09:47:37.000Z"
    }
   ],
   "pep_entries": []
  }
 }
}

BIN API

Unearth information about a card's bank, issuer, country, type, and validity using our BIN API. Identify pre-paid, gift, and credit cards to counter payment fraud effectively.

Good to know

  • Use the Fraud API if you want to use the BIN API together with any of our Email API, IP API, and Device Fingerprinting.
  • All SEON API requests are case-sensitive. Please follow the formatting below to avoid errors.

Request

 

Request Attributes

ValueRequired
include
idno

 

HTTP Endpoint

GET

https://api.seon.io/SeonRestService/bin-api/v1.0/[bin]?include=id
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
bin_bank
string
bin_card
string
bin_type
string
bin_level
string
bin_country
string
bin_country_code
string
bin_website
string
bin_phone
string
bin_valid
boolean
card_issuer
string
id
Response
{
 "success": true,
 "error": {},
 "data": {
  "bin_bank": "NORTHERN NECK STATE BANK",
  "bin_card": "VISA",
  "bin_type": "DEBIT",
  "bin_level": "BUSINESS",
  "bin_country": "UNITED STATES",
  "bin_country_code": "US",
  "bin_website": "",
  "bin_phone": "(804) 435-1626",
  "bin_valid": true,
  "card_issuer": "VISA",
  "id": "465789"
 }
}

Errors

Fraud API v2 Errors

 

Error codeHTTP status codeError message and description
1000400"Empty request body."
Our servers are receiving your API request, but it does not contain anything. Check your request for formatting errors and take a look at our reference codes above.
1001400"Incorrect config object: [data_field_name] should be sent as [format]."
The field named in the error message is formatted incorrectly. Please refer to our API reference and confirm your formatting is correct.
1006400"Invalid input json."
The json you are trying to send seems to be formatted incorrectly. Please double-check your API request.
1009400"Invalid email address."
The input provided is not an email address, e.g., it does not contain an @ sign, or the TLD (.dom, .org, etc.) is missing.
1016400"Lookup limit for your plan has been reached."
Your plan includes a limited number of API lookups. Please contact our Customer Success Team if you have reached this limit.
1017401"Invalid authorization IP."
You are sending your API request from an IP address that is not authorized for your account. Double-check your settings or reach out to our team.
1018400"Invalid card_last format."
The field must only contain the last four digits (numerals) of the card number – remove any additional information. 
1019401"Your trial has expired."
Your 14-day free trial has expired. Reach out to our team to continue using SEON.
2001401"Missing license key."
You have not authenticated your API request with your license key. You can find your license key on the Organization page.
2001401"System database error."
An error has occurred when the service tried to access the database, for example, the database may be down. Check our status page for updates or contact our team.
2002401"Invalid license key."
The license key sent over in your request is incorrect. Find your license key on the My Account page. If you still have issues, reach out to our Customer Success Team.
2003401"Your subscription has ended."
If you would like to continue using SEON, reach out to our team.
2004401"Inactive license."
The license you have provided has expired or has not been activated yet. Double-check that you are using the correct key on your My Account page and contact our Customer Success Team for assistance.
2006400"Requested feature [feature_name] is not enabled, for instance the HLR or CNAM lookup functionality."
The feature you are trying to use is not enabled on your account. Reach out to our Customer Success Team they can help you in upgrading your account or finding the cause.
3000400"Incorrect type: [data_field_name] should be sent as [format]."
The field named in the error message is formatted incorrectly. Please refer to our API reference and confirm your formatting is correct.
3001400"Incorrect value: [data_field_name] is invalid."
Refer to the API reference and request code examples above to confirm you are using the correct name for each field.
3002400"Incorrect value: [data_field_name] should be sent as one of [value-1], [value-2]."
The format of the named field should follow the format of the examples in the error message. Refer to the API reference above for more details.
3003400"Length error: [data_field_name] size must be between [minimum_value] and [maximum_value]."
You can find details about the maximum length of each API field on the API reference page.
3003400"Invalid transaction_amount input parameter."
The transaction amount parameter should only contain numeric characters. Remove any full stops or commas from the string.
3004400"Error:  [error_message]."
The data entered in this field is invalid, for reasons other than those stated in error codes 3001 and 3003. Check our API reference for code examples, and contact our Customer Success Team if you need more assistance.
3004400"transaction_amount not provided along with transaction_currency."
The data entered in this field is invalid, for reasons other than those stated in error codes 3001 and 3003. Check our API reference for code examples, and contact our Customer Success Team if you need more assistance.
3004400"Unrecognized property: [data_field_name]. Please check the documentation for supported properties."
Your API request should contain both fields.
3005400“Unrecognized property: [data_field_name]."
Your API request contains an unsupported property. Refer to the reference documentation above and check your API request for typos.
3007400"Invalid action_type input parameter."
The action_type field can contain almost any correctly formatted string. Check your request for unwanted spaces, special characters, etc.
4001400"System error."
An error has occurred in the SEON system. Please check our status page for updates or contact our team.
4004400"Too Many Requests."
The number of requests sent exceeds your transactions/seconds rate limit. Our Customer Success team can assist you in increasing your limit if needed.

 

Error message

{
    "success": false,
    "error": {
        "code": "3000",
        "message": "Incorrect type: 'transaction_amount' should be sent as number"
    },
    "data": {}
}

Fraud API v1 Errors

 

Error CodeError description
1000Empty request body.
1001IP address is missing.
1002IP Address is invalid.
1003License key is missing.
1004License key is invalid.
1005Invalid public key.
1006JSON input is invalid.
1008Email address is missing.
1009Email address is invalid.
1010Invalid authorization header.
1011Inactive license.
1012Your subscription has ended
2001System database error.
3000Length error: [data_field_name] size must be between [minimum_value] and [maximum_value].
3001Incorrect value: [data_field_name] is invalid.
3002Invalid cvv_result input parameter.
3003Invalid transaction_amount input, should be provided as number.
3004Invalid items_quantity input parameter.
3005Invalid items_price input parameter.
3006Incorrect value: merchant_created_at value is invalid
3007Incorrect value: action_type parameter is invalid
3008transaction_amount not provided along with transaction_currency.
3009Invalid gift input parameter.
3010Invalid gift_message input parameter.

JavaScript Agent Changelog

Click on any row to read a more detailed description of update to our device fingerprinting tools.

Version

DateSummary
5.7.0
May 17, 2023Font list changes
5.6.1
Apr 12, 2023Bug fixes and performance improvements
5.5.4
Feb 16, 2023Device identification & performance
5.5.1
Dec 13, 2022Improved timeout handling
5.5.0
Dec 8, 2022Device IP updates
5.4.0
Nov 10, 2022Mobile device identification improvements
5.3.1
Oct 26, 2022Unit tests
5.3.0
Sep 30, 2022Fraud browser detection
5.2.1
Sep 9, 2022Minor bugfixes
5.2.0
Sep 8, 2022Improved spoofing detection
5.1.0
Jul 26, 2022Fraud browser detection
5.0.1
Jun 1, 2022Minor bugfixes
5.0.0
May 30, 2022Font & fraud browser detection

API Changelog

Update 2022-05-25

Service changes

  • Email API v2.2 has been released with new supported online platforms: adobe, mailru, wordpress, imgur, disneyplus, netflix, jdid, flipkart, bukalapak, archiveorg, lazada, zoho, samsung, evernote, envato, patreon, tokopedia, rambler, quora, atlassian Using the v2.2 changes the account_details in the API response. Version differences:
    • All supported online platforms for Email API v2.2:  facebook, google, apple, twitter, microsoft, yahoo, ebay, gravatar, instagram, spotify, tumblr, linkedin, weibo, github, vimeo, flickr, foursquare, lastfm, myspace, pinterest, skype, discord, ok, kakao, booking, airbnb, amazon, qzone , adobe, mailru, wordpress, imgur, disneyplus, netflix, jdid, flipkart, bukalapak, archiveorg, lazada, zoho, samsung, evernote, envato, patreon, tokopedia, rambler, quora, atlassian
    • All supported online platforms for Email API v2.1:  facebook, google, apple, twitter, microsoft, yahoo, ebay, gravatar, instagram, spotify, tumblr, linkedin, weibo, github, vimeo, flickr, foursquare, lastfm, myspace, pinterest, skype, discord, ok, kakao, booking, airbnb, amazon, qzone
  • Phone API v1.3 has been released with new supported online platforms: flipkart, bukalapak, jdid . Using the v1.3 changes the account_details in the API response. Version differences:
    • All supported online platforms for Phone API v1.3: zalo, line, kakao, microsoft, ok, skype, snapchat, facebook, google, instagram, twitter, yahoo, telegram, whatsapp, viber , flipkart, bukalapak, jdid
    • All supported online platforms for Phone API v1.2:  zalo, line, kakao, microsoft, ok, skype, snapchat, facebook, google, instagram, twitter, yahoo, telegram, whatsapp, viber
    • Phone API v1.3 deprecated and removed fields: cnam, cnam_gender

 

Update 2021-10-25

Service changes

  • New standalone BIN API was released. Its response contains the same data as the bin_details object in the Fraud API.
  • Webhooks are now available for blacklisting, whitelisting and custom listing actions.
  • For transaction:status_update Webhook events the label value is provided in the payload.

New Admin features

  • Introducing Custom Lists: alongside the current blacklist and whitelist, now custom ones can be created and used for scoring (Lists page).
  • User full name similarity support added to Velocity rules (Scoring Engine).
  • Similarity operators were added to Data match rules (Scoring Engine).
  • Session source was added as a new field to Compare rules (Scoring Engine).
  • User Behavior rule parameter type was removed from the system. Same functionality is available with the Velocity type.

Update 2021-09-29

Service changes

Update 2021-09-15

Service changes

  • Slash character is now accepted in the local part of the emails.

Update 2021-09-02

New admin features

Update 2021-08-03

Service changes

Update 2021-07-08

Service changes

  • Alternative domain options added for JavaScript Agent v4. You can use the following script source URLs ([source_url]):
    • https://cdn.seondf.com/js/v4/agent.js
    • https://cdn.deviceinf.com/js/v4/agent.js
    • https://cdn.getdeviceinf.com/js/v4/agent.js

Update 2021-06-15

Service changes

  • Email API v2.1 has been released with new supported online platforms: discord, ok, kakao, booking, airbnb, amazon, qzone. Using the v2.1 changes the account_details in the API response. Version differences:
    • All supported online platforms for Email API v2.1:  facebook, google, apple, twitter, microsoft, yahoo, ebay, gravatar, instagram, spotify, tumblr, linkedin, weibo, github, vimeo, flickr, foursquare, lastfm, myspace, pinterest, skype, discord, ok, kakao, booking, airbnb, amazon, qzone
    • All supported online platforms for Email API v2.0:  facebook, google, apple, twitter, microsoft, yahoo, ebay, gravatar, instagram, spotify, tumblr, linkedin, weibo, github, vimeo, flickr, foursquare, lastfm, myspace, pinterest, skype

Update 2021-06-10

Service changes

  • Phone API v1.1 has been released with new supported online platforms: zalo, line, kakao, microsoft, ok, skype, snapchat. Using the v1.1 changes the account_details in the API response. Version differences:
    • All supported online platforms for Phone API v1.1: zalo, line, kakao, microsoft, ok, skype, snapchat, facebook, google, instagram, twitter, yahoo, telegram, whatsapp, viber
    • All supported online platforms for Phone API v1.0: facebook, google, instagram, twitter, yahoo, telegram, whatsapp, viber
  • HMAC Signature added for service webhook events.

Update 2021-03-24

New admin features

  • Advanced rule management implemented with the ability to duplicate, activate, deactivate multiple rules and copy them from or to your Sandbox account (Scoring Engine).
  • Cardholder full name added to Customer connections (Transaction details page / Customer connections).

Update 2021-02-25

New admin features

  • Ability to exclude users from rules based on User ID, Email address, Card hash and IP address (Scoring Engine, Customer details and Transaction details page).
  • Case-insensitivity added to additional rule parameter settings in Compare and Data match type rules (Scoring Engine).

Service changes

  • Optional case-insensitivity in Compare and Data match type rules.

Update 2021-02-17

New admin features

  • If condition option added for all aggregates in velocity rules (Scoring Engine).
  • Add applied rules to Velocity IF conditions (Scoring Engine).
  • Phone score added to Compare rules (Scoring Engine).
  • Email score, IP score, Phone score added to Velocity rule Present field and Past field options (Scoring Engine).
  • Compare to current value and Compare to historical value options added for velocity conditions (Scoring Engine).
  • Advanced time frame option added to Velocity rules to calculate on past time frames (Scoring Engine).
  • Comparison of two time frames added to Velocity rules (Scoring Engine).
  • Phone country, Item store country, Merchant country, Receiver full name, Item custom fields added to Data match rules (Scoring Engine).
  • Enforce two-factor authentication (2FA) for all users option added (Settings page).
  • Export function (CSV) added for logs (Logs page).
  • Team Activity widget on the Dashboard is now restricted to read permission for logs (Team / Role Groups).
  • Login with credentials is now disabled for users using Single sign-on (SSO) authentication.
  • IP restriction added to settings (Settings page).
  • Warning message added for rule parameter limitations (Scoring Engine).

Update 2021-02-05

Service changes

  • IP restriction option added to Service.
  • Advanced velocity rule features Service side implementation.
  • Async Fraud API v2.0 requests support added.
  • New endpoint added for Zapier integration.
  • Data match rule applying improvements.
  • Rule applying backward compatibility added in Fraud API v2.0 for user_dob sent in custom_fields (Equivalent to User date of birth field, user_dob).
  • Case insensitive comparison for data match rules containing User full name, Card holder full name, Shipping full name, Receiver full name.

Update 2021-02-01

New admin features

  • Single sign-on (SSO) authentication support added to Admin Panel (Settings page).

Update 2021-01-18

Service changes

  • Client Certificate support added for the REST Service.

Update 2020-11-13

New admin features

  • Custom fields compatibility added to Velocity rules (Scoring Engine).
  • Timezone offset compatibility added to data match rules (Scoring Engine).
  • COP - Colombian Pesos - added to currencies (Settings page).
  • Option to only train Machine Learning on feedback labels added to Settings (Settings page).
  • User full name and DOB (User date of birth) added to Customer connections (Transaction details page / Customer connections).
  • IP location and Card country added to Addresses widget (Transaction details page).
  • Cookie hash, Browser hash, Card hash added to Lists status popup (Transaction details page).
  • HLR and CNAM lookups added to manual queries if the functionality is turned on for the account. These requests have additional fees, please contact us for more details. (Manual page).

Update 2020-09-28

Service changes

  • Erase API introduced.

Update 2020-09-07

New admin features

  • Lists page custom expiration days support added.
  • WebGL vendor added to filters.

Update 2020-08-24

Service changes

  • Self-Exclusion API DELETE request introduced.

Update 2020-08-13

New admin features

  • Manual page added to SEON.

Update 2020-06-16

Service changes

  • Fraud API v2.0 has been released.
  • hlr_details and cnam_lookup optional query string parameters were added to Phone API. Requests with these parameters have additional fees, please contact us for more details.
  • custom_fields (formerly used as user_label) support added to Lists.
  • Case insensitivity added to user_name, user_fullname, user_city, user_region, user_street values in velocity rules.
  • Email Verification API introduced.
  • custom_fields (formerly used as user_label), amount_in_eur fields are now supported in velocity rules.

Data field mapping from Fraud API v1.0 to v2.0:

  • proxy_score -> ip_details/score
  • ip_details/ip_country -> ip_details/country
  • ip_details/ip_state_prov -> ip_details/state_prov
  • ip_details/ip_city -> ip_details/city
  • ip_details/ip_latitude -> ip_details/latitude
  • ip_details/ip_longitude -> ip_details/longitude
  • ip_details/ip_isp_name -> ip_details/isp_name
  • ip_details/ip_timezone_offset -> ip_details/timezone_offset
  • email_details/email_score -> email_details/score
  • email_details/email_exists -> email_details/deliverable
  • email_details/disposable -> email_details/domain_details/disposable
  • email_details/free -> email_details/domain_details/free
  • email_details/domain_exists -> email_details/domain_details/website_exists
  • email_details/email_domain_details -> email_details/domain_details
  • email_details/email_domain_details/domain -> email_details/domain_details/domain
  • email_details/email_domain_details/suffix -> email_details/domain_details/tld
  • email_details/email_domain_details/created -> email_details/domain_details/created
  • email_details/email_domain_details/updated -> email_details/domain_details/updated
  • email_details/email_domain_details/registered -> email_details/domain_details/registered
  • email_details/email_account_details -> email_details/account_details
  • email_details/email_account_details/facebook_exists -> email_details/account_details/facebook/registered
  • email_details/email_account_details/facebook_profile -> email_details/account_details/facebook/url
  • email_details/email_account_details/facebook_name -> email_details/account_details/facebook/name
  • email_details/email_account_details/facebook_photo -> email_details/account_details/facebook/photo
  • email_details/email_account_details/google_exists -> email_details/account_details/google/registered
  • email_details/email_account_details/google_profile -> removed
  • email_details/email_account_details/google_name -> removed
  • email_details/email_account_details/google_photo -> email_details/account_details/google/photo
  • email_details/email_account_details/apple_exists -> email_details/account_details/apple/registered
  • email_details/email_account_details/twitter_exists -> email_details/account_details/twitter/registered
  • email_details/email_account_details/microsoft_exists -> email_details/account_details/microsoft/registered
  • email_details/email_account_details/yahoo_exists -> email_details/account_details/yahoo/registered
  • email_details/email_account_details/ebay_exists -> email_details/account_details/ebay/registered
  • email_details/email_account_details/gravatar_exists -> email_details/account_details/gravatar/registered
  • email_details/email_account_details/instagram_exists -> email_details/account_details/instagram/registered
  • email_details/email_account_details/spotify_exists -> email_details/account_details/spotify/registered
  • email_details/email_account_details/tumblr_exists -> email_details/account_details/tumblr/registered
  • email_details/email_account_details/linkedin_exists -> email_details/account_details/linkedin/registered
  • email_details/email_account_details/weibo_exists -> email_details/account_details/weibo/registered
  • email_details/email_account_details/vk_exists -> removed
  • email_details/email_account_details/haveibeenpwned_exists -> email_details/breach_details/haveibeenpwned_listed
  • email_details/email_account_details/number_of_breaches -> email_details/breach_details/number_of_breaches
  • email_details/email_account_details/first_breach -> email_details/breach_details/first_breach
  • phone_details/phone_number -> phone_details/number
  • phone_details/phone_is_valid -> phone_details/valid
  • phone_details/phone_is_possible -> removed
  • phone_details/phone_type -> phone_details/type
  • phone_details/phone_country -> phone_details/country
  • phone_details/phone_carrier -> phone_details/carrier

Update 2020-04-08

Service changes

  • flags_timeframe_days, exclude, timeout query string parameters added to Email API, Phone API and IP API.
  • Username - User full name and Email - User full name similarity calculation updated in Compare rules.
  • Email, user name, user address hash similarity support added to Velocity rules.
  • user_label field support added to data match rules.

Update 2020-02-17

New admin features

  • Phone number flagging support added to Phone widget.
  • Dropdown selector added for Device type and IP type (Scoring Engine, Filters).
  • Custom URLs is now recognised as links on widgets (User labels, Order details / Details URL).
  • Self exclusion rules moved into a separate Exclude rules category.

Update 2020-01-13

New admin features

  • State conflict settings added (Settings page).
  • Batch test maximum number of records increased to 30 000 (Manual Page / Batch Test).
  • Phone API runner added to Phone widget (Transaction details page / Customer details page).
  • IP and Phone widget updated (Transaction details page / Customer details page).
  • Action type, Phone type, IP timezone offset, Timezone offset filters improved (Transactions / Filters, Customers / Filters)
  • Public proxy, VPN data fields added to Scoring Engine (Scoring Engine).
  • Phone API v1.0 data fields added to Scoring Engine (Scoring Engine).
  • Bulk selection added to Activity (Transaction details page / Activity).
  • Card country code data field renamed to Card country, Card country removed from Admin Panel (All pages).

Update 2019-11-22

New admin features

  • Phone API statistics added to user menu and Billing Details (Billing Details).
  • Transaction list export limit increased to 30 000 records (Transactions / Exports).
  • Quick filter for address hashes added (Transaction details page).

Update 2019-11-13

Service changes

  • IP API v1.0 added to Service.
  • Optional query string parameters added to Phone API and IP API.

Update 2019-10-30

New admin features

  • Applied rule notification added (My Account / Notifications).
  • Modify score by velocity value function added to Scoring Engine (Scoring Engine).
  • Multiple distinct values support added to Velocity rules (Scoring Engine).
  • Additional ordering added to New risky transactions (Workbench / New Risky Transactions).
  • Warning added if session arrived later than the transaction (Transaction details page).
  • Rule tester accuracy calculation improved (Rule edit page).
  • View on Google link removed from Email widget, since Google+ was shut down (Transaction details page).
  • Deleted rules got labelled on Applied Rule Statistics (Scoring Engine / Dashboard).
  • Separate user id sequencing for customers added (Team).

Update 2019-10-18

Service changes

  • Phone API v1.0 added to Service.

Update 2019-10-09

New admin features

  • Scoring Engine page updated. Rule categorizing and filtering added, new Applied Rule Statistics widget introduced on Scoring Engine Dashboard (Scoring Engine).
  • Default rule configuration added to Scoring Engine (Scoring Engine / Default Rules).

Update 2019-09-30

Service changes

  • Multiply and divide functions removed from Scoring Engine.
  • Modify score by velocity value function added.
  • Multiple distinct values support added to Velocity rules.
  • Phone number input validation added.
  • Using Domain update date when Domain creation date not available.

Update 2019-09-10

Service changes

  • Default rules got configurable.
  • Missing user_id generated from user_name or email address.
  • Separate rule id sequencing for customers added.
  • Lowercase country code support added.
  • API request field length validation added. The maximum length of all request parameters is 100 characters, except 64 characters for session_id.

Update 2019-08-15

New admin features

  • Previous months view added to Billing Details page (Billing Details).
  • Merchants page added (Merchants).
  • New device fingerprinting fields added to Admin Panel, device widget updated.
  • New action types added to Filters, Scoring Engine.
  • Previously sent User label field options added to Filters, Scoring Engine.
  • Canceled invoices got highlighted (Billing Details).
  • Optional payment mode statistics added to Dashboard.
  • Currency dropdown added to Filters, Scoring Engine.
  • Sandbox restriction added to user options (Team).
  • Hiding all email_account_details information on Admin Panel optionally.
  • Public keys added to profile information (My Account page).

Update 2019-08-05

Machine learning changes

  • ML rule names converted to human-readable format.

Update 2019-07-26

Service changes

  • Hiding email_account_details optionally.
  • Gift (boolean) and Gift message (boolean) input fields validation added to Service.

Update 2019-07-19

Machine learning changes

  • New device fingerprinting fields added to Machine learning algorithm.

Update 2019-07-11

Service changes

  • New device fingerprinting fields added to Scoring Engine.

Update 2019-06-21

Service changes

  • Does not contain operator added to Compare rules.
  • New action types added to service: add_item_to_cart, remove_item_from_cart, add_promotion, create_content, account_logout, submit_Review, update_content, verification
  • Count current transaction option added to Scoring Engine.

New admin features

  • Count current transaction option added to Velocity and User behavior rules (Scoring Engine).

Update 2019-06-13

New admin features

  • Sandbox environment option implemented.
  • Notification enabled for all user types.

Update 2019-05-16

Service changes

  • Percentage comparison added to Scoring Engine.

New admin features

  • Percentage comparison added to Velocity rules (Scoring Engine).

Update 2019-05-10

New admin features

  • Manual page UI updated (Manual page).
  • Team activity widget added to Dashboard (Dashboard).
  • LinkedIn profile link added to Email widget (Transaction details page).
  • Ability to add multiple billing emails (Billing details page).

Update 2019-04-25

New admin features

  • Exclude customer feature added (Transaction details page).
  • Logging extended with direct links (Logs page).

Update 2019-03-29

New admin features

  • Workbench page added.
  • New supported currencies: KZT, VND, BYN, UAH, AZN, BTC, ETH, BCH, XRP, LTC, USDT.

Update 2019-03-18

New admin features

  • Separate commenting added to Notes widget (Transaction details page).

Update 2019-02-14

New admin features

  • New data field added to Scoring Engine called “Missing device details” (Scoring Engine).
  • Profile pictures added to team members (Team).
  • Affected transactions and affected amount added to machine learning complex rules (Scoring Engine / Machine learning).

Update 2019-01-24

New admin features

  • Role groups added to Team with customizable roles and permissions (Team / Role groups).
  • Readable names and numbering added to user devices (Activity tab).
  • Dropdown selector added to country data fields (Transactions / Filters, Scoring Engine).

Update 2018-12-21

Service changes

  • Count of numbers and count of numbers in a row added to email handle / username analysis.
  • Disposable email check for subdomains.

New admin features

  • Quick search added to transaction list (Transactions page).
  • Readable names and numbering added to user devices in Devices & OS widget (Transaction details page).
  • Count of numbers and count of numbers in a row in email handle / username added to filters (Transactions page).
  • Count of numbers and count of numbers in a row in email handle / username added to Scoring Engine (Scoring Engine).

Update 2018-11-20

Service changes

  • Turn on machine learning rules over a certain accuracy.

New admin features

  • Filters for machine learning rules (Scoring Engine / Machine learning).
  • Set accuracy to auto deploy machine learning rules (Settings page).
  • State change with label selection (Transactions page).
  • First seen value added to Identity widget (Transaction details page).
  • Machine learning rule details design update (Scoring Engine / Machine learning).

Update 2018-10-15

New admin features

  • User specific notification settings (My account / Notifications).
  • Base currency added to every currency dropdown.

Update 2018-09-25

Service changes

  • Default IP expiration time added to service.

New admin features

  • Email handle / username analysis added to widgets (Transaction details page).
  • Email handle / username analysis added to filters (Transactions page).
  • Action type, rule type filter added to machine learning rules (Scoring Engine / Machine learning).
  • Rule export functionality added (Scoring Engine).

Update 2018-09-14

Service changes

  • Lists API added to service. It is able to blacklist/normal/whitelist all data fields.
  • Email handle, username, full name similarity and analysis added to Scoring Engine.
  • JavaScript boolean field removed from request. No longer needed in requests. Backward compatibility provided.

New admin features

  • Email handle, username, full name similarity and analysis added to Filters (Transactions / Filters).
  • Base currency added to currency selectors.

Update 2018-09-04

Service changes

  • VKontakte added to Email API response and Scoring Engine.

New admin features

  • Email handle, username, full name similarity and analysis added to widgets (Transaction details page).
  • VKontakte result added to Email widget (Transaction details page).
  • VKontakte added to Scoring Engine (Scoring Engine / Rule).

Update 2018-08-07

Service changes

  • Automatic billing implemented.
  • Automatic boarding process implemented.
  • New fields added to Scoring Engine: Shipping method, Discount code, IP latitude, IP longitude, Card issuer, Card country, Phone possible, Email exists, Email disposable, Email free, Have I been pwned? exists, Data breaches, First breach, Domain suffix, Domain registered, Domain creation date, Domain updated, Tor, HTTP proxy, Web proxy, Open ports, IP blacklist names, IP blacklist number, Datacenters, Plugin names, Logged in social sites, DNS IP Country, DNS IP ISP, WebRTC count, Transaction amount (exchanged).

New admin features

  • Rule history added to Scoring Engine (Scoring Engine / Rule).
  • Currency selector added to statistics (Transactions / Statistics).
  • Locale settings added to format dates and numbers (Settings page).
  • Billing details added to Admin Panel (Billing page).

Update 2018-06-15

Service changes

  • Transaction amounts are now saved in the account’s default currency too.

New admin features

  • Ability to modify list columns (Transactions page).
  • Set default currency for the admin interface (Settings page).
  • Filter for exchanged transaction amount based on the default currency (Transactions page).

Update 2018-06-01

Service changes

  • Heuristic rules inspect all data fields.
  • Automatically turn on heuristic rules over a certain accuracy.

New admin features

  • Instant Google search added to Email widget (Transaction details page).
  • Downloadable User Guide and Product Features documents added to support page (Support page).

Update 2018-04-26

Service changes

  • Ability to label multiple transactions at the same time.

New admin features

  • Ability to turn off flagging feature (Settings page).
  • Airline specific widgets added to Transaction details page (Transaction details page).
  • Action type filtering added to rule list (Scoring Engine / Custom rules).
  • Transaction list page update with viewed, not-viewed-yet sign (Transactions page).
  • Registration score added to Identity widget (Transaction details page).

Update 2018-04-10

Service changes

  • Machine learning rule generation added to Scoring Engine.
  • Automatic flagging option for blacklisted values.
  • The ‘ip_connection_type’ attribute was removed from API response.

New admin features

  • Rule tester added to Rule editor (Scoring Engine / Rule).
  • Auto flag blacklisted values option added (Settings page).
  • Admin Panel tutorial added (Tutorial menu).
  • Multiple row selection added (Transactions, Customers, Rules)

Update 2018-03-20

Service changes

  • “type” attribute added to device_details Object. If the request is sent through one of our SDKs, the device_details object changes accordingly.
  • Heuristic rules added to Scoring Engine.
  • Flagged values added to Scoring Engine.
  • Scoring Engine compare type rules now can handle IP ranges.

New admin features

  • New “Raw data” tab added in order to inspect API requests and responses (Transaction Detials page).
  • Customer Connections multiple datapoint selection added (Transaction Details page).
  • Machine learning settings added in order to set bad and negative labels and heuristic rule data points (Settings page).
  • Machine learning tab added to scoring engine (Scoring Engine page).

Update 2018-02-28

Service changes

  • Flagging feature added.

New admin features

  • Email address, IP address and Browser Hash can be flagged from the Admin Panel (Transaction Detials page).
  • Flagged as suspicious page added (Lists page).

Update 2018-02-09

Service changes

  • IPv6 support added to Fraud and Proxy API.

New admin features

  • Blacklist page filter added (Lists page).
  • Quick filter added to blacklist page (Lists page).
  • Customer Status widget impoved with comments and expiration date options (Transaction Detials page).
  • Lockable filters to transaction and customer filtering (Transaction page, Customers page).

Update 2017-11-20

Service changes

  • The way of authentication has been changed, from now on header authentication is used. Our deprecated version of authentication (POST payload) is also available until 28th of February 2018.
  • js_ip, js_ip_country, js_ip_isp has been added to device_details in Fraud API response. JS IP is the user’s IP address where the session data is coming from.

Update 2017-11-09

Service changes

  • Added support for blacklisting/whitelisting multiple user ID-s with one API request.
  • Since Yahoo no longer supports creation date information, we removed the attribute from our API response.
  • Weibo has been added to our Email API.
  • Device timezone format has been changed in our API response (“timezone”: “+2:00”).
  • The fraud_score, email_score and proxy_score format has changed to number in our API response.

New admin features

  • Quick blacklisting/whitelisting in the new Customer status pop-up (Transaction Detials page).
  • Applied velocity rule details can be seen in the Applied rules widget (Transaction Detials page).
  • Filtering tool has been updated (Transactions).

Update 2017-10-06

API request changes

  • From now on you can call our Fraud API’s label parameters with: “true”, true, 1, “1”, false, “false”,0,“0”. Parameters: label_email, label_address, label_fingerprints, label_ip, label_phone.

Data point name changes

  • fonts_as_string -> font_names
  • logged_in_social_sites -> social_sites

Response format changes

  • webrtc_ips, logged_in_social_sites, social_sites are now in JSON format.

Device details timezone

  • Device Fingerprinting: Released version v2.0 of our agent JS / Device Fingerprint modul, extended with browser based social media data.

New admin features

  • Email notification option from now allows you to notify you in certain events (My account / Notifications).
  • Scoring Engine update with new grouping, AND/OR operators function (Scoring Engine).
  • Instant chat support (Every page bottom right corner).
  • Webhook function for transaction state changes (Settings / Webhook settings).
  • New customer status widget for better data point blacklisting (Transaction Details page).
  • Qucik filter button added to every data point for faster search (Transaction Details page).

Deprecated versions

Fraud API v1.0

Request

SEON’s Fraud API is the core end-to-end solution designed to reduce fraud. It includes all our module APIs, but you can enable or disable them such as the Email API or the device fingerprint function via JavaScript snippet. It supports business-specific data fields for scores, using the user_label.

JSON Attributes

TypeRequired
ip
stringno
action_type
stringno
transaction_id
stringno
affiliate_id
stringno
affiliate_name
stringno
user_order_memo
stringno
run_email_api
booleanno
email
stringno
email_domain
stringno
password_hash
stringno
user_fullname
stringno
user_name
stringno
user_id
stringno
user_created
integerno
user_country
stringno
user_city
stringno
user_region
stringno
user_zip
stringno
user_street
stringno
user_street2
stringno
session_id
stringno
device_id
stringno
payment_mode
stringno
card_fullname
stringno
card_bin
stringno
card_hash
stringno
card_last
stringno
avs_result
stringno
cvv_result
booleanno
phone_number
stringno
transaction_type
stringno
transaction_amount
floatno
transaction_currency
stringno
items
array of item objectsno
shipping_country
stringno
shipping_city
stringno
shipping_region
stringno
shipping_zip
stringno
shipping_street
stringno
shipping_street2
stringno
shipping_phone
stringno
shipping_fullname
stringno
shipping_method
stringno
billing_country
stringno
billing_city
stringno
billing_region
stringno
billing_zip
stringno
billing_street
stringno
billing_street2
stringno
billing_phone
stringno
discount_code
stringno
gift
booleanno
gift_message
booleanno
merchant_id
stringno
merchant_created_at
integerno
merchant_country
stringno
details_url
stringno
user_label
objectno

 

HTTP Endpoint

POST

https://api.seon.io/SeonRestService/fraud-api/v1.0/
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
id
string
state
string
fraud_score
number
proxy_score
number
ip_details
object
email_details
object
bin_details
object
phone_details
object
version
string
applied_rules
array of object
device_details
object
calculation_time
integer
seon_id
integer
Response
{
 "success": true,
 "error": {},
 "data": {
  "id": "213-321",
  "state": "APPROVE",
  "fraud_score": 4.24,
  "proxy_score": 0.6,
  "ip_details": {
   "ip": "192.0.2.0",
   "ip_country": "HU",
   "ip_state_prov": "Budapest",
   "ip_city": "Budapest",
   "ip_timezone_offset": "+2:00",
   "ip_isp_name": "UPC Magyarorszag Kft.",
   "ip_latitude": 47.4861,
   "ip_longitude": 19.0669
  },
  "email_details": {
   "email": "example@example.com",
   "email_score": 5.52,
   "email_exists": true,
   "disposable": false,
   "free": false,
   "domain_exists": true,
   "email_domain_details": {
    "domain": "example.com",
    "suffix": ".com",
    "registered": true,
    "created": null,
    "updated": null
   },
   "email_account_details": {
    "facebook_exists": false,
    "facebook_profile": null,
    "facebook_name": null,
    "facebook_photo": null,
    "google_exists": false,
    "google_profile": null,
    "google_name": null,
    "google_photo": null,
    "apple_exists": false,
    "twitter_exists": false,
    "microsoft_exists": false,
    "yahoo_exists": false,
    "ebay_exists": false,
    "gravatar_exists": false,
    "instagram_exists": false,
    "spotify_exists": false,
    "tumblr_exists": false,
    "linkedin_exists": false,
    "haveibeenpwned_exists": false,
    "weibo_exists": false,
    "vk_exists": false,
    "number_of_breaches": 0,
    "first_breach": null
   }
  },
  "bin_details": {
   "card_bin": "550000",
   "bin_bank": "NORTHERN NECK STATE BANK",
   "bin_card": "VISA",
   "bin_type": "DEBIT",
   "bin_level": "BUSINESS",
   "bin_country": "UNITED STATES",
   "bin_countrycode": "US",
   "bin_website": "",
   "bin_phone": "(804) 435-1626",
   "bin_valid": true,
   "card_issuer": "VISA"
  },
  "phone_details": {
   "phone_number": "+36704316088",
   "phone_is_valid": true,
   "phone_is_possible": true,
   "phone_type": "MOBILE",
   "phone_country": "HU",
   "phone_carrier": "Vodafone"
  },
  "version": "v1.0",
  "applied_rules": [
   {
    "id": "3",
    "name": "IP country does not match with billing country",
    "operation": "+",
    "score": 2
   }
  ],
  "device_details": {
   "type": "web",
   "session_id": "de153dd3996e46ce84b32fda82208f4e",
   "source": "js-3.1-op",
   "cookie_hash": "61d786b165b74e15d8c55b1e96a8cdb3",
   "region_timezone": "+02:00",
   "cookie_enabled": true,
   "os": "MacOS",
   "flash_enabled": false,
   "java_enabled": false,
   "device_type": "desktop",
   "private": false,
   "webrtc_activated": false,
   "webrtc_count": 0,
   "webrtc_ips": [],
   "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36",
   "window_size": "1060x649",
   "screen_resolution": "2048x1152",
   "screen_available_resolution": "2048x1129",
   "screen_color_depth": 24,
   "screen_pixel_ratio": 1,
   "plugin_count": 3,
   "plugin_list": [
    "Chrome PDF Plugin",
    "..."
   ],
   "plugin_hash": "9c33fe15e3ec251f799666de471de1e9",
   "browser_hash": "4ab1d9549382520af59f4bce9db31ace",
   "browser": "CHROME",
   "browser_version": "76.0.3809.100",
   "font_count": 27,
   "font_list": [
    "Andale Mono",
    "..."
   ],
   "font_hash": "0f7664682b2a6c3baeda70c094658dac",
   "device_hash": "e4e3dcc9c15debf45dd09f2683012356",
   "touch_support": false,
   "device_memory": 8,
   "hardware_concurrency": 4,
   "platform": "MacIntel",
   "region_language": "hu",
   "webgl_hash": "9908db6eb8007ad94e0f8dc0fa974fb4",
   "webgl_vendor": "Intel Inc.~Intel(R) Iris(TM) Plus Graphics 650",
   "audio_hash": "124.04345808873768",
   "do_not_track": false,
   "adblock": false,
   "battery_level": 58,
   "battery_charging": false,
   "canvas_hash": "48bfc395be892bba7d9d8abc68f83450",
   "dns_ip": "89.134.46.85",
   "dns_ip_country": "HU",
   "dns_ip_isp": "Sample Service Provider",
   "device_ip_address": "80.99.46.168",
   "device_ip_country": "HU",
   "device_ip_isp": "Sample Service Provider",
   "accept_language": [
    "en-us",
    "..."
   ]
  },
  "calculation_time": 554,
  "seon_id": 1505147
 }
}

Errors for Fraud API v1.0

 

Error CodeExplanation
1000Empty request body.
1001IP address is missing.
1002IP address is invalid.
1003License key is missing.
1004License key is invalid.
1005Invalid public key.
1006JSON input is invalid.
1008Missing email address.
1009Invalid email address.
1010Invalid authorization header.
1011Inactive license.
1012Your subscription has ended.
2001System database error.
3000[data_field_name] size must be between [minimum_value] and [maximum_value].
3001Invalid ‘user_created’ input parameter.
3002Invalid ‘cvv_result’ input parameter.
3003Invalid ‘transaction_amount’ input parameter.
3004Invalid ‘items_quantity’ input parameter.
3005Invalid ‘items_price’ input parameter.
3006Invalid ‘merchant_created_at’ input parameter.
3007Invalid ‘action_type’ input parameter.
3008‘transaction_amount’ not provided along with ‘transaction_currency’.
3009Invalid ‘gift’ input parameter.
3010Invalid ‘gift_message’ input parameter.

Migration from Fraud API v1.0 to v2.0

New config object for Fraud API

  • run_email_api field in input is deprecated for v2.0, Email API should be set in config object (set email_api: true).
  • IP API won’t be executed by default, need to set explicitly in config object. (set ip_api: true).
  • Device fingerprint won’t be enabled by default, need to set explicitly in config object. (set device_fingerprinting: true).
  • Phone API is supported for Fraud API. (set phone_api: true).

Session Handling

  • Instead of the session_id you need to send the encrypted payload returned by the SDK (supported by JS Agent v4, iOS SDK 3.0.0, Android SDK 3.0.0). The session_id parameter is still required for the configuration, the change affects the data that you need to send in the Fraud API request related to the Device Fingerprint module.
  • The previous SDK versions are still supported with the session_id field, but we highly recommend to migrate the Device Fingerprint module.
  • The public key is no longer necessary with the latest SDK versions.
  • You must set device_fingerprinting: true in the config object to enable the feature.

Keep in mind the following input fields were renamed in Fraud API v2.0:

  • user_label -> custom_fields
  • item_user_label -> item_custom_fields
  • user_order_memo -> order_memo

Response changes: Please find the full data field mapping from Fraud API v1.0 to v2.0 here.

Email API v1.0

Request

JSON Attributes

TypeRequired
email
stringyes

HTTP Endpoint

POST

https://api.seon.io/SeonRestService/email-api/v1.0/
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
email
string
email_score
number
email_exists
boolean
disposable
boolean
free
boolean
domain_exists
boolean
email_domain_details
object
email_account_details
object
Response
{
 "success": true,
 "error": null,
 "data": {
  "email": "example@example.com",
  "email_score": 5.52,
  "email_exists": false,
  "disposable": false,
  "free": false,
  "domain_exists": false,
  "email_domain_details": {
   "domain": "example.com",
   "suffix": ".com",
   "registered": true,
   "created": null,
   "updated": null
  },
  "email_account_details": {
   "facebook_exists": false,
   "facebook_profile": null,
   "facebook_name": null,
   "facebook_photo": null,
   "google_exists": false,
   "google_profile": null,
   "google_name": null,
   "google_photo": null,
   "apple_exists": false,
   "twitter_exists": false,
   "microsoft_exists": false,
   "yahoo_exists": false,
   "ebay_exists": false,
   "gravatar_exists": false,
   "instagram_exists": false,
   "spotify_exists": false,
   "tumblr_exists": false,
   "linkedin_exists": false,
   "haveibeenpwned_exists": false,
   "weibo_exists": false,
   "vk_exists": false,
   "number_of_breaches": 0,
   "first_breach": null
  }
 }
}

Email API v2.0

Request

The [email_address] in the request URI should include the full email address, for example: example@example.com

 

Optional query string parameters

Add the following parameters to the request URL for more control over the returned data, as seen in the example URL below.

GET

https://api.seon.io/SeonRestService/email-api/v2.0/[email_address]?include=history,flags,id&flags_timeframe_days=10&timeout=3000

Request Attributes

ValueRequired
include
historyno
include
flagsno
include
idno
flags_timeframe_days
[number of days]no
timeout
[number of milliseconds]no

HTTP Endpoint

GET

https://api.seon.io/SeonRestService/email-api/v2.0/[email_address]
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
email
string
score
number
deliverable
boolean
domain_details
object
account_details
object
breach_details
object
applied_rules
array of object
history
object
flags
array of object
id
string
Response
{
 "success": true,
 "error": {},
 "data": {
  "email": "example@example.com",
  "score": 80,
  "deliverable": false,
  "domain_details": {
   "domain": "example.com",
   "tld": ".com",
   "created": "1995-08-14 04:00:00",
   "updated": "2019-08-14 07:04:41",
   "expires": null,
   "registered": true,
   "registrar_name": null,
   "registered_to": null,
   "disposable": true,
   "free": false,
   "custom": false,
   "dmarc_enforced": false,
   "spf_strict": true,
   "valid_mx": false,
   "accept_all": false,
   "suspicious_tld": false,
   "website_exists": true
  },
  "account_details": {
   "facebook": {
    "url": null,
    "name": null,
    "photo": null,
    "registered": false
   },
   "google": {
    "photo": null,
    "registered": false
   },
   "apple": {
    "registered": false
   },
   "twitter": {
    "registered": false
   },
   "microsoft": {
    "registered": false
   },
   "yahoo": {
    "registered": false
   },
   "ebay": {
    "registered": false
   },
   "gravatar": {
    "registered": false
   },
   "instagram": {
    "registered": false
   },
   "spotify": {
    "registered": false
   },
   "tumblr": {
    "registered": false
   },
   "linkedin": {
    "url": null,
    "name": null,
    "company": null,
    "title": null,
    "location": null,
    "website": null,
    "twitter": null,
    "photo": null,
    "registered": false
   },
   "weibo": {
    "registered": false
   },
   "github": {
    "registered": false
   },
   "vimeo": {
    "registered": false
   },
   "flickr": {
    "registered": false
   },
   "foursquare": {
    "registered": false
   },
   "lastfm": {
    "registered": false
   },
   "myspace": {
    "registered": false
   },
   "pinterest": {
    "registered": false
   },
   "skype": {
    "country": null,
    "city": null,
    "gender": null,
    "name": null,
    "id": null,
    "handle": null,
    "bio": null,
    "age": null,
    "language": null,
    "state": null,
    "photo": null,
    "registered": false
   }
  },
  "breach_details": {
   "breaches": null,
   "haveibeenpwned_listed": false,
   "number_of_breaches": null,
   "first_breach": null
  },
  "applied_rules": [
   {
    "id": "E100",
    "name": "Domain is disposable",
    "operation": "+",
    "score": 80
   }
  ],
  "history": {
   "hits": 1,
   "customer_hits": 1,
   "first_seen": 1576682328,
   "last_seen": 1576682328
  },
  "flags": [],
  "id": "a03fd029-4a9b-4010-97ee-8d1f5f5c0123"
 }
}

Email API v2.1

Request

The [email_address] in the request URI should include the full email address, for example: example@example.com

 

Optional query string parameters

Add the following parameters to the request URL for more control over the returned data, as seen in the example URL below.

GET

https://api.seon.io/SeonRestService/email-api/v2.1/[email_address]?include=history,flags,id&flags_timeframe_days=10&timeout=3000

Request Attributes

ValueRequired
include
historyno
include
flagsno
include
idno
flags_timeframe_days
[number of days]no
timeout
[number of milliseconds]no

HTTP Endpoint

GET

https://api.seon.io/SeonRestService/email-api/v2.1/[email_address]
PHP
Generic
Generic

Response

The endpoint returns JSON structured response.

JSON Attributes

Type
email
string
score
number
deliverable
boolean
domain_details
object
account_details
object
breach_details
object
applied_rules
array of object
history
object
flags
array of object
id
string
Response
{
 "data": {
  "account_details": {
   "airbnb": {
    "about": null,
    "created_at": null,
    "first_name": null,
    "identity_verified": null,
    "image": null,
    "location": null,
    "registered": false,
    "reviewee_count": null,
    "trips": null,
    "work": null
   },
   "amazon": {
    "registered": false
   },
   "apple": {
    "registered": false
   },
   "booking": {
    "registered": false
   },
   "discord": {
    "registered": false
   },
   "ebay": {
    "registered": false
   },
   "facebook": {
    "name": null,
    "photo": null,
    "registered": false,
    "url": null
   },
   "flickr": {
    "registered": false
   },
   "foursquare": {
    "registered": false
   },
   "github": {
    "registered": false
   },
   "google": {
    "photo": null,
    "registered": false
   },
   "gravatar": {
    "registered": false
   },
   "instagram": {
    "registered": false
   },
   "kakao": {
    "registered": false
   },
   "lastfm": {
    "registered": false
   },
   "linkedin": {
    "company": null,
    "location": null,
    "name": null,
    "photo": null,
    "registered": false,
    "title": null,
    "twitter": null,
    "url": null,
    "website": null
   },
   "microsoft": {
    "registered": false
   },
   "myspace": {
    "registered": false
   },
   "ok": {
    "age": null,
    "city": null,
    "date_joined": null,
    "registered": false
   },
   "pinterest": {
    "registered": false
   },
   "qzone": {
    "registered": false
   },
   "skype": {
    "age": null,
    "bio": null,
    "city": null,
    "country": null,
    "gender": null,
    "handle": null,
    "id": null,
    "language": null,
    "name": null,
    "photo": null,
    "registered": false,
    "state": null
   },
   "spotify": {
    "registered": false
   },
   "tumblr": {
    "registered": false
   },
   "twitter": {
    "registered": false
   },
   "vimeo": {
    "registered": false
   },
   "weibo": {
    "registered": false
   },
   "yahoo": {
    "registered": false
   }
  },
  "applied_rules": [
   {
    "id": "E100",
    "name": "Domain is disposable",
    "operation": "+",
    "score": 80
   }
  ],
  "breach_details": {
   "breaches": [],
   "first_breach": null,
   "haveibeenpwned_listed": false,
   "number_of_breaches": 0
  },
  "deliverable": false,
  "domain_details": {
   "accept_all": false,
   "created": "1995-08-14 04:00:00",
   "custom": false,
   "disposable": true,
   "dmarc_enforced": false,
   "domain": "example.com",
   "expires": null,
   "free": false,
   "registered": true,
   "registered_to": null,
   "registrar_name": null,
   "spf_strict": true,
   "suspicious_tld": false,
   "tld": ".com",
   "updated": "2019-08-14 07:04:41",
   "valid_mx": false,
   "website_exists": true
  },
  "email": "example@example.com",
  "flags": [
   {
    "date": 1573138956,
    "industry": "Online gambling operator",
    "note": "Blacklisted by API"
   }
  ],
  "history": {
   "customer_hits": 1,
   "first_seen": 1576682328,
   "hits": 1,
   "last_seen": 1576682328
  },
  "id": "a03fd029-4a9b-4010-97ee-8d1f5f5c0123",
  "score": 80
 },
 "error": {},
 "success": true
}

Phone API v1.0

Request

The [phone_number] in the request URI should include the full phone number, including country code. Cannot contain hyphens or spaces, the + sign is optional. The maximum length for the [phone_number]  is 19 characters. For example: 36301234567

 

Optional query string parameters

In order to request additional or receive less information, use following parameters in the request URL as in the example below:

GET

https://api.seon.io/SeonRestService/phone-api/v1.0/[phone_number]?include=history,flags,id&flags_timeframe_days=10&exclude=photo,last_seen&timeout=3000

JSON Attributes

ValueRequired
include
historyno
include
flagsno