Method: gameStats.batchRecordEvents

Mencatat batch peristiwa game pemain untuk pemain tertentu. Metode ini memungkinkan pengiriman beberapa peristiwa dalam satu permintaan.

Permintaan HTTP

POST https://games.googleapis.com/games/v1/players/{playerId}/gameStats:batchRecordEvents

Parameter jalur

Parameter
playerId

string

Wajib: ID pemain yang melakukan peristiwa.

Isi permintaan

Isi permintaan berisi data dengan struktur berikut:

Representasi JSON
{
  "packageName": string,
  "requestTime": string,
  "events": [
    {
      object (PlayerGameEvent)
    }
  ],
}
Kolom
packageName

string

Wajib: Nama paket aplikasi (misalnya, "com.example.game").

requestTime

string (Timestamp format)

Wajib: Waktu dari klien saat batch peristiwa tertentu ini dikirimkan.

Menggunakan RFC 3339 yang outputnya akan selalu dikonversi ke format Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

events[]

object (PlayerGameEvent)

Wajib: Daftar peristiwa game pemain yang akan direkam. Maksimum 30 peristiwa per permintaan batch.

Isi respons

Respons yang berhasil menunjukkan bahwa batch peristiwa telah diproses.

Jika berhasil, isi respons berisi data dengan struktur berikut:

Representasi JSON
{
  "failedRequests": {
    integer: {
      object (Status)
    },
    ...
  }
}
Kolom
failedRequests

map (key: integer, value: object (Status))

Peta peristiwa yang gagal, yang dikelompokkan berdasarkan indeks berbasis nolnya di BatchRecordEventsRequest.events. Kunci yang dihilangkan menunjukkan perekaman berhasil.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Cakupan otorisasi

Memerlukan salah satu cakupan OAuth berikut:

  • https://www.googleapis.com/auth/games
  • https://www.googleapis.com/auth/games_lite

Untuk mengetahui informasi selengkapnya, lihat OAuth 2.0 Overview.

PlayerGameEvent

Representasi peristiwa game single player yang dipicu oleh peristiwa pemain dalam game. Hal ini bisa berupa menyelesaikan level, membuka item, atau menyelesaikan pertandingan.

Representasi JSON
{
  "eventId": string,
  "eventName": string,
  "eventProperties": {
    string: {
      object (PropertyValue)
    },
    ...
  },
  "eventTime": string
}
Kolom
eventId

string

Wajib: UUID unik yang dibuat klien untuk instance peristiwa tertentu ini. Digunakan untuk idempotensi dan penghapusan duplikat sisi server. Mengirimkan peristiwa dengan eventId yang sebelumnya direkam untuk pemutar yang sama akan diabaikan.

eventName

string

Wajib: Nama peristiwa yang ditentukan klien (misalnya, "run_completed", "level_up"). Panjang maksimum: 100 karakter.

eventProperties

map (key: string, value: object (PropertyValue))

Opsional: Properti key-value yang memberikan detail tentang peristiwa. - Jumlah maksimum properti: 25. - Panjang maksimum kunci properti: 100 karakter. - Nilai string dalam panjang maksimum PropertyValue: 1024 karakter.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

eventTime

string (Timestamp format)

Wajib: Waktu dari klien saat peristiwa spesifik ini dilakukan.

Menggunakan RFC 3339 yang outputnya akan selalu dikonversi ke format Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

PropertyValue

Wrapper untuk nilai.

Representasi JSON
{

  // Union field value can be only one of the following:
  "intValue": string,
  "doubleValue": number,
  "stringValue": string,
  "boolValue": boolean,
  // End of list of possible types for union field value.
}
Kolom
Kolom union value. Nilai skalar. value hanya dapat berupa salah satu dari hal berikut:
intValue

string (int64 format)

Nilai bilangan bulat.

doubleValue

number

Nilai ganda.

stringValue

string

Nilai string.

boolValue

boolean

Nilai boolean.

Status

Jenis Status menentukan model error logis yang cocok untuk berbagai lingkungan pemrograman, meliputi REST API dan RPC API. Jenis error ini digunakan oleh gRPC. Setiap pesan Status berisi tiga bagian data: kode error, pesan error, dan detail error.

Anda dapat mencari tahu lebih lanjut tentang model error ini dan cara penanganannya di Panduan Desain API.

Representasi JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Kolom
code

integer

Kode status, harus berupa nilai enum dari google.rpc.Code.

message

string

Pesan error yang ditampilkan ke developer dan seharusnya dalam bahasa Inggris. Setiap pesan error yang ditampilkan kepada pengguna harus dilokalkan dan dikirim di kolom google.rpc.Status.details, atau dilokalkan oleh klien.

details[]

object

Daftar pesan yang membawa detail error. Ada seperangkat jenis pesan umum untuk digunakan API.

Objek yang berisi kolom tipe arbitrer. Kolom tambahan "@type" berisi URI yang mengidentifikasi jenis. Contoh: { "id": 1234, "@type": "types.example.com/standard/id" }.