Método: reports.batchGet

Retorna os dados do Google Analytics.

Solicitação HTTP

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet

Esse URI usa a sintaxe URI Template.

Corpo da solicitação

O corpo da solicitação contém dados com esta estrutura:

Representação JSON

{
  "reportRequests": [
    {
      object(ReportRequest)
    }
  ],
}
Nome do campo Tipo Descrição
reportRequests[] object(ReportRequest) Solicitações. Cada solicitação terá uma resposta separada. Pode haver no máximo cinco solicitações. Todas as solicitações devem ter o mesmo dateRanges, viewId, segments, samplingLevel e cohortGroup.

Corpo da resposta

Se houver sucesso, o corpo da resposta contém dados com esta estrutura:

A principal classe de resposta que contém os relatórios da chamada batchGet da API de relatórios.

Representação JSON

{
  "reports": [
    {
      object(Report)
    }
  ],
}
Nome do campo Tipo Descrição
reports[] object(Report) Respostas que correspondem a cada uma das solicitações.

Autorização

Requer um dos seguintes escopos do OAuth:

  • https://www.googleapis.com/auth/analytics.readonly
  • https://www.googleapis.com/auth/analytics

ReportRequest

A principal classe de solicitação que especifica a solicitação da API de relatórios.

Representação JSON

{
  "viewId": string,
  "dateRanges": [
    {
      object(DateRange)
    }
  ],
  "samplingLevel": enum(Sampling),
  "dimensions": [
    {
      object(Dimension)
    }
  ],
  "dimensionFilterClauses": [
    {
      object(DimensionFilterClause)
    }
  ],
  "metrics": [
    {
      object(Metric)
    }
  ],
  "metricFilterClauses": [
    {
      object(MetricFilterClause)
    }
  ],
  "filtersExpression": string,
  "orderBys": [
    {
      object(OrderBy)
    }
  ],
  "segments": [
    {
      object(Segment)
    }
  ],
  "pivots": [
    {
      object(Pivot)
    }
  ],
  "cohortGroup": {
    object(CohortGroup)
  },
  "pageToken": string,
  "pageSize": number,
  "includeEmptyRows": boolean,
  "hideTotals": boolean,
  "hideValueRanges": boolean,
}
Nome do campo Tipo Descrição
viewId string O código da vista do Google Analytics da qual os dados serão recuperados. Todo ReportRequest em um método batchGet precisa conter o mesmo viewId.
dateRanges[] object(DateRange) Períodos na solicitação. A solicitação pode ter no máximo dois períodos. A resposta conterá um conjunto de valores de métricas para cada combinação das dimensões em cada período na solicitação. Assim, se houver dois períodos, haverá dois conjuntos de valores de métricas: um para o período original e um para o segundo período. O campo reportRequest.dateRangesnão deve ser especificado para solicitações de coorte ou valor da vida útil. Se um período não for fornecido, o período padrão será: "startDate: data atual - 7 dias" e "endDate: data atual - 1 dia". Todo ReportRequest em um método batchGet precisa conter a mesma definição de dateRanges.
samplingLevel enum(Sampling) O tamanho da amostra do relatório. Se o campo samplingLevel não for especificado, o nível de amostragem DEFAULT será usado. Todo ReportRequest em um método batchGet precisa conter a mesma definição de samplingLevel. Consulte o guia do desenvolvedor para ver detalhes.
dimensions[] object(Dimension) As dimensões solicitadas. As solicitações podem ter um total de sete dimensões.
dimensionFilterClauses[] object(DimensionFilterClause) As cláusulas do filtro de dimensão para filtrar valores de dimensões. Elas são combinadas logicamente com o operador AND. A filtragem ocorre antes da agregação das dimensões. Assim, as métricas retornadas representam o total somente para as dimensões relevantes.
metrics[] object(Metric) As métricas solicitadas. As solicitações precisam especificar pelo menos uma métrica. Elas podem ter um total de 10 métricas.
metricFilterClauses[] object(MetricFilterClause) As cláusulas de filtro de métrica. Elas são combinadas logicamente com o operador AND. Os filtros de métricas consideram somente o primeiro período, não a comparação de períodos. A filtragem de métricas ocorre depois que elas são agregadas.
filtersExpression string Filtros de dimensões ou métricas que restringem os dados retornados para sua solicitação. Para usar filtersExpression, forneça uma dimensão ou métrica a ser filtrada, seguida pela expressão de filtro. Por exemplo, a expressão a seguir seleciona a dimensão ga:browser que começa com Firefox; ga:browser=~^Firefox. Para mais informações sobre filtros de dimensões e métricas, consulte a Referência de filtros.
orderBys[] object(OrderBy) Ordem de classificação das linhas exibidas. Para comparar duas linhas, os elementos a seguir são aplicados em ordem até que uma diferença seja encontrada. Todos os períodos são exibidos na mesma ordem de linha.
segments[] object(Segment) Segmente os dados retornados para a solicitação. Uma definição de segmento ajuda a analisar um subconjunto da solicitação de segmento. Uma solicitação pode conter até quatro segmentos. Todo ReportRequest em um método batchGet precisa conter a mesma definição de segments. Solicitações com segmentos precisam ter a dimensão ga:segment.
pivots[] object(Pivot) As definições de tabela dinâmica. As solicitações podem ter no máximo duas tabelas dinâmicas.
cohortGroup object(CohortGroup) Grupo de coorte associado à solicitação. Se há um grupo de coorte na solicitação, a dimensão ga:cohort precisa estar presente. Todo ReportRequest em um método batchGet precisa conter a mesma definição de cohortGroup.
pageToken string Um token de continuação para ter acesso à próxima página de resultados. Se você adicioná-lo à solicitação, as linha depois do pageToken serão retornadas. "pageToken" deve ser o valor retornado no parâmetro "nextPageToken" na resposta para a solicitação "reports.batchGet".
pageSize number O tamanho da página é referente à paginação e especifica o número máximo de linhas retornadas. O tamanho da página deve ser >= 0. Uma consulta retorna 1.000 linhas por padrão. A API de relatórios principais do Google Analytics retorna no máximo 100.000 linhas por solicitação, não importa quantas linhas você solicitar. Ela também pode retornar menos linhas do que o solicitado, quando não há a quantidade de segmentos de dimensão que você espera. Por exemplo, há menos de 300 valores possíveis para ga:country. Portanto, quando você segmenta somente por país, não é possível ver mais de 300 linhas, mesmo que defina pageSize como um valor mais alto.
includeEmptyRows boolean Quando esse parâmetro estiver definido como "false", a resposta não incluirá linhas se todas as métricas recuperadas forem iguais a zero. O valor padrão é "false", que exclui essas linhas.
hideTotals boolean Se esse parâmetro for definido como "true", o total das métricas de todas as linhas correspondentes será oculto para todos os períodos. O valor padrão é "false", que retorna os totais.
hideValueRanges boolean Se esse parâmetro for definido como "true", os valores mínimo e máximo serão ocultos em todas as linhas correspondentes. O valor padrão é "false", que retorna os períodos do valor.

