Acompanhamento de conversões de app e remarketing: especificações de solicitação/resposta

User agent de aplicativos

Como parte dos nossos esforços mais amplos para combater o spam, desenvolvemos uma especificação padrão para o cabeçalho do user agent enviada por um produto de análise/anúncios em nome de um usuário do app. O user agent do app pode ser derivado do código nativo para aderir à seguinte especificação:

name version (os_and_version; locale; device; build; Proxy)

A definição desses campos é a seguinte:

Componentes do user agent
name

Nome do produto de análise/anúncios. (Google AdMob)

Se o user agent for criado no lado do cliente, name será o ID do pacote do app cliente.


Android
// Specified by API consumer.

iOS
// Specified by API consumer.
version

A versão do produto de análise/anúncios. (7.10.1)


Android
// Specified by API consumer.

iOS
// Specified by API consumer.
os_and_version

O sistema operacional e a versão do sistema operacional em que o app está sendo executado. (Android 6.0 )


Android
String osAndVersion =
    "Android " + Build.VERSION.RELEASE;

iOS
UIDevice *uid =
  [UIDevice currentDevice];
NSString *osAndVersion =
  [NSString
    stringWithFormat:@"%@ %@",
    [uid systemName],
    [uid systemVersion]];
locale

Uma tag de localidade IETF para o dispositivo, usando o código de duas letras do idioma e o país separados por um sublinhado. (en_US)


Android
String locale = Locale.getDefault();

iOS
NSString *locale =
  [[NSLocale currentLocale]
    localeIdentifier]
device

O nome do dispositivo físico que executa o produto de análises/anúncios. (iPhone9,1)


Android
String device = Build.MODEL;

iOS
@import Darwin.sys.sysctl;

NSString *device(void) {
  size_t bufferSize = 64;
  NSMutableData *buffer =
    [[NSMutableData alloc]
      initWithLength:bufferSize];
  int status =
    sysctlbyname("hw.machine",
      buffer.mutableBytes,
      &bufferSize, NULL, 0);
  if (status != 0) {
    return nil;
  }
  return [[NSString alloc]
    initWithCString:buffer.mutableBytes
    encoding:NSUTF8StringEncoding];
}
build

"Build/" seguido pelo número do build do sistema operacional. (Build/13D15)


Android
String build = "Build/" + Build.ID;

iOS
@import Darwin.sys.sysctl;

NSString *build(void) {
  size_t bufferSize = 64;
  NSMutableData *buffer =
    [[NSMutableData alloc]
      initWithLength:bufferSize];
  int status =
    sysctlbyname("kern.osversion",
      buffer.mutableBytes,
      &bufferSize, NULL, 0);
  if (status != 0) {
    return nil;
  }
  return [[NSString alloc]
    initWithCString:buffer.mutableBytes
    encoding:NSUTF8StringEncoding];
}

Inclua ; Proxy somente no final do user agent do app ao construir o servidor do user agent do app. Se o user agent do app for totalmente construído no lado do cliente, exclua ; Proxy. Assim, um user agent de um app pode ser:

  • Android: AdMob/7.10.1 (Android 6.0; en_US; SM-G900F; Build/MMB29M; Proxy)
  • iOS: AdMob/7.10.1 (iOS 10.0.2; en_US; iPhone9,1; Build/13D15; Proxy)

Solicitação de acompanhamento de conversões

O objetivo das solicitações de acompanhamento de conversões é notificar o Google Ads sobre um evento do app que deve ser rastreado como uma conversão e/ou usado para preencher uma lista de remarketing e recuperar metadados que descrevem qualquer clique anterior ao evento.

Todas as chamadas de API são feitas para o domínio www.googleadservices.com. As solicitações de conversão são solicitações POST via HTTPS no seguinte caminho:

/pagead/conversion/app/version
, em que version é a versão pretendida da API de acompanhamento de conversões. No momento, a única versão válida é 1.0.

