apyhub
Back
▣ COMMUNICATIONS · SECURITY & PRIVACY

Temporary and Disposable Emails API

What it does

The Temp Mail API creates temporary, disposable email inboxes on demand. Choose how long each inbox lives (10 minutes, 1 hour, 1 day, or permanent), optionally use your own domain, and read incoming messages as JSON, including sender, subject, and HTML or plain-text body. Delete an inbox as soon as you're done with it.

Use it to test sign-up and verification emails, run automated QA flows, and keep throwaway registrations out of real mailboxes. Each call costs 25 atoms, and you can start on ApyHub's free tier: 5 API calls per day and 3,000 atoms per month, with no card required.

▣ ENDPOINT 01 / 03
POST
Create Temporary Email
https://api.eu.apyhub.com/boomlify/temporary-and-disposable-emails-api

QUICKSTART

GUIDE

Quickstart

Create a temporary email address with the default 10-minute lifetime.

curl -X POST "https://api.eu.apyhub.com/boomlify/temporary-and-disposable-emails-api?time=10min" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a JSON object with top-level success and message fields, a meta object with a timestamp, and a data object containing the created email details.

  • success is a boolean indicating whether the request succeeded.
  • message is a status string.
  • meta.timestamp is an ISO 8601 date-time string.
  • data is an object that includes email, meta, and success.
{
  "success": true,
  "message": "Request processed successfully",
  "meta": {
    "timestamp": "2023-10-27T10:00:00Z"
  },
  "data": {
    "success": true,
    "meta": {
      "tier": "10min",
      "user_id": "user_123",
      "request_time": "2023-10-27T10:00:00Z"
    },
    "email": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "domain": "example.com",
      "address": "[email protected]",
      "time_tier": "10min",
      "created_at": "2023-10-27T10:00:00Z",
      "expires_at": "2023-10-27T10:10:00Z",
      "time_remaining": {
        "minutes": 10,
        "seconds": 0,
        "total_ms": 600000,
        "human_readable": "10 minutes"
      },
      "is_custom_domain": false
    }
  }
}
TRY ITLIVE · 25 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Creates a temporary email address. You can control the email lifetime with the time query parameter and optionally provide a domain; the response returns the generated email data inside a JSON object.

Query Parameter(s)

AttributeTypeMandatoryDescription
timeENUMNoLifetime of the temporary email. Allowed values: 10min, 1hour, 1day, permanent. Default: 10min.
domainStringNoDomain to use for the temporary email address.

Response

Returns a JSON object with top-level data and success fields. The data field is an object containing meta and email objects; success is a boolean indicating whether the request was successful. The schema also defines top-level message and meta fields in the wrapper object.

ParameterTypeMandatoryDescription
dataObjectNoResponse payload object. Contains meta and email objects.
data.metaObjectNoMetadata for the created temporary email. Contains tier, user_id, and request_time.
data.meta.tierStringNoThe tier associated with the request.
data.meta.user_idStringNoThe user identifier.
data.meta.request_timeStringNoRequest timestamp in date-time format.
data.emailObjectNoTemporary email details. Contains id, domain, address, time_tier, created_at, expires_at, time_remaining, and is_custom_domain.
data.email.idStringNoEmail identifier in UUID format.
data.email.domainStringNoEmail domain.
data.email.addressStringNoFull email address.
data.email.time_tierStringNoTime tier used for the email.
data.email.created_atStringNoCreation timestamp in date-time format.
data.email.expires_atStringNoExpiration timestamp in date-time format.
data.email.time_remainingObjectNoRemaining time for the email. Contains minutes, seconds, total_ms, and human_readable.
data.email.time_remaining.minutesIntegerNoRemaining minutes.
data.email.time_remaining.secondsIntegerNoRemaining seconds.
data.email.time_remaining.total_msIntegerNoRemaining time in milliseconds.
data.email.time_remaining.human_readableStringNoHuman-readable remaining time.
data.email.is_custom_domainBooleanNoIndicates whether a custom domain was used.
data.successBooleanNoIndicates whether the operation succeeded.
metaObjectNoAdditional metadata about the request. Contains timestamp.
meta.timestampStringNoRequest timestamp in date-time format.
messageStringNoDescriptive response message.
successBooleanNoIndicates if the request was successful.
▣ ENDPOINT 02 / 03
GET
Retrieve Email Messages
https://api.eu.apyhub.com/boomlify/temporary-and-disposable-emails-api/messages/:id

