Fast Tracks soporta dos proveedores diferentes para Notificaciones en el Sitio, el nuestro propio y "Proveedor de API de Operador" lo que significa que puedes hacer lo que quieras hacer en tu lado.

Servicio de Notificaciones en el Sitio de Fast Track

Los siguientes endpoints pueden construirse como parte de tu API de Operador:

⬆️ POST /channels/site/single

⬆️ POST /channels/site/batch

El Operador puede entonces reenviar estas solicitudes al sistema de Notificaciones en el Sitio para su procesamiento y responder con las respuestas respectivas.

Prerrequisitos

  1. Avisar a Fast Track si alguna limitación de velocidad debe ser tomada en consideración. (Si planeas implementar limitación de velocidad, por favor contacta a Fast Track antes, para que podamos guiarte sobre la implementación soportada)
  2. Avisar a Fast Track si algún máximo de lotes debe ser tomado en consideración.
  3. Proporcionar a Fast Track cualquier credencial específica para los proveedores integrados (si es requerido)

Enviar Notificación en el Sitio (Individual)

Una solicitud de envío de Notificación en el Sitio individual contendrá los datos de cada notificación individual en solicitudes separadas a la API.

Implementación del Endpoint

Implementa el endpoint en el formato siguiente para soportar el envío individual de Notificación en el Sitio a través de API.
⬆️ POST <operator-api-base-url>/channels/site/single

Encabezado de Solicitud

El encabezado de la solicitud enviada contiene un x-api-key que es un token requerido para autenticar las llamadas a la API en el endpoint. Este token necesita ser pasado a Fast Track para poder hacer estas solicitudes.

Esquema del Cuerpo de Solicitud

Consulta el siguiente ejemplo de una solicitud de notificación individual enviada por Fast Track. La descripción de cada campo está listada en la tabla debajo de él.
ClaveTipoDescripción
activity.id
integer
Un identificador único de la Notificación en el Sitio
activity.brand_id
integer
El identificador único de la marca en Fast Track
activity.user_id
string
El identificador único del jugador
activity.activity_id
integer
El identificador único de la actividad configurada en Fast Track
activity.action_group_id
integer
El identificador único del grupo de acciones del cual se origina la Notificación en el Sitio desde Fast Track
activity.trigger_hash
string
Hash del disparador
activity.action_id
integer
El identificador único de la acción individual desde Fast Track
event
string
"inbox" -> Mensaje de bandeja rica "message" -> Popup pequeño "shoutout" -> Popup grande
display_type
string
"silent" -> Notificación Silenciosa "push" -> Notificación Push en pantalla

Respuestas Esperadas

La API del Operador debe devolver las respuestas para cada mensaje individual de Notificación en el Sitio respectivamente para evitar el almacenamiento no relacionado de datos de Notificación en el Sitio.

Exitosa Respuesta JSON HTTP 200-299

El site_notification_id será un identificador único generado por la API del Operador que permite a Fast Track identificar ese mensaje particular de Notificación en el Sitio para actualizar su estado de entrega después de que sea enviado.

ERROR Respuesta JSON No-200

Las respuestas erróneas están típicamente asociadas con códigos de estado HTTP 400s o 500s. La respuesta debe contener un campo "error" con una descripción para mostrar qué salió mal y asistir con la resolución de problemas.
Las respuestas de la API del Operador serán manejadas de manera diferente dependiendo de la clase del código de estado HTTP. La tabla siguiente da un resumen de cómo los estados HTTP son manejados por separado.
Códigos de Estado HTTPDescripción
200-299
Entregado Exitosamente. Fast Track reconocerá el mensaje y comenzará a procesar el siguiente mensaje en la cola.
400-499
No Exitoso. Al recibir este error, Fast Track omitirá el mensaje de Notificación en el Sitio. Adicionalmente, enviará sus datos a Acciones Fallidas, si el servicio está habilitado.
500 o cualquier otro código de estado que no esté listado arriba
No Exitoso. El servicio falla y Fast Track seguirá reintentando hasta que se reciba una respuesta 200.

Notificación en el Sitio por Lotes

La Notificación en el Sitio por Lotes ayuda a procesar una colección de Notificaciones en el Sitio en una solicitud a la API. El número de mensajes dentro de la solicitud por lotes está limitado por una cantidad entera establecida en la configuración y enviado dentro de un período de tiempo configurado, incluso cuando el lote aún no está completo.

Implementación del Endpoint

Implementa el endpoint en el formato siguiente para soportar el envío por lotes de Notificación en el Sitio a través de API.
⬆️ POST <operator-api-base-url>/channels/site/batch

Encabezado de Solicitud

El encabezado de la solicitud enviada contiene un x-api-key que es un token requerido para autenticar las llamadas a la API en el endpoint. Este token necesita ser pasado a Fast Track para poder hacer estas solicitudes.

Esquema del Cuerpo de Solicitud

Aquí hay un ejemplo del formato esperado cuando se procesan por lotes las solicitudes. Es similar a la solicitud de Notificación en el Sitio Individual pero las solicitudes se almacenan en un array, una tras otra.
ClaveTipoDescripción
activity.id
integer
Un identificador único de la Notificación en el Sitio
activity.brand_id
integer
El identificador único de la marca en Fast Track
activity.user_id
string
El identificador único del jugador
activity.activity_id
integer
El identificador único de la actividad configurada en Fast Track
activity.action_group_id
integer
El identificador único del grupo de acciones del cual se origina la Notificación en el Sitio desde Fast Track
activity.trigger_hash
string
Hash del disparador
activity.action_id
integer
El identificador único de la acción individual desde Fast Track

Respuestas Esperadas

Las siguientes respuestas deben ser devueltas por la API del Operador.

Exitosa Respuesta JSON HTTP 200

El "activity.id" inicialmente enviado en la solicitud será devuelto en la respuesta como "id". Esto es requerido para ayudar a Fast Track a identificar el mensaje individual de Notificación en el Sitio en la solicitud por lotes inicial. El site_notification_id será un identificador único generado por la API del Operador, que Fast Track usará para identificar el mensaje relacionado de Notificación en el Sitio al actualizar su estado. Si alguna de las categorías listadas ("successful", "failed" o "fatal") no tiene una Notificación en el Sitio asociada, deberían ser devueltas como un array vacío.
La solicitud necesita incluir una de las propiedades successful, failed o fatal
El flujo lógico de cómo será manejada la respuesta es muy similar a cómo son manejados los códigos de estado HTTP en el endpoint de Notificación en el Sitio Individual. La única diferencia es que la respuesta con un código de estado 200 será manejada en su lugar, según la categoría del mensaje en la respuesta.
Categoría de RespuestaDescripción
successful
Entregado Exitosamente. Fast Track reconocerá el mensaje y comenzará a procesar el siguiente lote en la cola.
failed
No Exitoso. Al recibir este error, Fast Track omitirá el mensaje de Notificación en el Sitio. Adicionalmente, enviará sus datos a Acciones Fallidas, si el servicio está habilitado.
fatal
Los mensajes serán reintentados