API de Unspam.

Ejecuta desde tu propio código las mismas comprobaciones que hace el panel: tests antispam, inbox placement, previews de clientes, informes DMARC y tests automáticos recurrentes. 37 endpoints en 7 áreas, un token bearer, JSON de entrada y JSON de salida.

POST /ext/v2/spam-check Documento OpenAPI
curl -X POST https://api.unspam.email/ext/v2/spam-check \
  -H "Authorization: Bearer $UNSPAM_TOKEN"

# devuelve el id del test y la dirección a la que enviar
{
  "id": "2Bl8rzTFN6VV",
  "inbox_address": "test-xyz@check.unspam.email"
}
# envía tu correo a esa dirección y luego lee el resultado
curl https://api.unspam.email/ext/v2/spam-check/2Bl8rzTFN6VV \
  -H "Authorization: Bearer $UNSPAM_TOKEN"

# respuesta (200)
{
  "score": 8.4,
  "spf": "pass",
  "dkim": "pass",
  "dmarc": "pass"
}

Qué cubre la API.

37 endpoints en 7 grupos, ordenados como los agrupa la propia API. La referencia completa, con cada parámetro y cada código de respuesta, es el documento OpenAPI.

Client Previews

4 llamadas

  • GET /client-preview-devices
  • GET /client-previews
  • POST /client-previews
  • GET /client-previews/{id}

DMARC Reports

8 llamadas

  • GET /dmarc/domains
  • POST /dmarc/domains
  • GET /dmarc/domains/{id}
  • GET /dmarc/domains/{id}/dns-instructions
  • GET /dmarc/domains/{id}/reports
  • POST /dmarc/domains/{id}/verify
  • GET /dmarc/reports/{id}
  • GET /dmarc/reports/{id}/records

Inbox Placement

4 llamadas

  • GET /inbox-placement
  • POST /inbox-placement
  • GET /inbox-placement/mailboxes
  • GET /inbox-placement/{id}

Automatic Testing: Senders

6 llamadas

  • GET /scheduled-test-senders
  • POST /scheduled-test-senders
  • GET /scheduled-test-senders/{id}
  • PUT /scheduled-test-senders/{id}
  • DELETE /scheduled-test-senders/{id}
  • POST /scheduled-test-senders/{id}/test-connection

Automatic Testing: Tests

9 llamadas

  • GET /scheduled-tests
  • POST /scheduled-tests
  • GET /scheduled-tests/{id}
  • PUT /scheduled-tests/{id}
  • PATCH /scheduled-tests/{id}
  • DELETE /scheduled-tests/{id}
  • POST /scheduled-tests/{id}/dispatch-now
  • GET /scheduled-tests/{id}/runs
  • GET /scheduled-tests/{id}/runs/{runId}

Spam Check

5 llamadas

  • GET /spam-check
  • POST /spam-check
  • GET /spam-check/{id}
  • GET /spam-check/{id}/heatmap
  • GET /spam-check/{id}/screenshots

Account

1 llamada

  • GET /status

Qué puedes construir con ella.

Prueba antes de publicar

Lanza un test antispam desde un paso de despliegue o un job de CI, envía el mensaje que tu aplicación envía de verdad y lee la puntuación antes de que salga la campaña.

Tests de bandeja recurrentes

Conecta un remitente una vez y deja que los tests programados se ejecuten con su propia cadencia, para que el inbox placement se compruebe según un calendario y no solo cuando alguien se acuerda.

Previews en clientes reales

Pide previews de cliente sobre un test que ya lanzaste y recibe una entrada por dispositivo, cada una capturada en un cliente real y no simulada a partir del código.

Resultados en JSON

Puntuaciones, resultados de autenticación, heatmaps y capturas llegan en JSON, así que acaban en tu propio panel o en tus propias alertas.

Informes DMARC de tu dominio

Registra un dominio, publica el registro TXT que devuelve la API y lee los informes agregados en JSON: quién envía en nombre de tu dominio y si esos mensajes pasan DMARC.

Úsala desde un asistente de IA

Los mismos trabajos están disponibles por MCP para Claude, ChatGPT, Cursor y otros clientes MCP, así que un asistente puede lanzar un test y leer el resultado sin escribir código cliente.

Dónde encaja.

Cualquier cosa que ya hable HTTP puede ejecutar estas comprobaciones. Estos son los sitios donde la API suele acabar y los equipos que más partido le sacan.

Apps y pipelines a los que se conecta.

CI y pipelines de despliegue

Lanza un test antispam como paso del build y haz que el despliegue falle si la puntuación baja, para que una edición de plantilla no pueda costarte la bandeja de entrada sin que nadie se dé cuenta.

Tu stack de envío

El test recibe un mensaje real por tu ruta real: SES, Postmark, SendGrid, Mailgun o tu propio SMTP, lo que ya uses para enviar tu email.

Dashboards internos

Las puntuaciones, el inbox placement y los resultados de autenticación llegan en JSON, así que aterrizan en el dashboard que tu equipo ya consulta.

Alertas y guardias

