Creates a new Fraud Check request
Send a Fraud Check request and get risk score value back.
Authorizations
Sección titulada «Authorizations »Request Body required
Sección titulada «Request Body required »The new fraud-check resource
Fraud check request
object
Service code defines the type of fraud query you make. Economy contains only a risk value, while Pro and Direct contain more details about the results, so you can make your own decision. Direct queries are also processed with priority. (see /me)
Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR).
Número de destinatario (internacional):
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (si la cuenta está registrada en Alemania) se convertirá en +491701234567
Si el número no está en formato E.164, el servicio lo convertirá basándose en la dirección del usuario. Para evitar problemas con la conversión, utilice preferentemente E.164.
Example
+14155552671Fraud check request address
object
Código del país
The city name of the address
The zip or post code of the address
The number of house
The street name
Responses
Sección titulada « Responses »Fraud-check resource created
Fraud check request
object
JSON-LD ID
JSON-LD type
UUID único de entidad
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
Fraud risk score from 0 (good) to 100 (bad)
Service code defines the type of fraud query you make. Economy contains only a risk value, while Pro and Direct contain more details about the results, so you can make your own decision. Direct queries are also processed with priority. (see /me)
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR).
Fraud check request phone number
object
JSON-LD ID
JSON-LD type
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
Número de destinatario (internacional):
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (si la cuenta está registrada en Alemania) se convertirá en +491701234567
Si el número no está en formato E.164, el servicio lo convertirá basándose en la dirección del usuario. Para evitar problemas con la conversión, utilice preferentemente E.164.
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Is phone number possible
Is phone number valid
Código del país
Phone number type
Fraud check request email
object
JSON-LD ID
JSON-LD type
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Is this email possible or not
Is the service used to anonymize the sender of the email
Fraud check request IP address
object
JSON-LD ID
JSON-LD type
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
IP address (IP v4/v6)
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Código del país
Código del país
The city name of the IP address
The zip or post code of the IP address
The latitude,longitude of the IP address (array)
The name of the ISP
Risk score for the ISP
If host is proxy:
- VPN – Anonymizing VPN services. These services offer users a publicly accessible VPN for the purpose of hiding their IP address.
- TOR – Tor Exit Nodes. The Tor Project is an open network used by those who wish to maintain anonymity.
- DCH – Hosting Provider, Data Centre or Content Delivery Network. Since hosting providers and data centres can serve to provide anonymity, the Anonymous IP database flags IP addresses associated with them.
- PUB – Public Proxies. These are services which make connection requests on a user’s behalf. Proxy server software can be configured by the administrator to listen on some specified port. These differ from VPNs in that the proxies usually have limited functions compare to VPNs.
- WEB – Web Proxies. These are web services which make web requests on a user’s behalf. These differ from VPNs or Public Proxies in that they are simple web-based proxies rather than operating at the IP address and other ports level.
- SES – Search Engine Robots. These are services which perform crawling or scraping to a website, such as, the search engine spider or bots engine.
The values can be one of either: “dialup”, “isdn”, “cable”, “dsl”, “fttx”, “wireless” or null
Was the request handled correctly?
Fraud check request address
object
JSON-LD ID
JSON-LD type
The request status
Código del país
The city name of the address
The zip or post code of the address
The number of house
The street name
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Precio
Example
{ "@context": { "hydra": "http://www.w3.org/ns/hydra/core#" }, "status_code": 0, "service_code": "economy", "request_phone": { "@context": { "hydra": "http://www.w3.org/ns/hydra/core#" }, "status_code": 0, "phone": "+14155552671", "region": "US" }, "request_email": { "@context": { "hydra": "http://www.w3.org/ns/hydra/core#" }, "status_code": 0 }, "request_ip": { "@context": { "hydra": "http://www.w3.org/ns/hydra/core#" }, "status_code": 0, "iso2": "US", "state": "US", "proxy_type": "VPN", "connection_type": "dialup" }, "request_address": { "@context": { "hydra": "http://www.w3.org/ns/hydra/core#" }, "iso2": "US" }}Fraud check request
object
UUID único de entidad
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
Fraud risk score from 0 (good) to 100 (bad)
Service code defines the type of fraud query you make. Economy contains only a risk value, while Pro and Direct contain more details about the results, so you can make your own decision. Direct queries are also processed with priority. (see /me)
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR).
Fraud check request phone number
object
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
Número de destinatario (internacional):
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (si la cuenta está registrada en Alemania) se convertirá en +491701234567
Si el número no está en formato E.164, el servicio lo convertirá basándose en la dirección del usuario. Para evitar problemas con la conversión, utilice preferentemente E.164.
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Is phone number possible
Is phone number valid
Código del país
Phone number type
Fraud check request email
object
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Is this email possible or not
Is the service used to anonymize the sender of the email
Fraud check request IP address
object
Request processing status codes:
- 0 – new request and not processed yet
- 5 – request’s processing in progress
- 10 – request’s processing completed successfully
- 20 - request’s processing completed with error: not enough credits
- 21 - request’s processing completed with error: invalid data
- 1000 - request’s processing completed with error: unexpected error
IP address (IP v4/v6)
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Código del país
Código del país
The city name of the IP address
The zip or post code of the IP address
The latitude,longitude of the IP address (array)
The name of the ISP
Risk score for the ISP
If host is proxy:
- VPN – Anonymizing VPN services. These services offer users a publicly accessible VPN for the purpose of hiding their IP address.
- TOR – Tor Exit Nodes. The Tor Project is an open network used by those who wish to maintain anonymity.
- DCH – Hosting Provider, Data Centre or Content Delivery Network. Since hosting providers and data centres can serve to provide anonymity, the Anonymous IP database flags IP addresses associated with them.
- PUB – Public Proxies. These are services which make connection requests on a user’s behalf. Proxy server software can be configured by the administrator to listen on some specified port. These differ from VPNs in that the proxies usually have limited functions compare to VPNs.
- WEB – Web Proxies. These are web services which make web requests on a user’s behalf. These differ from VPNs or Public Proxies in that they are simple web-based proxies rather than operating at the IP address and other ports level.
- SES – Search Engine Robots. These are services which perform crawling or scraping to a website, such as, the search engine spider or bots engine.
The values can be one of either: “dialup”, “isdn”, “cable”, “dsl”, “fttx”, “wireless” or null
Was the request handled correctly?
Fraud check request address
object
The request status
Código del país
The city name of the address
The zip or post code of the address
The number of house
The street name
Fecha en la que se añadió la entidad al sistema por el usuario
Fecha en que se modificó la entidad
Precio
Example
{ "status_code": 0, "service_code": "economy", "request_phone": { "status_code": 0, "phone": "+14155552671", "region": "US" }, "request_email": { "status_code": 0 }, "request_ip": { "status_code": 0, "iso2": "US", "state": "US", "proxy_type": "VPN", "connection_type": "dialup" }, "request_address": { "iso2": "US" }}Entrada no valida
El ID de cliente o la clave API no están activos o no son válidos.
There are not enough funds on your account!
La cuenta no está activada. Espere o póngase en contacto con el servicio de asistencia.
La solicitud estaba bien formada pero no se pudo procesar debido a errores semánticos
La dirección IP fue bloqueada temporalmente, ya que durante poco tiempo se enviaron muchas solicitudes con credenciales no válidas. Espere y pruebe más tarde.
Code Samples
#!/usr/bin/env bashcurl -X POST https://api.lox24.eu/fraud-checks \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \ -d '{ "service_code": "direct", "phone": "+49751234567", "email": "test@lox24.de", "ip": "1.1.1.1", "address": { "iso2": "DE", "city": "Berlin", "postcode": "13353", "street_number": "109", "street_name": "Seestraße" }
}'using Newtonsoft.Json;using Newtonsoft.Json.Linq;using System;using System.IO;using System.Net;using System.Text;
namespace Lox24.Api{ class client { static void Main() { string key = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"; string url = "https://api.lox24.eu/fraud-checks";
var data = new { service_code = "direct", phone = "+49751234567", email = "test@lox24.de", ip = "1.1.1.1", address = new { iso2 = "DE", city = "Berlin", postcode = "13353", street_number = "109", street_name = "Seestraße" } };
string postdata = JsonConvert.SerializeObject(data);
Console.WriteLine("Post data: {0}", postdata);
var httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.ReadWriteTimeout = 100000; httpWebRequest.ContentType = "application/json; charset=utf-8"; httpWebRequest.Accept = "application/json"; // or application/ld+json httpWebRequest.Method = "POST"; httpWebRequest.KeepAlive = true; httpWebRequest.Headers.Add("X-LOX24-AUTH-TOKEN", key); httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { streamWriter.Write(postdata); streamWriter.Flush(); streamWriter.Close(); }
try { using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse()) {
if(resp.StatusCode == HttpStatusCode.Created) { Console.WriteLine("Success:{0} {1}", (int)resp.StatusCode, "sms resource created"); } else { Console.WriteLine("Error: wrong response code {0} on create sms", (int)resp.StatusCode); }
Stream respStream = resp.GetResponseStream(); using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8)) { string responseText = sr.ReadToEnd(); Console.WriteLine("responseText : {0}", responseText); } }
} catch (System.Net.WebException ex) { var webResponse = ex.Response as System.Net.HttpWebResponse; Console.WriteLine("Error:{0}", webResponse.StatusCode);
switch (webResponse.StatusCode) { case HttpStatusCode.BadRequest: // 400 Console.WriteLine("Error:400 Invalid input"); break; case HttpStatusCode.Unauthorized: // 401 Console.WriteLine("Error:401 Client ID or API key isn't active or invalid!"); break; case HttpStatusCode.PaymentRequired: // 402 Console.WriteLine("Error:402 There are not enough funds on your account!"); break; case HttpStatusCode.Forbidden: // 403 Console.WriteLine("Error:403 Account isn't activated. Please wait or contact to support!"); break; case HttpStatusCode.NotFound: // 404 Console.WriteLine("Error:404 Resource not found"); break; case HttpStatusCode.InternalServerError: // 500 case HttpStatusCode.BadGateway: //502 case HttpStatusCode.ServiceUnavailable: // 503 case HttpStatusCode.GatewayTimeout: // 504 Console.WriteLine("System error! Please contact to LOX24 support!"); break; } } } }package main
import ( "bytes" "encoding/json" "fmt" "io/ioutil" "log" "net/http")
func main() {
const Method = "POST" const URL = "https://api.lox24.eu/fraud-checks" const Token = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"
address := map[string]interface{}{ "iso2": "DE", "city": "Berlin", "postcode": "13353", "street_number": "109", "street_name": "Seestraße", } payload := map[string]interface{}{ "service_code": "direct", "phone": "+49751234567", "email": "test@lox24.de", "ip": "1.1.1.1", "address": address, }
jsonPayload, _ := json.Marshal(payload)
client := &http.Client{}
req, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload)) if err != nil { log.Fatal(err) }
req.Header.Add("X-LOX24-AUTH-TOKEN", Token) req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req) if err != nil { log.Fatal(err) }
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body) if err != nil { log.Fatal(err) }
switch res.StatusCode { case 201: fmt.Println((string(body))) case 400: fmt.Println("Error: code = 400 - Invalid input") case 401: fmt.Println("Error: code = 401 - Client ID or API key isn't active or invalid!") case 403: fmt.Println("Error: code = 403 - Account isn't activated. Please wait or contact to support!") default: fmt.Printf("Error: code = %d\n", res.StatusCode) }}package eu.lox24.doc.fraud_checks;
import org.json.JSONObject;
import java.io.IOException;import java.net.HttpURLConnection;import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;import java.time.Duration;
public class PostFraudRequestCollection {
public static void main(String[] args) {
var key = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"; var url = "https://api.lox24.eu/fraud-checks";
var address = new JSONObject(); json.put("iso2", "DE"); json.put("city", "Berlin"); json.put("postcode", "13353"); json.put("street_number", "109"); json.put("street_name", "Seestraße");
var json = new JSONObject(); json.put("service_code", "direct"); json.put("phone", "+49751234567"); json.put("email", "test@lox24.de"); json.put("ip", "1.1.1.1"); json.put("address", address);
var postData = json.toString();
System.out.println("Post data: " + postData);
var httpRequest = HttpRequest.newBuilder(URI.create(url)) .timeout(Duration.ofMillis(100000)) .setHeader("Content-Type", "application/json; charset=utf-8") .setHeader("Accept", "application/json") // or application/ld+json .setHeader("X-LOX24-AUTH-TOKEN", key) .POST(HttpRequest.BodyPublishers.ofString(postData)) .build();
var client = HttpClient.newBuilder() .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default .build();
try { var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());
if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) { System.out.println("Success:" + httpResponse.statusCode() + " " + "request created"); System.out.println("Response text : \n" + httpResponse.body());
} else {
System.out.println("Error: wrong response code " + httpResponse.statusCode() + " on create request");
switch (httpResponse.statusCode()) {
case HttpURLConnection.HTTP_BAD_REQUEST: // 400 System.out.println("Error:400 Invalid input"); break; case HttpURLConnection.HTTP_UNAUTHORIZED: // 401 System.out.println("Error:401 Client ID or API key isn't active or invalid!"); break; case HttpURLConnection.HTTP_PAYMENT_REQUIRED: // 402 System.out.println("Error:402 There are not enough funds on your account!"); break; case HttpURLConnection.HTTP_FORBIDDEN: // 403 System.out.println("Error:403 Account isn't activated. Please wait or contact to support!"); break; case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500 case HttpURLConnection.HTTP_BAD_GATEWAY: //502 case HttpURLConnection.HTTP_UNAVAILABLE: // 503 case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504 System.out.println("System error! Please contact to LOX24 support!"); break; }
}
} catch (IOException | InterruptedException e) { e.printStackTrace(); } }}const token = "7b7c6063bab885ce79814b5ff1ee6885";
let postObj = { "service_code": "direct", "phone": "+49751234567", "email": "test@lox24.de", "ip": "1.1.1.1", "address": { "iso2": "DE", "city": "Berlin", "postcode": "13353", "street_number": "109", "street_name": "Seestraße" }};
let postdata = JSON.stringify(postObj);
const https = require('https');const options = { hostname: 'api.lox24.eu', path: '/fraud-checks', method: 'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json', 'Content-Length': postdata.length, 'X-LOX24-AUTH-TOKEN': token }}
const req = https.request(options, res => { if (res.statusCode == 201) { console.log("Success: code = 201 - request resource created"); res.on('data', d => { process.stdout.write(d) }) } else if (res.statusCode == 400) console.log("Error: code = 400 - Invalid input"); else if (res.statusCode == 401) console.log("Error: code = 401 - Client ID or API key isn't active or invalid!"); else if (res.statusCode == 402) console.log("Error: code = 402 - There are not enough funds on your account!"); else if (res.statusCode == 403) console.log("Error: code = 403 - Account isn't activated. Please wait or contact to support!");})
req.on('error', error => { console.error(error)})req.write(postdata);req.end();<?php
$uri = 'https://api.lox24.eu/fraud-checks';
$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';
$body = [ 'service_code' => 'direct', 'phone' => '+49751234567', 'email' => 'test@lox24.de', 'ip' => '1.1.1.1', 'address' => [ 'iso2' => 'DE', 'city' => 'Berlin', 'postcode' => '13353', 'street_number' => '109', 'street_name' => 'Seestraße', ],];
if (!$body = json_encode($body)) { die('JSON encoding error!');}
$curl = curl_init();
curl_setopt_array($curl, [ CURLOPT_POST => true, CURLOPT_URL => $uri, CURLOPT_POSTFIELDS => $body, CURLOPT_HTTPHEADER => [ "X-LOX24-AUTH-TOKEN: $token", 'Accept: application/json', // or application/ld+json 'Content-Type: application/json', ], CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 20, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,]);
$response = curl_exec($curl);$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);curl_close($curl);
$data = json_decode($response, JSON_OBJECT_AS_ARRAY);
if (201 === $code) { echo 'Success: response data = ' . var_export($data, true);} else { echo "Error: code = $code, data = " . var_export($data, true);}import jsonimport requests
token = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"
url = 'https://api.lox24.eu/fraud-checks'
data = { 'service_code': 'direct', 'phone': '+49751234567', 'email': 'test@lox24.de', 'ip': '1.1.1.1', 'address': { 'iso2': 'DE', 'city': 'Berlin', 'postcode': '13353', 'street_number': '109', 'street_name': 'Seestraße' }}
headers = { 'Accept': 'application/json', 'Content-Type': 'application/json', 'X-LOX24-AUTH-TOKEN': token,}
print("Post data : ", json.dumps(data, indent=4))
try: # timeout is 100 seconds, the payload is automatically converted to json format res = requests.post(url, headers=headers, json=data, timeout=100) if res.status_code != 201: # Created print("Error: Wrong response code on create sms") res.raise_for_status() else: print(f'Success: code = {res.status_code} - Fraud request resource created') print("Response: ", json.dumps(res.json(), indent=4))
except requests.HTTPError: if res.status_code == 400: print("Error:400 Invalid input") elif res.status_code == 401: print("Error: code = 401 - Client ID or API key isn't active or invalid!") elif res.status_code == 402: print("Error:402 There are not enough funds on your account!") elif res.status_code == 403: print("Error: code = 403 - Account isn't activated. Please wait or contact to support!") elif res.status_code == 404: print("Error:404 Resource not found") elif res.status_code in (500, 502, 503, 504): print("System error! Please contact to LOX24 support!") else: print(f"Error: code {res.status_code}") print(json.dumps(res.json(), indent=4))