DateRange

Um conjunto contíguo de dias: startDate, startDate + 1 dia, ..., endDate. As datas de início e término são especificadas no formato de data ISO8601: YYYY-MM-DD.

Representação JSON

{
  "startDate": string,
  "endDate": string,
}
Nome do campo Tipo Descrição
startDate string A data de início da consulta no formato AAAA-MM-DD.
endDate string A data de término da consulta no formato AAAA-MM-DD.

Amostragem

Valores para o nível de amostragem.

Valor de enumeração Descrição
SAMPLING_UNSPECIFIED Se o campo samplingLevel não for especificado, o nível de amostragem DEFAULT será usado.
DEFAULT Retorna uma resposta com um tamanho de amostra que equilibra velocidade e precisão.
SMALL Retorna uma resposta rápida com um tamanho de amostra menor.
LARGE Retorna uma resposta mais precisa com um tamanho de amostra maior. No entanto, a resposta pode ser mais lenta.

Dimensão

As dimensões são atributos dos seus dados. Por exemplo, a dimensão ga:city indica a cidade (por exemplo, "Paris" ou "Nova York") em que uma sessão se originou.

Representação JSON

{
  "name": string,
  "histogramBuckets": [
    string
  ],
}
Nome do campo Tipo Descrição
name string Nome da dimensão a ser buscada, por exemplo ga:browser.
histogramBuckets[] string
(int64 format)

Se não estiver vazio, inserimos valores de dimensões em intervalos depois da string para int64. Valores de dimensões que não são a representação da string de um valor integral serão convertidos para zero. Os valores de intervalos precisam estar em ordem crescente. Cada intervalo é fechado na extremidade inferior e aberto na extremidade superior. O "primeiro" intervalo inclui todos os valores inferiores ao primeiro limite e o "último" intervalo inclui todos os valores até o infinito. Valores de dimensões que estão em um intervalo são transformados em um novo valor de dimensão. Por exemplo, para uma lista de "0, 1, 3, 4, 7", retornamos estes intervalos:

  • intervalo 1: valores < 0, valor da dimensão "<0"
  • intervalo 2: valores em [0,1), valor da dimensão "0"
  • intervalo 3: valores em [1,3), valor da dimensão "1-2"
  • intervalo 4: valores em [3,4), valor da dimensão "3"
  • intervalo 5: valores em [4,7), valor da dimensão "4-6"
  • intervalo #6: valores >= 7, valor da dimensão "7+"

OBSERVAÇÃO: Se você está aplicando uma mudança no histograma de qualquer dimensão e usando essa dimensão na classificação, convém usar o tipo de classificação HISTOGRAM_BUCKET para isso. Sem ele, os valores das dimensões serão classificados de acordo com a ordem alfabética. Por exemplo, a ordem alfabética crescente é:

"<50", "1001+", "121-1000", "50-120"

E a ordem crescente de HISTOGRAM_BUCKET é:

"<50", "50-120", "121-1000", "1001+"

O cliente precisa solicitar explicitamente "orderType": "HISTOGRAM_BUCKET" para uma dimensão com alteração no histograma.

DimensionFilterClause

Um grupo de filtros de dimensões. Defina o valor do operador para especificar a forma com que os filtros são combinados logicamente.

Representação JSON

{
  "operator": enum(FilterLogicalOperator),
  "filters": [
    {
      object(DimensionFilter)
    }
  ],
}
Nome do campo Tipo Descrição
operator enum(FilterLogicalOperator) O operador para combinar vários filtros de dimensões. Se não for especificado, ele será tratado como um OR.
filters[] object(DimensionFilter) O conjunto repetido de filtros. Eles são combinados logicamente com base no operador especificado.

FilterLogicalOperator

A forma com que os filtros são combinados logicamente.

Valor de enumeração Descrição
OPERATOR_UNSPECIFIED Operador não especificado. É tratado como um OR.
OR O operador lógico OR.
AND O operador lógico AND.

DimensionFilter

