API de detección // Max y Business

API de detección de adblock: el resultado, en tu propio código

La API de detección de adblock de AntiAdBlock Core (en inglés, adblock detection API) es un modo del script sin aviso: el mismo motor detecta el bloqueador y entrega a tu JavaScript cuatro campos (si hay bloqueo, de qué tipo, una referencia y el navegador) para que tu web responda a su manera. Está en los planes Max y Business.

La API, en Max (12,99 USD al mes) y Business // Prueba gratis el motor con el aviso: 5.000 detecciones al mes, sin método de pago

  1. Una visita
  2. El motor, sin aviso
  3. El resultado
  4. Tu código

detected: true,blockerType: "extension",path: "…",browser: "chromium"

Ejemplo del objeto que recibe tu código.

Qué es una API de detección de adblock

Una API de detección de adblock (o de bloqueadores de anuncios) le dice a tu código si el visitante bloquea anuncios, sin aviso ni popup en pantalla. En AntiAdBlock Core no es otro producto: es un modo del mismo script, que eliges sitio a sitio.

Es una API de JavaScript en el navegador del visitante: sin endpoint REST, sin clave de API ni paquete; tu etiqueta y un listener.

¿Prefieres que el aviso lo ponga el script? Entonces lo que buscas es el detector de adblock para tu web.

Dos modos, una etiqueta
Con aviso (por defecto)API de detección
Qué ve el visitanteUn muro que pide permitir los anunciosLo que decida tu código
Quién respondeEl script de AntiAdBlock CoreTu JavaScript
PlanesTodosMax y Business
En tu panelRecuperaciónDetection API

Misma etiqueta // mismo motor // misma cuota

Cómo llega el resultado a tu código

En cada página que se abre, tras la primera evaluación completa del motor, el script publica el resultado por tres vías a la vez, con el mismo objeto.

Tres vías, un mismo objeto

  1. aabc:detection Evento de window El resultado, en event.detail. Registra tu listener antes de la etiqueta.
  2. window.AABC_ON_DETECT Callback Tu función, llamada con el resultado. La vía recomendada: el script la llama directamente.
  3. window.AABC_DETECTION Instantánea El último resultado, para el código que llega tarde.
  • Una vez por página abierta
  • 0,1 a 3,6 s por lo general; siempre tras DOMContentLoaded
  • detected: false también llega sin bloqueo

Si la ventana vuelve a estar activa y el veredicto cambia, llega otra vez: un paso a false te deja retirar tu mensaje. En un cambio de ruta de una aplicación de una sola página no se emite.

El resultado: cuatro campos y nada más

Un objeto congelado con exactamente cuatro claves, el mismo en las tres vías.

Los cuatro campos del resultado
CampoValoresPara qué te sirve
detectedtrue o falseSaber si en esta visita hay bloqueo
blockerTypeextension, brave_shields, browser_protection, network_dns o unknown; null sin bloqueoAdaptar tu respuesta al tipo de bloqueo
pathUna letra de referencia interna (o FORCE en la prueba); null sin bloqueoReferencia para soporte; no cambia lo que debes hacer
browserchromium, firefox, edge, brave, webkit u otherDar las instrucciones del navegador correcto
El objeto, clave a clave

