Análise de rastreamento

Como funciona

A análise de rastreamento permite coletar e agregar eventos gerados pelo usuário para avaliar o desempenho do programa e o número de referências. Os dados obtidos podem ser usados como uma maneira adicional de engajar as redes de afiliados, pois estatísticas fortes tornam a oferta mais atraente.

Os seguintes eventos podem ser processados:

  • Transição para a página de destino
  • Transição da página de aterrissagem para a loja

Como obtê-lo

Para integrar a análise de rastreamento, faça o seguinte:

  1. Obtenha um JSON Web Token (JWT).
  2. Salve tracking_id do parâmetro de solicitação para os cookies do seu site. Exemplo de uma solicitação com tracking_id: https://playnewz.com?utm_source=n6LI9yVu&utm_campaign=5b9bff5f9d31b&tracking_id=19e2DLjNTk2YOdXA4d8J3NReNkXNafhC.
  3. Depois que um novo usuário é criado, envie user_id e tracking_id por meio do método Registration Event Sending.
    • É recomendável enviar solicitações de forma assíncrona, para que não interfira no registro do usuário enquanto aguarda a resposta da Xsolla Tracking API.
    • Caso contrário, use o tempo limite. Observe que os novos usuários não serão rastreados se a resposta da Xsolla Tracking API demorar mais do que o especificado.
  4. Para criar e gerenciar eventos personalizados, implemente os seguintes métodos da Tracking API: create, initialize e send um evento.
  5. Implemente o script de rastreamento em seu site.

Obter token

SOLICITAÇÃO HTTP

Copy
Full screen
Small screen
POST https://tracking-api.xsolla.com/v1/tokens
CabeçalhoDescrição
ContentTypeapplication/json
AuthorizationO cabeçalho Authorization: Basic <your_authorization_basic_key>, onde <your_authorization_basic_key> é o par merchant ID:API key, codificado de acordo com o padrão Base64. Vá para Conta de Distribuidor para encontrar estes parâmetros:
  • O Merchant ID é exibido:
    • Na seção Company settings > Company.
    • No URL na barra de endereços do navegador em qualquer página da Conta de Distribuidor. O URL tem o seguinte formato: https:​//publisher.xsolla.com/<merchant ID>/<Publisher Account section>.
  • A API key é mostrada na Conta de Distribuidor apenas uma vez, durante a criação, e deve ser armazenada por você. Você pode criar uma nova chave na seguinte seção:
    • Company settings > API keys
    • Project settings > API keys
Obrigatório.
Aviso

Para obter mais informações sobre como trabalhar com chaves de API, consulte a Referência de API.

Principais recomendações:

  • Salve a chave de API gerada cuidadosamente. Você pode visualizar a chave de API na Conta de Distribuidor apenas uma vez, durante sua criação.
  • Mantenha sua chave de API em segredo. Ela fornece acesso à sua conta pessoal e aos seus projetos na Conta de Distribuidor.
  • A chave de API deve ser armazenada em seu servidor, e jamais em arquivos binários ou no frontend.

Se uma chamada de API que você precisa não contiver o trajeto-parâmetro project_id, use a chave de API que for válida em todos os projetos da empresa para configurar a autorização.

ParâmetroDescrição
sourceTypeTipo de fonte de dados. Ele pode ter os seguintes valores:
  • client. Esse tipo de origem não é considerado confiável e todos os respectivos eventos no armazenamento têm o status trusted: false.
  • server. Esse tipo de origem é considerado confiável e todos os respectivos eventos no armazenamento têm o status trusted: true.
sourceNameNome da fonte de dados.
projectIdID do projeto.
EXEMPLO
Copy
Full screen
Small screen

http

  • http
  • php
POST https://tracking-api.xsolla.com/v1/tokens

Headers:
Content-Type: application/json
Authorization: Basic 12kj3hlk1j2hlkjhlk1j2h3lkj

Body:
{
  "sourceType": "client",
  "sourceName": "landing",
  "projectId": 1
}

