Getting Started

Using Test Mode

Use test API keys and predefined scenarios to build and test your integration without affecting real data.

3 min read Last updated March 13, 2026

Test mode lets you build your integration against predictable, deterministic responses without consuming your monthly validation quota.

Test vs live keys

Test key Live key
Prefix fidro_test_... fidro_live_...
Data Predefined scenarios Real validation
Quota Does not count Counts toward monthly limit
Use for Development, CI/CD, staging Production

Predefined test scenarios

Use these email addresses with your test key to simulate specific outcomes:

Email Risk score Recommendation
safe@test.fidro.io 5 allow
risky@test.fidro.io 55 review
dangerous@test.fidro.io 85 block
disposable@test.fidro.io 72 block
vpn@test.fidro.io 45 review

These test emails always return the same scores, making them ideal for automated tests and CI pipelines.

Test IPs

IP Scenario
203.0.113.1 Clean residential IP
198.51.100.1 VPN/proxy detected
192.0.2.1 Tor exit node

Writing integration tests

// PHPUnit example
public function test_blocks_high_risk_signups()
{
    // Use test API key in your test environment
    $response = $this->post('/register', [
        'email' => 'dangerous@test.fidro.io',
        'password' => 'SecurePassword123',
    ]);

    $response->assertSessionHasErrors('email');
    $this->assertDatabaseMissing('users', [
        'email' => 'dangerous@test.fidro.io',
    ]);
}

Switching to live

When you're ready to go to production, swap your test key for a live key in your environment variables. No code changes needed — the API behaves identically, just with real data.