Experiments: patch

Cần có uỷ quyền

Cập nhật một thử nghiệm hiện có. Phương thức này hỗ trợ ngữ nghĩa của bản vá. Xem ví dụ.

Ngoài các thông số chuẩn, phương thức này còn hỗ trợ các thông số được liệt kê trong bảng thông số.

Yêu cầu

Yêu cầu HTTP

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

Tham số

Tên thông số Giá trị Nội dung mô tả
Tham số đường dẫn
accountId string Mã tài khoản của thử nghiệm cần cập nhật.
experimentId string Mã thử nghiệm của thử nghiệm cần cập nhật.
profileId string Mã chế độ xem (Hồ sơ) của thử nghiệm cần cập nhật.
webPropertyId string Mã thuộc tính web của thử nghiệm cần cập nhật.

Ủy quyền

Yêu cầu này cần được uỷ quyền với ít nhất một trong các phạm vi sau (đọc thêm về quy trình xác thực và uỷ quyền).

Phạm vi
https://www.googleapis.com/auth/analytics
https://www.googleapis.com/auth/analytics.edit

Nội dung yêu cầu

Trong nội dung yêu cầu, cung cấp các phần có liên quan của tài nguyên manager.experiment quy tắc về ngữ nghĩa bản vá với các thuộc tính sau:

Tên tài sản Giá trị Nội dung mô tả Ghi chú
Thuộc tính bắt buộc
id string Mã thử nghiệm. Bắt buộc để vá và cập nhật. Không được phép tạo.
Thuộc tính không bắt buộc
description string Ghi chú về thử nghiệm này. có thể ghi
editableInGaUi boolean Nếu đúng, người dùng cuối sẽ có thể chỉnh sửa thử nghiệm thông qua giao diện người dùng Google Analytics. có thể ghi
equalWeighting boolean Boolean chỉ định xem có phân phối lưu lượng truy cập đồng đều cho tất cả biến thể hay không. Nếu giá trị là False, thử nghiệm nội dung sẽ tuân theo hành vi mặc định của việc điều chỉnh lưu lượng truy cập một cách linh động dựa trên hiệu suất của biến thể. Không bắt buộc – mặc định là False. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. có thể ghi
minimumExperimentLengthInDays integer Một số nguyên trong [3, 90]. Chỉ định thời lượng tối thiểu của thử nghiệm. Có thể thay đổi cho một thử nghiệm đang chạy. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. có thể ghi
name string Tên thử nghiệm. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. Trường này là bắt buộc khi tạo thử nghiệm. có thể ghi
objectiveMetric string Chỉ số mà thử nghiệm đang tối ưu hoá. Giá trị hợp lệ: "ga:mục tiêu(n) Trường này là bắt buộc nếu trạng thái là "RUNNING" và servingFramework là một trong những trạng thái "REDIRECT" hoặc "API". có thể ghi
optimizationType string Liệu nên giảm thiểu hay tối đa chỉ số mục tiêu. Giá trị có thể là: "MAXIMUM", "TỐI THIỂU". Không bắt buộc--mặc định là "MAXIMUM". Không thể chỉ định nếu không có itemsMetric. Không thể sửa đổi khi trạng thái là "ĐANG CHẠY" hoặc "ĐÃ KẾT THÚC". có thể ghi
rewriteVariationUrlsAsOriginal boolean Boolean chỉ định liệu URL biến thể có được viết lại để khớp với URL của biến thể gốc hay không. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. có thể ghi
servingFramework string Khung này dùng để phân phát các biến thể thử nghiệm và đánh giá kết quả. Một trong các độ phân giải:
  • CHUYỂN HƯỚNG: Google Analytics chuyển hướng lưu lượng truy cập đến các trang biến thể khác nhau, báo cáo biến thể đã chọn và đánh giá kết quả.
  • API: Google Analytics chọn và báo cáo biến thể để phân phát và đánh giá kết quả; phương thức gọi chịu trách nhiệm phân phát biến thể đã chọn.
  • BÊN NGOÀI: Các biến thể sẽ được phân phát bên ngoài và biến thể đã chọn được báo cáo cho Google Analytics. Phương thức gọi chịu trách nhiệm phân phối biến thể đã chọn và đánh giá kết quả.
có thể ghi
status string Trạng thái thử nghiệm. Giá trị có thể là: "DRAFT", "READY_TO_RUN", "RUNNING", "ENDED". Bạn có thể tạo thử nghiệm ở trạng thái "DRAFT", "READY_TO_RUN" hoặc "RUNNING". Trường này là bắt buộc khi tạo thử nghiệm. có thể ghi
trafficCoverage double Số thực dấu phẩy động từ 0 đến 1. Chỉ định tỷ lệ lưu lượng truy cập tham gia vào thử nghiệm. Có thể thay đổi cho một thử nghiệm đang chạy. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. có thể ghi
variations[] list Mảng biến thể. Biến thể đầu tiên trong mảng là biến thể gốc. Số lượng biến thể có thể không thay đổi khi thử nghiệm ở trạng thái ĐANG CHẠY. Cần có ít nhất hai biến thể trước khi có thể đặt trạng thái thành ĐANG CHẠY. có thể ghi
variations[].name string Tên của biến thể. Trường này là bắt buộc khi tạo thử nghiệm. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. có thể ghi
variations[].status string Trạng thái của biến thể. Giá trị có thể là: "ACTIVE", "INACTIVE". Các biến thể KHÔNG HOẠT ĐỘNG không được phân phát. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. có thể ghi
variations[].url string URL của biến thể. Bạn không thể thay đổi trường này cho một thử nghiệm có trạng thái ĐANG HOẠT ĐỘNG hoặc ĐÃ KẾT THÚC. có thể ghi
winnerConfidenceLevel double Số thực dấu phẩy động từ 0 đến 1. Chỉ định mức độ tin cậy cần thiết để chọn thử nghiệm chiến thắng. Không thể thay đổi trường này cho một thử nghiệm có trạng thái là ĐÃ KẾT THÚC. có thể ghi

Phản hồi

Nếu thành công, phương thức này sẽ trả về một tài nguyên manager.experiment trong nội dung phản hồi.

Ví dụ

Lưu ý: Các đoạn mã mẫu của phương thức này không phải là ví dụ cho mọi ngôn ngữ lập trình được hỗ trợ (xem trang thông tin về các thư viện dùng cho ứng dụng để biết danh sách các ngôn ngữ được hỗ trợ).

Java

Sử dụng thư viện ứng dụng 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());
}

1.199

Sử dụng thư viện ứng dụng 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

Sử dụng thư viện ứng dụng 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

Sử dụng thư viện ứng dụng 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. });
}