Experiments: patch

Memerlukan otorisasi

Perbarui eksperimen yang ada. Metode ini mendukung semantik patch. Lihat contoh.

Selain parameter standar, metode ini mendukung parameter yang tercantum dalam tabel parameter.

Permintaan

Permintaan HTTP

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

Parameter

Nama parameter Nilai Deskripsi
Parameter jalur
accountId string ID akun eksperimen yang akan diperbarui.
experimentId string ID eksperimen dari eksperimen yang akan diperbarui.
profileId string ID Tampilan (Profil) eksperimen yang akan diperbarui.
webPropertyId string ID properti web eksperimen yang akan diperbarui.

Otorisasi

Permintaan ini memerlukan otorisasi dengan setidaknya salah satu cakupan berikut (baca selengkapnya tentang autentikasi dan otorisasi).

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

Isi permintaan

Dalam isi permintaan, berikan bagian resource management.experiment yang relevan, sesuai dengan aturan semantik patch, dengan properti berikut:

Nama properti Nilai Deskripsi Catatan
Properti yang Diperlukan
id string ID Eksperimen. Diperlukan untuk patch dan update. Tidak diizinkan untuk membuat.
Properti Opsional
description string Catatan tentang eksperimen ini. dapat ditulis
editableInGaUi boolean Jika true (benar), pengguna akhir akan dapat mengedit eksperimen melalui antarmuka pengguna Google Analytics. dapat ditulis
equalWeighting boolean Boolean yang menentukan apakah akan mendistribusikan traffic secara merata di semua variasi. Jika nilainya adalah False, eksperimen konten mengikuti perilaku default dari menyesuaikan traffic secara dinamis berdasarkan performa variasi. Opsional -- defaultnya adalah Salah (False). Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. dapat ditulis
minimumExperimentLengthInDays integer Bilangan bulat dalam [3, 90]. Menentukan durasi minimum eksperimen. Dapat diubah untuk eksperimen yang sedang berjalan. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. dapat ditulis
name string Nama eksperimen. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. Kolom ini wajib diisi saat membuat eksperimen. dapat ditulis
objectiveMetric string Metrik yang dioptimalkan oleh eksperimen. Nilai yang valid: "ga:goal(n)Completions", "ga:adsenseAdsClick", "ga:adsenseAdsViewed", "ga:adsenseRevenue", "ga:bounces", "ga:pageviews", "ga:sessionDuration", "ga:transactions", "ga:transactionRevenue". Kolom ini wajib diisi jika status adalah "RUNNING" dan servingFramework merupakan salah satu dari "REDIRECT" atau "API". dapat ditulis
optimizationType string Apakah destinationMetric harus diminimalkan atau dimaksimalkan. Nilai yang mungkin: "MAXIMUM", "MINIMUM". Opsional--ditetapkan sebagai default ke "MAXIMUM". Tidak dapat ditentukan tanpa destinationMetric Tidak dapat diubah jika status adalah "RUNNING" atau "ENDED". dapat ditulis
rewriteVariationUrlsAsOriginal boolean Boolean yang menentukan apakah variasi URL ditulis ulang agar sesuai dengan URL asli. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. dapat ditulis
servingFramework string Framework yang digunakan untuk menayangkan variasi eksperimen dan mengevaluasi hasilnya. Salah satu dari:
  • PENGALIHKAN: Google Analytics mengalihkan traffic ke halaman variasi yang berbeda, melaporkan variasi yang dipilih, dan mengevaluasi hasilnya.
  • API: Google Analytics memilih dan melaporkan variasi untuk ditayangkan dan mengevaluasi hasilnya; pemanggil bertanggung jawab untuk menayangkan variasi yang dipilih.
  • EKSTERNAL: Variasi akan ditayangkan secara eksternal dan variasi yang dipilih dilaporkan ke Google Analytics. Pemanggil bertanggung jawab untuk menayangkan variasi yang dipilih dan mengevaluasi hasil.
dapat ditulis
status string Status eksperimen. Nilai yang mungkin: "DRAFT", "READY_TO_RUN", "RUNNING", "ENDED". Eksperimen dapat dibuat dalam status "DRAFT", "READY_TO_RUN", atau "RUNNING". Kolom ini wajib diisi saat membuat eksperimen. dapat ditulis
trafficCoverage double Bilangan floating point antara 0 dan 1. Menentukan bagian traffic yang berpartisipasi dalam eksperimen. Dapat diubah untuk eksperimen yang sedang berjalan. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. dapat ditulis
variations[] list Array variasi. Variasi pertama dalam array adalah yang asli. Jumlah variasi tidak dapat berubah setelah eksperimen dalam status BERJALAN. Setidaknya dua variasi diperlukan sebelum status dapat ditetapkan ke RUNNING. dapat ditulis
variations[].name string Nama variasi. Kolom ini wajib diisi saat membuat eksperimen. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. dapat ditulis
variations[].status string Status variasi. Nilai yang mungkin: "ACTIVE", "INACTIVE". Variasi TIDAK AKTIF tidak ditayangkan. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. dapat ditulis
variations[].url string URL variasi. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya JALAN atau BERAKHIR. dapat ditulis
winnerConfidenceLevel double Bilangan floating point antara 0 dan 1. Menentukan tingkat keyakinan yang diperlukan untuk memilih pemenang. Bidang ini tidak dapat diubah untuk eksperimen yang statusnya ENDED. dapat ditulis

Respons

Jika berhasil, metode ini menampilkan resource management.experiment di isi respons.

Contoh

Catatan: Contoh kode yang tersedia untuk metode ini tidak merepresentasikan semua bahasa pemrograman yang didukung (lihat halaman library klien untuk mengetahui daftar bahasa yang didukung).

Java

Menggunakan library klien 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

Menggunakan library klien 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

Menggunakan library klien 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

Menggunakan library klien 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. });
}