Experiments: insert

نیاز به مجوز دارد

یک آزمایش جدید ایجاد کنید. یک نمونه را ببینید .

علاوه بر پارامترهای استاندارد ، این روش از پارامترهای فهرست شده در جدول پارامترها پشتیبانی می کند.

درخواست

درخواست HTTP

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

مولفه های

نام پارامتر ارزش شرح
پارامترهای مسیر
accountId string شناسه حساب برای ایجاد آزمایش.
profileId string مشاهده شناسه (نمایه) برای ایجاد آزمایش.
webPropertyId string شناسه ویژگی وب برای ایجاد آزمایش برای.

مجوز

این درخواست به مجوز حداقل با یکی از حوزه های زیر نیاز دارد ( در مورد احراز هویت و مجوز بیشتر بخوانید ).

محدوده
https://www.googleapis.com/auth/analytics
https://www.googleapis.com/auth/analytics.edit

درخواست بدن

در بدنه درخواست، یک منبع management.experiment با ویژگی های زیر ارائه کنید:

نام ملک ارزش شرح یادداشت
خواص مورد نیاز
name string نام آزمایش این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. این فیلد هنگام ایجاد آزمایش ضروری است. قابل نوشتن
status string وضعیت آزمایش مقادیر ممکن: "DRAFT"، "READY_TO_RUN"، "RUNNING"، "ENDED". آزمایش‌ها را می‌توان در حالت «DRAFT»، «READY_TO_RUN» یا «RUNNING» ایجاد کرد. این فیلد هنگام ایجاد آزمایش ضروری است. قابل نوشتن
variations[]. name string نام تنوع. این فیلد هنگام ایجاد آزمایش ضروری است. این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. قابل نوشتن
ویژگی های اختیاری
description string نکاتی در مورد این آزمایش قابل نوشتن
editableInGaUi boolean اگر درست باشد، کاربر نهایی می‌تواند آزمایش را از طریق رابط کاربری Google Analytics ویرایش کند. قابل نوشتن
equalWeighting boolean Boolean مشخص می کند که آیا ترافیک به طور مساوی در همه تغییرات توزیع شود یا خیر. اگر مقدار False باشد، آزمایش‌های محتوا از رفتار پیش‌فرض تنظیم ترافیک به صورت پویا بر اساس عملکرد تغییرات پیروی می‌کنند. اختیاری -- پیش فرض نادرست است. این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. قابل نوشتن
minimumExperimentLengthInDays integer یک عدد صحیح در [3، 90]. حداقل طول آزمایش را مشخص می کند. می توان برای یک آزمایش در حال اجرا تغییر داد. این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. قابل نوشتن
objectiveMetric string معیاری که آزمایش در حال بهینه سازی آن است. مقادیر معتبر: "ga:goal(n)Completions"، "ga:adsenseAdsClicks"، "ga:adsenseAdsViewed"، "ga:adsenseRevenue"، "ga:bounces"، "ga:pageviews"، "ga:sessionDuration"، " ga:transactions، "ga:transactionRevenue". اگر وضعیت "در حال اجرا" باشد و servingFramework یکی از "REDIRECT" یا "API" باشد، این فیلد ضروری است. قابل نوشتن
optimizationType string اینکه آیا ObjectMetric باید به حداقل برسد یا حداکثر. مقادیر ممکن: "MAXIMUM"، "MINIMUM". اختیاری - پیش‌فرض روی "MAXIMUM". بدون ObjectMetric قابل تعیین نیست. وقتی وضعیت "در حال اجرا" یا "پایان" است، نمی توان آن را تغییر داد. قابل نوشتن
rewriteVariationUrlsAsOriginal boolean بولی که مشخص می کند آیا URL های تغییرات برای مطابقت با URL های اصلی بازنویسی می شوند یا خیر. این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. قابل نوشتن
servingFramework string چارچوب مورد استفاده برای ارائه تغییرات آزمایش و ارزیابی نتایج. یکی از:
  • REDIRECT: Google Analytics ترافیک را به صفحات تغییرات مختلف هدایت می کند، تغییرات انتخابی را گزارش می دهد و نتایج را ارزیابی می کند.
  • API: Google Analytics تغییری را برای ارائه انتخاب و گزارش می‌کند و نتایج را ارزیابی می‌کند. تماس گیرنده مسئول ارائه تنوع انتخاب شده است.
  • EXTERNAL: تغییرات به صورت خارجی ارائه می شود و تغییر انتخاب شده به Google Analytics گزارش می شود. تماس گیرنده مسئول ارائه تنوع انتخاب شده و ارزیابی نتایج است.