HTTP/1.1 201 Token created
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsaW5rIjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2 g_dj1kUXc0dzlXZ1hjUSJ9.aVigY6UVY3jgoEKoBv31cZnROL3I6WKtcr5K-Z7B1du"
}
<?php

$curl = curl_init();

$merchantId = 1;
$projectId = 2;
$apiKey = '<apiKey>';

$payload = [
    'sourceType' => 'server',
    'sourceName' => 's1',
    'projectId' => $projectId,
];

curl_setopt($curl, CURLOPT_USERPWD, $merchantId . ":" . $apiKey);


curl_setopt_array($curl, array(
    CURLOPT_URL => "https://tracking-api.xsolla.com/v1/tokens",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => [
        "Content-type: application/json"
    ],
));


$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
Código de respostaDescrição
201Token criado
400Os parâmetros de consulta não são válidos
401A chave do projeto não é válida

Envio do evento de inscrição

Você precisa primeiro obter um token para fazer isso.

SOLICITAÇÃO HTTP

Copy
Full screen
Small screen
POST https://tracking-api.xsolla.com/v1/events

Ao enviar o método, as seguintes etapas são concluídas:

  1. O usuário final segue o link de rastreamento encontrado na fonte de tráfego (fluxo do influenciador, página promocional, etc.). A ação recebe seu Click ID.
  2. O Tracking ID de rastreamento é formado no lado da página Proxy e passado para a página de destino no parâmetro.
  3. O usuário visita a página de destino e se cadastra.
  4. O desenvolvedor do jogo passa o User ID e o Tracking ID no parâmetro enviando o evento de registro via Tracking API.

CabeçalhoDescrição
AuthorizationToken obtido anteriormente.
ParâmetroTipoDescrição
typeStringToken obtido anteriormente.
traitsObjetoDados de identificação do usuário:
  • trackingId – Tracking ID do usuário redirecionado para o site do jogo. A Xsolla envia-o no parâmetro de solicitação após o redirecionamento.
  • userIduser ID atribuído na criação do token.
contextObjetoDeve estar vazio.
propertiesObjetoDeve estar vazio.
EXEMPLO
Copy
Full screen
Small screen

http

  • http
  • php
POST https://tracking-api.xsolla.com/v1/events

Headers:
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsaW5rIjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g_d j1kUXc0dzlXZ1hjUSJ9.aVigY6UVY3jgoEKoBv31cZnROL3I6WKtcr5K-Z7B1yU

Body:
{
  "type": "registration",
  "traits": {
    "trackingId": "19e2DLjNTk2YOdXA4d8J3NReNkXNafhC",
    "userId": "20181126"
  },
  "properties": {
  },
  "context": {
  }
}'
<?php

$curl = curl_init();

$token  = '<token>';

$payload = [
    'type' => 'registration',
    'traits' => [
        'trackingId' => "19e2DLjNTk2YOdXA4d8J3NReNkXNafhC",
        'userId' => "20181126",
    ],
    'properties' => [],
    'context' => [],
];

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://tracking-api.xsolla.com/v1/events",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => json_encode($payload,JSON_FORCE_OBJECT),
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer {$token}",
        "Content-type: application/json"
    ],
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
}

Crie um evento

Você precisa primeiro obter um token para fazer isso.

SOLICITAÇÃO HTTP

Copy
Full screen
Small screen
POST https://tracking-api.xsolla.com/v1/events
CabeçalhoDescrição
AuthorizationToken obtido anteriormente.
ParâmetroTipoDescrição
typeStringTipo de evento.
traitsObjetoDados de identificação do usuário: telefone, e-mail, ID no jogo, etc.
contextObjetoDados contextuais.
propertiesObjetoPropriedades do evento.
createdAtDataFormato: datahora por RFC 3339 ou ISO 8601.
EXEMPLO DE EVENTO: TRANSIÇÃO PARA A PÁGINA DE DESTINO
Copy
Full screen
Small screen
POST https://tracking-api.xsolla.com/v1/events