QUICKSTART

GUIDE

Quickstart

Fetch a single message by its UUID.

curl -X GET "https://api.eu.apyhub.com/boomlify/temporary-and-disposable-emails-api/messages/:id" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a JSON object with data, meta, message, and success fields. The data field is an object containing the message response payload, meta.timestamp is a date-time string, message is a status message, and success is a boolean.

{
  "data": {},
  "meta": {
    "timestamp": "2023-10-27T10:00:00Z"
  },
  "message": "Request processed successfully",
  "success": true
}
TRY ITLIVE · 25 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Retrieves email messages for the email address identified by the path id. The response returns a JSON object with a data object containing the email details, messages, and pagination information.

Path Parameter(s)

AttributeTypeMandatoryDescription
idStringYesEmail identifier in UUID format.

Query Parameter(s)

AttributeTypeMandatoryDescription
limitIntegerNoMaximum number of messages to return. Default: 25. Minimum: 1. Maximum: 100.
offsetIntegerNoNumber of messages to skip before returning results. Default: 0.

Response

Returns a JSON object with top-level data object containing meta, email, success, messages, and pagination fields. It also includes top-level meta (object), message (string), and success (boolean) fields as declared by the schema.

ParameterTypeMandatoryDescription
dataObjectNoResponse payload object. Includes meta, email, success, messages, and pagination.
metaObjectNoAdditional metadata about the request. Includes timestamp in date-time format.
messageStringNoA descriptive message about the response.
successBooleanNoIndicates if the request was successful.

Notes

The response schema is composed with allOf, so data, meta, message, and success may appear at the top level, while the detailed payload is also defined under data. The messages array items include id, is_read, is_spam, subject, body_html, body_text, from_name, from_email, and received_at; pagination includes limit, total, offset, and has_more.

▣ ENDPOINT 03 / 03
DELETE
Delete Temporary Email
https://api.eu.apyhub.com/boomlify/temporary-and-disposable-emails-api/:id

QUICKSTART

GUIDE

Quickstart

Delete a temporary email by its UUID id.

curl -X DELETE "https://api.eu.apyhub.com/boomlify/temporary-and-disposable-emails-api/:id" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a JSON object with data, meta, message, and success fields. The data field is an object containing response details such as meta, message, and success.

{
  "data": {
    "meta": {
      "user_id": "user_123",
      "email_id": "550e8400-e29b-41d4-a716-446655440000",
      "deleted_at": "2023-10-27T10:00:00Z"
    },
    "message": "Request processed successfully",
    "success": true
  },
  "meta": {
    "timestamp": "2023-10-27T10:00:00Z"
  },
  "message": "Request processed successfully",
  "success": true
}
TRY ITLIVE · 25 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Deletes a temporary email identified by its UUID path parameter. The response returns a JSON object with a data object, plus top-level message, success, and meta fields.

Path Parameter(s)

AttributeTypeMandatoryDescription
idStringYesTemporary email identifier in UUID format.

Response

Returns a JSON object with top-level data, meta, message, and success fields. The data field is an object containing meta, message, and success; meta includes user_id, email_id, and deleted_at.

ParameterTypeMandatoryDescription
dataObjectNoResponse data object. Contains meta, message, and success.
data.metaObjectNoContains deletion metadata: user_id, email_id, and deleted_at.
data.meta.user_idStringNoUser identifier.
data.meta.email_idStringNoDeleted email identifier.
data.meta.deleted_atStringNoDeletion timestamp in date-time format.
data.messageStringNoResponse message.
data.successBooleanNoIndicates whether the operation was successful.
metaObjectNoAdditional metadata about the request.
meta.timestampStringNoRequest timestamp in date-time format.
messageStringNoDescriptive response message.
successBooleanNoIndicates if the request was successful.
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.