Notificações Personalizadas no Site
Integrando uma solução/provedor personalizado de Notificações no Site como parte da sua API do Operador
O Fast Tracks suporta dois provedores diferentes para Notificações no Site, o nosso próprio e o "Provedor da API do Operador", o que significa que você pode fazer o que quiser do seu lado.
Serviço de Notificações no Site do Fast Track
Os seguintes endpoints podem ser construídos como parte da sua API do Operador:
⬆️ POST /channels/site/single
⬆️ POST /channels/site/batch
O Operador pode então encaminhar essas solicitações para o sistema de Notificações no Site para processamento e responder com as respectivas respostas.
Pré-Requisitos
- Avise o Fast Track se algum limite de taxa deve ser levado em consideração. (Se você planeja implementar limitação de taxa, entre em contato com o Fast Track antes, para que possamos orientá-lo sobre a implementação suportada)
- Avise o Fast Track se algum máximo de lote deve ser levado em consideração.
- Forneça ao Fast Track quaisquer credenciais específicas para os provedores integrados (se necessário)
Enviar Notificação no Site (Individual)
Uma solicitação de envio de Notificação no Site individual conterá os dados de cada notificação individual em solicitações separadas para a API.
Implementação do Endpoint
Implemente o endpoint no formato abaixo para suportar envio individual de Notificação no Site através da API.
⬆️ POST <operator-api-base-url>/channels/site/single
Cabeçalho da Solicitação
O cabeçalho da solicitação enviada contém um x-api-key que é um token necessário para autenticar as chamadas da API no endpoint. Este token precisa ser passado para o Fast Track para fazer essas solicitações.
Esquema do Corpo da Solicitação
Consulte o seguinte exemplo de uma solicitação de notificação individual enviada pelo Fast Track. A descrição de cada campo está listada na tabela abaixo.
| Chave | Tipo | Descrição |
|---|---|---|
activity.id * | integer | Um identificador único da Notificação no Site |
activity.brand_id * | integer | O identificador único da marca no Fast Track |
activity.user_id * | string | O identificador único do jogador |
activity.activity_id * | integer | O identificador único da configuração de atividade no Fast Track |
activity.action_group_id * | integer | O identificador único do grupo de ação do qual a Notificação no Site se origina no Fast Track |
activity.trigger_hash * | string | Hash do gatilho |
activity.action_id * | integer | O identificador único da ação individual do Fast Track |
event * | string | "inbox" -> Mensagem de caixa de entrada rica
"message" -> Popup pequeno
"shoutout" -> Popup grande |
display_type * | string | "silent" -> Notificação Silenciosa
"push" -> Notificação Push na tela |
title * | string | O título da notificação |
message * | string | O texto do corpo da notificação |
preview_text | string | Texto de pré-visualização curto mostrado antes da notificação ser aberta |
footer_text | string | Texto exibido no rodapé da notificação |
image_url | string | URL de uma imagem para exibir na notificação |
cta_button_link | string | URL para o botão principal de chamada para ação |
cta_button_text | string | Rótulo para o botão principal de chamada para ação |
cta_button_2_link | string | URL para o botão secundário de chamada para ação |
cta_button_2_text | string | Rótulo para o botão secundário de chamada para ação |
expires | integer | Timestamp Unix após o qual a notificação deve ser considerada expirada |
meta | object | Pares chave-valor personalizados definidos na atividade do CRM Fast Track |
Respostas Esperadas
A API do Operador deve retornar as respostas para cada mensagem de Notificação no Site individual respectivamente para evitar armazenamento não relacionado de dados de Notificação no Site.
Sucesso Resposta JSON HTTP 200-299
O site_notification_id será um identificador único gerado pela API do Operador que permite ao Fast Track identificar essa mensagem de Notificação no Site em particular para atualizar seu status de entrega após ser enviada.
ERRO Resposta JSON não-200
Respostas de erro são tipicamente associadas com códigos de status HTTP 400s ou 500s. A resposta deve conter um campo "error" com uma descrição para mostrar o que deu errado e auxiliar na solução de problemas.
As respostas da API do Operador serão tratadas de forma diferente dependendo da classe do código de status HTTP. A tabela abaixo fornece um resumo de como os status HTTP são tratados separadamente.
| Códigos de Status HTTP | Descrição |
|---|---|
200-299 | Entregue com Sucesso. O Fast Track reconhecerá a mensagem e começará a processar a próxima mensagem na fila. |
400-499 | Não Sucesso. Ao receber este erro, o Fast Track pulará a mensagem de Notificação no Site. Além disso, enviará seus dados para Ações Falhadas, se o serviço estiver habilitado. |
500 ou qualquer outro código de status que não esteja listado acima | Não Sucesso. O serviço falha e o Fast Track continuará tentando até que uma resposta 200 seja recebida. |
Notificação no Site em Lote
A Notificação no Site em Lote ajuda a processar uma coleção de Notificações no Site em uma solicitação para a API. O número de mensagens dentro da solicitação em lote é limitado por uma quantidade inteira definida na configuração e enviado dentro de um período de tempo configurado, mesmo quando o lote ainda não está cheio.
Implementação do Endpoint
Implemente o endpoint no formato abaixo para suportar envio em lote de Notificação no Site através da API.
⬆️ POST <operator-api-base-url>/channels/site/batch
Cabeçalho da Solicitação
O cabeçalho da solicitação enviada contém um x-api-key que é um token necessário para autenticar as chamadas da API no endpoint. Este token precisa ser passado para o Fast Track para fazer essas solicitações.
Esquema do Corpo da Solicitação
Aqui está um exemplo do formato esperado ao agrupar as solicitações. É similar à solicitação de Notificação no Site Individual, mas as solicitações são armazenadas em um array, uma após a outra.
Veja a tabela acima (/site/single) para uma tabela descrevendo cada propriedade.
Respostas Esperadas
As respostas abaixo devem ser retornadas pela API do Operador.
Sucesso Resposta JSON HTTP 200
O "activity.id" inicialmente enviado na solicitação será retornado de volta na resposta como "id". Isso é necessário para ajudar o Fast Track a identificar a mensagem de Notificação no Site individual na solicitação em lote inicial.
O site_notification_id será um identificador único gerado pela API do Operador, que o Fast Track usará para identificar a mensagem de Notificação no Site relacionada ao atualizar seu status.
Se qualquer uma das categorias listadas ("successful", "failed" ou "fatal") não tiver uma Notificação no Site associada, elas devem ser retornadas como um array vazio.
A solicitação precisa incluir uma das propriedades successful, failed ou fatal