blob: ab3cb8637fcfc6c555331de04ed7073f99c61c4a [file] [log] [blame]
John Asmuth614db982014-04-24 15:46:26 -04001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="games_v1.html">Google Play Game Services API</a> . <a href="games_v1.turnBasedMatches.html">turnBasedMatches</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070078 <code><a href="#cancel">cancel(matchId, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -040079<p class="firstline">Cancel a turn-based match.</p>
80<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070081 <code><a href="#create">create(body, language=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -040082<p class="firstline">Create a turn-based match.</p>
83<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070084 <code><a href="#decline">decline(matchId, language=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -040085<p class="firstline">Decline an invitation to play a turn-based match.</p>
86<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070087 <code><a href="#dismiss">dismiss(matchId, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -040088<p class="firstline">Dismiss a turn-based match from the match list. The match will no longer show up in the list and will not generate notifications.</p>
89<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070090 <code><a href="#finish">finish(matchId, body, language=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -040091<p class="firstline">Finish a turn-based match. Each player should make this call once, after all results are in. Only the player whose turn it is may make the first call to Finish, and can pass in the final match state.</p>
92<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070093 <code><a href="#get">get(matchId, language=None, includeMatchData=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -040094<p class="firstline">Get the data for a turn-based match.</p>
95<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070096 <code><a href="#join">join(matchId, language=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -040097<p class="firstline">Join a turn-based match.</p>
98<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070099 <code><a href="#leave">leave(matchId, language=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -0400100<p class="firstline">Leave a turn-based match when it is not the current player's turn, without canceling the match.</p>
101<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700102 <code><a href="#leaveTurn">leaveTurn(matchId, matchVersion, language=None, pendingParticipantId=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -0400103<p class="firstline">Leave a turn-based match during the current player's turn, without canceling the match.</p>
104<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700105 <code><a href="#list">list(maxCompletedMatches=None, language=None, pageToken=None, maxResults=None, includeMatchData=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -0400106<p class="firstline">Returns turn-based matches the player is or was involved in.</p>
107<p class="toc_element">
108 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
109<p class="firstline">Retrieves the next page of results.</p>
110<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700111 <code><a href="#rematch">rematch(matchId, language=None, requestId=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -0400112<p class="firstline">Create a rematch of a match that was previously completed, with the same participants. This can be called by only one player on a match still in their list; the player must have called Finish first. Returns the newly created match; it will be the caller's turn.</p>
113<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700114 <code><a href="#sync">sync(maxCompletedMatches=None, language=None, pageToken=None, maxResults=None, includeMatchData=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -0400115<p class="firstline">Returns turn-based matches the player is or was involved in that changed since the last sync call, with the least recent changes coming first. Matches that should be removed from the local cache will have a status of MATCH_DELETED.</p>
116<p class="toc_element">
117 <code><a href="#sync_next">sync_next(previous_request, previous_response)</a></code></p>
118<p class="firstline">Retrieves the next page of results.</p>
119<p class="toc_element">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700120 <code><a href="#takeTurn">takeTurn(matchId, body, language=None, consistencyToken=None)</a></code></p>
John Asmuth614db982014-04-24 15:46:26 -0400121<p class="firstline">Commit the results of a player turn.</p>
122<h3>Method Details</h3>
123<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700124 <code class="details" id="cancel">cancel(matchId, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400125 <pre>Cancel a turn-based match.
126
127Args:
128 matchId: string, The ID of the match. (required)
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700129 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400130</pre>
131</div>
132
133<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700134 <code class="details" id="create">create(body, language=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400135 <pre>Create a turn-based match.
136
137Args:
138 body: object, The request body. (required)
139 The object takes the form of:
140
141{ # This is a JSON template for a turn-based match creation request.
142 "invitedPlayerIds": [ # The player ids to invite to the match.
143 "A String",
144 ],
145 "kind": "games#turnBasedMatchCreateRequest", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchCreateRequest.
146 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
147 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
148 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
149 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
150 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
151 },
152 "variant": 42, # The variant / mode of the application to be played. This can be any integer value, or left blank. You should use a small number of variants to keep the auto-matching pool as large as possible.
153 "requestId": "A String", # A randomly generated numeric ID. This number is used at the server to ensure that the request is handled correctly across retries.
154 }
155
156 language: string, The preferred language to use for strings returned by this method.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700157 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400158
159Returns:
160 An object of the form:
161
162 { # This is a JSON template for a turn-based match resource object.
163 "status": "A String", # The status of the match.
164 # Possible values are:
165 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
166 # - "MATCH_ACTIVE" - The match has started.
167 # - "MATCH_COMPLETE" - The match has finished.
168 # - "MATCH_CANCELED" - The match was canceled.
169 # - "MATCH_EXPIRED" - The match expired due to inactivity.
170 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
171 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
172 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
173 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
174 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
175 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
176 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
177 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
178 },
179 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
180 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
181 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
182 "participantId": "A String", # The ID of the participant that modified the match.
183 },
184 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
185 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
186 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
187 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
188 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
189 },
190 "matchId": "A String", # Globally unique ID for a turn-based match.
191 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
192 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
193 { # This is a JSON template for a participant in a turn-based match.
194 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
195 "status": "A String", # The status of the participant with respect to the match.
196 # Possible values are:
197 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
198 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
199 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
200 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
201 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
202 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
203 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
204 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
205 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
206 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
207 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
208 "displayName": "A String", # The name to display for the anonymous player.
209 },
210 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800211 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -0400212 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
213 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -0700214 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
215 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
216 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -0400217 },
Craig Citro065b5302014-08-14 00:47:23 -0700218 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -0400219 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
220 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
221 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
222 },
223 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800224 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700225 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
226 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
227 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
228 },
Craig Citro065b5302014-08-14 00:47:23 -0700229 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
230 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
231 "currentExperiencePoints": "A String", # The current number of experience points for the player.
232 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
233 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
234 "maxExperiencePoints": "A String", # The maximum experience points for this level.
235 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
236 "minExperiencePoints": "A String", # The minimum experience points for this level.
237 "level": 42, # The level for the user.
238 },
239 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
240 "maxExperiencePoints": "A String", # The maximum experience points for this level.
241 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
242 "minExperiencePoints": "A String", # The minimum experience points for this level.
243 "level": 42, # The level for the user.
244 },
245 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800246 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700247 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -0400248 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
249 },
250 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
251 },
252 ],
253 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
254 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
255 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
256 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
257 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
258 "participantId": "A String", # The ID of the participant that modified the match.
259 },
260 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
261 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
262 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
263 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
264 },
265 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
266 "results": [ # The results reported for this match.
267 { # This is a JSON template for a result for a match participant.
268 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
269 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
270 "participantId": "A String", # The ID of the participant.
271 "result": "A String", # The result of the participant for this match.
272 # Possible values are:
273 # - "MATCH_RESULT_WIN" - The participant won the match.
274 # - "MATCH_RESULT_LOSS" - The participant lost the match.
275 # - "MATCH_RESULT_TIE" - The participant tied the match.
276 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
277 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
278 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
279 },
280 ],
281 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
282 "applicationId": "A String", # The ID of the application being played.
283 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
284 # Possible values are:
285 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
286 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
287 # - "USER_TURN" - The user has an action to take in the match.
288 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
289 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
290 }</pre>
291</div>
292
293<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700294 <code class="details" id="decline">decline(matchId, language=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400295 <pre>Decline an invitation to play a turn-based match.
296
297Args:
298 matchId: string, The ID of the match. (required)
299 language: string, The preferred language to use for strings returned by this method.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700300 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400301
302Returns:
303 An object of the form:
304
305 { # This is a JSON template for a turn-based match resource object.
306 "status": "A String", # The status of the match.
307 # Possible values are:
308 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
309 # - "MATCH_ACTIVE" - The match has started.
310 # - "MATCH_COMPLETE" - The match has finished.
311 # - "MATCH_CANCELED" - The match was canceled.
312 # - "MATCH_EXPIRED" - The match expired due to inactivity.
313 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
314 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
315 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
316 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
317 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
318 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
319 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
320 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
321 },
322 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
323 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
324 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
325 "participantId": "A String", # The ID of the participant that modified the match.
326 },
327 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
328 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
329 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
330 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
331 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
332 },
333 "matchId": "A String", # Globally unique ID for a turn-based match.
334 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
335 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
336 { # This is a JSON template for a participant in a turn-based match.
337 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
338 "status": "A String", # The status of the participant with respect to the match.
339 # Possible values are:
340 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
341 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
342 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
343 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
344 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
345 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
346 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
347 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
348 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
349 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
350 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
351 "displayName": "A String", # The name to display for the anonymous player.
352 },
353 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800354 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -0400355 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
356 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -0700357 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
358 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
359 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -0400360 },
Craig Citro065b5302014-08-14 00:47:23 -0700361 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -0400362 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
363 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
364 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
365 },
366 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800367 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700368 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
369 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
370 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
371 },
Craig Citro065b5302014-08-14 00:47:23 -0700372 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
373 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
374 "currentExperiencePoints": "A String", # The current number of experience points for the player.
375 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
376 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
377 "maxExperiencePoints": "A String", # The maximum experience points for this level.
378 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
379 "minExperiencePoints": "A String", # The minimum experience points for this level.
380 "level": 42, # The level for the user.
381 },
382 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
383 "maxExperiencePoints": "A String", # The maximum experience points for this level.
384 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
385 "minExperiencePoints": "A String", # The minimum experience points for this level.
386 "level": 42, # The level for the user.
387 },
388 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800389 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700390 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -0400391 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
392 },
393 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
394 },
395 ],
396 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
397 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
398 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
399 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
400 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
401 "participantId": "A String", # The ID of the participant that modified the match.
402 },
403 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
404 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
405 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
406 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
407 },
408 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
409 "results": [ # The results reported for this match.
410 { # This is a JSON template for a result for a match participant.
411 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
412 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
413 "participantId": "A String", # The ID of the participant.
414 "result": "A String", # The result of the participant for this match.
415 # Possible values are:
416 # - "MATCH_RESULT_WIN" - The participant won the match.
417 # - "MATCH_RESULT_LOSS" - The participant lost the match.
418 # - "MATCH_RESULT_TIE" - The participant tied the match.
419 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
420 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
421 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
422 },
423 ],
424 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
425 "applicationId": "A String", # The ID of the application being played.
426 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
427 # Possible values are:
428 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
429 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
430 # - "USER_TURN" - The user has an action to take in the match.
431 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
432 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
433 }</pre>
434</div>
435
436<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700437 <code class="details" id="dismiss">dismiss(matchId, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400438 <pre>Dismiss a turn-based match from the match list. The match will no longer show up in the list and will not generate notifications.
439
440Args:
441 matchId: string, The ID of the match. (required)
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700442 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400443</pre>
444</div>
445
446<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700447 <code class="details" id="finish">finish(matchId, body, language=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400448 <pre>Finish a turn-based match. Each player should make this call once, after all results are in. Only the player whose turn it is may make the first call to Finish, and can pass in the final match state.
449
450Args:
451 matchId: string, The ID of the match. (required)
452 body: object, The request body. (required)
453 The object takes the form of:
454
455{ # This is a JSON template for a turn-based match results object.
456 "kind": "games#turnBasedMatchResults", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchResults.
457 "data": { # This is a JSON template for sending a turn-based match data object. # The final match data.
458 "kind": "games#turnBasedMatchDataRequest", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchDataRequest.
459 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
460 },
461 "matchVersion": 42, # The version of the match being updated.
462 "results": [ # The match results for the participants in the match.
463 { # This is a JSON template for a result for a match participant.
464 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
465 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
466 "participantId": "A String", # The ID of the participant.
467 "result": "A String", # The result of the participant for this match.
468 # Possible values are:
469 # - "MATCH_RESULT_WIN" - The participant won the match.
470 # - "MATCH_RESULT_LOSS" - The participant lost the match.
471 # - "MATCH_RESULT_TIE" - The participant tied the match.
472 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
473 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
474 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
475 },
476 ],
477 }
478
479 language: string, The preferred language to use for strings returned by this method.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700480 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400481
482Returns:
483 An object of the form:
484
485 { # This is a JSON template for a turn-based match resource object.
486 "status": "A String", # The status of the match.
487 # Possible values are:
488 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
489 # - "MATCH_ACTIVE" - The match has started.
490 # - "MATCH_COMPLETE" - The match has finished.
491 # - "MATCH_CANCELED" - The match was canceled.
492 # - "MATCH_EXPIRED" - The match expired due to inactivity.
493 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
494 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
495 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
496 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
497 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
498 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
499 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
500 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
501 },
502 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
503 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
504 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
505 "participantId": "A String", # The ID of the participant that modified the match.
506 },
507 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
508 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
509 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
510 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
511 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
512 },
513 "matchId": "A String", # Globally unique ID for a turn-based match.
514 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
515 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
516 { # This is a JSON template for a participant in a turn-based match.
517 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
518 "status": "A String", # The status of the participant with respect to the match.
519 # Possible values are:
520 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
521 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
522 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
523 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
524 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
525 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
526 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
527 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
528 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
529 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
530 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
531 "displayName": "A String", # The name to display for the anonymous player.
532 },
533 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800534 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -0400535 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
536 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -0700537 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
538 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
539 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -0400540 },
Craig Citro065b5302014-08-14 00:47:23 -0700541 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -0400542 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
543 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
544 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
545 },
546 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800547 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700548 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
549 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
550 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
551 },
Craig Citro065b5302014-08-14 00:47:23 -0700552 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
553 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
554 "currentExperiencePoints": "A String", # The current number of experience points for the player.
555 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
556 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
557 "maxExperiencePoints": "A String", # The maximum experience points for this level.
558 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
559 "minExperiencePoints": "A String", # The minimum experience points for this level.
560 "level": 42, # The level for the user.
561 },
562 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
563 "maxExperiencePoints": "A String", # The maximum experience points for this level.
564 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
565 "minExperiencePoints": "A String", # The minimum experience points for this level.
566 "level": 42, # The level for the user.
567 },
568 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800569 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700570 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -0400571 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
572 },
573 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
574 },
575 ],
576 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
577 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
578 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
579 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
580 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
581 "participantId": "A String", # The ID of the participant that modified the match.
582 },
583 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
584 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
585 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
586 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
587 },
588 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
589 "results": [ # The results reported for this match.
590 { # This is a JSON template for a result for a match participant.
591 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
592 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
593 "participantId": "A String", # The ID of the participant.
594 "result": "A String", # The result of the participant for this match.
595 # Possible values are:
596 # - "MATCH_RESULT_WIN" - The participant won the match.
597 # - "MATCH_RESULT_LOSS" - The participant lost the match.
598 # - "MATCH_RESULT_TIE" - The participant tied the match.
599 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
600 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
601 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
602 },
603 ],
604 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
605 "applicationId": "A String", # The ID of the application being played.
606 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
607 # Possible values are:
608 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
609 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
610 # - "USER_TURN" - The user has an action to take in the match.
611 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
612 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
613 }</pre>
614</div>
615
616<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700617 <code class="details" id="get">get(matchId, language=None, includeMatchData=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400618 <pre>Get the data for a turn-based match.
619
620Args:
621 matchId: string, The ID of the match. (required)
622 language: string, The preferred language to use for strings returned by this method.
623 includeMatchData: boolean, Get match data along with metadata.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700624 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400625
626Returns:
627 An object of the form:
628
629 { # This is a JSON template for a turn-based match resource object.
630 "status": "A String", # The status of the match.
631 # Possible values are:
632 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
633 # - "MATCH_ACTIVE" - The match has started.
634 # - "MATCH_COMPLETE" - The match has finished.
635 # - "MATCH_CANCELED" - The match was canceled.
636 # - "MATCH_EXPIRED" - The match expired due to inactivity.
637 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
638 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
639 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
640 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
641 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
642 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
643 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
644 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
645 },
646 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
647 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
648 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
649 "participantId": "A String", # The ID of the participant that modified the match.
650 },
651 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
652 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
653 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
654 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
655 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
656 },
657 "matchId": "A String", # Globally unique ID for a turn-based match.
658 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
659 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
660 { # This is a JSON template for a participant in a turn-based match.
661 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
662 "status": "A String", # The status of the participant with respect to the match.
663 # Possible values are:
664 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
665 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
666 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
667 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
668 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
669 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
670 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
671 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
672 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
673 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
674 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
675 "displayName": "A String", # The name to display for the anonymous player.
676 },
677 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800678 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -0400679 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
680 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -0700681 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
682 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
683 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -0400684 },
Craig Citro065b5302014-08-14 00:47:23 -0700685 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -0400686 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
687 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
688 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
689 },
690 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800691 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700692 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
693 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
694 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
695 },
Craig Citro065b5302014-08-14 00:47:23 -0700696 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
697 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
698 "currentExperiencePoints": "A String", # The current number of experience points for the player.
699 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
700 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
701 "maxExperiencePoints": "A String", # The maximum experience points for this level.
702 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
703 "minExperiencePoints": "A String", # The minimum experience points for this level.
704 "level": 42, # The level for the user.
705 },
706 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
707 "maxExperiencePoints": "A String", # The maximum experience points for this level.
708 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
709 "minExperiencePoints": "A String", # The minimum experience points for this level.
710 "level": 42, # The level for the user.
711 },
712 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800713 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700714 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -0400715 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
716 },
717 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
718 },
719 ],
720 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
721 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
722 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
723 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
724 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
725 "participantId": "A String", # The ID of the participant that modified the match.
726 },
727 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
728 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
729 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
730 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
731 },
732 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
733 "results": [ # The results reported for this match.
734 { # This is a JSON template for a result for a match participant.
735 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
736 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
737 "participantId": "A String", # The ID of the participant.
738 "result": "A String", # The result of the participant for this match.
739 # Possible values are:
740 # - "MATCH_RESULT_WIN" - The participant won the match.
741 # - "MATCH_RESULT_LOSS" - The participant lost the match.
742 # - "MATCH_RESULT_TIE" - The participant tied the match.
743 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
744 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
745 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
746 },
747 ],
748 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
749 "applicationId": "A String", # The ID of the application being played.
750 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
751 # Possible values are:
752 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
753 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
754 # - "USER_TURN" - The user has an action to take in the match.
755 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
756 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
757 }</pre>
758</div>
759
760<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700761 <code class="details" id="join">join(matchId, language=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400762 <pre>Join a turn-based match.
763
764Args:
765 matchId: string, The ID of the match. (required)
766 language: string, The preferred language to use for strings returned by this method.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700767 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400768
769Returns:
770 An object of the form:
771
772 { # This is a JSON template for a turn-based match resource object.
773 "status": "A String", # The status of the match.
774 # Possible values are:
775 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
776 # - "MATCH_ACTIVE" - The match has started.
777 # - "MATCH_COMPLETE" - The match has finished.
778 # - "MATCH_CANCELED" - The match was canceled.
779 # - "MATCH_EXPIRED" - The match expired due to inactivity.
780 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
781 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
782 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
783 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
784 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
785 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
786 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
787 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
788 },
789 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
790 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
791 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
792 "participantId": "A String", # The ID of the participant that modified the match.
793 },
794 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
795 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
796 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
797 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
798 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
799 },
800 "matchId": "A String", # Globally unique ID for a turn-based match.
801 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
802 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
803 { # This is a JSON template for a participant in a turn-based match.
804 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
805 "status": "A String", # The status of the participant with respect to the match.
806 # Possible values are:
807 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
808 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
809 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
810 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
811 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
812 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
813 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
814 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
815 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
816 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
817 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
818 "displayName": "A String", # The name to display for the anonymous player.
819 },
820 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800821 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -0400822 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
823 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -0700824 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
825 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
826 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -0400827 },
Craig Citro065b5302014-08-14 00:47:23 -0700828 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -0400829 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
830 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
831 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
832 },
833 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800834 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700835 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
836 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
837 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
838 },
Craig Citro065b5302014-08-14 00:47:23 -0700839 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
840 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
841 "currentExperiencePoints": "A String", # The current number of experience points for the player.
842 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
843 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
844 "maxExperiencePoints": "A String", # The maximum experience points for this level.
845 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
846 "minExperiencePoints": "A String", # The minimum experience points for this level.
847 "level": 42, # The level for the user.
848 },
849 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
850 "maxExperiencePoints": "A String", # The maximum experience points for this level.
851 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
852 "minExperiencePoints": "A String", # The minimum experience points for this level.
853 "level": 42, # The level for the user.
854 },
855 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800856 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700857 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -0400858 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
859 },
860 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
861 },
862 ],
863 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
864 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
865 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
866 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
867 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
868 "participantId": "A String", # The ID of the participant that modified the match.
869 },
870 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
871 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
872 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
873 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
874 },
875 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
876 "results": [ # The results reported for this match.
877 { # This is a JSON template for a result for a match participant.
878 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
879 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
880 "participantId": "A String", # The ID of the participant.
881 "result": "A String", # The result of the participant for this match.
882 # Possible values are:
883 # - "MATCH_RESULT_WIN" - The participant won the match.
884 # - "MATCH_RESULT_LOSS" - The participant lost the match.
885 # - "MATCH_RESULT_TIE" - The participant tied the match.
886 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
887 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
888 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
889 },
890 ],
891 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
892 "applicationId": "A String", # The ID of the application being played.
893 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
894 # Possible values are:
895 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
896 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
897 # - "USER_TURN" - The user has an action to take in the match.
898 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
899 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
900 }</pre>
901</div>
902
903<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700904 <code class="details" id="leave">leave(matchId, language=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -0400905 <pre>Leave a turn-based match when it is not the current player's turn, without canceling the match.
906
907Args:
908 matchId: string, The ID of the match. (required)
909 language: string, The preferred language to use for strings returned by this method.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700910 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -0400911
912Returns:
913 An object of the form:
914
915 { # This is a JSON template for a turn-based match resource object.
916 "status": "A String", # The status of the match.
917 # Possible values are:
918 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
919 # - "MATCH_ACTIVE" - The match has started.
920 # - "MATCH_COMPLETE" - The match has finished.
921 # - "MATCH_CANCELED" - The match was canceled.
922 # - "MATCH_EXPIRED" - The match expired due to inactivity.
923 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
924 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
925 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
926 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
927 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
928 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
929 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
930 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
931 },
932 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
933 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
934 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
935 "participantId": "A String", # The ID of the participant that modified the match.
936 },
937 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
938 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
939 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
940 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
941 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
942 },
943 "matchId": "A String", # Globally unique ID for a turn-based match.
944 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
945 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
946 { # This is a JSON template for a participant in a turn-based match.
947 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
948 "status": "A String", # The status of the participant with respect to the match.
949 # Possible values are:
950 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
951 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
952 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
953 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
954 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
955 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
956 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
957 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
958 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
959 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
960 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
961 "displayName": "A String", # The name to display for the anonymous player.
962 },
963 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800964 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -0400965 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
966 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -0700967 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
968 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
969 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -0400970 },
Craig Citro065b5302014-08-14 00:47:23 -0700971 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -0400972 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
973 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
974 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
975 },
976 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800977 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700978 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
979 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
980 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
981 },
Craig Citro065b5302014-08-14 00:47:23 -0700982 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
983 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
984 "currentExperiencePoints": "A String", # The current number of experience points for the player.
985 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
986 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
987 "maxExperiencePoints": "A String", # The maximum experience points for this level.
988 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
989 "minExperiencePoints": "A String", # The minimum experience points for this level.
990 "level": 42, # The level for the user.
991 },
992 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
993 "maxExperiencePoints": "A String", # The maximum experience points for this level.
994 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
995 "minExperiencePoints": "A String", # The minimum experience points for this level.
996 "level": 42, # The level for the user.
997 },
998 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800999 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001000 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -04001001 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
1002 },
1003 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
1004 },
1005 ],
1006 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
1007 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
1008 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
1009 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1010 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1011 "participantId": "A String", # The ID of the participant that modified the match.
1012 },
1013 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
1014 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1015 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1016 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1017 },
1018 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
1019 "results": [ # The results reported for this match.
1020 { # This is a JSON template for a result for a match participant.
1021 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1022 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1023 "participantId": "A String", # The ID of the participant.
1024 "result": "A String", # The result of the participant for this match.
1025 # Possible values are:
1026 # - "MATCH_RESULT_WIN" - The participant won the match.
1027 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1028 # - "MATCH_RESULT_TIE" - The participant tied the match.
1029 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1030 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1031 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1032 },
1033 ],
1034 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
1035 "applicationId": "A String", # The ID of the application being played.
1036 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
1037 # Possible values are:
1038 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
1039 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
1040 # - "USER_TURN" - The user has an action to take in the match.
1041 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
1042 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
1043 }</pre>
1044</div>
1045
1046<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001047 <code class="details" id="leaveTurn">leaveTurn(matchId, matchVersion, language=None, pendingParticipantId=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -04001048 <pre>Leave a turn-based match during the current player's turn, without canceling the match.
1049
1050Args:
1051 matchId: string, The ID of the match. (required)
1052 matchVersion: integer, The version of the match being updated. (required)
1053 language: string, The preferred language to use for strings returned by this method.
1054 pendingParticipantId: string, The ID of another participant who should take their turn next. If not set, the match will wait for other player(s) to join via automatching; this is only valid if automatch criteria is set on the match with remaining slots for automatched players.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001055 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -04001056
1057Returns:
1058 An object of the form:
1059
1060 { # This is a JSON template for a turn-based match resource object.
1061 "status": "A String", # The status of the match.
1062 # Possible values are:
1063 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
1064 # - "MATCH_ACTIVE" - The match has started.
1065 # - "MATCH_COMPLETE" - The match has finished.
1066 # - "MATCH_CANCELED" - The match was canceled.
1067 # - "MATCH_EXPIRED" - The match expired due to inactivity.
1068 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
1069 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
1070 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
1071 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
1072 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
1073 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
1074 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
1075 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
1076 },
1077 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
1078 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1079 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1080 "participantId": "A String", # The ID of the participant that modified the match.
1081 },
1082 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
1083 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
1084 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1085 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1086 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1087 },
1088 "matchId": "A String", # Globally unique ID for a turn-based match.
1089 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
1090 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
1091 { # This is a JSON template for a participant in a turn-based match.
1092 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
1093 "status": "A String", # The status of the participant with respect to the match.
1094 # Possible values are:
1095 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
1096 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
1097 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
1098 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
1099 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
1100 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
1101 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
1102 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
1103 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
1104 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
1105 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
1106 "displayName": "A String", # The name to display for the anonymous player.
1107 },
1108 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001109 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -04001110 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
1111 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -07001112 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
1113 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
1114 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -04001115 },
Craig Citro065b5302014-08-14 00:47:23 -07001116 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -04001117 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
1118 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
1119 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
1120 },
1121 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001122 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001123 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
1124 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
1125 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
1126 },
Craig Citro065b5302014-08-14 00:47:23 -07001127 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
1128 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
1129 "currentExperiencePoints": "A String", # The current number of experience points for the player.
1130 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
1131 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
1132 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1133 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1134 "minExperiencePoints": "A String", # The minimum experience points for this level.
1135 "level": 42, # The level for the user.
1136 },
1137 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
1138 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1139 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1140 "minExperiencePoints": "A String", # The minimum experience points for this level.
1141 "level": 42, # The level for the user.
1142 },
1143 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001144 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001145 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -04001146 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
1147 },
1148 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
1149 },
1150 ],
1151 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
1152 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
1153 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
1154 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1155 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1156 "participantId": "A String", # The ID of the participant that modified the match.
1157 },
1158 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
1159 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1160 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1161 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1162 },
1163 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
1164 "results": [ # The results reported for this match.
1165 { # This is a JSON template for a result for a match participant.
1166 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1167 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1168 "participantId": "A String", # The ID of the participant.
1169 "result": "A String", # The result of the participant for this match.
1170 # Possible values are:
1171 # - "MATCH_RESULT_WIN" - The participant won the match.
1172 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1173 # - "MATCH_RESULT_TIE" - The participant tied the match.
1174 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1175 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1176 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1177 },
1178 ],
1179 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
1180 "applicationId": "A String", # The ID of the application being played.
1181 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
1182 # Possible values are:
1183 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
1184 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
1185 # - "USER_TURN" - The user has an action to take in the match.
1186 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
1187 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
1188 }</pre>
1189</div>
1190
1191<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001192 <code class="details" id="list">list(maxCompletedMatches=None, language=None, pageToken=None, maxResults=None, includeMatchData=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -04001193 <pre>Returns turn-based matches the player is or was involved in.
1194
1195Args:
1196 maxCompletedMatches: integer, The maximum number of completed or canceled matches to return in the response. If not set, all matches returned could be completed or canceled.
1197 language: string, The preferred language to use for strings returned by this method.
1198 pageToken: string, The token returned by the previous request.
1199 maxResults: integer, The maximum number of matches to return in the response, used for paging. For any response, the actual number of matches to return may be less than the specified maxResults.
1200 includeMatchData: boolean, True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001201 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -04001202
1203Returns:
1204 An object of the form:
1205
1206 { # This is a JSON template for a list of turn-based matches.
1207 "nextPageToken": "A String", # The pagination token for the next page of results.
1208 "items": [ # The matches.
1209 { # This is a JSON template for a turn-based match resource object.
1210 "status": "A String", # The status of the match.
1211 # Possible values are:
1212 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
1213 # - "MATCH_ACTIVE" - The match has started.
1214 # - "MATCH_COMPLETE" - The match has finished.
1215 # - "MATCH_CANCELED" - The match was canceled.
1216 # - "MATCH_EXPIRED" - The match expired due to inactivity.
1217 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
1218 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
1219 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
1220 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
1221 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
1222 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
1223 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
1224 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
1225 },
1226 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
1227 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1228 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1229 "participantId": "A String", # The ID of the participant that modified the match.
1230 },
1231 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
1232 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
1233 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1234 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1235 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1236 },
1237 "matchId": "A String", # Globally unique ID for a turn-based match.
1238 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
1239 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
1240 { # This is a JSON template for a participant in a turn-based match.
1241 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
1242 "status": "A String", # The status of the participant with respect to the match.
1243 # Possible values are:
1244 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
1245 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
1246 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
1247 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
1248 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
1249 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
1250 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
1251 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
1252 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
1253 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
1254 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
1255 "displayName": "A String", # The name to display for the anonymous player.
1256 },
1257 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001258 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -04001259 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
1260 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -07001261 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
1262 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
1263 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -04001264 },
Craig Citro065b5302014-08-14 00:47:23 -07001265 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -04001266 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
1267 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
1268 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
1269 },
1270 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001271 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001272 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
1273 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
1274 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
1275 },
Craig Citro065b5302014-08-14 00:47:23 -07001276 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
1277 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
1278 "currentExperiencePoints": "A String", # The current number of experience points for the player.
1279 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
1280 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
1281 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1282 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1283 "minExperiencePoints": "A String", # The minimum experience points for this level.
1284 "level": 42, # The level for the user.
1285 },
1286 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
1287 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1288 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1289 "minExperiencePoints": "A String", # The minimum experience points for this level.
1290 "level": 42, # The level for the user.
1291 },
1292 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001293 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001294 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -04001295 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
1296 },
1297 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
1298 },
1299 ],
1300 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
1301 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
1302 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
1303 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1304 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1305 "participantId": "A String", # The ID of the participant that modified the match.
1306 },
1307 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
1308 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1309 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1310 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1311 },
1312 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
1313 "results": [ # The results reported for this match.
1314 { # This is a JSON template for a result for a match participant.
1315 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1316 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1317 "participantId": "A String", # The ID of the participant.
1318 "result": "A String", # The result of the participant for this match.
1319 # Possible values are:
1320 # - "MATCH_RESULT_WIN" - The participant won the match.
1321 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1322 # - "MATCH_RESULT_TIE" - The participant tied the match.
1323 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1324 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1325 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1326 },
1327 ],
1328 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
1329 "applicationId": "A String", # The ID of the application being played.
1330 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
1331 # Possible values are:
1332 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
1333 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
1334 # - "USER_TURN" - The user has an action to take in the match.
1335 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
1336 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
1337 },
1338 ],
1339 "kind": "games#turnBasedMatchList", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchList.
1340 }</pre>
1341</div>
1342
1343<div class="method">
1344 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
1345 <pre>Retrieves the next page of results.
1346
1347Args:
1348 previous_request: The request for the previous page. (required)
1349 previous_response: The response from the request for the previous page. (required)
1350
1351Returns:
1352 A request object that you can call 'execute()' on to request the next
1353 page. Returns None if there are no more items in the collection.
1354 </pre>
1355</div>
1356
1357<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001358 <code class="details" id="rematch">rematch(matchId, language=None, requestId=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -04001359 <pre>Create a rematch of a match that was previously completed, with the same participants. This can be called by only one player on a match still in their list; the player must have called Finish first. Returns the newly created match; it will be the caller's turn.
1360
1361Args:
1362 matchId: string, The ID of the match. (required)
1363 language: string, The preferred language to use for strings returned by this method.
1364 requestId: string, A randomly generated numeric ID for each request specified by the caller. This number is used at the server to ensure that the request is handled correctly across retries.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001365 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -04001366
1367Returns:
1368 An object of the form:
1369
1370 { # This is a JSON template for a rematch response.
1371 "rematch": { # This is a JSON template for a turn-based match resource object. # The newly created match; a rematch of the old match with the same participants.
1372 "status": "A String", # The status of the match.
1373 # Possible values are:
1374 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
1375 # - "MATCH_ACTIVE" - The match has started.
1376 # - "MATCH_COMPLETE" - The match has finished.
1377 # - "MATCH_CANCELED" - The match was canceled.
1378 # - "MATCH_EXPIRED" - The match expired due to inactivity.
1379 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
1380 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
1381 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
1382 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
1383 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
1384 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
1385 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
1386 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
1387 },
1388 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
1389 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1390 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1391 "participantId": "A String", # The ID of the participant that modified the match.
1392 },
1393 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
1394 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
1395 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1396 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1397 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1398 },
1399 "matchId": "A String", # Globally unique ID for a turn-based match.
1400 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
1401 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
1402 { # This is a JSON template for a participant in a turn-based match.
1403 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
1404 "status": "A String", # The status of the participant with respect to the match.
1405 # Possible values are:
1406 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
1407 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
1408 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
1409 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
1410 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
1411 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
1412 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
1413 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
1414 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
1415 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
1416 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
1417 "displayName": "A String", # The name to display for the anonymous player.
1418 },
1419 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001420 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -04001421 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
1422 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -07001423 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
1424 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
1425 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -04001426 },
Craig Citro065b5302014-08-14 00:47:23 -07001427 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -04001428 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
1429 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
1430 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
1431 },
1432 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001433 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001434 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
1435 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
1436 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
1437 },
Craig Citro065b5302014-08-14 00:47:23 -07001438 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
1439 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
1440 "currentExperiencePoints": "A String", # The current number of experience points for the player.
1441 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
1442 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
1443 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1444 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1445 "minExperiencePoints": "A String", # The minimum experience points for this level.
1446 "level": 42, # The level for the user.
1447 },
1448 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
1449 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1450 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1451 "minExperiencePoints": "A String", # The minimum experience points for this level.
1452 "level": 42, # The level for the user.
1453 },
1454 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001455 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001456 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -04001457 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
1458 },
1459 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
1460 },
1461 ],
1462 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
1463 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
1464 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
1465 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1466 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1467 "participantId": "A String", # The ID of the participant that modified the match.
1468 },
1469 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
1470 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1471 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1472 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1473 },
1474 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
1475 "results": [ # The results reported for this match.
1476 { # This is a JSON template for a result for a match participant.
1477 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1478 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1479 "participantId": "A String", # The ID of the participant.
1480 "result": "A String", # The result of the participant for this match.
1481 # Possible values are:
1482 # - "MATCH_RESULT_WIN" - The participant won the match.
1483 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1484 # - "MATCH_RESULT_TIE" - The participant tied the match.
1485 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1486 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1487 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1488 },
1489 ],
1490 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
1491 "applicationId": "A String", # The ID of the application being played.
1492 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
1493 # Possible values are:
1494 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
1495 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
1496 # - "USER_TURN" - The user has an action to take in the match.
1497 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
1498 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
1499 },
1500 "kind": "games#turnBasedMatchRematch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchRematch.
1501 "previousMatch": { # This is a JSON template for a turn-based match resource object. # The old match that the rematch was created from; will be updated such that the rematchId field will point at the new match.
1502 "status": "A String", # The status of the match.
1503 # Possible values are:
1504 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
1505 # - "MATCH_ACTIVE" - The match has started.
1506 # - "MATCH_COMPLETE" - The match has finished.
1507 # - "MATCH_CANCELED" - The match was canceled.
1508 # - "MATCH_EXPIRED" - The match expired due to inactivity.
1509 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
1510 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
1511 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
1512 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
1513 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
1514 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
1515 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
1516 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
1517 },
1518 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
1519 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1520 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1521 "participantId": "A String", # The ID of the participant that modified the match.
1522 },
1523 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
1524 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
1525 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1526 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1527 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1528 },
1529 "matchId": "A String", # Globally unique ID for a turn-based match.
1530 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
1531 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
1532 { # This is a JSON template for a participant in a turn-based match.
1533 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
1534 "status": "A String", # The status of the participant with respect to the match.
1535 # Possible values are:
1536 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
1537 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
1538 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
1539 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
1540 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
1541 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
1542 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
1543 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
1544 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
1545 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
1546 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
1547 "displayName": "A String", # The name to display for the anonymous player.
1548 },
1549 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001550 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -04001551 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
1552 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -07001553 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
1554 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
1555 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -04001556 },
Craig Citro065b5302014-08-14 00:47:23 -07001557 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -04001558 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
1559 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
1560 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
1561 },
1562 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001563 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001564 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
1565 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
1566 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
1567 },
Craig Citro065b5302014-08-14 00:47:23 -07001568 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
1569 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
1570 "currentExperiencePoints": "A String", # The current number of experience points for the player.
1571 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
1572 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
1573 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1574 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1575 "minExperiencePoints": "A String", # The minimum experience points for this level.
1576 "level": 42, # The level for the user.
1577 },
1578 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
1579 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1580 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1581 "minExperiencePoints": "A String", # The minimum experience points for this level.
1582 "level": 42, # The level for the user.
1583 },
1584 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001585 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001586 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -04001587 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
1588 },
1589 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
1590 },
1591 ],
1592 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
1593 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
1594 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
1595 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1596 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1597 "participantId": "A String", # The ID of the participant that modified the match.
1598 },
1599 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
1600 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1601 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1602 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1603 },
1604 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
1605 "results": [ # The results reported for this match.
1606 { # This is a JSON template for a result for a match participant.
1607 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1608 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1609 "participantId": "A String", # The ID of the participant.
1610 "result": "A String", # The result of the participant for this match.
1611 # Possible values are:
1612 # - "MATCH_RESULT_WIN" - The participant won the match.
1613 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1614 # - "MATCH_RESULT_TIE" - The participant tied the match.
1615 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1616 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1617 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1618 },
1619 ],
1620 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
1621 "applicationId": "A String", # The ID of the application being played.
1622 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
1623 # Possible values are:
1624 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
1625 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
1626 # - "USER_TURN" - The user has an action to take in the match.
1627 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
1628 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
1629 },
1630 }</pre>
1631</div>
1632
1633<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001634 <code class="details" id="sync">sync(maxCompletedMatches=None, language=None, pageToken=None, maxResults=None, includeMatchData=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -04001635 <pre>Returns turn-based matches the player is or was involved in that changed since the last sync call, with the least recent changes coming first. Matches that should be removed from the local cache will have a status of MATCH_DELETED.
1636
1637Args:
1638 maxCompletedMatches: integer, The maximum number of completed or canceled matches to return in the response. If not set, all matches returned could be completed or canceled.
1639 language: string, The preferred language to use for strings returned by this method.
1640 pageToken: string, The token returned by the previous request.
1641 maxResults: integer, The maximum number of matches to return in the response, used for paging. For any response, the actual number of matches to return may be less than the specified maxResults.
1642 includeMatchData: boolean, True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001643 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -04001644
1645Returns:
1646 An object of the form:
1647
1648 { # This is a JSON template for a list of turn-based matches returned from a sync.
1649 "nextPageToken": "A String", # The pagination token for the next page of results.
1650 "items": [ # The matches.
1651 { # This is a JSON template for a turn-based match resource object.
1652 "status": "A String", # The status of the match.
1653 # Possible values are:
1654 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
1655 # - "MATCH_ACTIVE" - The match has started.
1656 # - "MATCH_COMPLETE" - The match has finished.
1657 # - "MATCH_CANCELED" - The match was canceled.
1658 # - "MATCH_EXPIRED" - The match expired due to inactivity.
1659 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
1660 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
1661 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
1662 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
1663 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
1664 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
1665 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
1666 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
1667 },
1668 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
1669 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1670 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1671 "participantId": "A String", # The ID of the participant that modified the match.
1672 },
1673 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
1674 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
1675 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1676 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1677 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1678 },
1679 "matchId": "A String", # Globally unique ID for a turn-based match.
1680 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
1681 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
1682 { # This is a JSON template for a participant in a turn-based match.
1683 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
1684 "status": "A String", # The status of the participant with respect to the match.
1685 # Possible values are:
1686 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
1687 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
1688 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
1689 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
1690 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
1691 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
1692 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
1693 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
1694 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
1695 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
1696 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
1697 "displayName": "A String", # The name to display for the anonymous player.
1698 },
1699 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001700 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -04001701 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
1702 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -07001703 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
1704 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
1705 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -04001706 },
Craig Citro065b5302014-08-14 00:47:23 -07001707 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -04001708 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
1709 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
1710 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
1711 },
1712 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001713 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001714 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
1715 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
1716 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
1717 },
Craig Citro065b5302014-08-14 00:47:23 -07001718 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
1719 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
1720 "currentExperiencePoints": "A String", # The current number of experience points for the player.
1721 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
1722 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
1723 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1724 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1725 "minExperiencePoints": "A String", # The minimum experience points for this level.
1726 "level": 42, # The level for the user.
1727 },
1728 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
1729 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1730 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1731 "minExperiencePoints": "A String", # The minimum experience points for this level.
1732 "level": 42, # The level for the user.
1733 },
1734 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001735 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001736 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -04001737 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
1738 },
1739 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
1740 },
1741 ],
1742 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
1743 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
1744 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
1745 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1746 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1747 "participantId": "A String", # The ID of the participant that modified the match.
1748 },
1749 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
1750 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1751 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1752 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1753 },
1754 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
1755 "results": [ # The results reported for this match.
1756 { # This is a JSON template for a result for a match participant.
1757 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1758 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1759 "participantId": "A String", # The ID of the participant.
1760 "result": "A String", # The result of the participant for this match.
1761 # Possible values are:
1762 # - "MATCH_RESULT_WIN" - The participant won the match.
1763 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1764 # - "MATCH_RESULT_TIE" - The participant tied the match.
1765 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1766 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1767 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1768 },
1769 ],
1770 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
1771 "applicationId": "A String", # The ID of the application being played.
1772 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
1773 # Possible values are:
1774 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
1775 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
1776 # - "USER_TURN" - The user has an action to take in the match.
1777 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
1778 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
1779 },
1780 ],
1781 "kind": "games#turnBasedMatchSync", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchSync.
1782 "moreAvailable": True or False, # True if there were more matches available to fetch at the time the response was generated (which were not returned due to page size limits.)
1783 }</pre>
1784</div>
1785
1786<div class="method">
1787 <code class="details" id="sync_next">sync_next(previous_request, previous_response)</code>
1788 <pre>Retrieves the next page of results.
1789
1790Args:
1791 previous_request: The request for the previous page. (required)
1792 previous_response: The response from the request for the previous page. (required)
1793
1794Returns:
1795 A request object that you can call 'execute()' on to request the next
1796 page. Returns None if there are no more items in the collection.
1797 </pre>
1798</div>
1799
1800<div class="method">
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001801 <code class="details" id="takeTurn">takeTurn(matchId, body, language=None, consistencyToken=None)</code>
John Asmuth614db982014-04-24 15:46:26 -04001802 <pre>Commit the results of a player turn.
1803
1804Args:
1805 matchId: string, The ID of the match. (required)
1806 body: object, The request body. (required)
1807 The object takes the form of:
1808
1809{ # This is a JSON template for the object representing a turn.
1810 "kind": "games#turnBasedMatchTurn", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchTurn.
1811 "results": [ # The match results for the participants in the match.
1812 { # This is a JSON template for a result for a match participant.
1813 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1814 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1815 "participantId": "A String", # The ID of the participant.
1816 "result": "A String", # The result of the participant for this match.
1817 # Possible values are:
1818 # - "MATCH_RESULT_WIN" - The participant won the match.
1819 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1820 # - "MATCH_RESULT_TIE" - The participant tied the match.
1821 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1822 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1823 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1824 },
1825 ],
1826 "data": { # This is a JSON template for sending a turn-based match data object. # The shared game state data after the turn is over.
1827 "kind": "games#turnBasedMatchDataRequest", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchDataRequest.
1828 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1829 },
1830 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
1831 "pendingParticipantId": "A String", # The ID of the participant who should take their turn next. May be set to the current player's participant ID to update match state without changing the turn. If not set, the match will wait for other player(s) to join via automatching; this is only valid if automatch criteria is set on the match with remaining slots for automatched players.
1832 }
1833
1834 language: string, The preferred language to use for strings returned by this method.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001835 consistencyToken: string, The last-seen mutation timestamp.
John Asmuth614db982014-04-24 15:46:26 -04001836
1837Returns:
1838 An object of the form:
1839
1840 { # This is a JSON template for a turn-based match resource object.
1841 "status": "A String", # The status of the match.
1842 # Possible values are:
1843 # - "MATCH_AUTO_MATCHING" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled.
1844 # - "MATCH_ACTIVE" - The match has started.
1845 # - "MATCH_COMPLETE" - The match has finished.
1846 # - "MATCH_CANCELED" - The match was canceled.
1847 # - "MATCH_EXPIRED" - The match expired due to inactivity.
1848 # - "MATCH_DELETED" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.
1849 "withParticipantId": "A String", # The ID of another participant in the match that can be used when describing the participants the user is playing with.
1850 "kind": "games#turnBasedMatch", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.
1851 "autoMatchingCriteria": { # This is a JSON template for an turn-based auto-match criteria object. # Criteria for auto-matching players into this match.
1852 "kind": "games#turnBasedAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.
1853 "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the match by auto-matching.
1854 "exclusiveBitmask": "A String", # A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.
1855 "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the match by auto-matching.
1856 },
1857 "creationDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the match creation.
1858 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1859 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1860 "participantId": "A String", # The ID of the participant that modified the match.
1861 },
1862 "inviterId": "A String", # The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.
1863 "data": { # This is a JSON template for a turn-based match data object. # The data / game state for this match.
1864 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1865 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1866 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1867 },
1868 "matchId": "A String", # Globally unique ID for a turn-based match.
1869 "matchVersion": 42, # The version of this match: an increasing counter, used to avoid out-of-date updates to the match.
1870 "participants": [ # The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.
1871 { # This is a JSON template for a participant in a turn-based match.
1872 "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
1873 "status": "A String", # The status of the participant with respect to the match.
1874 # Possible values are:
1875 # - "PARTICIPANT_NOT_INVITED_YET" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn.
1876 # - "PARTICIPANT_INVITED" - The participant has been invited to join the match, but has not yet responded.
1877 # - "PARTICIPANT_JOINED" - The participant has joined the match (either after creating it or accepting an invitation.)
1878 # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the match.
1879 # - "PARTICIPANT_LEFT" - The participant joined the match and then left it.
1880 # - "PARTICIPANT_FINISHED" - The participant finished playing in the match.
1881 # - "PARTICIPANT_UNRESPONSIVE" - The participant did not take their turn in the allotted time.
1882 "kind": "games#turnBasedMatchParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.
1883 "autoMatchedPlayer": { # This is a JSON template for an anonymous player # Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
1884 "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
1885 "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
1886 "displayName": "A String", # The name to display for the anonymous player.
1887 },
1888 "player": { # This is a JSON template for a Player resource. # Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001889 "originalPlayerId": "A String", # The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
John Asmuth614db982014-04-24 15:46:26 -04001890 "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
1891 "displayName": "A String", # The name to display for the player.
Craig Citro065b5302014-08-14 00:47:23 -07001892 "name": { # An object representation of the individual components of the player's name. For some players, these fields may not be present.
1893 "givenName": "A String", # The given name of this player. In some places, this is known as the first name.
1894 "familyName": "A String", # The family name of this player. In some places, this is known as the last name.
John Asmuth614db982014-04-24 15:46:26 -04001895 },
Craig Citro065b5302014-08-14 00:47:23 -07001896 "lastPlayedWith": { # This is a JSON template for metadata about a player playing a game with the currently authenticated user. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
John Asmuth614db982014-04-24 15:46:26 -04001897 "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
1898 "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
1899 "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
1900 },
1901 "playerId": "A String", # The ID of the player.
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001902 "bannerUrlPortrait": "A String", # The url to the portrait mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001903 "profileSettings": { # This is a JSON template for profile settings # The player's profile settings. Controls whether or not the player's profile is visible to other players.
1904 "kind": "games#profileSettings", # Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.
1905 "profileVisible": True or False, # The player's current profile visibility. This field is visible to both 1P and 3P APIs.
1906 },
Craig Citro065b5302014-08-14 00:47:23 -07001907 "experienceInfo": { # This is a JSON template for 1P/3P metadata about the player's experience. # An object to represent Play Game experience information for the player.
1908 "lastLevelUpTimestampMillis": "A String", # The timestamp when the player was leveled up, in millis since Unix epoch UTC.
1909 "currentExperiencePoints": "A String", # The current number of experience points for the player.
1910 "kind": "games#playerExperienceInfo", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.
1911 "currentLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The current level of the player.
1912 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1913 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1914 "minExperiencePoints": "A String", # The minimum experience points for this level.
1915 "level": 42, # The level for the user.
1916 },
1917 "nextLevel": { # This is a JSON template for 1P/3P metadata about a user's level. # The next level of the player. If the current level is the maximum level, this should be same as the current level.
1918 "maxExperiencePoints": "A String", # The maximum experience points for this level.
1919 "kind": "games#playerLevel", # Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.
1920 "minExperiencePoints": "A String", # The minimum experience points for this level.
1921 "level": 42, # The level for the user.
1922 },
1923 },
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001924 "bannerUrlLandscape": "A String", # The url to the landscape mode player banner image.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001925 "title": "A String", # The player's title rewarded for their game activities.
John Asmuth614db982014-04-24 15:46:26 -04001926 "avatarImageUrl": "A String", # The base URL for the image that represents the player.
1927 },
1928 "id": "A String", # An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.
1929 },
1930 ],
1931 "matchNumber": 42, # The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.
1932 "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
1933 "lastUpdateDetails": { # This is a JSON template for turn-based match modification metadata. # Details about the last update to the match.
1934 "kind": "games#turnBasedMatchModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.
1935 "modifiedTimestampMillis": "A String", # The timestamp at which they modified the match, in milliseconds since the epoch in UTC.
1936 "participantId": "A String", # The ID of the participant that modified the match.
1937 },
1938 "previousMatchData": { # This is a JSON template for a turn-based match data object. # The data / game state for the previous match; set for the first turn of rematches only.
1939 "dataAvailable": True or False, # True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.
1940 "kind": "games#turnBasedMatchData", # Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.
1941 "data": "A String", # The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.
1942 },
1943 "rematchId": "A String", # The ID of a rematch of this match. Only set for completed matches that have been rematched.
1944 "results": [ # The results reported for this match.
1945 { # This is a JSON template for a result for a match participant.
1946 "kind": "games#participantResult", # Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.
1947 "placing": 42, # The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.
1948 "participantId": "A String", # The ID of the participant.
1949 "result": "A String", # The result of the participant for this match.
1950 # Possible values are:
1951 # - "MATCH_RESULT_WIN" - The participant won the match.
1952 # - "MATCH_RESULT_LOSS" - The participant lost the match.
1953 # - "MATCH_RESULT_TIE" - The participant tied the match.
1954 # - "MATCH_RESULT_NONE" - There was no winner for the match (nobody wins or loses this kind of game.)
1955 # - "MATCH_RESULT_DISCONNECT" - The participant disconnected / left during the match.
1956 # - "MATCH_RESULT_DISAGREED" - Different clients reported different results for this participant.
1957 },
1958 ],
1959 "pendingParticipantId": "A String", # The ID of the participant that is taking a turn.
1960 "applicationId": "A String", # The ID of the application being played.
1961 "userMatchStatus": "A String", # The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.
1962 # Possible values are:
1963 # - "USER_INVITED" - The user has been invited to join the match and has not responded yet.
1964 # - "USER_AWAITING_TURN" - The user is waiting for their turn.
1965 # - "USER_TURN" - The user has an action to take in the match.
1966 # - "USER_MATCH_COMPLETED" - The match has ended (it is completed, canceled, or expired.)
1967 "description": "A String", # This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.
1968 }</pre>
1969</div>
1970
1971</body></html>