O filtro de dimensões especifica as opções de filtragem em uma dimensão.

Representação JSON

{
  "dimensionName": string,
  "not": boolean,
  "operator": enum(Operator),
  "expressions": [
    string
  ],
  "caseSensitive": boolean,
}
Nome do campo Tipo Descrição
dimensionName string A dimensão a ser filtrada. Um "DimensionFilter" precisa conter uma dimensão.
not boolean Operador lógico NOT. Se esse booleano for definido como "true", os valores das dimensões correspondentes serão excluídos do relatório. O valor padrão é "false".
operator enum(Operator) Como corresponder a dimensão à expressão. O padrão é REGEXP.
expressions[] string Strings ou expressão regular para fazer a correspondência. Somente o primeiro valor da lista é usado para comparação, a não ser que o operador seja IN_LIST. Com o operador IN_LIST, toda a lista é usada para filtrar as dimensões, conforme explicado na descrição do operador IN_LIST.
caseSensitive boolean A correspondência deve diferenciar letras maiúsculas e minúsculas? O padrão é "false".

Operador

Tipos de correspondência diferentes suportados.

Valor de enumeração Descrição
OPERATOR_UNSPECIFIED Se o tipo de correspondência não for especificado, ele será tratado como um REGEXP.
REGEXP A expressão de correspondência é tratada como uma expressão regular. Todos os tipos de correspondência não são tratados como expressões regulares.
BEGINS_WITH Corresponde ao valor que começa com a expressão de correspondência fornecida.
ENDS_WITH Corresponde aos valores que terminam com a expressão de correspondência fornecida.
PARTIAL Correspondência de substring.
EXACT O valor deve corresponder à expressão de correspondência por completo.
NUMERIC_EQUAL

Filtros de comparação de números inteiros. A diferenciação de letras minúsculas e maiúsculas é ignorada para eles, e a expressão é considerada uma string que representa um número inteiro. Condições de falha:

  • Se a expressão não for um int64 válido, o cliente deverá esperar um erro.
  • Dimensões inseridas que não são valores int64 válidos nunca corresponderão ao filtro.
NUMERIC_GREATER_THAN Verifica se a dimensão é numericamente maior que a expressão de correspondência. Leia a descrição de NUMERIC_EQUALS para ver as restrições.
NUMERIC_LESS_THAN Verifica se a dimensão é numericamente menor que a expressão de correspondência. Leia a descrição de NUMERIC_EQUALS para ver as restrições.
IN_LIST

Essa opção é usada para especificar um filtro de dimensão cuja expressão aceita qualquer valor de uma lista de valores selecionados. Isso ajuda a evitar a avaliação de vários filtros de dimensões de correspondência exata que contêm "OR" em todas as linhas da resposta. Por exemplo:


expressions: ["A", "B", "C"]

Toda linha de resposta cuja dimensão tem um valor de A, B ou C corresponde a esse DimensionFilter.

Métrica

As métricas são avaliações quantitativas. Por exemplo, a métrica ga:users indica o número total de usuários do período solicitado.

Representação JSON

{
  "expression": string,
  "alias": string,
  "formattingType": enum(MetricType),
}
Nome do campo Tipo Descrição
expression string Uma expressão de métrica na solicitação. Uma expressão é criada a partir de uma ou mais métricas e números. Os operadores aceitos incluem: mais (+), menos (-), negação (- unário), dividido por (/), multiplicado por (*), parênteses e números cardinais positivos (0-9). Eles podem incluir decimais e estão limitado a 1.024 caracteres. Exemplo: ga:totalRefunds/ga:users. Na maioria dos casos, a expressão da métrica é apenas o nome de uma única métrica, como ga:users. Adicionar métricas MetricType (por exemplo, CURRENCY + PERCENTAGE) combinadas pode gerar resultados inesperados.
alias string Um alias para a expressão da métrica é um nome alternativo para a expressão. O alias pode ser usado para filtragem e classificação. Esse campo é opcional e é útil se a expressão não é uma única métrica, mas uma expressão complexa que não pode ser usada na filtragem e classificação. O alias também é usado no título da coluna de resposta.
formattingType enum(MetricType) Especifica como a expressão da métrica deve ser formatada, por exemplo INTEGER.

MetricType

Os tipos de métricas.

Valor de enumeração Descrição
METRIC_TYPE_UNSPECIFIED O tipo de métrica não está especificado.
INTEGER Métrica de número inteiro.
FLOAT Métrica de flutuação.
CURRENCY Métrica de moeda.
PERCENT Métrica de porcentagem.
TIME Métrica de horário no formato HH:MM:SS.

MetricFilterClause

Representa um grupo de filtros de métricas. Defina o valor do operador para especificar a forma com que os filtros são combinados logicamente.

Representação JSON

{
  "operator": enum(FilterLogicalOperator),
  "filters": [
    {
      object(MetricFilter)
    }
  ],
}
Nome do campo Tipo Descrição
operator enum(FilterLogicalOperator) O operador para combinar vários filtros de métricas. Se não for especificado, ele será tratado como um OR.
filters[] object(MetricFilter) O conjunto repetido de filtros. Eles são combinados logicamente com base no operador especificado.

MetricFilter

"MetricFilter" especifica o filtro em uma métrica.

Representação JSON

