Experimentos: patch

Requer autorização

Atualiza uma experiência existente. Esse método é compatível com a semântica de patch. Veja um exemplo.

Além dos parâmetros padrão, esse método é compatível com os parâmetros listados na tabela correspondente.

Solicitação

Solicitação HTTP

PATCH https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/profiles/profileId/experiments/experimentId

Parâmetros

Nome do parâmetro Valor Descrição
Parâmetros de caminho
accountId string ID da conta da experiência a ser atualizada.
experimentId string ID da experiência a ser atualizada.
profileId string ID da vista da propriedade (perfil) da experiência a ser atualizada.
webPropertyId string ID da propriedade da Web da experiência a ser atualizada.

Autorização

Essa solicitação requer autorização com pelo menos um dos escopos a seguir (mais informações sobre autenticação e autorização).

Escopo
https://www.googleapis.com/auth/analytics
https://www.googleapis.com/auth/analytics.edit

Corpo da solicitação

No corpo da solicitação, forneça as partes relevantes de um recurso "management.experiment", de acordo com as regras da semântica de patch, com estas propriedades:

Nome da propriedade Valor Descrição Observações
Propriedades obrigatórias
id string ID da experiência. Obrigatório para patch e atualização. Não permitido para criação.
Propriedades opcionais
description string Observações sobre essa experiência. gravável
editableInGaUi boolean Se o valor for "true", o usuário final poderá editar a experiência pela interface do usuário do Google Analytics. gravável
equalWeighting boolean Booleano que especifica se o tráfego deve ser distribuído uniformemente em todas as variações. Se o valor for "False", as Experiências de conteúdo seguem o comportamento padrão de ajuste dinâmico de tráfego com base no desempenho da variação. Opcional: o padrão é "False". Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". gravável
minimumExperimentLengthInDays integer Um número inteiro em [3, 90]. Especifica a duração mínima da experiência. Pode ser alterado para uma experiência em andamento. Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". gravável
name string Nome da experiência. Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". Esse campo é obrigatório ao criar uma experiência. gravável
objectiveMetric string A métrica otimizada pela experiência. Valores válidos: "ga:goal(n)Completions", "ga:adsenseAdsClicks", "ga:adsenseAdsViewed", "ga:adsenseRevenue", "ga:bounces", "ga:pageviews", "ga:sessionDuration", "ga:transactions", "ga:transactionRevenue". Esse campo será obrigatório se o status for "RUNNING" e se servingFramework for "REDIRECT" ou "API". gravável
optimizationType string Se "objectiveMetric" deve ser minimizado ou maximizado. Valores possíveis: "MAXIMUM", "MINIMUM". Opcional: o padrão é "MAXIMUM". Não pode ser especificado sem "objectiveMetric". Não pode ser modificado quando o status é "RUNNING" ou "ENDED". gravável
rewriteVariationUrlsAsOriginal boolean Booleano que especifica se os URLs das variações serão regravados de modo a corresponder aos da variação original. Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". gravável
servingFramework string A estrutura usada para veicular as variações da experiência e avaliar os resultados. Uma das seguintes opções:
  • REDIRECT: o Google Analytics redireciona o tráfego para diferentes páginas de variação, informa a variação escolhida e avalia os resultados.
  • API: o Google Analytics escolhe e informa a variação a ser veiculada e avalia os resultados. O autor da chamada é responsável por veicular a variação selecionada.
  • EXTERNAL: as variações serão veiculadas externamente, e a variação escolhida será informada ao Google Analytics. O autor da chamada é responsável por veicular a variação selecionada e avaliar os resultados.
gravável
status string Status da experiência. Valores possíveis: "DRAFT", "READY_TO_RUN", "RUNNING", "ENDED". As experiências podem ser criadas no estado "DRAFT", "READY_TO_RUN" ou "RUNNING". Esse campo é obrigatório na criação de uma experiência. gravável
trafficCoverage double Número do ponto de variação entre 0 e 1. Especifica a fração do tráfego que participa da experiência. Pode ser alterado para uma experiência em andamento. Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". gravável
variations[] list Matriz de variações. A primeira variação na matriz é a original. O número de variações não pode ser alterado quando uma experiência está no estado "RUNNING". São necessárias pelo menos duas variações para que o status seja alterado para "RUNNING". gravável
variations[].name string Nome da variação. Esse campo é obrigatório na criação de uma experiência. Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". gravável
variations[].status string Status da variação. Valores possíveis: "ACTIVE", "INACTIVE". Variações "INACTIVE" não são veiculadas. Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". gravável
variations[].url string URL da variação. Esse campo não pode ser alterado para uma experiência cujo status seja "RUNNING" ou "ENDED". gravável
winnerConfidenceLevel double Número do ponto de variação entre 0 e 1. Especifica o nível de confiança necessário para escolher uma variação vencedora. Esse campo não pode ser alterado para uma experiência cujo status seja "ENDED". gravável

