Fluxo
1
Emita uma credencial de monitoramento
Seu backend chama
POST /v3/events/sdk-token/ com sua chave de API e o vendor_data do usuário.2
Envie a partir do dispositivo
O app envia para
POST /v1/events/ (ou POST /v1/events/batch/) com o cabeçalho X-Monitoring-Token.3
As regras são executadas normalmente
O evento é enriquecido, consolidado e avaliado exatamente pelas mesmas regras que um evento enviado pelo servidor.
Emissão de uma credencial
A emissão exige que a ingestão de eventos esteja ativada para a aplicação. Enquanto ela estiver desativada, este endpoint responde
403 com {"code": "event_monitoring_disabled"} em vez de entregar uma credencial que nunca poderia gravar.Envio
O que o servidor impõe
- Vinculação ao titular. A credencial é restrita a um
vendor_datano momento da emissão. Um blocosubjectno corpo da requisição é sobrescrito, então um cliente adulterado não consegue gravar na linha do tempo de outro usuário. - Contexto de rede. O endereço IP, o user agent, o accept-language e a origem são derivados da requisição, e esses valores derivados pelo servidor prevalecem sobre qualquer indicação do cliente na avaliação de regras. As evidências da regra registram a diferença como uma fonte do campo.
- Escopo de categoria. Uma credencial restrita a
sessionnão pode enviar um eventopayment; ele é rejeitado com400. - Limite de usos. Um lote consome um uso por evento, então um lote de 500 eventos não pode ser contabilizado como um único uso em uma credencial de 10 usos
- Vinculação à origem. Quando
bind_to_originestá definido, uma requisição cujoOriginnão corresponde é recusada, inclusive uma sem nenhumOrigin.
Envio em lote
O que descartar sob contrapressão
Se você precisar descartar eventos, descarte os de menor valor. Estes podem ser descartados com segurança:session.page_view · session.sdk_heartbeat · session.sdk_loaded · session.device_seen · session.bot_signal_observed · bonus.promotion_viewed · affiliate.referral_clicked
Estes não podem ser descartados; envie-os primeiro:
todo evento security, payment, dispute e responsible_gambling, além de gameplay.bet_placed, gameplay.bet_settled e gameplay.p2p_settlement.
Os endpoints de listagem retornam a mesma classificação de cada evento indicada por is_droppable, para que um cliente possa se basear nela em vez de em uma cópia fixa no código.
Compatibilidade de cabeçalhos
O cabeçalho canônico éX-Monitoring-Token. X-Transaction-Token é aceito como alias temporário para que um app que já usa um caminho de credencial de transação possa migrar de forma gradual.
Como escolher um canal
Ambos produzem registros de eventos idênticos e executam regras idênticas. Use o canal do servidor sempre que não houver um usuário final presente.
Próximos passos
Ingestão de eventos
O envelope, as categorias, a retenção e a idempotência.
Regras sobre eventos
Regras de velocidade, proporção, sequência e correlação.