Estás a punto de depender de nosotros. Aquí está por qué eso es seguro.
Construida y operada por dos fundadores, Het y Om. Esta página es todo lo que nosotros querríamos leer antes de convertir una API pequeña y desconocida en una dependencia de producción: cada afirmación señala su mecanismo y, donde nos quedamos cortos, lo decimos aquí primero.
La mayoría de los scrapers le mienten a tu agente. El nuestro presenta un informe.
El fallo que asusta a todo ingeniero de IA no es el crash: es la mentira silenciosa que un cliente descubre antes que tú. El núcleo de EnConvert es negarse a hacer eso.
Cada renderizado de /v2/perceive, /v2/distill y /v2/watch pasa por un modelo de calidad determinista de 8 señales: marcado anti-bot, páginas de CAPTCHA y detección de bots, muros de inicio de sesión, cuerpos vacíos, errores de consola JS, subrecursos fallidos, redirecciones entre dominios y renderizados lentos. La puntuación vuelve en la respuesta, leída de la sesión de navegador real.
Cuando un renderizado activa los detectores de anti-bot, CAPTCHA o muro de inicio de sesión, la respuesta lleva una advertencia explícita que nombra la condición y las deducciones exactas que produjeron la puntuación. Obtienes la salida completa más la verdad sobre ella, nunca una página de desafío disfrazada de respuesta.
Una página marcada como bloqueada nunca activa la extracción pagada por LLM. Obtienes el resultado heurístico más una advertencia que explica el salto, en lugar de tokens quemados inventando estructura a partir de una pantalla de desafío.
Envía una opción que aún no hemos lanzado y la API la rechaza con un 422 que lo dice: nunca acepta un parámetro y lo ignora en silencio. Los éxitos parciales vuelven como advertencias nombradas, nunca como un encogimiento de hombros silencioso.
- Tasa de detección del 92% y un 4% de falsas alarmas en nuestro corpus etiquetado de 50 páginas: aproximadamente 1 de cada 12 páginas de bloqueo todavía puede escaparse, y publicamos los fallos.
- /v2/ingest renderiza páginas pero aún no filtra por la puntuación, así que una página bloqueada puede entrar sin marcar en un corpus RAG; ese filtro está en la hoja de ruta, no terminado.
- Una puntuación baja marca y advierte: no bloquea la entrega ni reembolsa la llamada, y nunca retiene tu contenido en silencio.
Esto es exactamente lo que le pasa a tus datos.
Sin abstracciones: dos flujos cubren casi todo lo que hace EnConvert.
- Llega por TLS
- Se comprueba contra el límite de tamaño de tu plan y las extensiones aceptadas
- Nombre de archivo saneado: se eliminan componentes de ruta y secuencias de traversal
- Los bytes se mantienen en memoria y pasan directo al conversor: tu archivo de origen nunca se escribe en nuestro almacenamiento
- Solo se almacena la salida convertida, privada, bajo el prefijo de clave propio de tu cuenta
- Se descarga mediante una URL prefirmada: caducidad de 15 minutos, propiedad verificada antes de firmar
- Eliminable por ti, en cualquier momento
- El HTML renderizado de los trabajos de URL se retiene 90 días para potenciar la puntuación de calidad y la caché: está declarado en la Política de Privacidad, y cualquier solicitud individual puede desactivarlo con el encabezado X-Enconvert-No-Capture: true, integrado en la canalización y no solo escrito en una política.
- Los archivos convertidos se conservan durante la ventana de retención de tu plan (desde 1 hora en Free hasta 30 días en niveles superiores) y luego se eliminan.
- Se registran metadatos (endpoint, tamaños, duración y, para trabajos de URL, la URL de origen). El contenido de tus archivos y los cuerpos de página renderizados nunca se escriben en nuestros logs.
Sin insignias. Mecanismos.
No podemos entregarte un informe SOC 2, así que aquí están los controles concretos de los que ese informe es un sustituto, incluyendo dónde se detiene cada uno.
Toda URL proporcionada por el llamante se examina antes de que el navegador la toque. Bloqueado: esquemas no HTTP(S), credenciales incrustadas, espacio de direcciones privado / loopback / link-local / multicast / reservado, endpoints de metadatos de nube tanto por IP (169.254.169.254) como por hostname, y notaciones IP no estándar (octal punteado, hexadecimal, entero empaquetado) que un validador y un navegador pueden interpretar de forma distinta. El filtro se ejecuta en perceive, distill, discover (cada enlace que sigue el rastreador), watch (al crearse y antes de cada comprobación), ingest, y en tu URL de webhook antes de cada entrega.
Solo V2: los endpoints V1 más antiguos url-to-pdf / screenshot / markdown son anteriores a este módulo y no se examinan. Hay dos brechas documentadas en proceso de endurecimiento: DNS rebinding, y una URL pública que redirige a una interna después del filtro. El filtro cubre la página que solicitas, no cada subrecurso que carga.
Las claves llevan 256 bits de aleatoriedad de un CSPRNG y se almacenan solo como un hash SHA-256 con un prefijo corto de visualización: el texto plano se muestra una vez y no es recuperable, ni por ti ni por nosotros. La revocación surte efecto en la siguiente solicitud. Las claves pueden restringirse a endpoints y dominios concretos, aplicado en el servidor en cada llamada. Las claves secretas (sk_) se rechazan de plano desde un navegador; las publicables (pk_) solo pueden emitir tokens de corta duración vinculados al origen para los dominios que incluyas en la lista blanca. Las sesiones de navegador usan tokens de acceso de 1 hora; el token de renovación de 7 días vive en una cookie HttpOnly, Secure.
El hash de la clave es SHA-256 sin sal (correcto para claves aleatorias de alta entropía; las contraseñas usan bcrypt). Un token ya emitido sigue siendo válido hasta que caduca, hasta una hora, incluso después de revocar su clave. Hoy no hay un limitador de tasa por segundo; el gasto está acotado por cuotas de plan fijas comprobadas antes de cada operación.
Cada webhook de finalización y de cambio de V2 (ingest, watch) se firma con HMAC-SHA256 con la marca de tiempo de entrega vinculada a la firma, al estilo Stripe, y se envía como X-Enconvert-Signature y X-Enconvert-Timestamp, para que tu consumidor pueda verificar al remitente y rechazar repeticiones. El secreto de firma es por proyecto, proviene de un CSPRNG, se revela solo a través del panel autenticado y se rota al instante. Se entrega con un verificador de referencia en tiempo constante; las entregas se reintentan con backoff y cada intento se firma de nuevo.
Solo webhooks V2. El callback de conversión asíncrona V1 heredado no está firmado por diseño congelado: no confíes en él para la autenticidad.
Cada conversión facturable escribe una fila de libro mayor de solo anexado con una clave de idempotencia determinista, y el contador solo se mueve cuando esa fila se inserta, en la misma transacción: una solicitud reintentada o duplicada no puede contarse dos veces. Las conversiones fallidas, los renderizados fallidos y las solicitudes denegadas por cuota nunca se facturan. Al alcanzar un límite de plan recibes un 402 con tus cifras de uso exactas antes de que se ejecute ningún trabajo. El gasto de extracción por LLM está detrás de un límite atómico de reserva y liquidación que falla cerrado, y un trabajo nocturno vuelve a derivar cada contador desde el libro mayor en bruto e informa de las desviaciones en lugar de reescribir tu factura en silencio.
La comprobación de cuota y el incremento son dos pasos, así que en el límite las solicitudes concurrentes pueden sobrepasarlo por un puñado de operaciones, siempre a tu favor. La facturación por exceso solo se aplica si la activas explícitamente.
Usa una clave pk_, restringida a tus dominios, para cualquier cosa del lado del cliente: los navegadores rechazan sk_ a propósito.
Recalcula HMAC-SHA256 sobre <timestamp>.<body>, compara en tiempo constante y rechaza todo lo que tenga más de 5 minutos.
Una clave restringida al único endpoint que necesita no puede hacer nada más si se filtra.
Rota un secreto o revoca y recrea una clave en el momento en que sospeches una exposición: la revocación es inmediata.
Tu lado de la valla: cuatro cosas que mantienen segura tu cuenta
Pruebas, no promesas.
Lo que realmente está construido, lo que realmente se prueba y respuestas honestas a las simulaciones de fallo que ya estás corriendo en tu cabeza.
Si el servidor se reinicia a mitad de proceso, las operaciones por lotes interrumpidas se marcan como fallidas con un motivo explícito de «resubmit», los trabajos de ingest se reanudan desde un estado duradero por página, y los monitores se ponen al día por sí solos porque su calendario vive en la base de datos. El viejo fallo de un trabajo atascado «In Progress» para siempre no ocurre aquí.
Una única URL no renderizable falla su propia operación y el resto de tu lote se completa con resultados parciales. Un trabajo caído nunca tumba el bucle del worker.
Un observador de páginas que falla tres comprobaciones seguidas se pausa a sí mismo y te envía un correo, en lugar de fingir en silencio que sigue observando.
Más de 380 pruebas automatizadas apuntan exactamente a estos comportamientos: límites de detección de bloqueo, rechazo de firmas de webhook falsificadas, fallo parcial de lotes y regresión de renderizado a nivel de byte contra fixtures dorados. El puntuador de calidad se valida contra un corpus etiquetado de 50 páginas con un 92% de detección y un 4% de falsas alarmas, con los fallos conocidos incorporados al repositorio. Nota honesta: estas pruebas se ejecutan manualmente, todavía no en CI.
EnConvert opera hoy en una única región. La página de estado es pública y se nos alerta automáticamente. No hay un mesón de soporte anónimo 24/7: hay dos fundadores, y uno de nosotros está localizable.
Somos dos, por diseño: Het lleva el producto día a día, Om cubre cuando Het no está disponible, y al revés. En un día normal ninguno de los dos necesita pulsar un botón: los workers se autorreparan y son seguros ante reinicios, los monitores se autopausan cuando fallan, y los períodos de facturación rotan por sí solos.
Los renderizados actualmente se serializan en un solo nodo, de uno en uno: un techo real del que somos honestos. Las conversiones rápidas responden de forma síncrona; el trabajo pesado o en ráfagas degrada a trabajos asíncronos en lugar de fallar. Escalar horizontalmente es trabajo planificado, no entregado.
Es la pregunta real para un proveedor joven, así que aquí va una respuesta real. La API no tiene estado: tus archivos viven minutos y horas, no años, así que migrarse es cambiar un endpoint, no exportar una base de datos. Si alguna vez cerramos, recibes al menos 6 meses de aviso por escrito, y al cierre liberamos el código de conversión principal a los clientes de pago, así que nunca quedas varado en una API de caja negra muerta. Lo dejamos por escrito a propósito.
Lo que nunca haremos con tus archivos.
- Nunca entrenamos modelos con tus archivos ni con tu contenido
- Nunca vendemos ni compartimos tus datos
- Los archivos de origen se procesan en memoria y nunca se almacenan; solo se almacena tu salida convertida, bajo tu prefijo, eliminable por ti
- Las descargas son privadas y con tiempo limitado: URLs firmadas, caducidad de 15 minutos, propiedad verificada antes de firmar
Almacenamiento de objetos para tus salidas convertidas.
Extracción asistida por LLM (uno de los subprocesadores de LLM de EnConvert; cuál esté activo es una configuración ajustable), solo en los planes donde la activas: se envía contenido de página recortado para extraer datos estructurados; en caso contrario, tu contenido nunca sale de la infraestructura de EnConvert para esto.
Extracción asistida por LLM (uno de los subprocesadores de LLM de EnConvert; cuál esté activo es una configuración ajustable), solo en los planes donde la activas: se envía contenido de página recortado para extraer datos estructurados; en caso contrario, tu contenido nunca sale de la infraestructura de EnConvert para esto.
Extracción asistida por LLM (uno de los subprocesadores de LLM de EnConvert; cuál esté activo es una configuración ajustable), solo en los planes donde la activas: se envía contenido de página recortado para extraer datos estructurados; en caso contrario, tu contenido nunca sale de la infraestructura de EnConvert para esto.
El proveedor de búsqueda detrás de /v2/lookup; el texto de tu consulta de búsqueda se envía a Serper.
Procesamiento de pagos y facturación.
Razones para no usar EnConvert.
Todo argumento de venta honesto incluye los casos en los que es la decisión equivocada. Aquí están los nuestros.
No las tenemos. Si un certificado es un requisito ineludible de compras, todavía no hemos llegado ahí.
Una empresa de dos personas no puede prometer eso honestamente: usa un proveedor más grande.
No se ofrece; EnConvert es solo una API alojada.
Los límites de tamaño por plan van desde pequeños en Free hasta el nivel de Producción: más allá de eso, herramienta equivocada.
Legítimo. Todo en esta página está diseñado para hacer de eso un riesgo menor de lo que suena, pero no vamos a fingir que es cero.
Dos nombres. Localizables.
Bootstrapped, sin inversores: los ingresos vienen solo de suscripciones, así que el único trabajo del producto es seguir funcionando para quienes pagan por él. El soporte lo responden las personas que escribieron el código.
No confíes en esta página. Compruébala.
Ejecuta 100 operaciones en el nivel gratuito, apunta /v2/perceive a una página que sabes que es difícil y lee la puntuación que te devuelve. Gratis mientras estemos en beta, sin tarjeta de crédito.
[email protected] · respondemos los informes de seguridad en un día hábil