{detected: true, // booleanblockerType: "extension", // string | nullpath: "…", // string | nullbrowser: "chromium" // string}

Tipos, ejemplos y casos límite, en la documentación:

Instalación: tu etiqueta y unas líneas de JavaScript

  1. Pega tu etiqueta

    En el <head> de tus páginas. Es la misma en los dos modos y pegarla lleva unos 60 segundos; en WordPress la carga el plugin oficial. Para otras plataformas, mira dónde va la etiqueta en tu plataforma.

    Etiqueta de ejemplo
    <script async
      src="https://antiadblockcore.com/s/SITE_ID.js"
      data-aabc-site="SITE_ID"
      crossorigin="anonymous"></script>

    La tuya está en tu panel; con la entrega first-party, carga desde tu propio subdominio.

  2. Elige el modo

    En tu panel: abre la Configuración del sitio y, en Modo del script, elige Detection API (con el dominio verificado). Sin otra etiqueta ni despliegue: el cambio se aplica en menos de un minuto.

  3. Recibe el resultado

    Define el callback antes de la etiqueta; el ejemplo marca la página si el bloqueo se quita con un clic.

    Tu código
    <script>
    window.AABC_ON_DETECT = function (d) {
      // d = { detected, blockerType, path, browser }
      if (d.detected &&
          d.blockerType !== "network_dns") {
        document.documentElement.classList.add("con-adblock");
      }
    };
    </script>

La API se activa con Max o Business; en Free y Pro, el script va con el aviso.

Qué puedes hacer con el resultado

Usos habituales y el campo que mira cada uno.

Siete usos // el campo que miran

  • Tu propio mensaje

    detected

    Tu texto y tu diseño, donde tú elijas.

  • Contenido limitado

    detected

    Los primeros párrafos se quedan; el resto, a tu manera.

  • Muro de registro

    detected

    Una cuenta para seguir leyendo, con tu formulario.

  • Vídeo y audio

    detected

    La reproducción espera detrás de tu mensaje.

  • Descargas

    detected

    El botón, como siempre; si hay bloqueo, tu explicación en su lugar.

  • Bloqueo de red

    blockerType: "network_dns"

    No pidas quitar algo que no se quita con un clic.

  • Tu analítica

    cada resultado

    El bloqueo por sección, dispositivo o país, en tu herramienta.

Si no llega ningún resultado, sigue tu camino normal: sin respuesta no significa sin bloqueador.

Pruébala en tu web antes de escribir tu lógica

Añade #aabc_force al final de cualquier URL de tu sitio y recarga la página: en el modo API, el script devuelve un positivo sin mostrar nada, con detected: true y path: "FORCE". Así pruebas tu código sin instalar un bloqueador, y si tu navegador no bloquea nada, esa página vista no cuenta como detección.

Con un bloqueador de verdad, mírala funcionar en la demo en vivo: una web de ejemplo con el script completo.

En tu web

tusitio.com/articulo#aabc_force

Lo que lee tu código

window.AABC_DETECTION { detected: true, path: "FORCE", … }

Qué plan necesitas: la API, en Max y Business

La API está en Max y Business y se activa sitio a sitio. Con el plan Free pruebas antes el producto: el mismo motor, la instalación y el panel, con el aviso en lugar de la API.

Al mes o al año, sin permanencia. Pro (5 USD al mes) tampoco incluye la API.

Planes // API de detección

  1. Free

    Gratis sin método de pago

    Detecciones al mes
    5.000
    Sitios
    un sitio

    API de detección No: va con el aviso

  2. Max

    12,99 USD al mes

    Detecciones al mes
    1,5 millones
    Sitios
    3 sitios

    API de detección Incluida

  3. Business

    29,99 USD al mes

    Detecciones al mes
    5 millones
    Sitios
    5 sitios

    API de detección Incluida

Una detección es una página vista en la que se detecta un bloqueador; las demás no cuentan, y con la API cuentan igual que con el aviso. La cuota es de la cuenta: si se agota, el script deja de responder hasta tu siguiente periodo. Si bajas de plan, el sitio vuelve solo al aviso.

Quién está detrás de la API

La construimos y la mantenemos en AntiAdBlock Core, con el mismo motor que el aviso: multiseñal, mantenido a diario, protegido contra manipulación y ligado a tu dominio. La entrega first-party, desde un subdominio tuyo, da la detección máxima y va en todos los planes.

Hoja de datos

Detecta
AdBlock, AdBlock Plus, uBlock Origin, uBlock Origin Lite, AdGuard, Ghostery, Brave Shields y el bloqueo de red, en escritorio y en móvil
Privacidad
Sin cookies de seguimiento, sin huella digital y sin identificadores de visitante; unas marcas de tiempo sin identificador, 30 días como máximo
Soporte
Por correo y en español; prioritario en Max y dedicado en Business
Contrato
Público y con historial de cambios; revisado el

Preguntas frecuentes sobre la API de detección de adblock

¿Qué es una API de detección de adblock?

Es una forma de saber desde tu código si el visitante bloquea anuncios, sin que la herramienta le muestre nada. La de AntiAdBlock Core es un modo del script: el mismo motor detecta el bloqueador y entrega a tu JavaScript cuatro campos (detected, blockerType, path y browser) por un evento, un callback o una instantánea.

¿El script muestra algo en mi página en el modo API?

No. En el modo API el script no muestra ni aviso ni popup, y el código del aviso ni siquiera viaja con él. Lo que vea el visitante lo decides tú; si tu código no hace nada, la página se queda como está. Se activa por sitio en Max y Business.

¿Es una API REST?

No. Es una API de JavaScript en el navegador del visitante: sin endpoint REST, sin clave de API y sin paquete que instalar. La etiqueta de tu sitio hace la detección y entrega el resultado a tu código por el evento aabc:detection, el callback AABC_ON_DETECT o la instantánea AABC_DETECTION.

¿Qué evento de JavaScript se dispara cuando se detecta un bloqueador?

El navegador no trae ninguno: lo define cada herramienta. AntiAdBlock Core emite en window el evento aabc:detection, con el resultado en event.detail, una vez por página abierta, también sin bloqueo (detected: false). Además llama a tu función window.AABC_ON_DETECT, si existe, y deja el último resultado en window.AABC_DETECTION. Lo detalla la referencia del evento aabc:detection.

¿Puedo saber desde mi código si el bloqueo viene de una extensión, de Brave o del DNS?

Sí. blockerType vale extension, brave_shields, browser_protection, network_dns o unknown, y browser da la familia del navegador. Trata aparte network_dns (Pi-hole, AdGuard DNS o NextDNS), que no se quita con un clic. En Firefox y Edge, un bloqueo solo de red llega como browser_protection, como en tu panel.

¿Qué plan incluye la API de detección y cuánto cuesta?

Max, por 12,99 USD al mes con 1,5 millones de detecciones y 3 sitios, y Business, por 29,99 USD al mes con 5 millones de detecciones y 5 sitios. Free y Pro no la incluyen, y una detección cuenta igual con aviso o sin él. Con el plan Free pruebas antes el motor y el panel, sin método de pago.

¿Cómo leo el resultado en React, Next.js u otra SPA?

La etiqueta va una vez en el <head> (en Next.js, en el layout raíz) y el resultado llega al abrir la página, no en cada cambio de ruta. En tu componente, lee window.AABC_DETECTION al montarlo y escucha aabc:detection en window, quitando el listener al desmontar. El ejemplo para React está en la documentación.

¿Puedo enviar el resultado a Google Analytics 4?

Sí. Mándalo como evento con dataLayer.push o gtag, con detected, blockerType y browser como parámetros, y crea esas dimensiones en GA4 para verlas en los informes (receta para Google Tag Manager). Muchos bloqueadores también frenan la analítica, así que una parte de las visitas con bloqueador no le llegará; tu panel sigue contando las detecciones.

¿En qué se diferencia de una librería de npm como BlockAdBlock?

Una librería la mantienes tú o su autor: BlockAdBlock solo detecta y su última versión es de 2016 (lo contamos en nuestra comparativa con BlockAdblock), y las listas de filtros cambian cada pocos días. La API te da un motor mantenido a diario, el tipo de bloqueo, el navegador y tus cifras en el panel. Por qué las librerías copiadas dejan de avisar y cómo leer un resultado mantenido, en la guía Detectar adblock con JavaScript sin mantener la detección.

Empieza gratis y activa la API cuando la necesites

Crea tu cuenta, pega la etiqueta y mira tus detecciones en el panel. Cuando quieras el resultado en tu código, pasa a Max o Business y cambia el modo del sitio.

Plan Free: 5.000 detecciones al mes, sin método de pago // Los planes de pago, sin permanencia