## Autenticación Aprende cómo obtener y usar claves API ## Obtener clave API Antes de usar la API, necesitas obtener una clave API. Puedes crear tu clave API en la página de Perfil. ### Usar clave API Incluye tu clave API en los encabezados de solicitud para todas las solicitudes API: [Code (bash)] X-API-Key: Bearer TU_CLAVE_API [/Code] ### Notas importantes - Mantén tu clave API segura y no la expongas en lugares públicos - La clave API tiene los mismos permisos que tu cuenta, úsala con cuidado - Si tu clave API se ve comprometida, regenera inmediatamente una nueva en tu página de Perfil --- ## API de Correo Crear y gestionar correos ## Obtener dominios disponibles Obtener todos los dominios de correo disponibles en el sistema. ### Solicitud [Code (bash)] GET /api/email/domains [/Code] ### Ejemplo de solicitud [Code (bash)] curl https://chat-tempmail.com/api/email/domains \ -H "X-API-Key: TU_CLAVE_API" [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- domains | array | Lista de dominios de correo disponibles ### Ejemplo de respuesta [Code (json)] { "domains": [ "chat-tempmail.com", "example.com", "other-domain.com" ] } [/Code] ## Crear correo Crear una nueva dirección de correo temporal. ### Solicitud [Code (bash)] POST /api/emails/generate [/Code] ### Parámetros de solicitud Parámetro | Tipo | Requerido | Descripción ----------- | ------ | ---------- | ------------- name | string | Sí | Prefijo del correo expiryTime | number | Sí | Tiempo de expiración (milisegundos)
Valores disponibles:
- 3600000 (1 hora)
- 86400000 (1 día)
- 259200000 (3 días)
- 0 (permanente) domain | string | Sí | Dominio del correo ### Ejemplo de solicitud [Code (bash)] curl -X POST https://chat-tempmail.com/api/emails/generate \ -H "X-API-Key: TU_CLAVE_API" \ -H "Content-Type: application/json" \ -d '{ "name": "test", "expiryTime": 3600000, "domain": "chat-tempmail.com" }' [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- id | string | Identificador único del correo (formato UUID) email | string | Dirección de correo creada (dirección de correo completa) ### Ejemplo de respuesta [Code (json)] { "id": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "email": "test@chat-tempmail.com" } [/Code] ## Obtener lista de correos Obtener todas las direcciones de correo bajo tu cuenta. ### Solicitud [Code (bash)] GET /api/emails [/Code] ### Parámetros de solicitud Parámetro | Tipo | Requerido | Descripción ----------- | ------ | ---------- | ------------- cursor | string | No | Cursor de paginación, obtén nextCursor de la respuesta anterior ### Ejemplo de solicitud [Code (bash)] curl https://chat-tempmail.com/api/emails \ -H "X-API-Key: TU_CLAVE_API" [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- emails | array | Lista de correos (máximo 20 elementos por solicitud) nextCursor | string | Cursor de la siguiente página para obtener más datos total | number | Número total de correos ### Objetos de correo en el array emails Parámetro | Tipo | Descripción ----------- | ------ | ------------- id | string | Identificador único del correo (formato UUID) address | string | Dirección de correo (dirección de correo completa) userId | string | ID del usuario propietario del correo (formato UUID) createdAt | string | Tiempo de creación del correo (formato ISO 8601) expiresAt | string | Tiempo de expiración del correo (formato ISO 8601) ### Ejemplo de respuesta [Code (json)] { "emails": [ { "id": "e4ff5c14-8a72-48c5-bd13-b5347fb944da", "address": "6Tg3VT@chat-tempmail.com", "userId": "bd08008d-e944-44b2-a0d0-67f2b528ee6d", "createdAt": "2025-04-21T08:30:45.084Z", "expiresAt": "2025-04-22T08:30:45.084Z" } ], "nextCursor": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "total": 20 } [/Code] ## Eliminar correo Eliminar la dirección de correo especificada. ### Solicitud [Code (bash)] DELETE /api/emails/{emailId} [/Code] ### Parámetros de solicitud Parámetro | Tipo | Requerido | Descripción ----------- | ------ | ---------- | ------------- emailId | string | Sí | ID del correo (parámetro de ruta) ### Ejemplo de solicitud [Code (bash)] curl -X DELETE "https://chat-tempmail.com/api/emails/99fadf12-6826-490a-9c6c-b0b528d4a8e0" \ -H "X-API-Key: TU_CLAVE_API" [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- success | boolean | Si la eliminación fue exitosa ### Ejemplo de respuesta [Code (json)] { "success": true } [/Code] --- ## API de Mensajes Gestionar mensajes ## Obtener lista de mensajes Obtener todos los mensajes en la dirección de correo especificada. ### Solicitud [Code (bash)] GET /api/emails/{emailId} [/Code] ### Parámetros de solicitud Parámetro | Tipo | Requerido | Descripción ----------- | ------ | ---------- | ------------- emailId | string | Sí | ID del correo (parámetro de ruta) cursor | string | No | Cursor de paginación (parámetro de consulta), obtén nextCursor de la respuesta anterior ### Ejemplo de solicitud [Code (bash)] curl "https://chat-tempmail.com/api/emails/c2c4f894-c672-4d5b-a918-abca95aff1f7" \ -H "X-API-Key: TU_CLAVE_API" [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- messages | array | Lista de mensajes (máximo 20 elementos por solicitud) nextCursor | string | Cursor de la siguiente página para obtener más datos total | number | Número total de mensajes ### Objetos de mensaje en el array messages Parámetro | Tipo | Descripción ----------- | ------ | ------------- id | string | Identificador único del mensaje (formato UUID) from_address | string | Dirección del remitente subject | string | Asunto del mensaje received_at | number | Tiempo de recepción (timestamp Unix en milisegundos) ### Ejemplo de respuesta [Code (json)] { "messages": [ { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Mensaje de prueba 1 - xJOK2h", "received_at": 1745224245084 } ], "nextCursor": "eyJ0aW1lc3RhbXAiOjE3NDUxNTU4NDUwODQsImlkIjoiNjNmNzFlODYtOGE1NC00ZDQ0LTk5ZWYtN2QzNTBhMTQ4M2JiIn0=", "total": 50 } [/Code] ## Obtener detalles del mensaje Obtener el contenido detallado del mensaje especificado. ### Solicitud [Code (bash)] GET /api/emails/{emailId}/{messageId} [/Code] ### Parámetros de solicitud Parámetro | Tipo | Requerido | Descripción ----------- | ------ | ---------- | ------------- emailId | string | Sí | ID del correo (parámetro de ruta) messageId | string | Sí | ID del mensaje (parámetro de ruta) ### Ejemplo de solicitud [Code (bash)] curl "https://chat-tempmail.com/api/emails/99fadf12-6826-490a-9c6c-b0b528d4a8e0/fd13a8df-1465-4fbc-a612-ca7311c31ff2" \ -H "X-API-Key: TU_CLAVE_API" [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- message | object | Detalles del mensaje ### Campos del objeto message Parámetro | Tipo | Descripción ----------- | ------ | ------------- id | string | Identificador único del mensaje (formato UUID) from_address | string | Dirección del remitente subject | string | Asunto del mensaje content | string | Contenido de texto plano del mensaje html | string | Contenido HTML del mensaje (puede estar vacío) received_at | number | Tiempo de recepción (timestamp Unix en milisegundos) ### Ejemplo de respuesta [Code (json)] { "message": { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Mensaje de prueba 1 - xJOK2h", "content": "Mensaje de prueba 1\n\nEste es el contenido del mensaje de prueba 1.\n\nSaludos cordiales,\nRemitente 1", "html": "
\n

