batchRecordEvents(playerId, body=None, x__xgafv=None)
Records a batch of player game events for a specific player. This method allows sending multiple events in a single request.
Close httplib2 connections.
batchRecordEvents(playerId, body=None, x__xgafv=None)
Records a batch of player game events for a specific player. This method allows sending multiple events in a single request.
Args:
playerId: string, Required. The player ID of the player that performed the events. (required)
body: object, The request body.
The object takes the form of:
{ # Request message for PlayerGameEvents.BatchRecordEvents Next ID: 7
"droidGuardBlob": "A String", # Optional. The DroidGuard blob generated by the client. This is used to detect abuse signals from the devices
"events": [ # Required. A list of player game events to be recorded. Maximum of 30 events per batch request.
{ # A representation of a single player game event triggered by a player's event in a game. This might be completing a level, unlocking an item, or finishing a match.
"eventId": "A String", # Required. A unique client-generated UUID for this specific event instance. Used for server-side idempotency and deduplication. Submitting an event with a previously recorded event_id for the same player will be ignored.
"eventName": "A String", # Required. Client-defined name of the event (e.g., "run_completed", "level_up"). Maximum length: 100 characters.
"eventProperties": { # Optional. Key-value properties providing details about the event. - Maximum number of properties: 25. - Property key maximum length: 100 characters. - String values within PropertyValue maximum length: 1024 characters.
"a_key": { # Wrapper for the value.
"boolValue": True or False, # A boolean value.
"doubleValue": 3.14, # A double value.
"durationValue": "A String", # A duration value.
"intValue": "A String", # An integer value.
"stringValue": "A String", # A string value.
"timestampValue": "A String", # A timestamp value.
},
},
"eventTime": "A String", # Required. The time from the client when this specific event was performed.
},
],
"packageName": "A String", # Required. Application package name (e.g., "com.example.game").
"requestTime": "A String", # Required. The time from the client when this specific batch of events was submitted.
"salt": "A String", # Optional. The salt used to generate content binding for the DroidGuard blob. This is used to prevent replay attacks.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A successful response indicates that the batch of events has been processed.
"failedRequests": { # Map of failed events, keyed by their zero-based index in `BatchRecordEventsRequest.events`. Omitted keys indicate successful recording.
"a_key": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
"code": 42, # The status code, which should be an enum value of google.rpc.Code.
"details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
{
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
],
"message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
},
},
}
close()
Close httplib2 connections.