Guerrilla Mail API
Free disposable email API with no key: create a temporary inbox and read incoming messages programmatically. Useful for testing signup flows. Tested.
Endpoint tested and returned HTTP 200 on 20 Aug 2026
What is the Guerrilla Mail API?
Guerrilla Mail provides a free, key-free API for creating temporary email addresses and reading messages sent to them, intended for testing email flows without using a real mailbox.
Guerrilla Mail is one of the longest-running disposable email services, and its API lets you create an address, poll for messages and read their contents — the full loop needed to automate testing of signup and verification flows.
Session handling is the part to get right: the API returns a `sid_token` on first call which identifies your inbox session, and you must pass it on every subsequent request. Lose the token and you lose access to that inbox.
Quick facts
- Base URL
https://api.guerrillamail.com/ajax.php- Authentication
- No API key. A session token returned by the first call must be passed on subsequent requests.
- Rate limit
- No published hard limit; the service asks for reasonable use.
- Pricing
- Free.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the Guerrilla Mail API
Every request below was executed against the live API on 20 Aug 2026, and the response shown is the real body it returned — not an illustration.
1. Create a temporary email address
GET https://api.guerrillamail.com/ajax.php?f=get_email_address
curl 'https://api.guerrillamail.com/ajax.php?f=get_email_address'const res = await fetch("https://api.guerrillamail.com/ajax.php?f=get_email_address");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://api.guerrillamail.com/ajax.php?f=get_email_address", timeout=20)
res.raise_for_status()
print(res.json()){
"email_addr": "vpptfbui@guerrillamailblock.com",
"email_timestamp": 1787173878,
"alias": "yaxcu0+1z5tpwk9yph5k",
"sid_token": "p186qtpq43v8kdqcsapcma449b"
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
f | string | Required | Function name: get_email_address, check_email, fetch_email. get_email_address |
sid_token | string | Optional | Session token from the first call. abc123 |
seq | integer | Optional | Sequence number for polling new messages. 0 |
email_id | integer | Optional | Message id, for fetch_email. 12345 |
Response fields
email_addrstring- The generated temporary address.
email_timestampinteger- When the address was created.
aliasstring- Internal alias for the address.
sid_tokenstring- Session token — required on every subsequent request.
(check_email) listarray- Messages in the inbox with sender, subject and excerpt.
What you can build with the Guerrilla Mail API
- Automate end-to-end tests of signup verification emails
- Test password reset flows in CI
- Verify that transactional emails render correctly
- Create throwaway addresses for QA environments
Common errors and how to fix them
Empty inbox after creating an address
Mail takes a few seconds to arrive.
Fix: Poll check_email with an increasing seq rather than requesting once.
Session lost
The sid_token was not passed on subsequent requests.
Fix: Store the token from the first response and include it every time.
Address expires
Inboxes are temporary and recycled.
Fix: Never use these for anything you need to keep; addresses are shared and public.
Guerrilla Mail API — frequently asked questions
Is Guerrilla Mail's API free?
Yes, free with no API key. A session token from the first call must be passed on subsequent requests.
What is it useful for?
Automated testing of email flows — signup verification, password resets — where a test needs to actually receive and read an email.
Are the inboxes private?
No. Guerrilla Mail addresses are public and can be accessed by anyone who knows the address. Never send anything sensitive to them.
Should I use it to bypass verification elsewhere?
No, that breaks most services' terms of use. Its legitimate purpose is testing your own email flows.
Tools that pair with this API
Alternatives to Guerrilla Mail API
If Guerrilla Mail does not fit, these email apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.
| API | What it does | Auth | CORS | Last verified |
|---|---|---|---|---|
| Mail.tm | Free disposable email API with no key: create temporary inboxes programmatically and read incoming messages. Ideal for testing signup flows. Tested. | No key | No | 19 Aug 2026 |
| Mailcheck.ai | Free email validation API with no key: check format, MX records, domain age and whether an address is disposable, in a single request. Tested example. | No key | Yes | 19 Aug 2026 |
| AGPC Domain Check | Free email authentication API with no key: grades a domain's SPF, DKIM, DMARC and MX setup and lists the concrete gaps it found. Tested example included. | No key | Yes | 21 Aug 2026 |
| Temp Mail (temp-mail.io) Domains | Free read-only endpoint listing every domain temp-mail.io currently offers for throwaway inboxes, with forwarding limits. No key. Tested example included. | No key | No | 21 Aug 2026 |
| DeBounce Disposable Check | Free disposable-email check with no key: pass an address, get back a single boolean saying whether the domain is a throwaway provider. Tested example included. | No key | Yes | 21 Aug 2026 |
| Disposable Email Domains List | Free JSON array of roughly a hundred thousand disposable email domains, rebuilt daily from dozens of upstream sources. No key, permissive CORS. Tested example included. | No key | Yes | 21 Aug 2026 |
Guerrilla Mail is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 20 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.