Bulk Email Creation Guide

By TempMailSpot Editorial Team••2 min read

When You Need Multiple Addresses

Some use cases require more than one temporary email at a time:

  • Load testing: Simulate multiple users signing up simultaneously.
  • QA automation: Test email flows across different user scenarios.
  • Data collection: Gather verification emails from multiple sources.
  • A/B testing: Compare email experiences across different addresses.

Manual Bulk Creation

For small batches (under 10), use browser tabs:

  1. Open TempMailSpot in multiple tabs (Ctrl+Click or Cmd+Click).
  2. Each tab receives a unique email address.
  3. Organize tabs by labeling browser tab groups.
  4. Monitor all inboxes simultaneously.

Automated Bulk Creation

For larger volumes, use the API:

// Generate 10 email addresses
const emails = await Promise.all(
  Array(10).fill(null).map(async () => {
    const res = await fetch('https://tempmailspot.com/api/v1/generate', { method: 'POST' });
    return res.json();
  })
);

// emails = [{ email: '...', token: '...' }, ...]

Managing Multiple Inboxes

Keep track of your addresses with a simple data structure:

const inboxes = new Map();

// Add new inbox
function addInbox(email, token) {
  inboxes.set(email, { token, messages: [], createdAt: Date.now() });
}

// Check all inboxes
async function checkAllInboxes() {
  for (const [email, data] of inboxes) {
    const messages = await fetchInbox(email, data.token);
    data.messages = messages;
  }
}

Rate Limit Considerations

When creating addresses in bulk:

  • Space requests 100-200ms apart to avoid rate limits.
  • Use connection pooling for efficient HTTP handling.
  • Implement retry logic with exponential backoff.
  • Monitor for 429 responses and pause accordingly.

Cleanup and Lifecycle

Temporary emails expire automatically, but manage your local state:

  • Remove expired addresses from your tracking system.
  • Log which addresses were used for which tests.
  • Clear completed test data to free memory.

Integration with Testing Frameworks

// Jest example
describe('User Registration', () => {
  let tempEmail, tempToken;

  beforeEach(async () => {
    const res = await fetch('https://tempmailspot.com/api/v1/generate', { method: 'POST' });
    ({ email: tempEmail, token: tempToken } = await res.json());
  });

  test('sends verification email', async () => {
    await registerUser(tempEmail);

    // Wait for email
    await new Promise(r => setTimeout(r, 5000));

    const inbox = await fetchInbox(tempEmail, tempToken);
    expect(inbox.messages).toHaveLength(1);
    expect(inbox.messages[0].subject).toContain('Verify');
  });
});

Featured privacy tools

Independent privacy tools that complement a disposable inbox.

1Password

password manager

The password manager to beat. Strong vault encryption, painless autofill, and easy family and team sharing.

Learn More

Bitwarden

password manager

Open-source, independently audited, and genuinely free for unlimited passwords across every device.

Learn More

Dashlane

password manager

Password manager with built-in breach and dark-web monitoring that flags logins exposed in known leaks.

Learn More

Recommended reading

Paperback titles by Dani Carl, on Amazon.