Measurement Protocol etkinliklerini Google Analytics'e gönderme

Bu kılavuzda, Google Analytics Measurement Protocol web ve uygulama veri akışı etkinliklerini bir Google Analytics sunucusuna nasıl gönderebileceğiniz açıklanmaktadır. Böylece, Measurement Protocol etkinliklerini Google Analytics raporlarınızda görüntüleyebilirsiniz.

Bu kılavuzda görmek istediğiniz platformu seçin:

İsteği biçimlendirme

Google Analytics Measurement Protocol yalnızca HTTP POST isteklerini destekler.

Etkinlik göndermek için aşağıdaki biçimi kullanın:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>

İstek URL'sinde şunları sağlamanız gerekir:

  • api_secret: Google Analytics kullanıcı arayüzünde oluşturulan API gizli anahtarı.

    Yeni bir gizli anahtar oluşturmak için Yönetici > Veri Akışları > akışınızı seçin > Measurement Protocol > Oluştur'a gidin.

  • measurement_id: Bir akışla ilişkilendirilen ölçüm kimliği. Bu kimlik, Google Analytics kullanıcı arayüzünde Yönetici > Veri Akışları > akışınızı seçin > Ölçüm Kimliği bölümünde bulunur.

    measurement_id, akış kimliğiniz değildir.

Tam referans için sorgu parametrelerine bakın.

İstek gövdesinde şunları sağlamanız gerekir:

  • client_id: İstemci için benzersiz tanımlayıcı. Bu, Firebase app_instance_id'ten farklıdır. gtag.js('get') işlevini kullanın.
  • user_id: İsteğe bağlı. Kullanıcı için benzersiz tanımlayıcı. Yalnızca UTF-8 karakterler içerebilir. Bu tanımlayıcı hakkında daha fazla bilgi için Platformlar arası analiz için User-ID başlıklı makaleyi inceleyin.

  • consent: İsteğe bağlı. İzin ayarlarını nasıl yapacağınızı öğrenin.

  • timestamp_micros: İsteğe bağlı. İstekteki etkinlikler ve kullanıcı özellikleri için mikro saniye cinsinden Unix epoch zaman damgası. Belirtilmemesi durumunda varsayılan olarak isteğin zaman damgasını gösterir.

  • events: Etkinlik öğeleri dizisi. Bir isteğe birden çok etkinlik ekleyebilirsiniz.

    Kullanıcı etkinliğinin anlık gibi raporlarda gösterilmesi için event için params kapsamında engagement_time_msec ve session_id sağlanmalıdır. engagement_time_msec parametresi, etkinliğin milisaniye cinsinden etkileşim süresini belirtmelidir.

    Aşağıda bununla ilgili bir örnek verilmiştir:

  {
   "client_id": "123456.7654321",
   "events": [
     {
        "name": "campaign_details",
        "params": {
          "campaign_id": "google_1234",
          "campaign": "Summer_fun",
          "source": "google",
          "medium": "cpc",
          "term": "summer+travel",
          "content": "logolink",
          "session_id": "123",
          "engagement_time_msec": 100
        }
     }
   ]
  }

session_start, ayrılmış bir etkinlik adı olmasına rağmen yeni bir session_id oluşturulması durumunda session_start gönderilmesine gerek kalmadan yeni oturum oluşturulur. Oturumların nasıl sayıldığını öğrenin.

Dene

Tek seferde birden fazla etkinlik göndermek için kullanabileceğiniz bir örneği burada bulabilirsiniz. Bu örnekte, Google Analytics sunucunuza bir tutorial_begin etkinliği ve bir join_group etkinliği gönderilmektedir.

const measurement_id = `G-XXXXXXXXXX`;
const api_secret = `<secret_value>`;

fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {
  method: "POST",
  body: JSON.stringify({
    client_id: "XXXXXXXXXX.YYYYYYYYYY",
    events: [
      {
        name: "tutorial_begin",
        params: {
          "session_id": "123",
          "engagement_time_msec": 100
        }
      },
      {
        name: "join_group",
        params: {
          "group_id": "G_12345",
          "session_id": "123",
          "engagement_time_msec": 150
        }
      }
    ]
  })
});

Zaman damgasını geçersiz kılma

Measurement Protocol, istekteki her etkinlik için aşağıdaki listede bulduğu ilk zaman damgasını kullanır:

  1. Etkinliğin timestamp_micros.
  2. İsteğin timestamp_micros.
  3. Measurement Protocol'un isteği aldığı zaman.

Aşağıdaki örnek, istekteki tüm etkinlikler için geçerli olan istek düzeyinde bir zaman damgası gönderir. Sonuç olarak Measurement Protocol, hem tutorial_begin hem de join_group etkinliklerine requestUnixEpochTimeInMicros zaman damgası atar.

{
  "timestamp_micros": requestUnixEpochTimeInMicros,
  "events": [
    {
      "name": "tutorial_begin"
    },
    {
      "name": "join_group",
      "params": {
        "group_id": "G_12345",
      }
    }
  ]
}

Aşağıdaki örnekte hem istek düzeyinde hem de etkinlik düzeyinde zaman damgası gönderilmektedir. Sonuç olarak Measurement Protocol, tutorial_begin etkinliğine tutorialBeginUnixEpochTimeInMicros zaman damgası, join_group etkinliğine ise requestUnixEpochTimeInMicros zaman damgası atar.

{
  "timestamp_micros": requestUnixEpochTimeInMicros,
  "events": [
    {
      "name": "tutorial_begin",
      "timestamp_micros": tutorialBeginUnixEpochTimeInMicros
    },
    {
      "name": "join_group",
      "params": {
        "group_id": "G_12345",
      }
    }
  ]
}

Sınırlamalar

Measurement Protocol etkinliklerinin Google Analytics'e gönderilmesi için aşağıdaki sınırlamalar geçerlidir:

  • İstekler en fazla 25 etkinlik içerebilir.
  • Etkinlikler en fazla 25 parametreye sahip olabilir.
  • Etkinlikler en fazla 25 kullanıcı özelliğine sahip olabilir.
  • Kullanıcı özelliği adları en fazla 24 karakterden oluşmalıdır.
  • Kullanıcı özelliği değerleri en fazla 36 karakterden oluşmalıdır.
  • Etkinlik adı en fazla 40 karakterden oluşmalıdır. Yalnızca alfanümerik karakterler ve alt çizgiler içerebilir ve alfabetik karakterle başlaması gerekir.
  • Öğe parametreleri dahil parametre adları en fazla 40 karakterden oluşabilir. Yalnızca alfanümerik karakterler ve alt çizgiler içerebilir ve alfabetik karakterle başlaması gerekir.
  • Öğe parametresi değerleri dahil olmak üzere parametre değerleri, standart bir Google Analytics mülkü için en fazla 100 karakter, Google Analytics 360 mülkü için en fazla 500 karakterden oluşmalıdır.
  • Öğe parametreleri en fazla 10 özel parametreye sahip olabilir.
  • Yayın metni 130 KB'tan küçük olmalıdır.
  • Google Analytics'e gönderilen uygulama Measurement Protocol etkinlikleri, uygulama kullanıcıları için Google Ads'deki Arama kitlelerini doldurmaz.

Her kullanım alanı için ek koşullar için yaygın kullanım alanlarına bakın.