> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Resumen de notificaciones push

> Envía y gestiona notificaciones push móviles y web con OneSignal desde el panel o la API, con segmentación, personalización y programación.

Las notificaciones push vuelven a involucrar a los usuarios con contenido oportuno y personalizado en todos los dispositivos, incluso cuando no están usando activamente tu aplicación o sitio web.

Mira cómo las notificaciones push generan el mayor engagement, o salta directamente a comenzar.

<Frame caption="Por qué las notificaciones push generan el mayor engagement">
  <iframe width="560" height="315" src="https://www.youtube.com/embed/atjjj4BQqfc?si=PP-XrMF8ttXkXkuQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen />
</Frame>

OneSignal proporciona una plataforma completa para gestionar notificaciones push en dispositivos móviles, web y escritorio:

* **Enviar campañas y mensajes transaccionales** desde el [Panel](#send-push-notifications) o la [API](/reference/create-message)
* **Automatizar flujos multicanal** con [Journeys](./journeys-overview)
* **Segmentar usuarios con precisión** usando [Segmentos](./segmentation), filtros o datos de usuario
* **[Pruebas A/B](./ab-testing) y optimizar** el rendimiento de los mensajes
* **Personalizar contenido** con atributos de usuario y [contenido dinámico](./message-personalization)
* **Integrar con tu stack** — HubSpot, Mixpanel, Amplitude, Zapier y [más](./integrations)

***

## Configuración de push

Antes de enviar notificaciones push, completa la configuración de la plataforma, configura las solicitudes de permiso y habilita las funciones que necesitas.

### Guías de configuración de plataforma

<Columns cols={2}>
  <Card title="Configuración de push móvil" icon="mobile" href="./mobile-push-setup">
    Configuración completa para notificaciones push en iOS, Android, Huawei y Amazon.
  </Card>

  <Card title="Configuración de push web" icon="globe" href="./web-push-setup">
    Habilita push para Chrome, Firefox, Safari y Edge.
  </Card>

  <Card title="Configuración del SDK móvil" icon="code" href="./mobile-sdk-setup">
    Integra el SDK de OneSignal en tu aplicación móvil.
  </Card>

  <Card title="Configuración del SDK web" icon="browsers" href="./web-sdk-setup">
    Integra el SDK de OneSignal en tu sitio web.
  </Card>

  <Card title="Migración a OneSignal" icon="arrow-right-arrow-left" href="./migrating-to-onesignal">
    Pasos de migración desde Firebase, Airship, Braze y otros proveedores.
  </Card>

  <Card title="Soporte para aplicaciones macOS" icon="desktop" href="./macos-app-setup">
    Configura OneSignal para aplicaciones macOS.
  </Card>

  <Card title="Soporte para aplicaciones Windows" icon="desktop" href="./windows-app-setup">
    Configura OneSignal para aplicaciones de escritorio Windows.
  </Card>

  <Card title="Soporte para watchOS y Wear OS" icon="clock" href="./watchos-and-wear-os-support">
    Agrega OneSignal a dispositivos Apple Watch y Wear OS.
  </Card>
</Columns>

### Permisos

Una experiencia de suscripción bien diseñada maximiza tu audiencia push.

<Columns cols={2}>
  <Card title="Prompts de push móvil" icon="bell" href="./prompt-for-push-permissions">
    Crea prompts de pre-permiso y mejores prácticas para aplicaciones móviles.
  </Card>

  <Card title="Prompts de push web" icon="bell-on" href="./permission-requests">
    Personaliza el momento y el mensaje del prompt para push web.
  </Card>

  <Card title="Push provisional de iOS" icon="apple" href="./ios-provisional-push-notifications">
    Entrega notificaciones silenciosas al centro de notificaciones antes de solicitar permiso completo.
  </Card>

  <Card title="Categorías de notificación de Android" icon="android" href="./android-notification-categories">
    Permite a los usuarios de Android personalizar cómo reciben notificaciones de tu aplicación.
  </Card>
</Columns>

### Funciones y casos de uso avanzados

<Columns cols={2}>
  <Card title="Personalización de mensajes" icon="wand-magic-sparkles" href="./message-personalization">
    Agrega contenido dinámico para personalizar mensajes para cada usuario.
  </Card>

  <Card title="Mensajería multiidioma" icon="language" href="./multi-language-messaging">
    Envía notificaciones push en el idioma preferido de cada usuario.
  </Card>

  <Card title="Limitación de velocidad" icon="gauge-high" href="./throttling">
    Controla la velocidad de entrega de notificaciones para grandes audiencias.
  </Card>

  <Card title="Límite de frecuencia" icon="hand" href="./frequency-capping">
    Limita el número de notificaciones push por usuario.
  </Card>

  <Card title="Notificaciones de datos y en segundo plano" icon="database" href="./data-notifications">
    Envía notificaciones solo de datos para tareas en segundo plano.
  </Card>

  <Card title="Notificaciones VoIP" icon="phone" href="./voip-notifications">
    Envía notificaciones push específicas de VoIP para aplicaciones de llamadas.
  </Card>
</Columns>

***

## Enviar notificaciones push

Puedes enviar mensajes de varias formas. La mejor opción depende de tus casos de uso.

<Columns cols={2}>
  <Card title="Panel" icon="window-maximize" href="#send-from-the-dashboard">
    Redacta un mensaje rápidamente dentro del panel.
  </Card>

  <Card title="Enviar via API" icon="code" href="/reference/create-message">
    Envía mensajes mediante programación usando la API REST.
  </Card>

  <Card title="Journeys" icon="route" href="./journeys-overview">
    Crea flujos automatizados de múltiples pasos y multicanal.
  </Card>

  <Card title="Pruebas A/B" icon="flask" href="./ab-testing">
    Prueba hasta 10 variantes de mensaje para optimizar el rendimiento.
  </Card>
</Columns>

### Enviar desde el panel

<Steps>
  <Step title="Seleccionar el canal del mensaje" icon="window-maximize">
    Selecciona **Crear...** y elige tu canal de mensaje. También puedes navegar a **Mensajes** o **Plantillas** para ver mensajes anteriores.

    <Frame caption="Crea un nuevo mensaje en el panel de OneSignal.">
      <img src="https://mintcdn.com/onesignal/UDk6E5NjA3sdGdRN/images/dashboard/create-message.png?fit=max&auto=format&n=UDk6E5NjA3sdGdRN&q=85&s=97504cf71555ac4aeb263a36ad2d28b3" alt="Panel de OneSignal mostrando las opciones de creación de mensajes" width="2128" height="1374" data-path="images/dashboard/create-message.png" />
    </Frame>
  </Step>

  <Step title="Elegir un método de composición" icon="pencil">
    * Comienza desde cero o usa el [compositor de mensajes con IA](./ai-message-composer).
    * Usa una [plantilla](./templates) predefinida
  </Step>

  <Step title="Establecer un nombre y etiqueta" icon="tag">
    Agrega metadatos internos para seguimiento e informes. Equivalente API: `name`
  </Step>

  <Step title="Seleccionar la audiencia" icon="users">
    Elige qué usuarios reciben el mensaje. Puedes incluir y excluir [segmentos](./segmentation) para segmentar grupos específicos. Por defecto a todos los "Usuarios suscritos" si no se establece ningún segmento.

    <Frame caption="Selección de nombre, etiqueta y segmento de audiencia en el panel.">
      <img src="https://mintcdn.com/onesignal/ciRrThfP6xMpI7GY/images/dashboard/message-name-label-audience.png?fit=max&auto=format&n=ciRrThfP6xMpI7GY&q=85&s=1f41b0e42d31211b1c1badf87ba84056" alt="Campos del panel para nombre de mensaje, etiqueta y selección de segmento de audiencia" width="1650" height="518" data-path="images/dashboard/message-name-label-audience.png" />
    </Frame>

    | Método de segmentación                              | Panel | API |
    | --------------------------------------------------- | :---: | :-: |
    | [**Segmentos**](./segmentation)                     |   Sí  |  Sí |
    | **Filtros** ([solo API](/reference/create-message)) |   No  |  Sí |
    | **Alias** ([solo API](/reference/create-message))   |   No  |  Sí |
  </Step>
</Steps>

### Programación de entrega y optimización

Observa cómo el momento impacta el rendimiento de las notificaciones push.

<Frame caption="El momento lo es todo: Cómo enviar notificaciones push que impulsen la acción">
  <iframe width="560" height="315" src="https://www.youtube.com/embed/pRTbUuvYsWY?si=uqL5wSK_vXH6VwMJ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen />
</Frame>

Elige cuándo debe comenzar a enviarse el mensaje.

| Opción                    | Descripción                                                     | Campo API    |
| ------------------------- | --------------------------------------------------------------- | ------------ |
| **Enviar inmediatamente** | Entregar a todos los destinatarios ahora.                       | —            |
| **Programado**            | Enviar en un momento específico, hasta 30 días de anticipación. | `send_after` |

**Optimización por usuario:**

Establece cuándo deben recibir el mensaje los usuarios.

| Opción                                                 | Descripción                                                                        | Campo API                                          |
| ------------------------------------------------------ | ---------------------------------------------------------------------------------- | -------------------------------------------------- |
| **Todos al mismo tiempo**                              | Todos los destinatarios reciben el mensaje a la vez. Mejor para mensajes urgentes. | —                                                  |
| **Entrega inteligente**                                | Envía en el momento óptimo para cada usuario según su actividad de sesión.         | `delayed_option: last-active`                      |
| **Hora personalizada por zona horaria**                | Envía a una hora local establecida en la zona horaria de cada usuario.             | `delayed_option: timezone`, `delivery_time_of_day` |
| **Anular [Limitación de velocidad](./throttling)**     | Cambiar la tasa de limitación.                                                     | `throttle_rate_per_minute`                         |
| **Anular [Límite de frecuencia](./frequency-capping)** | Desactivar el límite de frecuencia para este mensaje.                              | `enable_frequency_cap`                             |

### Propiedades de diseño

Los mensajes push pueden mostrar contenido visible para el usuario o realizar operaciones en segundo plano.

* **Notificaciones visibles**: Requieren un [mensaje](#message) y pueden incluir un título, imagen, botones de acción y otros elementos visuales.
* **Notificaciones en segundo plano/solo datos**: Omiten el mensaje, incluyen [content\_available](./data-notifications) y opcionalmente [datos adicionales](#additional-data).

<Frame caption="1: Título, 2: Mensaje, 3: Icono, 4: Imagen, 5: Botones de acción, 6: Nombre de la app o navegador, 7: Marca de tiempo recibida">
  <img src="https://mintcdn.com/onesignal/l4Z9oMlZl9nJOS_T/images/push/web-and-mobile-push-notifications-anatomy.jpg?fit=max&auto=format&n=l4Z9oMlZl9nJOS_T&q=85&s=abd46b4656559360cc713cfa98f138fe" alt="Diagrama anotado que muestra la anatomía de las notificaciones push web y móviles" width="1468" height="2302" data-path="images/push/web-and-mobile-push-notifications-anatomy.jpg" />
</Frame>

<Tip>
  Usa el [Compositor de mensajes con IA](./ai-message-composer) para generar rápidamente títulos y texto del cuerpo de notificaciones. Ajusta el tono y el contenido para que coincidan con tu marca en unos pocos clics.
</Tip>

#### Título

Texto personalizable superior de la notificación. La apariencia del texto es controlada por el sistema operativo.

* Requerido para **push web** y **Huawei**
* Por defecto es el nombre del sitio en web si no se establece
* Límite recomendado: 25–50 caracteres (móvil), 60–80 (web)
* Soporta: [Compositor de mensajes con IA](./ai-message-composer), emojis, [personalización de mensajes](./message-personalization), [mensajería multiidioma](./multi-language-messaging)
* API: `headings`

#### Subtítulo

Texto secundario soportado solo en iOS y macOS (a través de APNs). No disponible en Android o web.

* Límite recomendado: 25–50 caracteres
* Soporta: emojis, [personalización de mensajes](./message-personalization), [mensajería multiidioma](./multi-language-messaging)
* API: `subtitle`

#### Mensaje

Contenido principal de la notificación. No soporta fuentes personalizadas ni estilos. El estilo es establecido por el sistema operativo.

* Requerido a menos que se envíe una notificación en segundo plano
* Soporta: [Compositor de mensajes con IA](./ai-message-composer), emojis, [personalización de mensajes](./message-personalization), [mensajería multiidioma](./multi-language-messaging)
* Límite recomendado: \~150 caracteres
* API: `contents`

#### Iconos

Personaliza iconos pequeños y grandes en Android y web. iOS siempre usa el icono de la aplicación.

* Ver [Iconos de notificación](./notification-icons)

#### Imagen

Agrega una imagen grande a las notificaciones en Android, iOS y Chrome para Windows/Android.

* Tamaño recomendado: `1024×512px` (relación de aspecto 2:1)
* Tamaño máximo: 1 MB, ancho máximo: 2000 px
* No soportado en Safari (macOS/iOS) o Centro de notificaciones de macOS
* La imagen debe ser tocada o expandida en móvil para verla
* Formatos soportados: `PNG`, `JPG`, `GIF` (animado solo en iOS)
* API: `ios_attachments` (iOS), `big_picture` (Android), `chrome_web_image` (Chrome web)
* Ver [Imágenes y medios enriquecidos](./rich-media)

#### Nombre de la aplicación

El nombre de la aplicación que muestra la notificación.

* **iOS**: Establecido en Xcode bajo *Display Name*; requiere reinicio del dispositivo para actualizar
* **Android/Amazon/Huawei**: Establecido en `AndroidManifest.xml` bajo `<application android:label="YOUR APP NAME">`
* **Web**: Muestra el nombre del sitio y/o navegador

### Propiedades de características

#### Botones de acción

Agrega botones interactivos a la notificación push.

* Soportado en Android 4.1+ e iOS 8.0+
* Ver [Botones de acción](./action-buttons)

#### URL de inicio

Controla a dónde van los usuarios al tocar la notificación.

* API: `url` (URL universal única), `app_url` (enlace profundo, ej. `your-app://screen`), `web_url` (enlace web http/https)
* Ver [URLs, enlaces y enlaces profundos](./links)

#### Insignias

Muestra puntos o números de insignia en los iconos de aplicaciones.

* **iOS**: Insignia numérica roja; puede establecer, incrementar o limpiar. API: `ios_badgeType`, `ios_badgeCount`
* **Android**: Requiere [categorías de notificación](./android-notification-categories)
* **Huawei**: Insignia mostrada como número o punto. API: `huawei_badge_class`, `huawei_badge_set_num`, `huawei_badge_add_num`
* **Web (Chrome/Android)**: Icono mostrado en la barra de estado de Android; debe ser un PNG alfa de 72×72. API: `chrome_web_badge`
* Ver [Insignias](./badges)

#### Sonido

Reproduce un sonido cuando se entrega el push.

* **iOS**: Establecido con `sound`
* **Android**: Establecido a través de [categorías de notificación](./android-notification-categories)
* **Web**: No disponible

#### Datos adicionales

Agrega pares clave-valor personalizados al payload para manejo del SDK.

* Usado por [extensiones de servicio móvil](./service-extensions) y escuchadores de clics en el [SDK móvil](./mobile-sdk-reference) y [SDK web](./web-sdk-reference)
* El panel solo soporta datos simples de clave-valor; usa la API con `data` para enviar JSON anidado
* Tamaño máximo total del payload: \~4 KB; campo `data`: hasta 2048 bytes
* Ver [Referencia de payload de notificación](./osnotification-payload)

#### ID de colapso (push móvil)

Reemplaza notificaciones anteriores con una más nueva si comparten el mismo `collapse_id`. Longitud máxima: 64 caracteres. API: `collapse_id`

Por ejemplo, una aplicación meteorológica envía tres alertas. Si el usuario abre su dispositivo después de las tres, solo se muestra el último mensaje.

#### Tema de push web (push web)

Evita reemplazar notificaciones antiguas en web usando valores únicos de `web_push_topic`. Las notificaciones con diferentes temas permanecen visibles de forma independiente. Longitud máxima: 64 caracteres. API: `web_push_topic`

#### Prioridad

Establece la urgencia del push, especialmente en modos de ahorro de batería.

* **High** (recomendado): Mensajes inmediatos, basados en alertas
* **Normal**: Usado para notificaciones en segundo plano/datos
* API: `priority`
* Documentación de plataforma: [Prioridad APNs](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/sending_notification_requests_to_apns), [Prioridad FCM](https://firebase.google.com/docs/cloud-messaging/android/message-priority)

#### Tiempo de vida (TTL)

Cuánto tiempo mantener un mensaje si el dispositivo está fuera de línea. Por defecto: 3 días. Rango: 0–2,419,200 segundos (28 días). API: `ttl`

Si un usuario está fuera de línea y el TTL expira, el mensaje se descarta. Establece `ttl: 0` para mensajes que no deben entregarse tarde.

<Note>
  **Limitación de iOS**: APNs almacena solo la notificación **más reciente** mientras está fuera de línea. Las anteriores se descartan. [Aprende más](https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/APNSOverview.html#//apple_ref/doc/uid/TP40008194-CH8-SW5).
</Note>

#### Agrupación de notificaciones

Android e iOS agruparán automáticamente las notificaciones después de que el dispositivo reciba 4 o más de tu aplicación.

* **iOS**: Usa `thread_id` en la API para agrupar mensajes.
* **Android**: Usa `android_group` en la API, o establece la "Group Key" en el panel. Para personalización avanzada, ver [Android NotificationExtenderService](./service-extensions#android-notification-extender-service) y la [Guía de notificaciones de grupo de Android](https://developer.android.com/training/notify-user/group).

<Frame caption="Notificaciones agrupadas en Android.">
  <img src="https://mintcdn.com/onesignal/6tscVAtiSqz353kV/images/docs/GnEw4PmmSVWWfgX5Uc3W_stacked_notification.png?fit=max&auto=format&n=6tscVAtiSqz353kV&q=85&s=cee04b5675b291562d92add259bc2224" alt="Dispositivo Android mostrando notificaciones push agrupadas de la misma aplicación" width="900" height="460" data-path="images/docs/GnEw4PmmSVWWfgX5Uc3W_stacked_notification.png" />
</Frame>

***

## Cancelar notificaciones push

Cancela un mensaje si aún no ha sido **Entregado**. OneSignal deja de enviar el mensaje a todas las suscripciones que no estén ya en la cola. Esto no elimina el mensaje de los dispositivos que ya lo recibieron.

En el [Informe de mensajes](./push-notification-message-reports), selecciona **Actions > Cancel**, o usa la [API de cancelar mensaje](/reference/cancel-message).

### Eliminar una notificación push de un dispositivo

Una vez entregado, solo puedes reemplazar una notificación push si estableces un [ID de colapso](#collapse-id-mobile-push) o un [Tema de push web](#web-push-topic-web-push). Sin uno de estos, la notificación no puede ser reemplazada ni eliminada.

***

## Analítica

Rastrea el rendimiento de los mensajes y el engagement.

<Columns cols={2}>
  <Card title="Informes de mensajes push" icon="chart-line" href="./push-notification-message-reports">
    Informes de tasa de entrega, tasa de apertura y clics a nivel de mensaje.
  </Card>

  <Card title="Resumen de analítica" icon="chart-bar" href="./analytics-overview">
    Todas las opciones de analítica disponibles en OneSignal.
  </Card>

  <Card title="Event Streams" icon="signal-stream" href="./event-streams">
    Transmite eventos push a tu almacén de datos o herramientas de BI en tiempo real.
  </Card>

  <Card title="API de visualización de mensajes" icon="code" href="/reference/view-messages">
    Extrae analítica de mensajes mediante programación a través de la API REST.
  </Card>
</Columns>

***

## Preguntas frecuentes

### ¿Qué plataformas soporta el push de OneSignal?

OneSignal soporta push en iOS (APNs), Android (FCM), Huawei (HMS), Amazon (ADM), navegadores web (Chrome, Firefox, Safari, Edge), macOS y Windows. Ver las [guías de configuración de plataforma](#platform-setup-guides) anteriores.

### ¿Cómo pruebo las notificaciones push antes de enviarlas a los usuarios?

Configura [suscripciones de prueba](./test-users) para verificar la entrega, renderización y enlaces profundos sin afectar a usuarios reales. También puedes enviar a un segmento de usuario único para pruebas rápidas.

### ¿Por qué no se muestran mis notificaciones push?

Las causas comunes incluyen credenciales de plataforma faltantes o vencidas, usuarios que no otorgaron permiso, o configuraciones a nivel de dispositivo como No molestar. Ver [Notificaciones no mostradas o retrasadas](./notifications-show-successful-but-are-not-being-shown) para una lista de verificación completa de solución de problemas.

### ¿Cuál es el tamaño máximo del payload de notificación push?

El tamaño total del payload es aproximadamente 4 KB en todas las plataformas. El campo `data` soporta hasta 2048 bytes. Exceder estos límites puede hacer que las notificaciones se trunquen o rechacen.