Resposta

Se for bem-sucedido, esse método retornará um recurso "management.experiment" no corpo da resposta.

Exemplos

Observação: os exemplos de código disponíveis para esse método não representam todas as linguagens de programação compatíveis. Consulte a página de bibliotecas cliente para ver uma lista de linguagens compatíveis.

Java

Usa a biblioteca cliente de Java.

/*
 * Note: This code assumes you have an authorized Analytics service object.
 * See the Experiments Developer Guide for details.
 */

// This example patches an existing experiment with new variations.
Variations variationA = new Variations();
variationA.setName("Home A");
variationA.setUrl("homeA.html");
Variations variationB = new Variations();
variationB.setName("Home B");
variationB.setUrl("homeB.html");
List<Variations> variations = Arrays.asList(variationA, variationB);

try {
  // First get an existing Experiment.
  Experiment body = analytics.management().experiments().get("123456",
      "UA-123456-1", "7654321", "122333444455555").execute();

  // Set the new variations.
  body.setVariations(variations);

  // Call Patch with the updated experiment.
  analytics.management().experiments().patch("123456", "UA-123456-1",
      "7654321", "12233344455555", body).execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

PHP

Usa a biblioteca cliente de PHP.

/**
 * Note: This code assumes you have an authorized Analytics service object.
 * See the Experiments Developer Guide for details.
 */

/**
 * This request patches an existing experiment.
 */

// Construct the first variation.
$variationA = new Google_Service_Analytics_ExperimentVariations();
$variationA->setName('VariationA');
$variationA->setUrl('index.html');

// Construct the second variation.
$variationB = new Google_Service_Analytics_ExperimentVariations();
$variationB->setName('VariationB');
$variationB->setUrl('indexB.html');

try {
  // Get an existing Experiment.
  $experiment = $analytics->management_experiments->get('123456',
      'UA-123456-1', '7654321', '122333444455555');

  // Set the new variations.
  $experiment->setVariations(array($variationA, $variationB));

  // Call the patch method with the updated experiment.
  $analytics->management_experiments->patch('123456', 'UA-123456-1',
      '7654321', '122333444455555', $experiment);
} catch (apiServiceException $e) {
  print 'There was an Analytics API service error '
      . $e->getCode() . ':' . $e->getMessage();

} catch (apiException $e) {
  print 'There was a general API error '
      . $e->getCode() . ':' . $e->getMessage();
}


Python

Usa a biblioteca cliente de Python.

# Note: This code assumes you have an authorized Analytics service object.
# See the Experiments Developer Guide for details.

# This request patches an existing experiment with a new name,
# and new variations.
try:
  analytics.management().experiments().patch(
      accountId='123456',
      webPropertyId='UA-123456-1',
      profileId='7654321',
      experimentId='ABCDEFG123456abcdefg',
      body={
          'name': 'Landing Page Test April',
          'variations': [
              {
                  'name': 'First Variation',
                  'url': 'index.html'
              },
              {
                  'name': 'Proposed Change',
                  'url': 'indexB.html'
              }
          ]
      }
  ).execute()

except TypeError, error:
  # Handle errors in constructing a query.
  print 'There was an error in constructing your query : %s' % error

except HttpError, error:
  # Handle API errors.
  print ('There was an API error : %s : %s' %
         (error.resp.status, error.resp.reason))

JavaScript

Usa a biblioteca cliente de JavaScript.

/*
 * Note: This code assumes you have an authorized Analytics client object.
 * See the Experiments Developer Guide for details.
 */

/*
 * This request patches an existing experiment.
 */
function patchExperiment() {
  var request = gapi.client.analytics.management.experiments.patch(
    {
      'accountId': '123456',
      'webPropertyId': 'UA-123456-1',
      'profileId': '7654321',
      'experimentId': '122333444455555',
      'resource': {
        'name': 'Landing Page Test',
        'status': 'DRAFT',
        'variations': [
          {
            'name': 'VariationA',
            'url': 'index.html'
          },
          {
            'name': 'VariationB',
            'url': 'indexB.html'
          }
        ]
      }
    });
  request.execute(function (response) { // Handle the response. });
}