{
  "metricName": string,
  "not": boolean,
  "operator": enum(Operator),
  "comparisonValue": string,
}
Nome do campo Tipo Descrição
metricName string A métrica que será filtrada. Um "metricFilter" precisa conter o nome de uma métrica. O nome da métrica pode ser um alias definido anteriormente como uma métrica ou uma expressão de métrica.
not boolean Operador lógico NOT. Se esse booleano for definido como "true", os valores das métricas correspondentes serão excluídos do relatório. O valor padrão é "false".
operator enum(Operator) A métrica é EQUAL, LESS_THAN ou GREATER_THAN em relação ao "comparisonValue". O padrão é EQUAL. Se o operador for IS_MISSING, ele verificará se a métrica está ausente e ignorará o "comparisonValue".
comparisonValue string O valor para comparação.

Operador

Opções de tipo de comparação diferentes.

Valor de enumeração Descrição
OPERATOR_UNSPECIFIED Se o operador não for especificado, ele será tratado como EQUAL.
EQUAL O valor da métrica deve ser exatamente igual ao valor de comparação.
LESS_THAN O valor da métrica deve ser menor que o valor de comparação.
GREATER_THAN O valor da métrica deve ser maior que o valor de comparação.
IS_MISSING Valida se a métrica está ausente. Não leva o "comparisonValue" em consideração.

OrderBy

Especifica as opções de classificação.

Representação JSON

{
  "fieldName": string,
  "orderType": enum(OrderType),
  "sortOrder": enum(SortOrder),
}
Nome do campo Tipo Descrição
fieldName string O campo pelo qual a classificação será definida. A ordem de classificação padrão é crescente. Exemplo: ga:browser. Você só pode especificar um campo para classificação aqui. Por exemplo, ga:browser, ga:city não é válido.
orderType enum(OrderType) O tipo de ordem. O "orderType" padrão é VALUE.
sortOrder enum(SortOrder) A ordem de classificação do campo.

OrderType

"OrderType" controla como a ordem de classificação é determinada.

Valor de enumeração Descrição
ORDER_TYPE_UNSPECIFIED Um tipo de ordem não especificado será tratado como classificação com base no valor.
VALUE A ordem de classificação é definida com base no valor da coluna escolhida. Apenas o primeiro período é considerado.
DELTA A ordem de classificação é definida com base na diferença dos valores da coluna escolhida entre os dois primeiros períodos. Poderá ser usado somente se houver exatamente dois períodos.
SMART A ordem de classificação é definida com base no valor avaliado da coluna escolhida. Se a coluna apresentar o formato "n/a", o valor avaliado dessa proporção será (n + totals.n)/(d + totals.d) e só poderá ser usado para métricas que representam proporções.
HISTOGRAM_BUCKET O tipo de ordem do histograma se aplica somente a colunas de dimensões com intervalos de histograma não vazios.
DIMENSION_AS_INTEGER Se as dimensões forem números de tamanho fixo, a classificação comum funcionará bem. DIMENSION_AS_INTEGER pode ser usado se as dimensões forem números de tamanho variável.

SortOrder

A ordem de classificação.

Valor de enumeração Descrição
SORT_ORDER_UNSPECIFIED Se a ordem de classificação não for especificada, o padrão será crescente.
ASCENDING Classificação crescente. O campo será classificado de forma crescente.
DESCENDING Classificação decrescente. O campo será classificado de forma decrescente.

Segmento

A definição do segmento, se o relatório precisar ser segmentado. Um segmento é um subconjunto de dados do Google Analytics. Por exemplo, de todo o conjunto de usuários, um segmento pode ser composto por usuários de um determinado país ou cidade.

Representação JSON

{

  // Union field dynamicOrById can be only one of the following:
  "dynamicSegment": {
    object(DynamicSegment)
  },
  "segmentId": string,
  // End of list of possible types for union field dynamicOrById.
}
Nome do campo Tipo Descrição
Campo de união dynamicOrById. O segmento pode ser definido dinamicamente usando "DynamicSegment" ou um código de um segmento incorporado ou personalizado. dynamicOrById só pode ser um dos seguintes valores:
dynamicSegment object(DynamicSegment) Um definição de segmento dinâmico na solicitação.
segmentId string O código de um segmento incorporado ou personalizado, por exemplo gaid::-3.

DynamicSegment

Definição de segmento dinâmico para definir o segmento na solicitação. Um segmento pode selecionar usuários, sessões ou ambos.

Representação JSON

{
  "name": string,
  "userSegment": {
    object(SegmentDefinition)
  },
  "sessionSegment": {
    object(SegmentDefinition)
  },
}
Nome do campo Tipo Descrição
name string O nome do segmento dinâmico.
userSegment object(SegmentDefinition) Segmento do usuário para selecionar usuários a serem incluídos no segmento.
sessionSegment object(SegmentDefinition) Segmento de sessão para selecionar sessões a serem incluídas no segmento.

SegmentDefinition

"SegmentDefinition" define o segmento como um conjunto de "SegmentFilters" que são combinados com uma operação lógica AND.

Representação JSON

{
  "segmentFilters": [
    {
      object(SegmentFilter)
    }
  ],
}
Nome do campo Tipo Descrição
segmentFilters[] object(SegmentFilter) Um segmento é definido por um conjunto de filtros de segmento que são combinados com uma operação lógica AND.

SegmentFilter

"SegmentFilter" define o segmento como um segmento simples ou sequencial. Uma condição de segmento simples contém condições de dimensão e métrica para selecionar as sessões ou usuários. Uma condição de segmento sequencial pode ser usada para selecionar usuários ou sessões com base em condições sequenciais.

Representação JSON