Headers:
Content-Type: application/json
Authorization: Bearer
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsaW5rIjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g_d j1kUXc0dzlXZ1hjUSJ9.aVigY6UVY3jgoEKoBv31cZnROL3I6WKtcr5K-Z7B1yU 

Body:
{
  "type": "landing_visit",
  "traits":{
    },
  "properties":{
    },
  "context": {
    "user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36", "user_locale":"ru"
  }
}

EXEMPLO DE EVENTO: TRANSIÇÃO PARA PAY STATION

Copy
Full screen
Small screen
POST https://tracking-api.xsolla.com/v1/events

Headers:
Content-Type: application/json
Authorization: Bearer
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsaW5rIjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g_d j1kUXc0dzlXZ1hjUSJ9.aVigY6UVY3jgoEKoBv31cZnROL3I6WKtcr5K-Z7B1yU 

Body:
{
  "type": "buy_btn",
  "traits":{
    },
  "properties":{
    "pkg_type":"bronze"
    },
  "context": {
    "user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36", "user_locale":"ru"
  }
}
Código de respostaDescrição
204Evento adicionado
400O evento não é válido
401O token não é válido

Inicialize o evento

Você precisa primeiro obter um token para fazer isso.

Copy
Full screen
Small screen
xnt("init", YOUR_TOKEN);

Enviar evento

Copy
Full screen
Small screen
xnt("sendEvent", EVENT_TYPE, EVENT_PROPERTIES);
ParâmetroDescrição
EVENT_TYPENome do evento (cadeia de caracteres). Por exemplo, landing_visit.
EVENT_PROPERTIESPropriedades do evento (objeto JS).
EXEMPLO
Copy
Full screen
Small screen
xnt("sendEvent", "landing_visit");
xnt("sendEvent", "buy_btn", { pkg_type: $(this).data('id') });

PARÂMETROS DO EVENTO

ParâmetroDescrição
sourceOrigem do evento (paystation, landing_page, etc.).
typeTipo de evento (user_visit, hit, etc.).
traitsDados do usuário (e-mail, user_id, apelido, etc.).
contextContexto do evento (ip, gaClientId, etc.).
propertiesPropriedades do evento (soma, aumento de nível, etc.).
createdAtHora do evento, conforme passado pela origem.
timestampHora do recebimento do evento pelo sistema.
Para complementar o evento com os parâmetros context e traits, use os seguintes métodos:
Copy
Full screen
Small screen
xnt("putContext", CONTEXT_OBJECT);
xnt("putTraits", TRAITS_OBJECT);
ParâmetroDescrição
CONTEXT_OBJECTContexto do evento (objeto JS).
TRAITS_OBJECTDados do usuário (objeto JS).
Observação
userAgent e userLocale do contexto será adicionado automaticamente. Os dados adicionados por esses dois métodos serão combinados com os dados do evento.

Implemente o script

Implemente o seguinte script na página de destino:

Copy
Full screen
Small screen
<script>
(function(i,s,o,g,r,a,m){i['XsollaNetworkTrackingObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(ar guments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.inse rtBefore(a,m)})(window,document,'script','https://cdn.xsolla.net/network/xtracking-0.1.js','xnt');
xnt("init", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsaW5rIjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g_ dj1kUXc0dzlXZ1hjUSJ9.aVigY6UVY3jgoEKoBv31cZnROL3I6WKtcr5K-Z7B1du");
xnt("sendEvent", "buy_btn", { pkg_type : "gold" });
</script>
Este artigo foi útil?
Obrigado!
Podemos melhorar alguma coisa? Mensagem
Que pena ouvir isso
Explique porque este artigo não foi útil para você. Mensagem
Obrigado pelo seu feedback!
Avaliaremos sua mensagem e a usaremos para melhorar sua experiência.
Última atualização: 13 de Mai de 2024

Encontrou um erro de texto ou digitação? Selecione o texto e pressione Ctrl+Enter.

Relatar um problema
Nós sempre avaliamos nossos conteúdos. Seu feedback nos ajuda a melhorá-los.
Forneça um e-mail para que possamos responder
Obrigado pelo seu feedback!