Push se está actualizando

Notificaciones push para iOS, Android y web.

Abstracción de gestión de tokens, opt-in por dispositivo, payloads enriquecidos nativos, segmentación por audiencia. La misma autenticación, la misma idempotencia, los mismos webhooks que cualquier otro canal de Bird, porque el mismo equipo de ingeniería los construyó todos.

Cursor
push.ts
Próximamente
Notificaciones push
09:41

Tu día, siempre al tanto.

Goldcrest · ahora

Tu pedido está en camino

Sigue tu envío desde tu teléfono.

Equipos que confían cada día en nosotros para
crear software de primer nivel.

5 minutos desde npm install hasta el primer envío

Envía una notificación desde el lenguaje que ya usas.

SDKs en todos los runtimes principales. Registra un token desde tu cliente móvil o web; envía por token o por user_id desde tu backend.

Los ejemplos de código estarán disponibles cuando se lance esta API. Los SDK ya cubren los canales en vivo.

Diez primitivas que convierten APNs y FCM en un solo endpoint.

APNs y FCM reales bajo el capó. Sin agregadores push de terceros en el medio. Solo ocultamos las particularidades de cada plataforma detrás de una única interfaz.

  1. 01

    iOS, Android y web desde una sola llamada

    Un bird.push.send. Distribuimos a APNs, FCM y el W3C Push Protocol por cada dispositivo registrado.

  2. 02

    Abstracción de gestión de tokens

    Registra un token con bird.push.tokens.register. Rastreamos plataforma, idioma y última actividad para que tú no tengas que hacerlo.

  3. 03

    Envía por token o por user_id

    Dirige a un solo dispositivo, o pasa { user_id } y distribuimos a todos los dispositivos con opt-in que posea.

  4. 04

    Estado de opt-in por dispositivo

    Cada token registrado tiene su propio estado de opt-in. Revoca uno sin afectar a los demás.

  5. 05

    Payloads enriquecidos nativos

    Título, cuerpo, imagen, botones de acción, URL de deep-link, datos personalizados: mapeados correctamente a APNs alert y FCM notification.

  6. 06

    Notificaciones silenciosas / en segundo plano

    Pasa content_available: true y enrutamos correctamente a través de APNs background y FCM data-only según la plataforma.

  7. 07

    Segmentación por audiencia

    Etiqueta usuarios en el momento del registro; envía por etiqueta desde bird.push.send. Sin necesidad de integrar un CDP externo.

  8. 08

    Recibos de entrega y apertura

    Eventos para push.delivered, push.opened, push.dismissed. La misma respuesta HMAC que en cualquier otro canal.

  9. 09

    Ciclo de vida de tokens gestionado

    Cuando APNs / FCM devuelve un token no registrado, lo marcamos como inactivo y dejamos de enviar. Sin limpieza manual.

  10. 10

    Misma autenticación, misma respuesta de error

    Una clave API para Push, SMS, Email, WhatsApp, Voice. Un único registro de tipos de error para todos.

Por qué construimos Push

Porque push no debería vivir en un proveedor diferente al de tu SMS, tu email y tus verificaciones.

Todos los equipos de producto terminan con el mismo stack: APNs para iOS, FCM para Android, un service worker para web y una tabla en la base de datos que rastrea qué usuario tiene qué tokens con qué estado de opt-in. Construimos esa tabla, luego la construimos otra vez, y después la expusimos como bird.push.tokens.register y bird.push.send. La misma autenticación, la misma idempotencia, la misma respuesta de error que Email y SMS, así que el OTP que falla en push recurre a SMS en la misma solicitud.

push.ts
Próximamente
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({
  apiKey: process.env.BIRD_API_KEY!,
});

// Send by device token...
const { data, error } = await bird.push.send({
  to:    "token_aPa91Hb...XzQ",
  title: "Your driver is two minutes away",
  body:  "Tap to see the live map.",
  data:  { ride_id: "ride_2891" },
}).safe();

// ...or by user_id, fanning out to every opted-in device.
await bird.push.send({
  to:    { user_id: "usr_4hQ2m" },
  title: "Your code is 482917",
  body:  "Enter it on the login screen.",
  data:  { kind: "otp" },
});

if (error) throw error;
console.log(data.id);
// → "push_2nQ81oP3..."

Cada cambio de estado es un webhook.

Payloads firmados con HMAC, protegidos contra repetición, idempotentes. La misma estructura en cada canal de Bird: aprende uno y los habrás aprendido todos.

POST /webhooks/bird
signed

Programa de reintentos: 5s, 5m, 30m, 2h, 5h y luego 10h dos veces. Tras el último intento, la entrega falla permanentemente y puedes recuperarla desde el dashboard o la API.

  • push.queuedAceptado por la API y en cola para envío.
  • push.sentEntregado al servidor de APNs / FCM / W3C Push.
  • push.deliveredEl proveedor confirmó la entrega al dispositivo (cuando está disponible: APNs es best-effort).
  • push.openedEl usuario tocó la notificación (si tu app lo registra).
  • push.dismissedEl usuario descartó la notificación sin abrirla (si tu app lo registra).
  • push.failedFallo permanente (token no registrado, app eliminada). El token se desactiva automáticamente.

Si ya integraste SMS, ya integraste Push.

Misma autenticación, mismo contrato de idempotencia, misma respuesta de error, misma estructura de webhook. La diferencia es el transporte, no cómo lo llamas.

Push.

push

Una llamada. Distribuimos a cada dispositivo con opt-in del usuario, a través de APNs, FCM y la web.

SMS.

sms

Misma estructura, mismo contrato de idempotencia. Usa SMS como respaldo cuando push falla, o dirígete a él directamente.

Una tarifa por notificación, en todas las plataformas.

Precio por notificación entregada. Misma tarifa en iOS, Android y web. APNs y FCM son gratuitos en origen, así que cobramos por el enrutamiento y el dashboard, no por el transporte. Contacta a ventas para una cotización y precios por volumen.

Mantén a tus clientes en la conversación.

Habla con nuestro equipo sobre notificaciones push para tu aplicación.

Tus datos

Productos de interés

Opcional

Política de privacidad

Tu próxima idea.
Lista para conectar.