API Documentation

Create and manage temporary email addresses programmatically.

Introduction

The fake.legal API lets you create disposable email addresses and retrieve incoming messages. All endpoints return JSON.

Base URL:

https://fake.legal/api

Authentication

No authentication required. The API is free and open.

Rate Limits

Limit Value
Requests per minute 30
Inboxes per hour (per IP) 10

Need higher limits? Email info@leqit.de with your use case.

Create Inbox

GET /api/inbox/new

Creates a new inbox with a randomly generated email address.

Query Parameters

Name Type Description
domain string Optional. One of: fake.legal, imgui.de, pulsewebmenu.de, gooncraft.de

Response

{
  "success": true,
  "address": "turbo.falcon123@fake.legal",
  "expiresIn": "3 minutes"
}

Custom Inbox

POST /api/inbox/custom

Creates an inbox with a custom username.

Request Body

{
  "username": "myname",
  "domain": "fake.legal"
}

Response

{
  "success": true,
  "address": "myname@fake.legal"
}

Get Emails

GET /api/inbox/{address}

Returns all emails for the specified inbox.

Response

{
  "success": true,
  "exists": true,
  "emails": [
    {
      "id": "abc-123",
      "from": "noreply@example.com",
      "subject": "Your verification code",
      "date": "2026-01-12T12:00:00Z"
    }
  ]
}

Get Email

GET /api/email/{id}

Returns the full content of a single email.

Response

{
  "success": true,
  "email": {
    "id": "abc-123",
    "from": "noreply@example.com",
    "subject": "Your code",
    "text": "Your code is 123456",
    "html": "<html>...</html>"
  }
}

Stats

GET /api/stats

Returns service statistics and available domains.

Response

{
  "activeInboxes": 42,
  "totalReceived": 12345,
  "domains": ["fake.legal", "imgui.de", ...]
}

Examples

cURL

# Create inbox
curl https://fake.legal/api/inbox/new

# Get emails
curl https://fake.legal/api/inbox/test@fake.legal

Python

import requests

# Create inbox
r = requests.get("https://fake.legal/api/inbox/new")
email = r.json()["address"]

# Check for emails
r = requests.get(f"https://fake.legal/api/inbox/{email}")
emails = r.json()["emails"]

JavaScript

// Create inbox
const res = await fetch("https://fake.legal/api/inbox/new");
const { address } = await res.json();

// Get emails
const inbox = await fetch(`https://fake.legal/api/inbox/${address}`);
const { emails } = await inbox.json();

Support

Questions? Email info@leqit.de