قابل نوشتن
trafficCoverage double یک عدد ممیز شناور بین 0 و 1. کسری از ترافیک شرکت کننده در آزمایش را مشخص می کند. می توان برای یک آزمایش در حال اجرا تغییر داد. این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. قابل نوشتن
variations[] list آرایه ای از تغییرات. اولین تغییر در آرایه اصلی است. هنگامی که آزمایش در حالت RUNNING قرار گرفت، ممکن است تعداد تغییرات تغییر نکند. قبل از تنظیم وضعیت روی RUNNING، حداقل دو تغییر لازم است. قابل نوشتن
variations[]. status string وضعیت تغییرات مقادیر ممکن: "ACTIVE"، "INACTIVE". تغییرات غیرفعال ارائه نمی شود. این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. قابل نوشتن
variations[]. url string URL تنوع. این فیلد ممکن است برای آزمایشی که وضعیت آن در حال اجرا یا پایان است تغییر نکند. قابل نوشتن
winnerConfidenceLevel double یک عدد ممیز شناور بین 0 و 1. سطح اطمینان لازم برای انتخاب برنده را مشخص می کند. این فیلد ممکن است برای آزمایشی که وضعیت آن ENDED است تغییر نکند. قابل نوشتن

واکنش

در صورت موفقیت آمیز بودن، این روش یک منبع management.experiment را در بدنه پاسخ برمی گرداند.

مثال ها

توجه: نمونه‌های کد موجود برای این روش همه زبان‌های برنامه‌نویسی پشتیبانی‌شده را نشان نمی‌دهند (برای فهرست زبان‌های پشتیبانی‌شده به صفحه کتابخانه‌های سرویس گیرنده مراجعه کنید).

جاوا

از کتابخانه سرویس گیرنده جاوا استفاده می کند.

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

/*
 *  This request creates a new Experiment.
 */

// Construct the body of the request.
Experiment body = new Experiment();
body.setName("Landing Page Experiment");
body.setStatus("DRAFT");

// Construct the first variation.
Variations variationA = new Variations();
variationA.setName("Variation A");
variationA.setUrl("index.html");

// Construct the second variation.
Variations variationB = new Variations();
variationB.setName("Variation B");
variationB.setUrl("indexB.html");

// Set the variations.
body.setVariations(Arrays.asList(variationA, variationB));

try {
  analytics.management().experiments().insert("123456", "UA-123456-1",
      "7654321", body).execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

PHP

از کتابخانه مشتری PHP استفاده می کند.

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

/**
 * This request creates a new experiment.
 */

// Construct the body of the request.
$experiment = new Google_Service_Analytics_Experiment();
$experiment->setName('Landing Page Experiment');
$experiment->setStatus('DRAFT');

// 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');

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

try {
  $analytics->management_experiments->insert('123456', 'UA-123456-1',
      '7654321', $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();
}


پایتون

از کتابخانه کلاینت پایتون استفاده می کند.

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

# Example #1:
# Creates a new DRAFT experiment with two variations.
try:
  experiments = analytics.management().experiments().insert(
      accountId='123456',
      webPropertyId='UA-123456-1',
      profileId='98765432',
      body={
          'name': 'Landing Page Test',
          'status': 'DRAFT',
          'variations': [
              {
                  'name': 'Variation A',
                  'url': 'index.html'
              },
              {
                  'name': 'Variation B',
                  '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))

جاوا اسکریپت

از کتابخانه سرویس گیرنده جاوا اسکریپت استفاده می کند.

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

/*
 * This request creates a new Experiment.
 */
function insertExperiment() {
  var request = gapi.client.analytics.management.experiments.insert(
    {
      'accountId': '123456',
      'webPropertyId': 'UA-123456-1',
      'profileId': '7654321',
      '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. });
}