Uma solicitação de conversão de app padrão conterá os seguintes parâmetros.

Solicitação de acompanhamento de conversões
dev_token

Obrigatório


Local: consulta


O token de desenvolvedor exclusivo e estático emitido para o consumidor de API.

Z_eErE4DkvcKjDM1OVE4c4
link_id

Obrigatório


Local: consulta


O identificador do link que vincula o token de desenvolvedor do consumidor da API a um aplicativo específico.

31FF8D67E5BB5DD5029DCC2734C2F884
app_event_type

Obrigatório


Local: consulta


O nome do evento de app que ocorreu. Este campo é uma enumeração e aceita apenas os seguintes valores:

 • first_open
 • session_start
 • in_app_purchase
 • view_item_list
 • view_item
 • view_search_results
 • add_to_cart
 • ecommerce_purchase
 • custom

O evento first_open precisa ser sempre enviado para atribuir instalações e o evento session_start sempre deve ser enviado para sessões de atribuição. Use in_app_purchase para compras feitas na app store nativa. Use ecommerce_purchase para todas as outras compras.

app_event_name

Obrigatório em determinadas condições


Local: consulta


O nome de qualquer evento de aplicativo personalizado que não seja aceito no campo app_event_type. Esse campo precisa conter de 1 a 64 caracteres Unicode (usando a codificação UTF-8). Este campo será obrigatório se app_event_type for personalizado.

level_achieved
Level Achieved

O campo não pode conter nenhum dos valores reservados para app_event_type. Se um nome de evento reservado for usado, a API retornará um erro APP_EVENT_NAME_RESERVED_VALUE.

app_event_data

Opcional


Local: corpo


Encaminhar dados de eventos avançados adicionais como uma simples chave de string de mapeamento de objeto JSON para valores. Os valores aceitáveis são strings e matrizes de strings.

{"level": 5, "attempts": 20}
rdid

Obrigatório


Local: consulta


Uma string UUID válida que representa o ID bruto do dispositivo.

f10e1de2-e237-4f50-b6aa-843c45cc63d6

Caso o ID do dispositivo esteja ausente, por exemplo, o ID de um usuário sem consentimento da ATT, defina-o como zero.

00000000-0000-0000-0000-000000000000
id_type

Obrigatório


Local: consulta


O tipo de identificador armazenado no campo rdid. Aceitaremos mais valores aqui no futuro, mas, para começar, vamos oferecer suporte ao seguinte.


Android

advertisingid

iOS

idfa
lat

Obrigatório


Local: consulta


Status de rastreamento de anúncios limitado pelo dispositivo.

  • 0: o usuário não escolheu limitar o rastreamento de anúncios.
  • 1: o usuário escolheu limitar o rastreamento de anúncios.

app_version

Obrigatório


Local: consulta


A versão atual do app. Deve ser padronizada da seguinte maneira.


Android

packageManager.getPackageInfo(packageName(),
  PackageManager.GET_META_DATA).versionName

iOS

[[[NSBundle mainBundle] infoDictionary]
  objectForKey:@"CFBundleShortVersionString"]

1.2.4
os_version

Obrigatório


Local: consulta


A versão atual do SO host do app. Isso precisa ser padronizado da seguinte maneira.


Android

android.os.Build.VERSION.RELEASE

iOS

[[UIDevice currentDevice] systemVersion]
sdk_version

Obrigatório


Local: consulta


A versão do SDK que mediu o evento. Como ela é usada principalmente para depuração, precisa refletir a versão de lançamento exatamente como foi publicada com as versões do SDK. Se o app não usar um SDK, transmita o mesmo valor que app_version.

1.9.5r6
timestamp

Obrigatório


Local: consulta


É o carimbo de data/hora UNIX de quando o evento de conversão ocorreu em segundos com precisão de até microssegundos.

1432681913.123456
value

Opcional


Local: consulta


