Gates (beta)
Decision Endpoint
Use the Decision API to evaluate a Gate in real time.
Endpoint
POST /v0/gates/{gate_id}/decisions
Authentication
Include your API key in the Authorization
header:
Authorization: Bearer <YOUR_API_KEY>
Request body
Either email
or domain
is required. If both are provided it will return 400 both_email_and_domain_provided
.
{
"email": "[email protected]"
}
or
{
"domain": "example.com"
}
Example response
{
"id": "01K1SKM0ZDCEEES5QA9N3M5EPX",
"created_at": "2025-08-04T03:57:18+00:00",
"input": { "email": "[email protected]" },
"decision": {
"action": "block",
"matched_rule": {
"id": "01k1hxqrn2f7xfreq20y0p012d",
"name": "Block domains with no MX records",
"message": "This domain is invalid."
}
},
"signals": {
"email": {
"address": "[email protected]",
"normalized": "[email protected]",
"domain": "example.com",
"disposable": false,
"role_account": true
},
"domain": {
"name": "example.com",
"age_days": 10948,
"mx": false,
"mx_records": [],
"disposable": false,
"public_domain": false,
"relay_domain": false,
"spam": false
}
}
}
Error responses
400 missing_input
: Neitheremail
nordomain
provided400 invalid_email
: The email format is invalid400 invalid_domain
: The domain format is invalid401 unauthorized
: Invalid or missing API key403 pro_only
: Your account is not a Pro plan customer404 gate_not_found
: Unknowngate_id
429 rate_limit_exceeded
: Too many requests