{
  "not": boolean,

  // Union field simpleOrSequence can be only one of the following:
  "simpleSegment": {
    object(SimpleSegment)
  },
  "sequenceSegment": {
    object(SequenceSegment)
  },
  // End of list of possible types for union field simpleOrSequence.
}
Nome do campo Tipo Descrição
not boolean

Se definido como "true", corresponde ao complemento do segmento simples ou sequencial. Por exemplo, para corresponder a todos os acessos fora de "Nova York", podemos definir o segmento assim:


  "sessionSegment": {
    "segmentFilters": [{
      "simpleSegment" :{
        "orFiltersForSegment": [{
          "segmentFilterClauses":[{
            "dimensionFilter": {
              "dimensionName": "ga:city",
              "expressions": ["New York"]
            }
          }]
        }]
      },
      "not": "True"
    }]
  },
Campo de união simpleOrSequence. É uma definição de segmento simples ou sequencial. simpleOrSequence pode ser um destes valores:
simpleSegment object(SimpleSegment) Uma condição de segmento simples consiste de uma ou mais condições de dimensão/métrica que podem ser combinadas.
sequenceSegment object(SequenceSegment) As condições de sequência consistem em uma ou mais etapas, e cada etapa é definida por uma ou mais condições de dimensão/métrica. É possível combinar várias etapas com operadores de sequência especiais.

SimpleSegment

Uma condição de segmento simples consiste de uma ou mais condições de dimensão/métrica que podem ser combinadas.

Representação JSON

{
  "orFiltersForSegment": [
    {
      object(OrFiltersForSegment)
    }
  ],
}
Nome do campo Tipo Descrição
orFiltersForSegment[] object(OrFiltersForSegment) Uma lista de grupos de filtros de segmento que são combinados com um operador lógico AND.

OrFiltersForSegment

Uma lista de filtros de segmento no grupo OR são combinados com um operador lógico "OR".

Representação JSON

{
  "segmentFilterClauses": [
    {
      object(SegmentFilterClause)
    }
  ],
}
Nome do campo Tipo Descrição
segmentFilterClauses[] object(SegmentFilterClause) Uma lista de filtros de segmento a serem combinados com um operador OR.

SegmentFilterClause

Cláusula de filtro a ser usada em uma definição de segmento. Pode ser um filtro de métrica ou dimensão.

Representação JSON

{
  "not": boolean,

  // Union field dimensionOrMetricFilter can be only one of the following:
  "dimensionFilter": {
    object(SegmentDimensionFilter)
  },
  "metricFilter": {
    object(SegmentMetricFilter)
  },
  // End of list of possible types for union field dimensionOrMetricFilter.
}
Nome do campo Tipo Descrição
not boolean Corresponde ao complemento (!) do filtro.
Campo de união dimensionOrMetricFilter. Filtro de dimensão ou métrica. dimensionOrMetricFilter só pode ser um dos seguintes valores:
dimensionFilter object(SegmentDimensionFilter) Filtro de dimensão para a definição de segmento.
metricFilter object(SegmentMetricFilter) Filtro de métrica para a definição de segmento.

SegmentDimensionFilter

O filtro de dimensões especifica as opções de filtragem em uma dimensão.

Representação JSON

{
  "dimensionName": string,
  "operator": enum(Operator),
  "caseSensitive": boolean,
  "expressions": [
    string
  ],
  "minComparisonValue": string,
  "maxComparisonValue": string,
}
Nome do campo Tipo Descrição
dimensionName string Nome da dimensão a que o filtro está sendo aplicado.
operator enum(Operator) O operador a ser usado para fazer a correspondência entre a dimensão e as expressões.
caseSensitive boolean A correspondência deve diferenciar letras maiúsculas e minúsculas e ser ignorada para o operador IN_LIST.
expressions[] string A lista de expressões. Apenas o primeiro elemento é usado para todos os operadores.
minComparisonValue string Valores de comparação mínimos para o tipo de correspondência BETWEEN.
maxComparisonValue string Valores de comparação máximos para o tipo de correspondência BETWEEN.

Operador

Tipos de correspondência diferentes suportados.

Valor de enumeração Descrição
OPERATOR_UNSPECIFIED Se o tipo de correspondência não for especificado, ele será tratado como um REGEXP.
REGEXP A expressão de correspondência é tratada como uma expressão regular. Todos os outros tipos de correspondência não são tratados como expressões regulares.
BEGINS_WITH Corresponde aos valores que começam com a expressão de correspondência fornecida.
ENDS_WITH Corresponde aos valores que terminam com a expressão de correspondência fornecida.
PARTIAL Correspondência de substring.
EXACT O valor deve corresponder à expressão de correspondência por completo.
IN_LIST

Essa opção é usada para especificar um filtro de dimensão cuja expressão aceita qualquer valor de uma lista de valores selecionados. Isso ajuda a evitar a avaliação de vários filtros de dimensões de correspondência exata que contêm "OR" em todas as linhas da resposta. Por exemplo:


expressions: ["A", "B", "C"]

Toda linha de resposta cuja dimensão tem um valor de A, B ou C corresponde a esse DimensionFilter.

NUMERIC_LESS_THAN

Filtros de comparação de números inteiros. A diferenciação de letras minúsculas e maiúsculas é ignorada para eles, e a expressão é considerada uma string que representa um número inteiro. Condições de falha:

  • se a expressão não for um int64 válido, o cliente deverá esperar um erro;
  • dimensões inseridas que não são valores int64 válidos nunca corresponderão ao filtro.

Verifica se a dimensão é numericamente menor que a expressão de correspondência.

