Referencia de la API

URL base https://autorev.rohnelt.dev. Autentícate con Authorization: Bearer <clave de api>. Toda respuesta es JSON.

Inicio rápido

# 1. crea una cuenta (devuelve tu clave una sola vez)
curl -X POST https://autorev.rohnelt.dev/v1/signup \
  -H 'Content-Type: application/json' \
  -d '{"email":"you@company.com"}'

# 2. úsala
curl -H "Authorization: Bearer $KEY" \
  "https://autorev.rohnelt.dev/v1/email/verify?email=john.doe@gmail.com"

POST /v1/signup

Sin autenticación. Cuerpo: email (obligatorio), name, company, country, plan, referral_code, locale. Envía la cabecera Idempotency-Key para que los reintentos sean seguros.

GET|POST /v1/email/verify

ParámetroTipo Notas
emailstringobligatorio
deepboolañade consultas SPF/DMARC; se factura como 2 unidades
dnsbooltrue por defecto; ponlo en false para comprobar solo la sintaxis (sigue costando 1 unidad)
{
  "email": "john.doe@gmail.com",
  "status": "deliverable",        // deliverable | risky | undeliverable | unknown
  "sub_status": "verified",
  "score": 87,                     // 0-100
  "normalized": "johndoe@gmail.com",
  "has_mx": true, "mx_hosts": ["gmail-smtp-in.l.google.com"],
  "is_disposable": false, "is_role": false, "is_free_provider": true,
  "gibberish_score": 0.17, "did_you_mean": null,
  "reasons": ["MX present (5 host(s))", "free consumer provider"],
  "meta": {"units_charged": 1, "units_remaining": 249}
}

POST /v1/email/batch

Cuerpo {"emails": ["a@x.com", "b@y.com"]}. Se factura una unidad por fila. Las filas duplicadas dentro de un lote se resuelven una vez y se reutilizan, así que quitar duplicados antes de enviar no te cuesta nada extra. El tope de filas depende de tu plan.

GET|POST /v1/identity/validate

type = cpf | cnpj | iban | vat | card | isbn | ean13 | ein, más value. Los números de tarjeta nunca se devuelven completos ni se escriben en los registros. /v1/identity/autodetect infiere el tipo.

GET|POST /v1/phone/validate

phone y, opcionalmente, el código de país en country para formatos nacionales. Devuelve E.164, país ISO, tipo de línea y formato nacional.

Cuenta

EndpointPropósito
GET /v1/accountplan, uso, factura proyectada
POST /v1/account/keysemitir otra clave
DELETE /v1/account/keys/<id>revocar una clave
GET /v1/account/invoiceshistorial de facturas con líneas de detalle
POST /v1/account/plansubir o bajar de plan por autoservicio
POST /v1/account/welcomereenviar el correo de bienvenida

Los endpoints de cuenta tienen límite de peticiones, pero nunca consumen cuota.

Idioma

El sitio responde en el idioma que pide tu navegador con Accept-Language; ?lang=en|pt-BR|es lo fuerza. Las respuestas de la API siguen en inglés: los códigos de error y los nombres de campo son identificadores, no texto de interfaz. Los correos del ciclo de vida salen en el idioma capturado al registrarse; envía locale en /v1/signup para fijarlo explícitamente.

Errores

EstadoCódigo Significado
400missing_parameterpetición incorrecta
401invalid_api_keyclave ausente, incorrecta o revocada
402quota_exceededcuota gratuita agotada - mejora el plan para continuar
413payload_too_largecuerpo por encima del límite configurado
429rate_limitedrespeta la cabecera Retry-After
500internal_errorincluye un request_id

Documento OpenAPI