# Recibir tu primer email entrante

> Añade el registro MX de entrada, envía un mensaje de prueba a tu subdominio de entrada, encuéntralo en el panel y procésalo con un webhook email.received y con la API.

Este inicio rápido configura un dominio para recibir emails, para que tu aplicación pueda gestionar respuestas, solicitudes de soporte o mensajes reenviados. Añadirás un registro DNS, enviarás un mensaje de prueba y después lo recibirás con un webhook y obtendrás su contenido completo con la API.

## Antes de empezar

- Un dominio de envío verificado, como `acme.com`. El email entrante solo funciona en dominios verificados en tu espacio de trabajo. Consulta [Añadir un dominio](/es/docs/domains/add-a-domain/).
- Créditos en el espacio de trabajo. Cada email recibido cuesta 1 crédito.

## Cómo funcionan las direcciones de entrada

Emailit recibe el correo en un subdominio de tu dominio de envío, por defecto `inbound`. Sirve cualquier dirección de ese subdominio, así que tanto `support@inbound.acme.com` como `reply-4821@inbound.acme.com` llegan al mismo espacio de trabajo. Los registros MX de tu dominio principal, por ejemplo los de Google Workspace o Microsoft 365, no cambian.

## Añadir el registro MX de entrada

1. **Abre el dominio.** Ve a **Email API → Domains** y abre `acme.com`. El registro MX de `inbound.acme.com` aparece con los demás registros DNS. Es opcional, así que el dominio sigue verificado sin él.

2. **Añade el registro en tu proveedor de DNS.**

   | Tipo | Nombre | Valor | Prioridad |
   | --- | --- | --- | --- |
   | MX | `inbound.acme.com` | `inbound.emailitmail.com` | 10 |

   Algunos proveedores de DNS solo quieren `inbound` en el campo del nombre. Otros quieren el nombre completo.

3. **Comprueba los DNS.** Selecciona **Check DNS** en la página del dominio y espera a que el registro de entrada muestre **OK**. Los cambios de DNS suelen tardar unos minutos, pero pueden tardar hasta 48 horas.

Para recibir en otro subdominio, como `replies.acme.com`, define `inbound_key` como `replies` al [crear](/es/docs/api-reference/domains/create/) o [actualizar](/es/docs/api-reference/domains/update/) el dominio con la API y, después, publica el registro MX para ese nombre. El panel muestra el subdominio de entrada, pero no permite cambiarlo.

## Enviar un email de prueba

Desde tu buzón personal, envía un email a cualquier dirección del subdominio de entrada, por ejemplo `hello@inbound.acme.com`.

Ve a **Email API → Emails** y abre la pestaña **Incoming**. El mensaje aparece con el estado **received**. Ábrelo para ver el remitente, las cabeceras, el contenido y los adjuntos.

Si no llega, comprueba que el registro MX muestra **OK** y que el dominio está verificado. Si al espacio de trabajo no le quedan créditos, Emailit rechaza el mensaje con un error temporal y el servidor del remitente vuelve a intentarlo más tarde.

## Recibir avisos con un webhook

Para procesar el email entrante en tu aplicación, suscríbete al evento `email.received`.

1. **Crea el webhook.** Ve a **Email API → Webhooks**, selecciona **Add webhook** e introduce un nombre y tu endpoint HTTPS, por ejemplo `https://acme.com/webhooks/emailit`. Copia el secreto del webhook. Lo necesitas para verificar las firmas.

2. **Elige el evento.** Un webhook nuevo recibe todos los eventos. Abre la pestaña **Settings** del webhook y selecciona solo `email.received`, o mantén todos los eventos y fíltralos en tu código.

3. **Envía otro email de prueba** a `hello@inbound.acme.com`.

Emailit envía un `POST` firmado a tu endpoint. El cuerpo es un array JSON, porque una petición puede llevar hasta 100 eventos:

```json
[
  {
    "event_id": "evt_2pXb7Lw9QmKc4RtN8yVd3Hs",
    "type": "email.received",
    "data": {
      "object": {
        "id": "em_2pXb7Kq4NvL8mWc3RtB9yZd",
        "object": "email",
        "from": "ada@example.com",
        "to": "hello@inbound.acme.com",
        "subject": "Question about my order",
        "created_at": "2026-10-01T09:30:12.418Z"
      }
    }
  }
]
```

El evento incluye el remitente, el destinatario y el asunto, pero no el cuerpo. Verifica la cabecera `X-Emailit-Signature` antes de fiarte de la petición. Consulta [Firma de las peticiones](/es/docs/webhooks/request-signature/).

## Obtener el email completo

Usa el `id` del evento para obtener el mensaje con una clave de API **Full Access**:

```bash
curl https://api.emailit.com/v2/emails/em_2pXb7Kq4NvL8mWc3RtB9yZd \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
```

La respuesta incluye las cabeceras analizadas, el cuerpo de texto y HTML, y los adjuntos:

```json
{
  "object": "email",
  "id": "em_2pXb7Kq4NvL8mWc3RtB9yZd",
  "type": "inbound",
  "from": "ada@example.com",
  "to": "hello@inbound.acme.com",
  "subject": "Question about my order",
  "status": "received",
  "headers": { "...": "..." },
  "body": {
    "text": "Hi, where is my order #1042?",
    "html": "<p>Hi, where is my order #1042?</p>"
  },
  "attachments": []
}
```

Para obtener en su lugar el mensaje original, llama a [`GET /emails/{id}/raw`](/es/docs/api-reference/emails/raw/). El contenido de los mensajes se conserva durante el periodo de retención de tu plan, así que obtenlo poco después de que llegue el evento. Consulta [Retención de datos](/es/docs/data-retention/).

## Precios

Cada email recibido cuesta 1 crédito, lo mismo que enviar uno. Consulta [Créditos](/es/docs/billing/credits/).

## Próximos pasos

  - [Procesar el email entrante con webhooks](/es/docs/inbound/process-with-webhooks/): Enruta las respuestas, analiza los adjuntos y relaciona los hilos.
  - [Reenviar con automatizaciones](/es/docs/inbound/forward-with-automations/): Reenvía el email recibido a un buzón sin escribir código.
  - [Configurar el email entrante](/es/docs/inbound/set-up/): Subdominios personalizados y DNS en detalle.
  - [email.received](/es/docs/webhooks/events/email/received/): La referencia completa del evento.

---
Fuente: https://emailit.com/es/docs/quickstart/inbound/
