Measurement Protocol etkinliklerini Google Analytics'e gönderme

Bu kılavuzda Google Analytics Measurement Protocol web ve uygulama akışı etkinlikleri Böylece Measurement Protocol etkinliklerini Google Analytics'te görüntüleyebilirsiniz. Google Analytics raporlarınız.

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

İsteği biçimlendirme

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

Bir 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 aşağıdakileri sağlamanız gerekir:

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

    Yeni bir gizli anahtar oluşturmak için Yönetici bölümüne gidin > Veri Akışları > seç canlı yayınınıza gidin > Measurement Protocol > Oluştur.

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

    measurement_id, Akış Kimliğiniz değil.

Tam referans için sorgu parametreleri bölümüne bakın.

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

  • client_id: Müşteri için benzersiz bir tanımlayıcıdır. Bu, Firebase app_instance_id gtag.js('get') kullanın.
  • user_id: İsteğe bağlı. Kullanıcının benzersiz tanımlayıcısıdır. Yalnızca UTF-8 içerebilir karakteri ekleyin. Daha fazla bilgi için Platformlar arası analiz için User-ID bölümüne bakın. hakkında daha fazla bilgi edinin.

  • consent: İsteğe bağlı. Rızayı nasıl ayarlayacağınızı öğrenin Ayarlar'da bulabilirsiniz.

  • timestamp_micros: İsteğe bağlı. için mikrosaniye cinsinden Unix sıfır etkinlikleri ve kullanıcı özelliklerini belirtir. Belirtilmezse varsayılan olarak bilgi edinin.

  • events: Etkinlik öğeleri dizisi. Tek bir etkinliğe birden fazla etkinlik ekleyebilirsiniz isteğinde bulunabilirsiniz.

    Kullanıcı etkinliğinin, Google Ads gibi raporlarda Gerçek zamanlı, engagement_time_msec ve session_id, event için params. engagement_time_msec parametresi, etkinliğin etkileşim süresini milisaniye cinsinden gösterir.

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

```json { "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" } } ] } ``` While `session_start` is a [reserved event name](/analytics/devguides/collection/protocol/ga4/reference#reserved_names), creating a new `session_id` creates a new session without the need to send `session_start`. Understand how [sessions are counted](//support.google.com/analytics/answer/9191807). ## Try it Here's an example you can use to send a [`tutorial_begin`] event to your Google Analytics server: ```javascript 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: {}, }] }) }); ``` ## Override timestamp The Measurement Protocol uses the *first* timestamp it finds in the following list for each event in the request: 1. The `timestamp_micros` of the event. 1. The `timestamp_micros` of the request. 1. The time that the Measurement Protocol receives the request. The following example sends a request-level timestamp that applies to all of the events in the request. As a result, the Measurement Protocol assigns both the `tutorial_begin` and `join_group` events a timestamp of `requestUnixEpochTimeInMicros`. ```javascript { "timestamp_micros": requestUnixEpochTimeInMicros, "events": [ { "name": "tutorial_begin" }, { "name": "join_group", "params": { "group_id": "G_12345", } } ] } ``` The following example sends both a request-level timestamp and an event-level timestamp. As a result, the Measurement Protocol assigns the `tutorial_begin` event a timestamp of `tutorialBeginUnixEpochTimeInMicros`, and the `join_group` event a timestamp of `requestUnixEpochTimeInMicros`. ```javascript { "timestamp_micros": requestUnixEpochTimeInMicros, "events": [ { "name": "tutorial_begin", "timestamp_micros": tutorialBeginUnixEpochTimeInMicros }, { "name": "join_group", "params": { "group_id": "G_12345", } } ] } ``` ## Limitations The following limitations apply to sending Measurement Protocol events to Google Analytics: Note: For information on the limitations of 360 features, see [Google Analytics 360](//support.google.com/analytics/answer/11202874). * Requests can have a maximum of 25 events. * Events can have a maximum of 25 parameters. * Events can have a maximum of 25 user properties. * User property names must be 24 characters or fewer. * User property values must be 36 characters or fewer. * Event names must be 40 characters or fewer, can only contain alpha-numeric characters and underscores, and must start with an alphabetic character. * Parameter names including item parameters must be 40 characters or fewer, can only contain alpha-numeric characters and underscores, and must start with an alphabetic character. * Parameter values including item parameter values must be 100 characters or fewer for a standard Google Analytics property, and 500 characters or fewer for a Google Analytics 360 property. * Item parameters can have a maximum of 10 custom parameters. * The post body must be smaller than 130kB. * App Measurement Protocol events sent to Google Analytics 4 don't populate Search audiences in Google Ads for app users. For additional requirements of each use case, see [common use cases].