NUMERIC_GREATER_THAN Verifica se a dimensão é numericamente maior que a expressão de correspondência.
NUMERIC_BETWEEN Verifica se a dimensão está numericamente entre os valores mínimo e máximo da expressão de correspondência, excluindo os limites.

SegmentMetricFilter

Filtro de métrica a ser usado em uma cláusula de filtro de segmento.

Representação JSON

{
  "scope": enum(Scope),
  "metricName": string,
  "operator": enum(Operator),
  "comparisonValue": string,
  "maxComparisonValue": string,
}
Nome do campo Tipo Descrição
scope enum(Scope) Escopo para uma métrica que determina o nível em que ela é definida. O escopo especificado da métrica precisa ser igual ou maior que seu escopo principal, conforme definido no modelo de dados. O escopo principal é definido por ele se o segmento seleciona usuários ou sessões.
metricName string A métrica que será filtrada. Um "metricFilter" precisa conter o nome de uma métrica.
operator enum(Operator) Especifica a operação a ser feita para comparar a métrica. O padrão é EQUAL.
comparisonValue string O valor para comparação. Se o operador for BETWEEN, esse valor será tratado como o valor de comparação mínimo.
maxComparisonValue string O valor de comparação máximo só é usado para o operador BETWEEN.

Escopo

Um escopo de uma métrica determina o nível em que essa métrica é definida: PRODUCT, HIT, SESSION ou USER. Valores de métricas também podem ser informados em escopos maiores que o escopo principal. Por exemplo, ga:pageviews e ga:transactions podem ser informadas nos níveis SESSION e USER. Para isso, basta adicioná-las a cada hit que ocorre para as sessões ou os usuários em questão.

Valor de enumeração Descrição
UNSPECIFIED_SCOPE Se o escopo não for especificado, ele será definido por padrão como o escopo da condição, USER ou SESSION. Isso dependerá da opção que o segmento escolherá: usuários ou sessões.
PRODUCT Escopo do produto.
HIT Escopo do hit.
SESSION Escopo da sessão.
USER Escopo do usuário.

Operador

Opções de tipo de comparação diferentes.

Valor de enumeração Descrição
UNSPECIFIED_OPERATOR Um operador não especificado é tratado como um operador LESS_THAN.
LESS_THAN Verifica se o valor da métrica é menor que o valor de comparação.
GREATER_THAN Verifica se o valor da métrica é maior que o valor de comparação.
EQUAL Operador "igual a".
BETWEEN Para o operador "entre", os valores mínimo e máximo são exclusivos. Usamos LT e GT para comparação.

SequenceSegment

As condições de sequência consistem em uma ou mais etapas, e cada etapa é definida por uma ou mais condições de dimensão/métrica. É possível combinar várias etapas com operadores de sequência especiais.

Representação JSON

{
  "segmentSequenceSteps": [
    {
      object(SegmentSequenceStep)
    }
  ],
  "firstStepShouldMatchFirstHit": boolean,
}
Nome do campo Tipo Descrição
segmentSequenceSteps[] object(SegmentSequenceStep) A lista de etapas na sequência.
firstStepShouldMatchFirstHit boolean Se esse valor for definido, a condição de primeira etapa precisará corresponder ao primeiro hit do visitante (no período).

SegmentSequenceStep

A definição de uma sequência de segmento.

Representação JSON

{
  "orFiltersForSegment": [
    {
      object(OrFiltersForSegment)
    }
  ],
  "matchType": enum(MatchType),
}
Nome do campo Tipo Descrição
orFiltersForSegment[] object(OrFiltersForSegment) Uma sequência é especificada com uma lista de filtros agrupados pelo operador "OR" que são combinados com o operador AND.
matchType enum(MatchType) Especifica se a etapa precede imediatamente a próxima etapa ou pode ocorrer a qualquer momento após a próxima etapa.

MatchType

O tipo de correspondência da sequência.

Valor de enumeração Descrição
UNSPECIFIED_MATCH_TYPE Um tipo de correspondência não especificado é tratado como precedente.
PRECEDES O operador indica que a etapa anterior precede a próxima.
IMMEDIATELY_PRECEDES O operador indica que a etapa anterior precede imediatamente a próxima etapa.

Tabela dinâmica

A tabela dinâmica descreve a seção de tabela dinâmica na solicitação. Ela ajuda a reorganizar as informações na tabela para determinados relatórios dinamizando seus dados em uma segunda dimensão.

Representação JSON

{
  "dimensions": [
    {
      object(Dimension)
    }
  ],
  "dimensionFilterClauses": [
    {
      object(DimensionFilterClause)
    }
  ],
  "metrics": [
    {
      object(Metric)
    }
  ],
  "startGroup": number,
  "maxGroupCount": number,
}
Nome do campo Tipo Descrição
dimensions[] object(Dimension) Uma lista de dimensões a serem exibidas como colunas dinâmicas. Uma tabela dinâmica pode ter no máximo quatro dimensões. As dimensões da tabela dinâmica são parte da restrição que se aplica ao número total de dimensões permitido na solicitação.
dimensionFilterClauses[] object(DimensionFilterClause) "DimensionFilterClauses" são combinados logicamente com um operador AND: somente dados incluídos por todos esses "DimensionFilterClauses" contribuem com os valores nessa região dinâmica. Filtros de dimensão podem ser usados para restringir as colunas exibidas na região dinâmica. Por exemplo, se você tiver ga:browser como a dimensão solicitada na região dinâmica e especificar os principais filtros para restringir ga:browser a apenas "IE" ou "Firefox", somente esses dois navegadores aparecerão como colunas.
metrics[] object(Metric) As métricas da tabela dinâmica. As métricas da tabela dinâmica são parte da restrição que se aplica ao número total de métricas permitido na solicitação.
startGroup number