O valor monetário do evento, se houver. Ela precisa sempre ser formatada como um valor de ponto flutuante legível por máquina usando um ponto decimal para separar a parte inteira e fracionária do valor.

1.99
currency_code

Obrigatório em determinadas condições


Local: consulta


É o código de moeda ISO 4217 para o parâmetro value. Este campo é obrigatório se o parâmetro value for fornecido e não estiver em branco.

USD
gclid

Obrigatório em determinadas condições


Local: consulta


O valor do parâmetro de consulta gclid de um URL de link direto que abriu o aplicativo.

Cj0KEQjw0dy4BRCuuL_e5M
market_referrer_gclid

Obrigatório em determinadas condições


Local: consulta


O valor do parâmetro de consulta gclid de um URL de link direto capturado do valor de install_referrer pela API Play Install Referrer.

BX3QojHp4mY5MrJtFM_d1u
gclid_only_request

Obrigatório em determinadas condições


Local: consulta


Identificador para atribuição baseada em gclid em cenários em que rdid (advertisingid) está not disponível ou todos zeroes E ou gclid ou market_referrer_gclid está presente.

1
gbraid

Obrigatório em determinadas condições


Local: consulta


Última visualização: o valor gbraid foi enviado pelo URL do link direto que abriu o app. Observe que isso precisa ser armazenado em cache no app para que possa ser enviado com as conversões futuras que acontecem no app.

ChEI8IixhgYQrufHkIjz3YWRARIzALev_G_O
app_open_source

Obrigatório em determinadas condições


Local: consulta


Valor para identificar link direto no clique no anúncio ou sessões orgânicas do aplicativo.

ad_click or organic
User-Agent

Obrigatório


Local: cabeçalho


O user agent do app, conforme definido na seção anterior.

AdMob/7.10.1 (Android 6.0; en_US; SM-G900F; Build/MMB29M)
X-Forwarded-For

Obrigatório


Local: cabeçalho


O endereço IPv4 ou IPv6 público do dispositivo em que o evento foi medido.

216.58.194.174

Todas as solicitações precisam ser enviadas por HTTPS. Os pings recebidos por HTTP serão recusados.

Se o corpo da solicitação estiver vazio (nos casos em que nenhum dado de evento avançado é transmitido no payload app_event_data), nosso servidor exigirá que você defina explicitamente o cabeçalho Content-Length: 0 na solicitação.

Exemplo de solicitação

Veja um exemplo de solicitação de acompanhamento de conversão válida com um tipo de evento não personalizado e as informações de receita:

POST /pagead/conversion/app/1.0
       ?dev_token=Z_eErE4DkvcKjDM1OVE4c4
       &link_id=31FF8D67E5BB5DD5029DCC2734C2F884
       &app_event_type=in_app_purchase
       &rdid=0F7AB11F-DA50-498E-B225-21AC1977A85D
       &id_type=idfa
       &lat=0
       &app_version=1.2.4
       &os_version=9.3.2
       &sdk_version=1.9.5r6
       &timestamp=1432681913.123456
       &value=1.99
       &currency_code=USD
Host: www.googleadservices.com
User-Agent: MyAnalyticsCompany/1.0.0 (iOS 10.0.2; en_US; iPhone9,1; Build/13D15; Proxy)
X-Forwarded-For: 216.58.194.174
Content-Type: application/json; charset=utf-8
{"app_event_data":{"item_id":["Crayons","Markers"]}}

Veja um exemplo de solicitação de acompanhamento de conversão válida com um tipo de evento não personalizado e as informações de receita com o rdid (advertisingid) não disponível:

