Quickstart

Create a key and make your first check.

This guide takes you from a new account to your first signup decision. You need a SignupScore account and an API key.

Create an API key

Open Dashboard → API keys and create a key. Copy it when it appears because you will not be able to view the full key again.

Save the key as a server-side environment variable:

.env
SIGNUPSCORE_API_KEY=ss_your_api_key

Send a check

cURL
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@tempmail.com"}'

This example checks a disposable address. A successful request returns block and explains why:

Response
{
  "request_id": "01J...",
  "action": "block",
  "primary_reason": "DISPOSABLE",
  "reasons": ["DISPOSABLE"],
  "signals": {
    "disposable": true,
    "public_provider": false,
    "role_based": false,
    "suspicious": false,
    "privacy_relay": false,
    "alias_subaddress": false,
    "has_mx": true,
    "suggested_domain": null
  }
}

Use the action

Branch on action. Your product still decides what each action should look like for the person signing up.

TypeScript
switch (decision.action) {
  case 'block':
    return denySignup(decision.primary_reason);
  case 'review':
    return askForVerification();
  case 'allow':
    return createAccount();
}
  • allow: continue the signup.
  • review: ask for email verification, pause valuable access, or use your own review flow.
  • block: stop the signup and show a neutral message.

Next steps