Mensaje de prueba 1

\n
", "received_at": 1745224245084 } } [/Code] ## Eliminar mensaje Eliminar el mensaje especificado. ### Solicitud [Code (bash)] DELETE /api/emails/{emailId}/{messageId} [/Code] ### Parámetros de solicitud Parámetro | Tipo | Requerido | Descripción ----------- | ------ | ---------- | ------------- emailId | string | Sí | ID del correo (parámetro de ruta) messageId | string | Sí | ID del mensaje (parámetro de ruta) ### Ejemplo de solicitud [Code (bash)] curl -X DELETE "https://chat-tempmail.com/api/emails/76d91ae5-822a-4fdd-8701-9de038ec86d7/20e77445-b0c3-4e8b-aa29-762ea423ac15" \ -H "X-API-Key: TU_CLAVE_API" [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- success | boolean | Si la eliminación fue exitosa ### Ejemplo de respuesta [Code (json)] { "success": true } [/Code] --- ## Push de Webhook Configurar webhook para recibir notificaciones push de mensajes ## Obtener configuración de webhook Obtener la información de configuración actual del webhook. ### Solicitud [Code (bash)] GET /api/webhook [/Code] ### Ejemplo de solicitud [Code (bash)] curl https://chat-tempmail.com/api/webhook \ -H "X-API-Key: TU_CLAVE_API" [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- url | string | Dirección URL del webhook (puede ser una cadena vacía) enabled | boolean | Si el webhook está habilitado ### Ejemplo de respuesta [Code (json)] { "url": "https://tu-servidor.com/webhook", "enabled": true } [/Code] ## Configurar webhook Establecer o actualizar la configuración del webhook. ### Solicitud [Code (bash)] POST /api/webhook [/Code] ### Parámetros de solicitud Parámetro | Tipo | Requerido | Descripción ----------- | ------ | ---------- | ------------- url | string | Sí | Dirección URL del webhook (debe ser una URL HTTP/HTTPS válida) enabled | boolean | Sí | Si habilitar el webhook ### Ejemplo de solicitud [Code (bash)] curl -X POST https://chat-tempmail.com/api/webhook \ -H "X-API-Key: TU_CLAVE_API" \ -H "Content-Type: application/json" \ -d '{ "url": "https://tu-servidor.com/webhook", "enabled": true }' [/Code] ### Parámetros de respuesta Parámetro | Tipo | Descripción ----------- | ------ | ------------- success | boolean | Si la configuración fue exitosa ### Ejemplo de respuesta [Code (json)] { "success": true } [/Code] ## Eventos de webhook Cuando llega un nuevo mensaje, el sistema enviará una solicitud POST a tu URL configurada. ### Formato de datos recibidos Encabezados de solicitud: - Content-Type: application/json - X-Webhook-Event: new_message ### Datos push del webhook Parámetro | Tipo | Descripción ----------- | ------ | ------------- emailId | string | ID del correo que recibió el mensaje (formato UUID) messageId | string | ID del nuevo mensaje (formato UUID) fromAddress | string | Dirección del remitente subject | string | Asunto del mensaje content | string | Contenido de texto plano del mensaje html | string | Contenido HTML del mensaje (puede estar vacío) receivedAt | string | Tiempo de recepción del mensaje (formato ISO 8601) toAddress | string | Dirección de correo que recibió el mensaje ### Ejemplo de datos push [Code (json)] { "emailId": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "messageId": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "fromAddress": "sender@example.com", "subject": "Mensaje de prueba", "content": "Contenido de texto plano del mensaje", "html": "
Contenido HTML del mensaje
", "receivedAt": "2025-01-21T08:30:45.084Z", "toAddress": "test@chat-tempmail.com" } [/Code] ### Requisitos de respuesta Tu servidor debe devolver un código de estado 2xx para indicar recepción exitosa. Si se devuelve un código de estado no 2xx, el sistema puede reintentar el envío. Respuesta recomendada: [Code (json)] HTTP/1.1 200 OK Content-Type: application/json { "received": true } [/Code] ### Notas importantes - Asegúrate de que tu URL de webhook sea accesible - Se recomienda verificar la integridad de los datos push en el lado de tu servidor - El sistema enviará pushes de webhook inmediatamente cuando lleguen mensajes - Si los pushes fallan, el sistema puede reintentar, así que asegúrate de que tu interfaz sea idempotente ---