POST /pagead/conversion/app/1.0
       ?dev_token=Z_eErE4DkvcKjDM1OVE4c4
       &link_id=31FF8D67E5BB5DD5029DCC2734C2F884
       &app_event_type=in_app_purchase
       &rdid=00000000-0000-0000-0000-000000000000
       &id_type=advertisingid
       &lat=1
       &app_version=1.2.4
       &os_version=9.3.2
       &sdk_version=1.9.5r6
       &timestamp=1432681913.123456
       &value=1.99
       &currency_code=USD
       &market_referrer_gclid=BX3QojHp4mY5MrJtFM_d1u
       &gclid=Cj0KEQjw0dy4BRCuuL_e5M
       &gclid_only_request=1
Host: www.googleadservices.com
User-Agent: MyAnalyticsCompany/1.0.0 (iOS 10.0.2; en_US; Android,1; Build/13D15; Proxy)
X-Forwarded-For: 216.58.194.174
Content-Type: application/json; charset=utf-8
{"app_event_data":{"item_id":["Crayons","Markers"]}}

Veja um exemplo de solicitação válida de início de sessão:

POST /pagead/conversion/app/1.0
       ?dev_token=Z_eErE4DkvcKjDM1OVE4c4
       &link_id=31FF8D67E5BB5DD5029DCC2734C2F884
       &app_event_type=session_start
       &rdid=0F7AB11F-DA50-498E-B225-21AC1977A85D
       &id_type=idfa
       &lat=0
       &app_version=1.2.4
       &os_version=9.3.2
       &sdk_version=1.9.5r6
       &timestamp=1432681913.123456
Host: www.googleadservices.com
User-Agent: MyAnalyticsCompany/1.0.0 (iOS 10.0.2; en_US; iPhone9,1; Build/13D15; Proxy)
X-Forwarded-For: 216.58.194.174
Content-Type: application/json; charset=utf-8

Veja a seguir um exemplo de solicitação válida de reatribuição de início de sessão para uma sessão iniciada pelo link direto example://product/123?gclid=Cj0KEQjw0dy4BRCuuL_e5M:

POST /pagead/conversion/app/1.0
       ?dev_token=Z_eErE4DkvcKjDM1OVE4c4
       &link_id=31FF8D67E5BB5DD5029DCC2734C2F884
       &app_event_type=session_start
       &rdid=0F7AB11F-DA50-498E-B225-21AC1977A85D
       &id_type=idfa
       &lat=0
       &app_version=1.2.4
       &os_version=9.3.2
       &sdk_version=1.9.5r6
       &timestamp=1432681913.123456
       &gclid=Cj0KEQjw0dy4BRCuuL_e5M
Host: www.googleadservices.com
User-Agent: MyAnalyticsCompany/1.0.0 (iOS 10.0.2; en_US; iPhone9,1; Build/13D15; Proxy)
X-Forwarded-For: 216.58.194.174
Content-Type: application/json; charset=utf-8

Codificação de dados do evento

Para o parâmetro do corpo app_event_data, use as seguintes convenções para os tipos de dados primitivos:

  • Ponto flutuante

    • Use o caractere ponto como separador decimal, independentemente da localização do app
    • Use uma precisão decimal de dois dígitos para representar valores monetários, por exemplo, 2,99
    • Não use notação exponencial, por exemplo, 2E+9.
    • Não use um caractere vírgula para separar grupos de dígitos, por exemplo, 1.000.000
    • Exemplos válidos:
      • -0.5
      • 2.99
      • 1000000.123
  • Número inteiro

    • Envie apenas valores inteiros inteiros sem dígitos decimais
    • Não use caracteres curinga para separar grupos de dígitos, por exemplo, 1.000.000.
    • Exemplos válidos:
      • 1000
      • -11
      • 0
  • Date

    • Formato da data: aaaa-mm-dd
      • yyyy = ano com quatro dígitos, por exemplo, 2016
      • mm = mês com dois dígitos, por exemplo, 09 para setembro
      • dd = dia com dois dígitos, por exemplo, 23 para o 23o dia do mês
    • Sempre envie o número de dígitos especificados acima. Por exemplo, se enviar o valor de dd para o quinto dia do mês, envie 05.
    • Exemplos válidos:
      • "2016-09-23"
      • "1990-12-31"
  • Carimbo de data/hora

    • Formato de hora: carimbo de data/hora Unix/époch definido no fuso horário UTC com precisão de até microssegundos
    • Exemplos válidos:
      • 1478713087 para quarta-feira, 9 de novembro de 2016 17:38:07 GMT
      • 1073513982.123000 para quarta-feira, 7 de janeiro de 2004 22:19:42.123 GMT
  • Matrizes

    • Envie apenas matrizes de valores primitivos (strings, números e booleanos)
    • Exemplos válidos:
      • [123, 456, 789]
      • ["abc"]

