Temp Mail API Documentation - Boomlify
Complete API reference for temporary email service integration
POST/api/v1/emails/create
Crear una nueva dirección de correo temporal Ahora admite el parámetro opcional custom_username para crear correos con direcciones personalizadas.
Parameters:
- custom_username (query, optional): Nombre de usuario personalizado opcional para la dirección de correo. Puede contener letras, números, puntos, guiones y guiones bajos. Debe tener entre 3 y 30 caracteres. Si se omite, se generará un nombre de usuario aleatorio. - Example:
john.doe - time (query, optional): Tiempo de expiración - Example:
permanent - domain (query, optional): Dominio personalizado opcional para la dirección de correo. Debe ser un dominio verificado en tu cuenta (usa el endpoint custom_domains para verificar). Si no se especifica, se usará un dominio público aleatorio. - Example:
mail.yourdomain.com - create_as_dashboard (query, optional): 💎 Función Premium - Establece en "true" para crear un correo estilo panel almacenado en la base de datos con expiración fija de 2 meses en lugar de un correo API basado en tiempo. Omite o establece en "false" para correos basados en tiempo (por defecto). Los correos del panel cuestan 15 créditos. Los usuarios del nivel gratuito recibirán un error 403. - Example:
true
Error Responses:
- INVALID_USERNAME (400): La validación del nombre de usuario personalizado falló. Debe tener entre 3 y 30 caracteres solo con caracteres válidos.
- EMAIL_IN_USE (409): El nombre de usuario personalizado ya está tomado. Elige un nombre de usuario diferente.
- DOMAIN_NOT_FOUND (400): El dominio especificado no existe o no está verificado. Verifícalo primero en tu cuenta.
- DOMAIN_NOT_VERIFIED (400): El dominio existe pero aún no está verificado. Completa primero la verificación del dominio.
- DAILY_LIMIT_EXCEEDED (429): Has alcanzado tu límite diario para este tipo de correo
Auth Required: Yes | Rate Limited: Yes | Group: Quickstart
GET/api/v1/emails
Listar todos tus correos temporales activos
Parameters:
- include_expired (query, optional): Incluir correos expirados - Example:
true - permanent_only (query, optional): Mostrar solo tus buzones permanentes guardados. Cuesta 2 créditos por solicitud. - Example:
true - include_permanent (query, optional): Incluir tus buzones permanentes guardados junto con los recientes. Cuesta 2 créditos por solicitud. - Example:
true - limit (query, optional): Número de correos a devolver - Example:
50
Error Responses:
- INSUFFICIENT_CREDITS (402): Devuelto cuando se intenta listar buzones permanentes guardados pero la cuenta carece de créditos.
Auth Required: Yes | Rate Limited: No | Group: Emails
GET/api/v1/emails/{id}
Obtener detalles de un correo específico
Parameters:
- id (path, required): ID del correo - Example:
550e8400-e29b-41d4-a716-446655440000
Error Responses:
- EMAIL_NOT_FOUND (404): El ID del correo es inválido o el correo ha expirado
Auth Required: Yes | Rate Limited: No | Group: Emails
GET/api/v1/emails/{id}/messages
Obtener mensajes para un correo específico
Parameters:
- id (path, required): ID del correo - Example:
550e8400-e29b-41d4-a716-446655440000 - limit (query, optional): Número de mensajes a devolver - Example:
50 - offset (query, optional): Número de mensajes a omitir - Example:
0
Error Responses:
- EMAIL_NOT_FOUND (404): El ID del correo es inválido o el correo ha expirado
- INVALID_LIMIT (400): El parámetro límite está fuera del rango válido
Auth Required: Yes | Rate Limited: No | Group: Emails
DELETE/api/v1/emails/{id}
Eliminar un correo por ID. Admite tanto correos API basados en tiempo (en memoria, eliminados inmediatamente) como correos del panel (persistentes en base de datos, eliminados inmediatamente). Devuelve 404 si el correo no se encuentra o ya fue eliminado.
Parameters:
- id (path, required): ID del correo (formato UUID). Puede ser un ID de correo API basado en tiempo o un ID de correo del panel creado con create_as_dashboard=true - Example:
550e8400-e29b-41d4-a716-446655440000
Error Responses:
- EMAIL_NOT_FOUND (404): El correo no existe o ya ha sido eliminado
Auth Required: Yes | Rate Limited: No | Group: Emails
GET/api/v1/emails
💎 Función Premium - Listar todos los correos, incluyendo correos creados en el panel. Este endpoint fusiona correos creados por API con tus correos del panel en una sola respuesta. Cuesta 2 créditos por solicitud. Requiere plan Basic o superior.
Parameters:
- include_dashboard (query, required): Debe establecerse en "true" para acceder a los correos del panel. Esto activa la función premium y cobra 2 créditos. - Example:
true - include_expired (query, optional): Incluir correos expirados en la respuesta (correos API y correos del panel) - Example:
false - limit (query, optional): Número máximo de correos a devolver (máx: 100) - Example:
50
Error Responses:
- TIER_RESTRICTED (403): Esta es una función premium. Los usuarios del nivel gratuito no pueden acceder a correos del panel a través de la API.
- INSUFFICIENT_CREDITS (402): Esta operación cuesta 2 créditos. Por favor, agrega más créditos a tu cuenta.
Auth Required: Yes | Rate Limited: Yes | Group: Dashboard
GET/api/v1/emails/{id}
💎 Función Premium - Obtener información detallada sobre un correo específico del panel. Si el correo no se encuentra en el almacenamiento API, busca en tus correos del panel. Cuesta 1 crédito por solicitud. Requiere plan Basic o superior.
Parameters:
- id (path, required): ID del correo del panel (formato UUID) - Copia esto desde tu panel o desde el endpoint list-dashboard-emails - Example:
550e8400-e29b-41d4-a716-446655440000 - include_dashboard (query, required): Debe ser "true" para buscar correos del panel. Cobra 1 crédito. - Example:
true
Error Responses:
- TIER_RESTRICTED (403): El acceso a correos del panel requiere un plan de pago
- INSUFFICIENT_CREDITS (402): Esta operación cuesta 1 crédito
- EMAIL_NOT_FOUND (404): El correo solicitado no fue encontrado o ha expirado
Auth Required: Yes | Rate Limited: Yes | Group: Dashboard
GET/api/v1/emails/{id}/messages
💎 Función Premium - Recuperar todos los mensajes recibidos para un correo del panel con soporte de paginación. Usa caché para tiempos de respuesta rápidos. Cuesta 1 crédito por solicitud. Requiere plan Basic o superior.
Parameters:
- id (path, required): ID del correo del panel - El UUID del correo para el cual deseas obtener mensajes - Example:
550e8400-e29b-41d4-a716-446655440000 - include_dashboard (query, required): Debe ser "true" para acceder a los mensajes del correo del panel. Cobra 1 crédito. - Example:
true - limit (query, optional): Número máximo de mensajes a devolver por página (máx: 100) - Example:
20 - offset (query, optional): Número de mensajes a omitir para paginación (ej: offset=20 con limit=20 obtiene la página 2) - Example:
0
Error Responses:
- TIER_RESTRICTED (403): El acceso a correos del panel requiere un plan de pago
- INSUFFICIENT_CREDITS (402): Esta operación cuesta 1 crédito
- EMAIL_NOT_FOUND (404): El correo solicitado no fue encontrado o ha expirado
Auth Required: Yes | Rate Limited: Yes | Group: Dashboard
GET/api/v1/emails/{id}/telegram-forwarding
Premium Feature - Get Telegram forwarding status for a specific owned mailbox. Supports dashboard mailboxes and permanent API mailboxes. Ownership is checked through the existing cached mailbox lookup paths, and forwarding state is returned from the forwarding cache. Costs 2 credits per request. Requires Basic plan or higher.
Parameters:
- id (path, required): Mailbox ID - Use a dashboard mailbox ID or a permanent API mailbox ID whose Telegram forwarding status you want to inspect - Example:
550e8400-e29b-41d4-a716-446655440000 - include_dashboard (query, required): Must be set to "true" to access Telegram forwarding mailbox status. Charges 2 credits. - Example:
true
Error Responses:
- TIER_RESTRICTED (403): This is a premium feature. Free tier users cannot access dashboard email forwarding via API.
- INSUFFICIENT_CREDITS (402): This operation costs 2 credits. Please add more credits to your account.
- EMAIL_NOT_FOUND (404): The requested mailbox was not found, is unsupported, or has expired
Auth Required: Yes | Rate Limited: Yes | Group: Dashboard
POST/api/v1/emails/{id}/telegram-forwarding
Premium Feature - Enable or disable Telegram forwarding for an owned mailbox. Supports dashboard mailboxes and permanent API mailboxes, while reusing the existing forwarding cache and write-through persistence path. Costs 2 credits per request. Requires Basic plan or higher and an active Telegram binding.
Parameters:
- id (path, required): Mailbox ID - Use a dashboard mailbox ID or a permanent API mailbox ID whose Telegram forwarding you want to update - Example:
550e8400-e29b-41d4-a716-446655440000 - include_dashboard (query, required): Must be set to "true" to update Telegram mailbox forwarding. Charges 2 credits. - Example:
true - is_enabled (body, required): Boolean body field. Set true to enable forwarding or false to disable forwarding. - Example:
true
Error Responses:
- TIER_RESTRICTED (403): This is a premium feature. Free tier users cannot update dashboard email forwarding via API.
- INSUFFICIENT_CREDITS (402): This operation costs 2 credits. Please add more credits to your account.
- NO_TELEGRAM_BINDING (400): Forwarding cannot be enabled until the account has an active verified Telegram binding.
- FORWARDING_LIMIT_EXCEEDED (403): The user has reached the plan limit for active Telegram forwardings.
- EMAIL_NOT_FOUND (404): The requested mailbox was not found, is unsupported, or has expired
Auth Required: Yes | Rate Limited: Yes | Group: Dashboard
POST/api/v1/emails/telegram-forwarding/bulk-enable
Premium Feature - Bulk enable Telegram forwarding for multiple owned mailboxes in one API request. Supports dashboard mailboxes and permanent API mailboxes, reuses the existing per-email forwarding enable flow, and respects the active-forwarding limit. Costs 2 credits per request. Requires Basic plan or higher and an active Telegram binding.
Parameters:
- include_dashboard (query, required): Must be set to "true" to bulk enable Telegram mailbox forwarding. Charges 2 credits. - Example:
true - email_ids (body, required): Body field containing a non-empty array of owned mailbox IDs. In the test form, you can enter a single mailbox ID or a JSON array. - Example:
["550e8400-e29b-41d4-a716-446655440000"]
Error Responses:
- TIER_RESTRICTED (403): This is a premium feature. Free tier users cannot bulk enable dashboard email forwarding via API.
- INSUFFICIENT_CREDITS (402): This operation costs 2 credits total per bulk request.
- NO_TELEGRAM_BINDING (400): Forwarding cannot be enabled until the account has an active verified Telegram binding.
- FORWARDING_LIMIT_EXCEEDED (403): The user has reached the plan limit for active Telegram forwardings.
- EMAIL_NOT_FOUND (404): No matching forwardable mailboxes were found.
Auth Required: Yes | Rate Limited: Yes | Group: Dashboard
POST/api/v1/emails/create
💎 Función Premium - Crear un nuevo correo con nombre de usuario personalizado opcional. Los correos del panel (create_as_dashboard=true) se almacenan en la base de datos con expiración fija de 2 meses y cuestan 15 créditos. Los correos API basados en tiempo admiten opciones de tiempo personalizadas (10min, 1hour, 1day, permanent). Ambos admiten custom_username. Requiere plan Basic o superior.
Parameters:
- create_as_dashboard (query, optional): Establece en "true" para crear un correo estilo panel almacenado en la base de datos con expiración fija de 2 meses. Si se omite, crea un correo API basado en tiempo en memoria. Ambos admiten custom_username. - Example:
true - custom_username (query, optional): Nombre de usuario personalizado opcional para la dirección de correo. Puede contener letras, números, puntos, guiones y guiones bajos. Debe tener entre 3 y 30 caracteres. Si se omite, se generará un nombre de usuario aleatorio. - Example:
john.doe - domain (query, optional): Nombre de dominio personalizado opcional para la dirección de correo. Si no se especifica, se usará un dominio público aleatorio. - Example:
mail.yourdomain.com
Error Responses:
- TIER_RESTRICTED (403): La creación de correos del panel requiere un plan de pago
- INSUFFICIENT_CREDITS (402): Esta operación cuesta 15 créditos
- INVALID_USERNAME (400): La validación del nombre de usuario personalizado falló. Debe tener entre 3 y 30 caracteres solo con caracteres válidos.
- EMAIL_IN_USE (409): El nombre de usuario personalizado ya está tomado. Elige un nombre de usuario diferente.
- INVALID_TIME_PARAMETER (400): El tiempo debe ser uno de: 10min, 1hour, 1day, permanent
Auth Required: Yes | Rate Limited: Yes | Group: Dashboard
GET/api/v1/account/usage
Obtener tus estadísticas de uso de API
Error Responses:
- UNAUTHORIZED (401): La clave API es requerida y debe ser válida
Auth Required: Yes | Rate Limited: No | Group: Account
GET/api/v1/account/info
Obtener información de tu cuenta
Error Responses:
- UNAUTHORIZED (401): La clave API es requerida y debe ser válida
Auth Required: Yes | Rate Limited: No | Group: Account
GET/api/v1/account/credits
Obtener información detallada del balance de créditos y uso
Error Responses:
- UNAUTHORIZED (401): La clave API es requerida y debe ser válida
Auth Required: Yes | Rate Limited: No | Group: Account