Se k métricas forem solicitadas, a resposta terá algumas colunas múltiplas de k dependentes de dados no relatório. Por exemplo, se você definiu uma tabela dinâmica para a dimensão ga:browser, verá k colunas para "Firefox", k colunas para "IE", k colunas para "Chrome" etc. A classificação dos grupos de colunas é determinada por ordem decrescente do "total" para os primeiro k valores. Os vínculos são rompidos pela classificação alfabética da primeira dimensão dinâmica, depois pela ordem alfabética da segunda dimensão dinâmica e assim por diante. Por exemplo, se os totais do primeiro valor para Firefox, IE e Chrome forem 8, 2 e 8, respectivamente, a ordem das colunas será Chrome, Firefox, IE.

Com as definições a seguir, você pode escolher quais dos grupos de k colunas estão incluídos na resposta.

maxGroupCount number Especifica o número de grupos a serem retornados. O valor padrão é 10, e o valor máximo é 1.000.

CohortGroup

Define um grupo de coorte. Por exemplo:

"cohortGroup": {
  "cohorts": [{
    "name": "cohort 1",
    "type": "FIRST_VISIT_DATE",
    "dateRange": { "startDate": "2015-08-01", "endDate": "2015-08-01" }
  },{
    "name": "cohort 2"
     "type": "FIRST_VISIT_DATE"
     "dateRange": { "startDate": "2015-07-01", "endDate": "2015-07-01" }
  }]
}
Representação JSON

{
  "cohorts": [
    {
      object(Cohort)
    }
  ],
  "lifetimeValue": boolean,
}
Nome do campo Tipo Descrição
cohorts[] object(Cohort) A definição da coorte.
lifetimeValue boolean

Ativa o valor da vida útil (LTV). O LTV avalia o valor da vida útil de usuários adquiridos por meio de canais diferentes. Consulte: Análise de coorte e valor da vida útil. Se o LTV for "false":

  • Os valores de métrica são semelhantes aos valores na interface da Web do Relatório de coortes.
  • Os períodos de definição do coorte precisam estar alinhados ao calendário semanal e mensal, ou seja, ao solicitar ga:cohortNthWeek, o startDate a definição do coorte deve ser um domingo e o endDate deve ser o sábado seguinte. Além disso, para ga:cohortNthMonth, o startDate deve ser o dia 1 do mês e endDate deve ser o último dia do mês.

Quando "lifetimeValue" está definido como "true":

  • Os valores de métrica corresponderão aos valores na interface da Web do Relatório de valor da vida útil.
  • O Relatório de valor da vida útil mostra a evolução do valor do usuário (receita) e do engajamento (visualizações do aplicativo, conclusões de meta, sessões e duração da sessão) durante os 90 dias após a aquisição de um usuário.
  • As métricas são calculadas como uma média acumulativa por usuário e por incremento de tempo.
  • Os períodos de definição do coorte não precisam estar alinhados aos limites do calendário semanal e mensal.
  • O viewId precisa ser um código da vista do aplicativo

Coorte

Define um coorte. Um coorte é um grupo de usuários que compartilham uma característica comum. Por exemplo, todos os usuários com a mesma data de aquisição pertencem ao mesmo coorte.

Representação JSON