Resposta do acompanhamento de conversões

A resposta do acompanhamento de conversões tem o seguinte formato:

{
  "ad_events": [<ad event objects>],
  "errors": [<error strings>],
  "attributed": true|false
}

As matrizes ad_events e errors podem estar vazias.

Esperamos que os erros sejam códigos de erro legíveis por máquina, por exemplo, invalid_timestamp.

Os eventos de anúncios são os principais objetos da atribuição de apps e conterão as seguintes propriedades.

Resposta do acompanhamento de conversões
ad_event_id

Sempre presente


string


ad_event_id serve como um identificador exclusivo de eventos de anúncio. Ele é reutilizado na solicitação de atribuição de várias redes e precisa ser registrado/retido para fins de depuração.

Q2owS0VRancwZHk0QlJDdXVMX2U1TQ
conversion_metric

Sempre presente


string


É a métrica de conversão usada para atribuição. Inicialmente, vamos oferecer suporte a uma métrica de conversão.

conversion
timestamp

Sempre presente


number


É o carimbo de data/hora UNIX de eventos do anúncio em segundos com precisão de até microssegundos. Esse valor deve ser usado para a atribuição de último clique.

1432681913.123456
campaign_type

Sempre presente


string


Esse campo identifica o tipo de campanha que produziu o evento de anúncio. Veja os valores possíveis a seguir.

ACI
ACE
Search
Display
Video
Shopping
Hotel
Performance_Max
Other

ACI é uma abreviação de "Campanha de apps para instalação". ACE é a abreviação de Campanhas de apps para engajamento.

campaign_id

Sempre presente


number


O ID numérico da campanha que produziu o evento de anúncio. Esse valor é garantido exclusivo.

123456789
campaign_name

Sempre presente


string


Nome da campanha definida pelo anunciante da campanha que produziu o evento de anúncio. Não é garantido que esse valor seja único.

Occasional Gamers (Video)
ad_type

Sempre presente


string


O tipo de anúncio que resultou no evento do anúncio. É possível usar esse valor para distinguir entre vários tipos de inventário, conforme mostrado a seguir.

Promoção de apps
ClickToDownload
Engajamento de apps
AppDeepLink
Engajamento de apps: fluxo de instalação e continuidade
AppDeepLinkContinue
Opção geral para outros valores
Unknown
external_customer_id

Sempre presente


number


O identificador do anunciante proprietário da campanha que produziu o evento de anúncio. Esse valor pode ser usado para diferenciar contas do Google Ads.

123456789
location

Sempre presente


number


O código do código de localização para a localização geográfica do evento de anúncio. Consulte a referência da API Google Ads para interpretar os códigos de local.

network_type

Sempre presente


string


Esse campo identifica a rede de publicidade do Google Ads em que o evento de anúncio ocorreu. Veja os valores possíveis:

Search
Display
YouTube
network_subtype

Será null quando campaign_type for ACI ou ACE e network_type for Display.


string


Esse campo identifica o "subtipo" da rede de publicidade do Google Ads em que o evento de anúncio ocorreu. Os valores possíveis variam de acordo com o tipo de rede principal.


Pesquisa Google comum
GoogleSearch
Parceiros de pesquisa do Google
SearchPartners

Tela

