Check an email or domain
Send a check and understand the request and response fields.
Send one email address or domain to POST /api/v1/check. A completed check uses one credit and returns an allow, review, or block action.
Request
curl -s -X POST 'https://signupscore.com/api/v1/check' \
-H 'Authorization: Bearer ss_your_api_key' \
-H 'Content-Type: application/json' \
-d '{"input":"name@example.com"}'Every language makes the same request. Pick yours from the dropdown.
Response
{
"request_id": "01J...",
"action": "block",
"primary_reason": "DISPOSABLE",
"signals": {
"disposable": true,
"public_provider": false,
"role_based": false,
"suspicious": false,
"privacy_relay": false,
"dynamic_dns": false,
"has_mx": true,
"suggested_domain": null,
"normalized_email": "name@tempmail.com",
"mailbox_alias": false,
"has_spf": true,
"has_dmarc": false
}
}This example blocks a known disposable provider. Your integration usually needs only action. Keep primary_reason when you want to explain or investigate the result.
Request fields
| Field | Type | Required | Meaning |
|---|---|---|---|
input | string | Yes | Email address or domain to check. |
check_mx | boolean | No | Check MX records. Defaults to true. |
Examples:
| Input | Checks performed |
|---|---|
name@example.com | Email and domain checks. |
example.com | Domain checks only. |
name@example.com, check_mx: false | Email and domain checks without looking up mail servers. |
Do not send fields that are not listed above.
Response fields
| Field | Meaning |
|---|---|
request_id | ID for finding the same decision in logs or support. |
action | allow, review, or block. |
primary_reason | Main reason for the action, or OK. |
signals | Email and domain facts you can use for specific exceptions. |
The same request_id is also returned in the X-Request-ID response header.