{
  "name": string,
  "type": enum(Type),
  "dateRange": {
    object(DateRange)
  },
}
Nome do campo Tipo Descrição
name string Um nome exclusivo para a coorte. Se não definido, o nome será gerado automaticamente com os valores "cohort_[1234...]".
type enum(Type) Tipo de coorte. O único tipo suportado a partir de agora é FIRST_VISIT_DATE. Se esse campo não for especificado, a coorte será tratada como o tipo de coorte FIRST_VISIT_DATE.
dateRange object(DateRange) Esse valor é usado para o coorte FIRST_VISIT_DATE. O coorte seleciona usuários cuja primeira visita ocorreu entre a data de início e de término definidas em "DateRange". Os períodos devem estar alinhados para solicitações de coorte. Se a solicitação contiver ga:cohortNthDay, ela deve durar exatamente um dia. Se contiver ga:cohortNthWeek, ela deve estar alinhada ao limite da semana (começando domingo e terminando sábado. Para ga:cohortNthMonth, o período deve estar alinhado ao mês (começando no dia 1 e terminando no último dia do mês). Para solicitações de LTV, essas restrições não se aplicam. Você não precisa fornecer um período para o campo reportsRequest.dateRanges.

Tipo

O tipo de coorte.

Valor de enumeração Descrição
UNSPECIFIED_COHORT_TYPE Se esse valor não for especificado, será tratado como FIRST_VISIT_DATE.
FIRST_VISIT_DATE Coortes selecionadas com base na data da primeira visita.

Relatório

A resposta de dados correspondente à solicitação.

Representação JSON

{
  "columnHeader": {
    object(ColumnHeader)
  },
  "data": {
    object(ReportData)
  },
  "nextPageToken": string,
}
Nome do campo Tipo Descrição
columnHeader object(ColumnHeader) Os cabeçalhos das colunas.
data object(ReportData) Dados de resposta.
nextPageToken string Token da página para recuperar a próxima página de resultados na lista.

ColumnHeader

Cabeçalhos de coluna.

Representação JSON

{
  "dimensions": [
    string
  ],
  "metricHeader": {
    object(MetricHeader)
  },
}
Nome do campo Tipo Descrição
dimensions[] string Os nomes de dimensões na resposta.
metricHeader object(MetricHeader) Cabeçalhos de métrica para as métricas na resposta.

MetricHeader

Os cabeçalhos das métricas.

Representação JSON

{
  "metricHeaderEntries": [
    {
      object(MetricHeaderEntry)
    }
  ],
  "pivotHeaders": [
    {
      object(PivotHeader)
    }
  ],
}
Nome do campo Tipo Descrição
metricHeaderEntries[] object(MetricHeaderEntry) Cabeçalhos das métricas na resposta.
pivotHeaders[] object(PivotHeader) Cabeçalhos das tabelas dinâmicas na resposta.

MetricHeaderEntry

Cabeçalho das métricas.

Representação JSON

{
  "name": string,
  "type": enum(MetricType),
}
Nome do campo Tipo Descrição
name string O nome do cabeçalho.
type enum(MetricType) O tipo de métrica. Por exemplo, INTEGER.

PivotHeader

Os cabeçalhos para cada uma das seções dinâmicas definidas na solicitação.

Representação JSON

{
  "pivotHeaderEntries": [
    {
      object(PivotHeaderEntry)
    }
  ],
  "totalPivotGroupsCount": number,
}
Nome do campo Tipo Descrição
pivotHeaderEntries[] object(PivotHeaderEntry) Um único cabeçalho de seção dinâmica.
totalPivotGroupsCount number O número total de grupos da tabela dinâmica.

PivotHeaderEntry

Os cabeçalhos para cada coluna de métrica correspondente às métricas solicitadas na seção dinâmica da resposta.

Representação JSON

{
  "dimensionNames": [
    string
  ],
  "dimensionValues": [
    string
  ],
  "metric": {
    object(MetricHeaderEntry)
  },
}
Nome do campo Tipo Descrição
dimensionNames[] string O nome das dimensões na resposta dinâmica.
dimensionValues[] string Os valores das dimensões na tabela dinâmica.
metric object(MetricHeaderEntry) O cabeçalho da métrica na tabela dinâmica.

ReportData

A parte de dados do relatório.

Representação JSON

{
  "rows": [
    {
      object(ReportRow)
    }
  ],
  "totals": [
    {
      object(DateRangeValues)
    }
  ],
  "rowCount": number,
  "minimums": [
    {
      object(DateRangeValues)
    }
  ],
  "maximums": [
    {
      object(DateRangeValues)
    }
  ],
  "samplesReadCounts": [
    string
  ],
  "samplingSpaceSizes": [
    string
  ],
  "isDataGolden": boolean,
}
Nome do campo Tipo Descrição
rows[] object(ReportRow) Há um "ReportRow" para cada combinação exclusiva de dimensões.
totals[] object(DateRangeValues) Para cada período solicitado, para o conjunto de todas as linhas que correspondem à consulta, cada formato de valor solicitado recebe um total. O total de um formato de valor é computado primeiro somando as métricas mencionadas no formato de valor e avaliando o formato de valor como uma expressão escalar. Por exemplo, os "totais" para 3 / (ga:sessions + 2) computamos como 3 / ((sum of all relevant ga:sessions) + 2). Os totais são computados antes da paginação.
rowCount number Número total de linhas correspondentes para essa consulta.
minimums[] object(DateRangeValues) Valores mínimo e máximo observados em todas as linhas correspondentes. Eles ficam vazios quando hideValueRanges na solicitação está definido como "false", ou quando "rowCount" é zero.
maximums[] object(DateRangeValues) Valores mínimo e máximo observados em todas as linhas correspondentes. Eles ficam vazios quando hideValueRanges na solicitação está definido como "false", ou quando "rowCount" é zero.
samplesReadCounts[] string
(int64 format)
Se os resultados forem de amostra, esse campo retornará o número total de amostras analisadas, uma entrada por período. Se os resultados não forem de amostra, esse campo não será definido. Consulte o guia do desenvolvedor para ver detalhes.
samplingSpaceSizes[] string
(int64 format)
Se os resultados forem de amostra, esse campo retornará o número total de amostras presentes, uma entrada por período. Se os resultados não forem de amostra, esse campo não será definido. Consulte o guia do desenvolvedor para ver detalhes.
isDataGolden boolean Indica se a resposta à solicitação é padrão ouro ou não. Os dados são padrão ouro quando a mesma solicitação exata não produz novos resultados quando é feita no futuro.

ReportRow

Uma linha no relatório.

Representação JSON

{
  "dimensions": [
    string
  ],
  "metrics": [
    {
      object(DateRangeValues)
    }
  ],
}
Nome do campo Tipo Descrição
dimensions[] string Lista de dimensões solicitadas.
metrics[] object(DateRangeValues) Lista de métricas para cada "DateRange" solicitado.

DateRangeValues

Usado para retornar uma lista de métricas para uma única combinação de "DateRange" / dimensão

Representação JSON

{
  "values": [
    string
  ],
  "pivotValueRegions": [
    {
      object(PivotValueRegion)
    }
  ],
}
Nome do campo Tipo Descrição
values[] string Cada valor corresponde a uma métrica na solicitação.
pivotValueRegions[] object(PivotValueRegion) Os valores de cada região dinâmica.

PivotValueRegion

Os valores de métrica na região dinâmica.

Representação JSON

{
  "values": [
    string
  ],
}
Nome do campo Tipo Descrição
values[] string Os valores das métricas em cada uma das regiões dinâmicas.

Testar