Editores da Web para dispositivos móveis
mGDN
Editores de apps
Google AdMob

YouTube

Rede de vídeos do YouTube
YouTubeVideos
Rede de pesquisa do YouTube
YouTubeSearch
Parceiros de vídeo
VideoPartners
video_id

Fornecido apenas quando network_type for YouTube e campaign_type não for ACI e ACE.


string


ID do vídeo do YouTube associado ao evento de anúncio.

dQw4w9WgXcQ
keyword

Fornecido apenas quando network_type for Search e campaign_type não for ACI e ACE.


string


Palavra-chave da rede de pesquisa associada ao evento de anúncio.

+food +delivery
match_type

Fornecido apenas quando network_type for Search e campaign_type não for ACI e ACE.


string


O tipo de correspondência de palavras-chave da rede de pesquisa.

Exata
e
Frase
p
Ampla
b
placement

Fornecido apenas quando network_type for Display e campaign_type não for ACI e ACE.


string


Posição associada ao evento de anúncio.

mobileapp::1-343200656
ad_group_id

Sempre presente


number


O código numérico do grupo de anúncios que foi produzido com o evento do anúncio. Esse valor é garantido único.

123456789
ad_group_name

Fornecido apenas quando campaign_type for ACI, ACE ou ACPRE.


string


Nome do grupo de anúncios definido pelo anunciante que produziu o evento de anúncio. Não é garantido que esse valor seja único.

My App AdGroup
creative_id

Fornecido apenas quando campaign_type não for ACI e ACE.


number


O código numérico do bloco de anúncios do criativo que produziu o evento de anúncio. Esse valor é garantido único.

123456789
interaction_type

Este campo será sempre de engajamento.


string

Exemplos de respostas

Veja a seguir um exemplo de resposta de acompanhamento de conversões quando a solicitação contém erros:

{
  "ad_events": [],
  "errors": ["INVALID_CURRENCY_CODE"],
  "attributed": false
}

Veja a seguir um exemplo de resposta de acompanhamento de conversões negativa:

{
  "ad_events": [],
  "errors": [],
  "attributed": false
}

Será retornada uma resposta de acompanhamento de conversões para todas as solicitações.

Um exemplo de resposta afirmativa do acompanhamento de conversões para uma campanha universal para apps é:

{
  "ad_events": [{
    "ad_event_id": "Q2owS0VRancwZHk0QlJDdXVMX2U1TQ",
    "conversion_metric": "conversion",
    "interaction_type": "engagement",
    "campaign_type": "ACI",
    "campaign_id": 123456789,
    "campaign_name": "My App Campaign",
    "ad_type": "ClickToDownload",
    "external_customer_id": 123456789,
    "location": 21144,
    "network_type": "Search",
    "network_subtype": "GoogleSearch",
    "video_id": null,
    "keyword": null,
    "match_type": null,
    "placement": null,
    "ad_group_id": null,
    "ad_group_name": "",
    "creative_id": null,
    "timestamp": 1432681913.123456
  }],
  "errors": [],
  "attributed": true
}

Um exemplo de uma resposta afirmativa de acompanhamento de conversões para uma campanha de pesquisa é:

{
  "ad_events": [{
    "ad_event_id": "Q2owS0VRancwZHk0QlJDdXVMX2U1TQ",
    "conversion_metric": "conversion",
    "interaction_type": "engagement",
    "campaign_type": "Search",
    "campaign_id": 123456789,
    "campaign_name": "My App Campaign",
    "ad_type": "ClickToDownload",
    "external_customer_id": 123456789,
    "location": 21144,
    "network_type": "Search",
    "network_subtype": "GoogleSearch",
    "video_id": null,
    "keyword": "+space +birds",
    "match_type": "b",
    "placement": null,
    "ad_group_id": 123456789,
    "ad_group_name": "My App AdGroup",
    "creative_id": 123456789,
    "timestamp": 1432681913.123456
  }],
  "errors": [],
  "attributed": true
}