Consulta las ejecuciones de los tests programados desde un cron job y avisa a quien esté de guardia cuando el inbox placement caiga, antes de que lo haga la tasa de apertura.

Productos que envían email

Integra las comprobaciones en tu propio producto con el plan Custom: un editor de emails o una plataforma de agencia puede ofrecer tests antispam bajo su propia marca.

Asistentes de IA

A través de MCP, esas mismas tareas son herramientas que un asistente puede invocar, así que una comprobación puede ejecutarse en mitad de una conversación sin escribir código de cliente.

Quién le saca más partido.

Cómo funciona el acceso.

Un token por integración, un conjunto pequeño de códigos de estado y los mismos trabajos disponibles para clientes de IA por MCP.

01

Tokens que revocas de uno en uno

Cada peticion lleva un token bearer en la cabecera Authorization. Los tokens se crean en tu cuenta, uno por integración, y revocar uno deja los demás funcionando.

Un token ausente, mal formado o revocado responde 401. Un token válido en una cuenta que no puede hacer esa llamada responde 403, y el cuerpo nombra el motivo, así que un problema de facturación nunca se confunde con una integración rota.

02

Ids que consultas, no webhooks que alojas

Una llamada que inicia trabajo responde con un id. Consultas ese id hasta que el resultado está listo, de modo que la integración se queda en HTTP saliente y no expone nada tuyo en público.

La API usa un conjunto pequeño de códigos y nada fuera de él. Un 422 significa que la peticion se leyó y los valores se rechazaron, con los campos nombrados, así que un payload incorrecto nunca parece una cuenta rechazada.

03

Los mismos trabajos por MCP

Los clientes de IA llegan al mismo trabajo por MCP, como JSON-RPC 2.0 a un único endpoint, así que un asistente puede lanzar un test antispam y leer el resultado sin que nadie le escriba un cliente.

MCP se autentica con OAuth 2.1 y no hay token que pegar: el cliente ejecuta el flujo cuando añades el servidor. El token bearer de arriba es solo para la API REST.

Del token al resultado en cuatro pasos.

El test antispam es el camino más corto por la API. El inbox placement y las previews siguen la misma forma: inicias algo, tomas el id, lees el resultado.

  1. 01

    Crea un token

    En tu cuenta, un token por integración, cada uno revocable por separado.

  2. 02

    Lanza un test

    Haz un POST al endpoint del test antispam. La respuesta trae el id del test y la dirección a la que enviar tu correo.

  3. 03

    Envía el correo

    Desde la plataforma con la que envías de verdad, a la dirección que devolvió la API, para que el test mida tu configuración de envío real y no una copia.

  4. 04

    Lee el resultado

    Haz un GET del test por su id para la puntuación y los resultados de autenticación, y luego pide el heatmap o las previews de cliente sobre ese mismo id.

Preguntas frecuentes sobre la API.

Planes, límites, dónde vive la referencia y qué te está diciendo un 403.

¿Qué plan incluye acceso a la API?
El acceso a la API está incluido en el plan Custom. Los precios actuales están en la página de precios.
¿Hay una referencia con todos los parámetros?
Sí. El documento OpenAPI es la referencia y se genera desde la propia API, así que no puede describir una llamada que el servicio no responde. Está enlazado en el ejemplo de código de arriba.
¿Cuáles son los límites de peticiones?
Todos los endpoints tienen un límite de 100 peticiones por minuto: por dirección IP en los endpoints públicos y por cuenta cuando te autenticas. Pasado el límite la API responde 429 Too Many Requests, así que espera y reintenta en lugar de asumir un presupuesto mayor. El servidor MCP limita las peticiones por cuenta de la misma forma.
¿Qué significa un 403?
El token es válido y la cuenta no puede hacer esa llamada. El cuerpo trae un motivo: el correo de la cuenta aún no está confirmado, el cupo del plan para esa llamada está agotado en el periodo, o el plan no incluye acceso a la API.
¿Puede usarla un asistente de IA?
Sí, por MCP en lugar de REST. El servidor MCP expone los mismos trabajos como herramientas que un asistente puede llamar, con OAuth 2.1 en lugar de un token bearer.
¿Necesita acceso a mi plataforma de correo?
No para un test antispam ni para una preview. Envías un mensaje a una dirección que te da la API, desde lo que ya usas para enviar, y la API lee lo que llegó. Los tests automáticos recurrentes son distintos, porque algo tiene que enviarlos según un calendario, así que para esos se conecta un remitente por SMTP.
¿Puedo recopilar informes DMARC a través de la API?
Sí. Registra tu dominio, publica el registro TXT que devuelve la respuesta (se combina con un registro DMARC existente en lugar de sustituirlo) y verifícalo con una comprobación DNS en vivo. Los informes agregados suelen empezar a llegar en 24 a 48 horas; después puedes listarlos por dominio y leer cada informe hasta sus filas por origen. Solo se incluyen informes de organizaciones emisoras verificadas.

¿Listo para llevar la entregabilidad a tu propio stack?

El acceso a la API está incluido en el plan Custom. Los precios actuales están en la página de precios.

Ver precios