Home
Verisoul
Verisoul Email Intelligence Webhooks
Verisoul Email Intelligence Webhooks
Version 1.0.0
Asynchronous results for the Verisoul Email Intelligence API are delivered to your configured endpoint as signed webhooks. When an email submitted via POST /email (or the batch endpoint) finishes analysis, Verisoul POSTs an `email.intelligence.completed` event. Deliveries are signed with HMAC-SHA256 in the `x-signature` header (see webhook signature verification). Provenance: generated 2026-07-21, method searched, source https://docs.verisoul.ai/email-intelligence/webhook-reference and https://docs.verisoul.ai/email-intelligence/webhook-signature-verification
View Spec
View on GitHub
Company Fraud Detection Identity Verification Fake Account Detection Device Fingerprinting Email Intelligence Bot Detection KYC Trust and Safety Risk Scoring AsyncAPI Events Webhooks
Channels
emailIntelligenceCompleted
Messages
✉
EmailIntelligenceCompleted
Email Intelligence Completed
Servers
https
consumer
Your webhook receiver endpoint (configured in the Verisoul dashboard).
AsyncAPI Specification
asyncapi: 3.0.0
info:
title: Verisoul Email Intelligence Webhooks
version: 1.0.0
description: >-
Asynchronous results for the Verisoul Email Intelligence API are delivered
to your configured endpoint as signed webhooks. When an email submitted via
POST /email (or the batch endpoint) finishes analysis, Verisoul POSTs an
`email.intelligence.completed` event. Deliveries are signed with HMAC-SHA256
in the `x-signature` header (see webhook signature verification).
Provenance: generated 2026-07-21, method searched, source
https://docs.verisoul.ai/email-intelligence/webhook-reference and
https://docs.verisoul.ai/email-intelligence/webhook-signature-verification
license:
name: Documentation © Verisoul
url: https://docs.verisoul.ai/email-intelligence/webhook-reference
defaultContentType: application/json
servers:
consumer:
host: your-app.example.com
protocol: https
description: Your webhook receiver endpoint (configured in the Verisoul dashboard).
channels:
emailIntelligenceCompleted:
address: /webhook
messages:
emailIntelligenceCompleted:
$ref: '#/components/messages/EmailIntelligenceCompleted'
operations:
receiveEmailIntelligenceCompleted:
action: receive
channel:
$ref: '#/channels/emailIntelligenceCompleted'
summary: Receive the result of an asynchronous email intelligence analysis.
bindings:
http:
method: POST
components:
messages:
EmailIntelligenceCompleted:
name: email.intelligence.completed
title: Email Intelligence Completed
contentType: application/json
headers:
type: object
properties:
x-event-type:
type: string
const: email.intelligence.completed
x-event-id:
type: string
description: Unique delivery/event id.
x-signature:
type: string
description: "HMAC-SHA256 signature: t=<unix>,h=content-type x-event-id x-event-type,v1=<hex>"
payload:
$ref: '#/components/schemas/EmailIntelligencePayload'
schemas:
EmailIntelligencePayload:
type: object
required: [request_id, project_id, event_type, status]
properties:
request_id: {type: string}
batch_id: {type: [string, 'null']}
project_id: {type: string}
event_type: {type: string, const: email.intelligence.completed}
created_at: {type: string, format: date-time}
completed_at: {type: string, format: date-time}
status: {type: string, enum: [success, error]}
data:
type: [object, 'null']
properties:
input:
type: object
properties:
email: {type: string}
claims: {type: object}
result:
type: object
properties:
decision:
type: string
enum: [high_trust, trusted, moderate, risky, high_risk]
risk_score: {type: number, description: -1 (high trust) to 1 (high risk)}
trust_signals: {type: array, items: {type: string}}
risk_signals: {type: array, items: {type: string}}
domain:
type: object
properties:
risk_score: {type: number}
fqdn: {type: string}
apex: {type: string}
type: {type: string}
age_years: {type: number}
country: {type: string}
email:
type: object
properties:
username: {type: string}
normalized: {type: string}
first_seen_at: {type: string}
age_years: {type: number}
seen_countries: {type: array, items: {type: string}}
deliverability:
type: object
properties:
risk_score: {type: number}
send_recommendation: {type: string, enum: [send, send_with_caution, do_not_send]}
breach_intelligence:
type: object
properties:
breach_count: {type: integer}
trusted_breach_count: {type: integer}
breach_list: {type: array, items: {type: object}}
identity_intelligence:
type: object
description: Present only when identity_intelligence:true was submitted.
properties:
match_risk_score: {type: number}
online_accounts_count: {type: integer}
online_accounts: {type: array, items: {type: string}}
connected_names: {type: array, items: {type: string}}
connected_phones: {type: array, items: {type: string}}
claim_matches:
type: object
properties:
name: {type: string, enum: [match, partial_match, no_match, skipped]}
phone: {type: string, enum: [match, partial_match, no_match, skipped]}
country: {type: string, enum: [match, partial_match, no_match, skipped]}
error:
type: [object, 'null']
properties:
email: {type: string}
code: {type: string}
message: {type: string}
Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for asyncapi
4 MCP tools reach this
find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/verisoul-email-asyncapi"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no email required.
A second provider on the same verified email joins the account you already have.