Prevent Email & URL Phishing Attacks with AI-Powered Detection

Phishing attacks remain among the most significant cybersecurity threats, targeting employees and customers with fraudulent emails and deceptive URLs. Arya AI’s Email & URL Phishing Detection API helps organizations proactively identify and block phishing attempts with AI-driven analysis. Whether a suspicious email or an unverified URL, our API delivers real-time classification and threat confidence scores to protect your organization.

    Cutting-Edge Features    

Why Arya Phishing Detection API?

Email Phishing Detection

Analyzes sender reputation, subject lines, body content, and attachments to flag potential phishing emails.

URL Phishing Detection

Phishing link checker that evaluates domain reputation, SSL certificates, DNS records, and web security to detect malicious URLs.

Real-Time Protection

Scan and analyze emails and URLs within milliseconds to prevent security breaches.

High Accuracy

AI-powered detection ensures industry-leading precision in identifying phishing threats.

An AI Platform that you've
always wanted
With more than 80+ APIs, we stand out as the go-to-platform for developers, consistently delivering unparalleled success rates in driving critical decisions.
200 M+

Annual API Volume

95 %+

Accuracy Rate

720 K

Daily API Volume

< 5 Mins

Time to launch

    Effortless AI For Everyone    

More Reasons To Love Arya AI

Hassle-Free,

No Code Platform

Easy to adopt

& integrate

99.99%

API Success Rate

Reliable &

Secure

    Helpful Resources    

Learn More From Our Resources

Blog
Card image cap

14 March 2024

KYC Automation with AI [A Complete Guide]

The current KYC procedures have been resource-intensive, prone to errors...

Blog
Card image cap

22 May 2024

Document Workflow Automation [Challenges & Opportunities]

Every business and organization relies on documents and critical files...

Blog
Card image cap

6 June 2024

What is Intelligent Document Processing? - Everything You Need to Know

The amount of data handled by organisations worldwide has reached...

Please wait...

Select Input Type

Samples

Check out the API results using samples provided below

sample file

Input URL

Input Email Text

Uploaded File

Please enter your text and click on submit.

Please enter your {{input_type | removeUnderscore}} and click on submit.

Drag and drop files

Supports: TXT, EML

JSON
 
Copied

						

Documentation

HTTP Method: Post
Endpoint
{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}
Copied
API Token
{{tokenDisplay}}
Copied
API Token UAT
postman wrapper button
{{tokenUDisplay}}
Copied

Usage and Code Samples

curl --location --request POST '{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}' \
--header 'token: < your private token >' \
--header 'content-type: application/json' \
--data-raw '{
		"input_data": '< string >',
		"input_type": '< string >',
		"req_id": '< req id string >'
	     }'
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/javascript");
RequestBody body = RequestBody.create(mediaType, "{ "input_data": '< string >', "input_type": '< string >',"req_id": '< req id string >'  }");
Request request = new Request.Builder()
	.url("{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}")
	.method("POST", body)
	.addHeader("token", "< your private token >")
	.addHeader("content-type", "application/json")
	.build();
Response response = client.newCall(request).execute();
require "uri"
require "net/http"
url = URI("{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["token"] = "< your private token >"
request["content-type"] = "application/json"
request.body = "{"input_data": '< string >', "input_type": '< string >',"req_id": '< req id string >'  }"
response = https.request(request)
puts response.read_body
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
  curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
  curl_easy_setopt(curl, CURLOPT_URL, "{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}");
  curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
  curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
  struct curl_slist *headers = NULL;
  headers = curl_slist_append(headers, "token: < your private token >");
  headers = curl_slist_append(headers, "content-type: application/json");
  curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
  const char *data = "{"input_data": '< string >', "input_type": '< string >',"req_id": '< req id string >'  }";
  curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
  res = curl_easy_perform(curl);
}
curl_easy_cleanup(curl);
var request = require('request');
var options = {
  'method': 'POST',
  'url': '{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}',
  'headers': {
  'token': '< your private token >',
  'content-type':'application/json'
},
body: '{"input_data": '< string >', "input_type": '< string >',"req_id": '< req id string >'  }'
};
request(options, function (error, response) {
if (error) throw new Error(error);
  console.log(response.body);
});
var client = new RestClient("{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}");
ṣclient.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("token", "< your private token >");
request.AddHeader("content-type", "application/json");
var body = @"{" + "" +
@"    "input_type": '< string >'," + "" +
@"    "input_data": '< string >'," + "" +
@"    "req_id": < req id string >" + "" +
@"  }";
request.AddParameter("application/json", body,  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}');
$request->setMethod(HTTP_Request2::METHOD_POST);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
  'token' => '< your private token >',
  'content-type' => 'application/json'
));
$request->setBody('{"input_data": '< string >', "input_type": '< string >',"req_id": < req id string >  }');
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
  echo $response->getBody();
  }
  else {
  echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
  $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}
?>
import requests
url = "{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}"
payload = {"input_data": '< string >', "input_type": '< string >',"req_id": < req id string >  }
headers = {
  'token': '< your private token >',
  'content-type':'application/json'
}
response = requests.request("POST", url, json=payload, headers=headers)
print(response.text)

Request Parameters

Header parameters
Name Description
token String
Body parameters
Name Description
body {
  "req_id" : < string >,
  "input_type" : < string >,
  "input_data": < string >
}

Response Parameters

Status: 200 - API Request Successful
Body parameters
Name Description
body {
  "req_id" : < string >,
  "success" : < boolean >,
  "data": < dictonary >,
  "error_message" : < string >,
}

Field Details

Request Field Details
Fields Values/Description
req_id Unique request ID used for processing requests
input_type url / email_text / email_file
input_data - For url                  : vaild url
- For email_text    : vaild email text
- For email_file     : base64 of .eml or .txt file.
Response Field Details
Fields Values/Description
req_id Corresponding request id
success Success flag
error_message Error message if fail
data Dictionary of detected phishing data