Guía de migración

Migra de Arkose FunCAPTCHA a CaptchaLa

Quita el peso del SDK, termina con el contrato enterprise y conserva la defensa adaptativa contra bots. La migración es un cambio de script y un cambio de endpoint de verificación.

AArkose / FunCAPTCHACurrent setup~10 minCaptchaLaDrop-in target

Cómo es el cambio de código

Before — Arkose / FunCAPTCHA
<script src="https://YOUR_PUBLIC_KEY.arkoselabs.com/v2/YOUR_PUBLIC_KEY/api.js" data-callback="onSuccess" async defer></script>
<script>
  function onSuccess(token) {
    document.getElementById('arkose-token').value = token
  }
</script>
<input type="hidden" id="arkose-token" name="arkose-token" />
After — CaptchaLa
<button id="login-btn">Sign in</button>
<script src="https://cdn.captcha-cdn.net/captchala-loader.js"></script>
<script>
  loadCaptchala(() => Captchala.init({ appKey: 'YOUR_APP_KEY', action: 'login' })
    .onSuccess(res => onToken(res.token))
    .bindTo('#login-btn'));
</script>
Before — Arkose server verify (Node)
const res = await fetch('https://verify-api.arkoselabs.com/api/v4/verify/', {
  method: 'POST',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  body: new URLSearchParams({
    private_key: process.env.ARKOSE_PRIVATE_KEY,
    session_token: req.body['arkose-token'],
  }),
})
const data = await res.json()
if (data.session_details?.solved !== true) return res.status(400).json({ error: 'bot' })
After — CaptchaLa server verify (Node)
const res = await fetch('https://apiv1.captcha.la/v1/validate', {
  method: 'POST',
  headers: {
    'X-App-Key': process.env.CAPTCHALA_APP_KEY,
    'X-App-Secret': process.env.CAPTCHALA_APP_SECRET,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ pass_token: req.body['captchala-token'] }),
})
const { data } = await res.json()
if (!data || !data.valid) return res.status(400).json({ error: 'bot' })

Pasos de migración

  1. 1

    Regístrate y obtén tu App Key + Secret

    Crea una cuenta gratuita en CaptchaLa. A diferencia de Arkose, no hay PoC ni compras — el precio es público y autogestionado. El plan gratuito cubre las pruebas iniciales.

  2. 2

    Elimina el SDK de Arkose y el cableado del callback

    Borra la etiqueta script de Arkose, la función callback y el input oculto que rellenas desde el callback. CaptchaLa usa un simple div marcador — sin cableado de callback.

  3. 3

    Añade el widget de CaptchaLa

    Coloca nuestro div y etiqueta script donde estaba el widget de Arkose. El campo de token oculto se rellena automáticamente como captchala-token; no lo gestionas manualmente.

  4. 4

    Actualiza la verificación del servidor

    Reemplaza la comprobación session_details.solved de Arkose por nuestro flag valid (data.valid). El endpoint cambia a apiv1.captcha.la/v1/validate. El cuerpo pasa a ser JSON en lugar de form-urlencoded.

  5. 5

    Planifica el cierre del contrato

    Los contratos de Arkose suelen ser anuales con renovación automática. Anota la ventana de cancelación en tu contrato y avisa a legal/compras. La mayoría de los equipos ejecutan ambos durante 30 días en paralelo durante el cierre.

Preguntas frecuentes

¿Perderé precisión en la detección de bots al cambiar?

Para la mayoría de las cargas de trabajo, no hay diferencia medible. Los desafíos de Arkose son intencionadamente más difíciles que los nuestros por defecto, pero la población de bots que ellos atrapan y la que atrapamos nosotros se solapan mucho en el tráfico de producto típico. Si estás a escala de Roblox / Microsoft con adversarios concretos, la respuesta es más matizada — háblanos primero.

¿Cómo gestiono el solapamiento de contratos?

Ejecuta ambos en paralelo durante el cierre. El Formulario A mantiene Arkose; el Formulario B cambia a CaptchaLa. Compara conversión + tasa de bots. La mayoría de los equipos descubren que la tasa de bots se mantiene estable y la fricción para el usuario baja. Luego retira Arkose en la renovación del contrato.

¿Y la telemetría de riesgo / paneles de analítica de Arkose?

CaptchaLa tiene su propio panel con telemetría comparable — tasa de desafíos, tasa de éxito, distribución de la puntuación de riesgo, desglose geográfico. La forma resulta familiar si vienes de Arkose Insights.