Um exemplo de resposta afirmativa do acompanhamento de conversões para uma campanha de display é:

{
  "ad_events": [{
    "ad_event_id": "Q2owS0VRancwZHk0QlJDdXVMX2U1TQ",
    "conversion_metric": "conversion",
    "interaction_type": "engagement",
    "campaign_type": "Display",
    "campaign_id": 123456789,
    "campaign_name": "My App Campaign",
    "ad_type": "ClickToDownload",
    "external_customer_id": 123456789,
    "location": 21144,
    "network_type": "Display",
    "network_subtype": "mGDN",
    "video_id": null,
    "keyword": null,
    "match_type": null,
    "placement": "mobile-app::2-343200656",
    "ad_group_id": 123456789,
    "ad_group_name": "My App AdGroup",
    "creative_id": 123456789,
    "timestamp": 1432681913.123456
  }],
  "errors": [],
  "attributed": true
}

Um exemplo de uma resposta afirmativa de acompanhamento de conversões para uma campanha do YouTube é:

{
  "ad_events": [{
    "ad_event_id": "Q2owS0VRancwZHk0QlJDdXVMX2U1TQ",
    "conversion_metric": "conversion",
    "interaction_type": "engagement",
    "campaign_type": "Video",
    "campaign_id": 123456789,
    "campaign_name": "My App Campaign",
    "ad_type": "ClickToDownload",
    "external_customer_id": 123456789,
    "location": 21144,
    "network_type": "YouTube",
    "network_subtype": "YouTubeVideos",
    "video_id": "dQw4w9WgXcQ",
    "keyword": null,
    "match_type": null,
    "placement": null,
    "ad_group_id": 123456789,
    "ad_group_name": "My App AdGroup",
    "creative_id": 123456789,
    "timestamp": 1432681913.123456
  }],
  "errors": [],
  "attributed": true
}

Solicitação de atribuição de várias redes

Quando o Google Ads responde a uma solicitação de acompanhamento de conversões, o consumidor da API precisa notificar o Google Ads sobre a decisão de atribuição de várias redes depois de identificar o último clique.

A solicitação de atribuição de várias redes é idêntica à solicitação de acompanhamento de conversões original, mas com um caminho de solicitação de:

/pagead/conversion/app/1.0/cross_network

e dois parâmetros obrigatórios:

Solicitação de atribuição de várias redes
ad_event_id

Obrigatório


Local: consulta


É o identificador ad_event_id do evento de anúncio associado à atribuição na solicitação anterior.

attributed

Obrigatório


Local: consulta


Indica se o Google Ads recebeu ou não crédito pela conversão pelo consumidor da API. 0 ou 1.

Veja um exemplo de solicitação de atribuição válida de várias redes:

POST /pagead/conversion/app/1.0/cross_network
       ?dev_token=Z_eErE4DkvcKjDM1OVE4c4
       &link_id=31FF8D67E5BB5DD5029DCC2734C2F884
       &app_event_type=custom
       &app_event_name=level_achieved
       &rdid=0F7AB11F-DA50-498E-B225-21AC1977A85D
       &id_type=idfa
       &lat=0
       &app_version=1.2.4
       &os_version=9.3.2
       &sdk_version=1.9.5r6
       &timestamp=1432681913.123456
       &value=1.99
       &currency_code=USD
       &ad_event_id=Q2owS0VRancwZHk0QlJDdXVMX2U1TQ
       &attributed=1
Host: www.googleadservices.com
User-Agent: MyAnalyticsCompany/1.0.0 (iOS 10.0.2; en_US; iPhone9,1; Build/13D15; Proxy)
X-Forwarded-For: 216.58.194.174
Content-Type: application/json; charset=utf-8

Uma solicitação de atribuição válida de várias redes sempre recebe uma resposta genérica 200 sem corpo de resposta.