Authentication#

All requests to the VPN Signal API require authentication using an API key.

API Key Authentication#

Every request to the /api/v1/check endpoint must include a valid API key in the Authorization header.

Header Format#

Authorization: Bearer YOUR_API_KEY

Example Request#

bash
curl -X POST https://vpnsignal.io/api/v1/check \
  -H "Authorization: Bearer sk_live_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"ip": "1.1.1.1"}'

Warning

Never expose your API key in client-side code. Always make API calls from your server.

Obtaining an API Key#

To get your API key:

  1. Log in to the dashboard
  2. Navigate to API Keys
  3. Click Create New Key
  4. Give your key a descriptive name (e.g., "Production Server" or "Development")
  5. Copy the key immediately - it won't be shown again

Key Properties#

PropertyDescription
NameFriendly name for the key
PrefixFirst 8 characters (e.g., sk_live_)
CreatedTimestamp of creation
Last UsedMost recent API call

Revoking Keys#

To revoke a compromised or unused key:

  1. Go to API Keys in the dashboard
  2. Click the delete icon next to the key
  3. Confirm revocation

Important

Revoking a key is immediate and irreversible. Any requests using that key will fail instantly.

Rate Limits#

API keys are subject to rate limits based on your plan:

PlanRequests/DayRequests/Second
Free1001
Starter10,00010
Pro100,00050
EnterpriseUnlimited100

When you exceed your limit, the API returns:

json
{
  "error": "rate_limit_exceeded",
  "message": "Daily request limit exceeded",
  "retry_after": 3600
}

Security Best Practices#

  1. Rotate keys regularly - Create new keys and revoke old ones periodically
  2. Use environment variables - Never hardcode keys in your codebase
  3. Restrict key scope - Use separate keys for development and production
  4. Monitor usage - Check the dashboard for unusual activity
  5. Server-side only - Never expose keys in browser JavaScript

Next Steps#