> ## 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.

# Desarrolladores

> Guía para desarrolladores sobre la integración de OneSignal: configuración del SDK, referencia de API, identidad de usuario y pruebas en mobile y web.

Esta guía ayuda a los desarrolladores a integrar OneSignal en aplicaciones móviles y web. Sigue las secciones en orden para una primera configuración o ve directamente al área que necesites.

1. [**Comenzar**](#get-started) — accede a tu App de OneSignal y encuentra tus claves API
2. [**Configurar canales de mensajería**](#set-up-messaging-channels) — instala el SDK y configura los canales
3. [**Referencia de SDK y API**](#sdk-and-api-reference) — documentación detallada de métodos, clases y endpoints
4. [**Usuarios e identidad**](#users-and-identity) — identifica Usuarios, gestiona Suscripciones y protege el acceso
5. [**Tutoriales**](#tutorials) — guías paso a paso para casos de uso comunes
6. [**Pruebas y depuración**](#testing-and-debugging) — verifica tu integración antes de lanzar
7. [**Analíticas y webhooks**](#analytics-and-webhooks) — rastrea el rendimiento y recibe eventos de mensajes en el servidor

***

## Comenzar

Si tu equipo ya tiene una cuenta de OneSignal, pide a un administrador que te [invite](./manage-team-members) a la Organización. De lo contrario, [crea una cuenta](https://onesignal.com) para empezar.

Tu App de OneSignal es donde viven los datos de usuarios y mensajes. Cada App tiene su propio App ID, claves API y canales de mensajería. Puedes tener múltiples Apps en una sola Organización para diferentes proyectos o entornos.

<Columns cols={2}>
  <Card title="Apps, Organizaciones y cuentas" icon="building" href="./apps-organizations">
    Cómo se relacionan Apps, Organizaciones y cuentas entre sí.
  </Card>

  <Card title="Claves e IDs" icon="key" href="./keys-and-ids">
    Encuentra tu App ID, clave de API REST y Organization ID para autenticación.
  </Card>

  <Card title="Agregar miembros del equipo" icon="user-plus" href="./manage-team-members">
    Invita desarrolladores y asigna roles dentro de tu Organización.
  </Card>

  <Card title="Uso y facturación" icon="credit-card" href="./billing-faq">
    Facturación, facturas y detalles de uso.
  </Card>
</Columns>

***

## Configurar canales de mensajería

Instala el SDK de OneSignal para crear y rastrear la participación de usuarios en tus plataformas. Cada canal de mensajes tiene su propia guía de configuración que cubre credenciales, inicialización del SDK y tutoriales.

<Columns cols={3}>
  <Card title="Configuración del SDK móvil" icon="mobile" href="./mobile-sdk-setup">
    Configuración del SDK para iOS, Android, Huawei y Amazon. Habilita notificaciones push, mensajes in-app y Live Activities.
  </Card>

  <Card title="Push web" icon="globe" href="./web-sdk-setup">
    Instalación del Web SDK y configuración de notificaciones push del navegador.
  </Card>

  <Card title="Email" icon="envelope" href="./email-setup">
    Configuración del canal de email y verificación del dominio del remitente.
  </Card>

  <Card title="Mensajes in-app" icon="window-maximize" href="./in-app-messages-setup">
    Muestra mensajes enriquecidos e interactivos dentro de tu aplicación móvil.
  </Card>

  <Card title="SMS" icon="comment-sms" href="./sms-messaging">
    Configuración del canal SMS y registro con operadores.
  </Card>

  <Card title="RCS" icon="message" href="./rcs-messaging">
    Mensajería enriquecida con contenido de marca y confirmaciones de lectura.
  </Card>

  <Card title="Live Activities" icon="tower-broadcast" href="./live-activities">
    Actualizaciones dinámicas de la pantalla de bloqueo de iOS. Capacidades similares disponibles para Android.
  </Card>
</Columns>

***

## Referencia de SDK y API

Documentación detallada para SDKs de cliente, SDKs de servidor y la API REST.

<Columns cols={2}>
  <Card title="Referencia de SDK móvil" icon="mobile" href="./mobile-sdk-reference">
    Métodos, clases y hooks de eventos para SDKs de iOS, Android y multiplataforma.
  </Card>

  <Card title="Referencia de SDK web" icon="globe" href="./web-sdk-reference">
    Inicialización, gestión de Usuarios, métodos de Suscripción y disparadores personalizados.
  </Card>

  <Card title="Referencia de SDK de servidor" icon="server" href="./server-sdk-reference">
    Instala y configura SDKs de servidor para Node.js, Python, Java, Go, PHP, Ruby, C# y Rust.
  </Card>

  <Card title="Descripción general de la API REST" icon="code" href="/reference/rest-api-overview">
    Endpoints, autenticación, límites de velocidad y formatos de solicitud/respuesta.
  </Card>

  <Card title="Mensajes transaccionales" icon="paper-plane" href="./transactional-messages">
    Envía OTPs, recibos y alertas urgentes mediante API con datos personalizados.
  </Card>

  <Card title="SDKs de servidor en GitHub" icon="github" href="https://github.com/OneSignal/sdks#server-sdks">
    Código fuente y ejemplos para todas las bibliotecas de SDK de servidor.
  </Card>
</Columns>

***

## Usuarios e identidad

OneSignal asigna a cada persona un **OneSignal ID** y rastrea sus dispositivos, direcciones de email y números de teléfono como **Suscripciones**. Los Usuarios son anónimos hasta que llamas a `login` con un **External ID** para identificarlos. Identificar Usuarios unifica sus Suscripciones en todos los canales y dispositivos.

<Columns cols={2}>
  <Card title="Usuarios" icon="users" href="./users">
    Modelo de Usuario, External ID, Usuarios anónimos vs. identificados, y login/logout.
  </Card>

  <Card title="Suscripciones" icon="address-book" href="./subscriptions">
    Dispositivos, direcciones de email y números de teléfono que reciben tus mensajes.
  </Card>

  <Card title="Verificación de identidad" icon="shield-halved" href="./identity-verification">
    Requiere JWTs generados por el servidor para prevenir la suplantación de Usuarios.
  </Card>

  <Card title="Alias" icon="fingerprint" href="./aliases">
    Mapea identificadores personalizados a Usuarios para seguimiento multiplataforma e integraciones.
  </Card>

  <Card title="Etiquetas" icon="tags" href="./add-user-data-tags">
    Establece datos clave-valor en Usuarios para personalización y segmentación.
  </Card>

  <Card title="Eventos personalizados" icon="bolt" href="./custom-events">
    Rastrea acciones de Usuario para activar Journeys o potenciar analíticas.
  </Card>
</Columns>

***

## Tutoriales

Guías paso a paso para implementar casos de uso comunes de mensajería con OneSignal.

<Card title="Tutoriales y casos de uso" icon="graduation-cap" href="./tutorials">
  Explora guías de implementación para carritos abandonados, flujos de incorporación, campañas de reactivación y más.
</Card>

***

## Pruebas y depuración

Verifica que tu integración funcione antes de enviar a toda tu audiencia.

<Tip>
  Siempre prueba primero con [Suscripciones de prueba](./test-users). Esto te permite verificar la entrega, el renderizado y los deep links sin afectar a Usuarios reales.
</Tip>

<Columns cols={2}>
  <Card title="Suscripciones de prueba" icon="vial" href="./test-users">
    Encuentra y configura Suscripciones de prueba para push, email y SMS.
  </Card>

  <Card title="Registros de depuración" icon="bug" href="./capturing-a-debug-log">
    Captura registros detallados del SDK desde aplicaciones móviles para la resolución de problemas.
  </Card>

  <Card title="Solución de problemas móvil" icon="mobile" href="./mobile-troubleshooting">
    Resuelve problemas comunes de entrega push, APNS y mensajes in-app.
  </Card>

  <Card title="Solución de problemas web" icon="globe" href="./troubleshooting-web-push">
    Soluciona problemas de service worker, compatibilidad del navegador y push web.
  </Card>
</Columns>

***

## Analíticas y webhooks

Rastrea el rendimiento de los mensajes y recibe eventos de mensajes en el lado del servidor para analíticas, automatización o sincronización con sistemas externos.

<Columns cols={2}>
  <Card title="Event Streams" icon="signal-stream" href="./event-streams">
    Transmite clics, aperturas, recepciones y otros eventos de mensajes a tu data warehouse en tiempo real.
  </Card>

  <Card title="Webhooks de Journey" icon="route" href="./journeys-webhook">
    Envía solicitudes HTTP a tu servidor desde los pasos del Journey.
  </Card>

  <Card title="Webhooks de push web" icon="link" href="./webhooks">
    Callbacks HTTP para eventos de visualización, clic y cierre de push web.
  </Card>
</Columns>

***

## Preguntas frecuentes

### ¿Cómo autentico las solicitudes a la API REST?

Incluye tu clave de API REST en el encabezado `Authorization` como token Bearer: `Authorization: Key YOUR_REST_API_KEY`. Encuentra tu clave en **Configuración > Claves e IDs** en el dashboard de OneSignal. Consulta [Claves e IDs](./keys-and-ids) para más detalles.

### ¿Cuál es la diferencia entre SDKs de cliente y SDKs de servidor?

Los **SDKs de cliente** (móvil y web) se ejecutan en tu app en el dispositivo del Usuario. Gestionan el registro de Suscripciones, prompts de permiso, mensajes in-app e identificación de Usuario mediante `login`. Los **SDKs de servidor** se ejecutan en tu backend y llaman a la API REST para enviar mensajes, gestionar Usuarios y exportar datos.

### ¿Cómo identifico Usuarios en distintos dispositivos?

Llama a `OneSignal.login("your_external_id")` en cada dispositivo después de que el Usuario inicie sesión. OneSignal fusiona todas las Suscripciones con el mismo External ID bajo un único Usuario. Consulta [Usuarios](./users#external-id) para detalles de implementación.

### ¿Necesito configurar la verificación de identidad?

La verificación de identidad es opcional pero se recomienda encarecidamente para apps en producción. Sin ella, cualquier cliente puede llamar a `login` con un External ID arbitrario. Habilitar la [verificación de identidad](./identity-verification) requiere actualizar el SDK de OneSignal para usar un JWT generado por el servidor, evitando la suplantación.

***

<Info>
  Need help?

  Chat with our Support team or email `support@onesignal.com`

  Please include:

  * Details of the issue you're experiencing and steps to reproduce if available
  * Your OneSignal App ID
  * The External ID or Subscription ID if applicable
  * The URL to the message you tested in the OneSignal Dashboard if applicable
  * Any relevant [logs or error messages](/docs/en/capturing-a-debug-log)

  We're happy to help!
</Info>
