Updated docs.
diff --git a/docs/dyn/games_v1.rooms.html b/docs/dyn/games_v1.rooms.html
new file mode 100644
index 0000000..510bc9a
--- /dev/null
+++ b/docs/dyn/games_v1.rooms.html
@@ -0,0 +1,971 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="games_v1.html">Google Play Game Services API</a> . <a href="games_v1.rooms.html">rooms</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(body, language=None)</a></code></p>
+<p class="firstline">Create a room. For internal use by the Games SDK only. Calling this method directly is unsupported.</p>
+<p class="toc_element">
+  <code><a href="#decline">decline(roomId, language=None)</a></code></p>
+<p class="firstline">Decline an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.</p>
+<p class="toc_element">
+  <code><a href="#dismiss">dismiss(roomId)</a></code></p>
+<p class="firstline">Dismiss an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.</p>
+<p class="toc_element">
+  <code><a href="#get">get(roomId, language=None)</a></code></p>
+<p class="firstline">Get the data for a room.</p>
+<p class="toc_element">
+  <code><a href="#join">join(roomId, body, language=None)</a></code></p>
+<p class="firstline">Join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.</p>
+<p class="toc_element">
+  <code><a href="#leave">leave(roomId, body, language=None)</a></code></p>
+<p class="firstline">Leave a room. For internal use by the Games SDK only. Calling this method directly is unsupported.</p>
+<p class="toc_element">
+  <code><a href="#list">list(pageToken=None, language=None, maxResults=None)</a></code></p>
+<p class="firstline">Returns invitations to join rooms.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#reportStatus">reportStatus(roomId, body, language=None)</a></code></p>
+<p class="firstline">Updates sent by a client reporting the status of peers in a room. For internal use by the Games SDK only. Calling this method directly is unsupported.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(body, language=None)</code>
+  <pre>Create a room. For internal use by the Games SDK only. Calling this method directly is unsupported.
+
+Args:
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # This is a JSON template for a room creation request.
+    "kind": "games#roomCreateRequest", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomCreateRequest.
+    "autoMatchingCriteria": { # This is a JSON template for a room auto-match criteria object. # Criteria for auto-matching players into this room.
+      "kind": "games#roomAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.
+      "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the room by auto-matching.
+      "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.
+      "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the room by auto-matching.
+    },
+    "invitedPlayerIds": [ # The player IDs to invite to the room.
+      "A String",
+    ],
+    "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.
+    "capabilities": [ # The capabilities that this client supports for realtime communication.
+      "A String",
+    ],
+    "networkDiagnostics": { # This is a JSON template for network diagnostics reported for a client. # Network diagnostics for the client creating the room.
+      "registrationLatencyMillis": 42, # The amount of time in milliseconds it took for the client to establish a connection with the XMPP server.
+      "iosNetworkType": 42, # iOS network type as defined in Reachability.h.
+      "kind": "games#networkDiagnostics", # Uniquely identifies the type of this resource. Value is always the fixed string games#networkDiagnostics.
+      "androidNetworkSubtype": 42, # The Android network subtype.
+      "androidNetworkType": 42, # The Android network type.
+    },
+    "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the player creating the room.
+      "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+      "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+    },
+    "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.
+  }
+
+  language: string, The preferred language to use for strings returned by this method.
+
+Returns:
+  An object of the form:
+
+    { # This is a JSON template for a room resource object.
+    "status": "A String", # The status of the room.
+        # Possible values are:
+        # - "ROOM_INVITING" - One or more players have been invited and not responded.
+        # - "ROOM_AUTO_MATCHING" - One or more slots need to be filled by auto-matching.
+        # - "ROOM_CONNECTING" - Players have joined and are connecting to each other (either before or after auto-matching).
+        # - "ROOM_ACTIVE" - All players have joined and connected to each other.
+        # - "ROOM_DELETED" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left.
+    "kind": "games#room", # Uniquely identifies the type of this resource. Value is always the fixed string games#room.
+    "autoMatchingCriteria": { # This is a JSON template for a room auto-match criteria object. # Criteria for auto-matching players into this room.
+      "kind": "games#roomAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.
+      "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the room by auto-matching.
+      "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.
+      "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the room by auto-matching.
+    },
+    "creationDetails": { # This is a JSON template for room modification metadata. # Details about the room creation.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "description": "A String", # This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)
+    "roomId": "A String", # Globally unique ID for a room.
+    "autoMatchingStatus": { # This is a JSON template for status of room automatching that is in progress. # Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue.
+      "kind": "games#roomAutoMatchStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.
+      "waitEstimateSeconds": 42, # An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.
+    },
+    "participants": [ # The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.
+      { # This is a JSON template for a participant in a room.
+        "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
+        "status": "A String", # The status of the participant with respect to the room.
+            # Possible values are:
+            # - "PARTICIPANT_INVITED" - The participant has been invited to join the room, but has not yet responded.
+            # - "PARTICIPANT_JOINED" - The participant has joined the room (either after creating it or accepting an invitation.)
+            # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the room.
+            # - "PARTICIPANT_LEFT" - The participant joined the room and then left it.
+        "kind": "games#roomParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.
+        "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.)
+          "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
+          "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
+          "displayName": "A String", # The name to display for the anonymous player.
+        },
+        "leaveReason": "A String", # The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.
+            # Possible values are:
+            # - "PLAYER_LEFT" - The player explicitly chose to leave the room.
+            # - "GAME_LEFT" - The game chose to remove the player from the room.
+            # - "ABANDONED" - The player switched to another application and abandoned the room.
+            # - "PEER_CONNECTION_FAILURE" - The client was unable to establish or maintain a connection to other peer(s) in the room.
+            # - "SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+            # - "TIMEOUT" - The client timed out while waiting for players to join and connect.
+            # - "PRESENCE_FAILURE" - The client's XMPP connection ended abruptly.
+        "capabilities": [ # The capabilities which can be used when communicating with this participant.
+          "A String",
+        ],
+        "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.)
+          "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
+          "displayName": "A String", # The name to display for the player.
+          "name": { # An object representation of the individual components of the player's name.
+            "givenName": "A String", # The given name (first name) of this player.
+            "familyName": "A String", # The family name (last name) of this player.
+          },
+          "lastPlayedWith": { # This is a JSON template for 3P metadata about a player playing a game. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
+            "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
+            "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
+            "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
+          },
+          "playerId": "A String", # The ID of the player.
+          "avatarImageUrl": "A String", # The base URL for the image that represents the player.
+        },
+        "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the participant.
+          "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+          "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+        },
+        "connected": True or False, # True if this participant is in the fully connected set of peers in the room.
+        "id": "A String", # An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.
+      },
+    ],
+    "roomStatusVersion": 42, # The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.
+    "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
+    "lastUpdateDetails": { # This is a JSON template for room modification metadata. # Details about the last update to the room.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "applicationId": "A String", # The ID of the application being played.
+    "inviterId": "A String", # The ID of the participant that invited the user to the room. Not set if the user was not invited to the room.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="decline">decline(roomId, language=None)</code>
+  <pre>Decline an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.
+
+Args:
+  roomId: string, The ID of the room. (required)
+  language: string, The preferred language to use for strings returned by this method.
+
+Returns:
+  An object of the form:
+
+    { # This is a JSON template for a room resource object.
+    "status": "A String", # The status of the room.
+        # Possible values are:
+        # - "ROOM_INVITING" - One or more players have been invited and not responded.
+        # - "ROOM_AUTO_MATCHING" - One or more slots need to be filled by auto-matching.
+        # - "ROOM_CONNECTING" - Players have joined and are connecting to each other (either before or after auto-matching).
+        # - "ROOM_ACTIVE" - All players have joined and connected to each other.
+        # - "ROOM_DELETED" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left.
+    "kind": "games#room", # Uniquely identifies the type of this resource. Value is always the fixed string games#room.
+    "autoMatchingCriteria": { # This is a JSON template for a room auto-match criteria object. # Criteria for auto-matching players into this room.
+      "kind": "games#roomAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.
+      "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the room by auto-matching.
+      "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.
+      "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the room by auto-matching.
+    },
+    "creationDetails": { # This is a JSON template for room modification metadata. # Details about the room creation.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "description": "A String", # This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)
+    "roomId": "A String", # Globally unique ID for a room.
+    "autoMatchingStatus": { # This is a JSON template for status of room automatching that is in progress. # Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue.
+      "kind": "games#roomAutoMatchStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.
+      "waitEstimateSeconds": 42, # An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.
+    },
+    "participants": [ # The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.
+      { # This is a JSON template for a participant in a room.
+        "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
+        "status": "A String", # The status of the participant with respect to the room.
+            # Possible values are:
+            # - "PARTICIPANT_INVITED" - The participant has been invited to join the room, but has not yet responded.
+            # - "PARTICIPANT_JOINED" - The participant has joined the room (either after creating it or accepting an invitation.)
+            # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the room.
+            # - "PARTICIPANT_LEFT" - The participant joined the room and then left it.
+        "kind": "games#roomParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.
+        "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.)
+          "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
+          "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
+          "displayName": "A String", # The name to display for the anonymous player.
+        },
+        "leaveReason": "A String", # The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.
+            # Possible values are:
+            # - "PLAYER_LEFT" - The player explicitly chose to leave the room.
+            # - "GAME_LEFT" - The game chose to remove the player from the room.
+            # - "ABANDONED" - The player switched to another application and abandoned the room.
+            # - "PEER_CONNECTION_FAILURE" - The client was unable to establish or maintain a connection to other peer(s) in the room.
+            # - "SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+            # - "TIMEOUT" - The client timed out while waiting for players to join and connect.
+            # - "PRESENCE_FAILURE" - The client's XMPP connection ended abruptly.
+        "capabilities": [ # The capabilities which can be used when communicating with this participant.
+          "A String",
+        ],
+        "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.)
+          "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
+          "displayName": "A String", # The name to display for the player.
+          "name": { # An object representation of the individual components of the player's name.
+            "givenName": "A String", # The given name (first name) of this player.
+            "familyName": "A String", # The family name (last name) of this player.
+          },
+          "lastPlayedWith": { # This is a JSON template for 3P metadata about a player playing a game. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
+            "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
+            "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
+            "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
+          },
+          "playerId": "A String", # The ID of the player.
+          "avatarImageUrl": "A String", # The base URL for the image that represents the player.
+        },
+        "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the participant.
+          "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+          "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+        },
+        "connected": True or False, # True if this participant is in the fully connected set of peers in the room.
+        "id": "A String", # An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.
+      },
+    ],
+    "roomStatusVersion": 42, # The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.
+    "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
+    "lastUpdateDetails": { # This is a JSON template for room modification metadata. # Details about the last update to the room.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "applicationId": "A String", # The ID of the application being played.
+    "inviterId": "A String", # The ID of the participant that invited the user to the room. Not set if the user was not invited to the room.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="dismiss">dismiss(roomId)</code>
+  <pre>Dismiss an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.
+
+Args:
+  roomId: string, The ID of the room. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(roomId, language=None)</code>
+  <pre>Get the data for a room.
+
+Args:
+  roomId: string, The ID of the room. (required)
+  language: string, The preferred language to use for strings returned by this method.
+
+Returns:
+  An object of the form:
+
+    { # This is a JSON template for a room resource object.
+    "status": "A String", # The status of the room.
+        # Possible values are:
+        # - "ROOM_INVITING" - One or more players have been invited and not responded.
+        # - "ROOM_AUTO_MATCHING" - One or more slots need to be filled by auto-matching.
+        # - "ROOM_CONNECTING" - Players have joined and are connecting to each other (either before or after auto-matching).
+        # - "ROOM_ACTIVE" - All players have joined and connected to each other.
+        # - "ROOM_DELETED" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left.
+    "kind": "games#room", # Uniquely identifies the type of this resource. Value is always the fixed string games#room.
+    "autoMatchingCriteria": { # This is a JSON template for a room auto-match criteria object. # Criteria for auto-matching players into this room.
+      "kind": "games#roomAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.
+      "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the room by auto-matching.
+      "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.
+      "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the room by auto-matching.
+    },
+    "creationDetails": { # This is a JSON template for room modification metadata. # Details about the room creation.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "description": "A String", # This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)
+    "roomId": "A String", # Globally unique ID for a room.
+    "autoMatchingStatus": { # This is a JSON template for status of room automatching that is in progress. # Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue.
+      "kind": "games#roomAutoMatchStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.
+      "waitEstimateSeconds": 42, # An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.
+    },
+    "participants": [ # The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.
+      { # This is a JSON template for a participant in a room.
+        "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
+        "status": "A String", # The status of the participant with respect to the room.
+            # Possible values are:
+            # - "PARTICIPANT_INVITED" - The participant has been invited to join the room, but has not yet responded.
+            # - "PARTICIPANT_JOINED" - The participant has joined the room (either after creating it or accepting an invitation.)
+            # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the room.
+            # - "PARTICIPANT_LEFT" - The participant joined the room and then left it.
+        "kind": "games#roomParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.
+        "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.)
+          "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
+          "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
+          "displayName": "A String", # The name to display for the anonymous player.
+        },
+        "leaveReason": "A String", # The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.
+            # Possible values are:
+            # - "PLAYER_LEFT" - The player explicitly chose to leave the room.
+            # - "GAME_LEFT" - The game chose to remove the player from the room.
+            # - "ABANDONED" - The player switched to another application and abandoned the room.
+            # - "PEER_CONNECTION_FAILURE" - The client was unable to establish or maintain a connection to other peer(s) in the room.
+            # - "SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+            # - "TIMEOUT" - The client timed out while waiting for players to join and connect.
+            # - "PRESENCE_FAILURE" - The client's XMPP connection ended abruptly.
+        "capabilities": [ # The capabilities which can be used when communicating with this participant.
+          "A String",
+        ],
+        "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.)
+          "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
+          "displayName": "A String", # The name to display for the player.
+          "name": { # An object representation of the individual components of the player's name.
+            "givenName": "A String", # The given name (first name) of this player.
+            "familyName": "A String", # The family name (last name) of this player.
+          },
+          "lastPlayedWith": { # This is a JSON template for 3P metadata about a player playing a game. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
+            "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
+            "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
+            "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
+          },
+          "playerId": "A String", # The ID of the player.
+          "avatarImageUrl": "A String", # The base URL for the image that represents the player.
+        },
+        "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the participant.
+          "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+          "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+        },
+        "connected": True or False, # True if this participant is in the fully connected set of peers in the room.
+        "id": "A String", # An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.
+      },
+    ],
+    "roomStatusVersion": 42, # The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.
+    "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
+    "lastUpdateDetails": { # This is a JSON template for room modification metadata. # Details about the last update to the room.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "applicationId": "A String", # The ID of the application being played.
+    "inviterId": "A String", # The ID of the participant that invited the user to the room. Not set if the user was not invited to the room.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="join">join(roomId, body, language=None)</code>
+  <pre>Join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.
+
+Args:
+  roomId: string, The ID of the room. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # This is a JSON template for a join room request.
+    "networkDiagnostics": { # This is a JSON template for network diagnostics reported for a client. # Network diagnostics for the client joining the room.
+      "registrationLatencyMillis": 42, # The amount of time in milliseconds it took for the client to establish a connection with the XMPP server.
+      "iosNetworkType": 42, # iOS network type as defined in Reachability.h.
+      "kind": "games#networkDiagnostics", # Uniquely identifies the type of this resource. Value is always the fixed string games#networkDiagnostics.
+      "androidNetworkSubtype": 42, # The Android network subtype.
+      "androidNetworkType": 42, # The Android network type.
+    },
+    "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the player joining the room.
+      "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+      "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+    },
+    "kind": "games#roomJoinRequest", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomJoinRequest.
+    "capabilities": [ # The capabilities that this client supports for realtime communication.
+      "A String",
+    ],
+  }
+
+  language: string, The preferred language to use for strings returned by this method.
+
+Returns:
+  An object of the form:
+
+    { # This is a JSON template for a room resource object.
+    "status": "A String", # The status of the room.
+        # Possible values are:
+        # - "ROOM_INVITING" - One or more players have been invited and not responded.
+        # - "ROOM_AUTO_MATCHING" - One or more slots need to be filled by auto-matching.
+        # - "ROOM_CONNECTING" - Players have joined and are connecting to each other (either before or after auto-matching).
+        # - "ROOM_ACTIVE" - All players have joined and connected to each other.
+        # - "ROOM_DELETED" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left.
+    "kind": "games#room", # Uniquely identifies the type of this resource. Value is always the fixed string games#room.
+    "autoMatchingCriteria": { # This is a JSON template for a room auto-match criteria object. # Criteria for auto-matching players into this room.
+      "kind": "games#roomAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.
+      "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the room by auto-matching.
+      "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.
+      "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the room by auto-matching.
+    },
+    "creationDetails": { # This is a JSON template for room modification metadata. # Details about the room creation.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "description": "A String", # This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)
+    "roomId": "A String", # Globally unique ID for a room.
+    "autoMatchingStatus": { # This is a JSON template for status of room automatching that is in progress. # Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue.
+      "kind": "games#roomAutoMatchStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.
+      "waitEstimateSeconds": 42, # An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.
+    },
+    "participants": [ # The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.
+      { # This is a JSON template for a participant in a room.
+        "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
+        "status": "A String", # The status of the participant with respect to the room.
+            # Possible values are:
+            # - "PARTICIPANT_INVITED" - The participant has been invited to join the room, but has not yet responded.
+            # - "PARTICIPANT_JOINED" - The participant has joined the room (either after creating it or accepting an invitation.)
+            # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the room.
+            # - "PARTICIPANT_LEFT" - The participant joined the room and then left it.
+        "kind": "games#roomParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.
+        "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.)
+          "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
+          "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
+          "displayName": "A String", # The name to display for the anonymous player.
+        },
+        "leaveReason": "A String", # The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.
+            # Possible values are:
+            # - "PLAYER_LEFT" - The player explicitly chose to leave the room.
+            # - "GAME_LEFT" - The game chose to remove the player from the room.
+            # - "ABANDONED" - The player switched to another application and abandoned the room.
+            # - "PEER_CONNECTION_FAILURE" - The client was unable to establish or maintain a connection to other peer(s) in the room.
+            # - "SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+            # - "TIMEOUT" - The client timed out while waiting for players to join and connect.
+            # - "PRESENCE_FAILURE" - The client's XMPP connection ended abruptly.
+        "capabilities": [ # The capabilities which can be used when communicating with this participant.
+          "A String",
+        ],
+        "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.)
+          "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
+          "displayName": "A String", # The name to display for the player.
+          "name": { # An object representation of the individual components of the player's name.
+            "givenName": "A String", # The given name (first name) of this player.
+            "familyName": "A String", # The family name (last name) of this player.
+          },
+          "lastPlayedWith": { # This is a JSON template for 3P metadata about a player playing a game. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
+            "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
+            "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
+            "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
+          },
+          "playerId": "A String", # The ID of the player.
+          "avatarImageUrl": "A String", # The base URL for the image that represents the player.
+        },
+        "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the participant.
+          "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+          "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+        },
+        "connected": True or False, # True if this participant is in the fully connected set of peers in the room.
+        "id": "A String", # An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.
+      },
+    ],
+    "roomStatusVersion": 42, # The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.
+    "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
+    "lastUpdateDetails": { # This is a JSON template for room modification metadata. # Details about the last update to the room.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "applicationId": "A String", # The ID of the application being played.
+    "inviterId": "A String", # The ID of the participant that invited the user to the room. Not set if the user was not invited to the room.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="leave">leave(roomId, body, language=None)</code>
+  <pre>Leave a room. For internal use by the Games SDK only. Calling this method directly is unsupported.
+
+Args:
+  roomId: string, The ID of the room. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # This is a JSON template for a leave room request.
+    "kind": "games#roomLeaveRequest", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomLeaveRequest.
+    "reason": "A String", # Reason for leaving the match.
+        # Possible values are:
+        # - "PLAYER_LEFT" - The player chose to leave the room..
+        # - "GAME_LEFT" - The game chose to remove the player from the room.
+        # - "REALTIME_ABANDONED" - The player switched to another application and abandoned the room.
+        # - "REALTIME_PEER_CONNECTION_FAILURE" - The client was unable to establish a connection to other peer(s).
+        # - "REALTIME_SERVER_CONNECTION_FAILURE" - The client was unable to communicate with the server.
+        # - "REALTIME_SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+        # - "REALTIME_TIMEOUT" - The client timed out while waiting for a room.
+    "leaveDiagnostics": { # This is a JSON template for room leave diagnostics. # Diagnostics for a player leaving the room.
+      "kind": "games#roomLeaveDiagnostics", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomLeaveDiagnostics.
+      "socketsUsed": True or False, # Whether or not sockets were used.
+      "iosNetworkType": 42, # iOS network type as defined in Reachability.h.
+      "peerSession": [ # Diagnostics about all peer sessions.
+        { # This is a JSON template for peer session diagnostics.
+          "unreliableChannel": { # This is a JSON template for peer channel diagnostics. # Unreliable channel diagnostics.
+            "bytesReceived": { # This is a JSON template for aggregate stats. # Number of bytes received.
+              "count": "A String", # The number of messages sent between a pair of peers.
+              "max": "A String", # The maximum amount.
+              "kind": "games#aggregateStats", # Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.
+              "sum": "A String", # The total number of bytes sent for messages between a pair of peers.
+              "min": "A String", # The minimum amount.
+            },
+            "kind": "games#peerChannelDiagnostics", # Uniquely identifies the type of this resource. Value is always the fixed string games#peerChannelDiagnostics.
+            "bytesSent": { # This is a JSON template for aggregate stats. # Number of bytes sent.
+              "count": "A String", # The number of messages sent between a pair of peers.
+              "max": "A String", # The maximum amount.
+              "kind": "games#aggregateStats", # Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.
+              "sum": "A String", # The total number of bytes sent for messages between a pair of peers.
+              "min": "A String", # The minimum amount.
+            },
+            "numSendFailures": 42, # Number of send failures.
+            "numMessagesLost": 42, # Number of messages lost.
+            "numMessagesReceived": 42, # Number of messages received.
+            "numMessagesSent": 42, # Number of messages sent.
+            "roundtripLatencyMillis": { # This is a JSON template for aggregate stats. # Roundtrip latency stats in milliseconds.
+              "count": "A String", # The number of messages sent between a pair of peers.
+              "max": "A String", # The maximum amount.
+              "kind": "games#aggregateStats", # Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.
+              "sum": "A String", # The total number of bytes sent for messages between a pair of peers.
+              "min": "A String", # The minimum amount.
+            },
+          },
+          "kind": "games#peerSessionDiagnostics", # Uniquely identifies the type of this resource. Value is always the fixed string games#peerSessionDiagnostics.
+          "reliableChannel": { # This is a JSON template for peer channel diagnostics. # Reliable channel diagnostics.
+            "bytesReceived": { # This is a JSON template for aggregate stats. # Number of bytes received.
+              "count": "A String", # The number of messages sent between a pair of peers.
+              "max": "A String", # The maximum amount.
+              "kind": "games#aggregateStats", # Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.
+              "sum": "A String", # The total number of bytes sent for messages between a pair of peers.
+              "min": "A String", # The minimum amount.
+            },
+            "kind": "games#peerChannelDiagnostics", # Uniquely identifies the type of this resource. Value is always the fixed string games#peerChannelDiagnostics.
+            "bytesSent": { # This is a JSON template for aggregate stats. # Number of bytes sent.
+              "count": "A String", # The number of messages sent between a pair of peers.
+              "max": "A String", # The maximum amount.
+              "kind": "games#aggregateStats", # Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.
+              "sum": "A String", # The total number of bytes sent for messages between a pair of peers.
+              "min": "A String", # The minimum amount.
+            },
+            "numSendFailures": 42, # Number of send failures.
+            "numMessagesLost": 42, # Number of messages lost.
+            "numMessagesReceived": 42, # Number of messages received.
+            "numMessagesSent": 42, # Number of messages sent.
+            "roundtripLatencyMillis": { # This is a JSON template for aggregate stats. # Roundtrip latency stats in milliseconds.
+              "count": "A String", # The number of messages sent between a pair of peers.
+              "max": "A String", # The maximum amount.
+              "kind": "games#aggregateStats", # Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.
+              "sum": "A String", # The total number of bytes sent for messages between a pair of peers.
+              "min": "A String", # The minimum amount.
+            },
+          },
+          "connectedTimestampMillis": "A String", # Connected time in milliseconds.
+          "participantId": "A String", # The participant ID of the peer.
+        },
+      ],
+      "androidNetworkSubtype": 42, # Android network subtype. http://developer.android.com/reference/android/net/NetworkInfo.html#getSubtype()
+      "androidNetworkType": 42, # Android network type. http://developer.android.com/reference/android/net/NetworkInfo.html#getType()
+    },
+  }
+
+  language: string, The preferred language to use for strings returned by this method.
+
+Returns:
+  An object of the form:
+
+    { # This is a JSON template for a room resource object.
+    "status": "A String", # The status of the room.
+        # Possible values are:
+        # - "ROOM_INVITING" - One or more players have been invited and not responded.
+        # - "ROOM_AUTO_MATCHING" - One or more slots need to be filled by auto-matching.
+        # - "ROOM_CONNECTING" - Players have joined and are connecting to each other (either before or after auto-matching).
+        # - "ROOM_ACTIVE" - All players have joined and connected to each other.
+        # - "ROOM_DELETED" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left.
+    "kind": "games#room", # Uniquely identifies the type of this resource. Value is always the fixed string games#room.
+    "autoMatchingCriteria": { # This is a JSON template for a room auto-match criteria object. # Criteria for auto-matching players into this room.
+      "kind": "games#roomAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.
+      "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the room by auto-matching.
+      "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.
+      "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the room by auto-matching.
+    },
+    "creationDetails": { # This is a JSON template for room modification metadata. # Details about the room creation.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "description": "A String", # This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)
+    "roomId": "A String", # Globally unique ID for a room.
+    "autoMatchingStatus": { # This is a JSON template for status of room automatching that is in progress. # Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue.
+      "kind": "games#roomAutoMatchStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.
+      "waitEstimateSeconds": 42, # An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.
+    },
+    "participants": [ # The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.
+      { # This is a JSON template for a participant in a room.
+        "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
+        "status": "A String", # The status of the participant with respect to the room.
+            # Possible values are:
+            # - "PARTICIPANT_INVITED" - The participant has been invited to join the room, but has not yet responded.
+            # - "PARTICIPANT_JOINED" - The participant has joined the room (either after creating it or accepting an invitation.)
+            # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the room.
+            # - "PARTICIPANT_LEFT" - The participant joined the room and then left it.
+        "kind": "games#roomParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.
+        "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.)
+          "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
+          "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
+          "displayName": "A String", # The name to display for the anonymous player.
+        },
+        "leaveReason": "A String", # The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.
+            # Possible values are:
+            # - "PLAYER_LEFT" - The player explicitly chose to leave the room.
+            # - "GAME_LEFT" - The game chose to remove the player from the room.
+            # - "ABANDONED" - The player switched to another application and abandoned the room.
+            # - "PEER_CONNECTION_FAILURE" - The client was unable to establish or maintain a connection to other peer(s) in the room.
+            # - "SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+            # - "TIMEOUT" - The client timed out while waiting for players to join and connect.
+            # - "PRESENCE_FAILURE" - The client's XMPP connection ended abruptly.
+        "capabilities": [ # The capabilities which can be used when communicating with this participant.
+          "A String",
+        ],
+        "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.)
+          "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
+          "displayName": "A String", # The name to display for the player.
+          "name": { # An object representation of the individual components of the player's name.
+            "givenName": "A String", # The given name (first name) of this player.
+            "familyName": "A String", # The family name (last name) of this player.
+          },
+          "lastPlayedWith": { # This is a JSON template for 3P metadata about a player playing a game. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
+            "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
+            "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
+            "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
+          },
+          "playerId": "A String", # The ID of the player.
+          "avatarImageUrl": "A String", # The base URL for the image that represents the player.
+        },
+        "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the participant.
+          "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+          "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+        },
+        "connected": True or False, # True if this participant is in the fully connected set of peers in the room.
+        "id": "A String", # An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.
+      },
+    ],
+    "roomStatusVersion": 42, # The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.
+    "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
+    "lastUpdateDetails": { # This is a JSON template for room modification metadata. # Details about the last update to the room.
+      "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+      "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+      "participantId": "A String", # The ID of the participant that modified the room.
+    },
+    "applicationId": "A String", # The ID of the application being played.
+    "inviterId": "A String", # The ID of the participant that invited the user to the room. Not set if the user was not invited to the room.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(pageToken=None, language=None, maxResults=None)</code>
+  <pre>Returns invitations to join rooms.
+
+Args:
+  pageToken: string, The token returned by the previous request.
+  language: string, The preferred language to use for strings returned by this method.
+  maxResults: integer, The maximum number of rooms to return in the response, used for paging. For any response, the actual number of rooms to return may be less than the specified maxResults.
+
+Returns:
+  An object of the form:
+
+    { # This is a JSON template for a list of rooms.
+    "nextPageToken": "A String", # The pagination token for the next page of results.
+    "items": [ # The rooms.
+      { # This is a JSON template for a room resource object.
+        "status": "A String", # The status of the room.
+            # Possible values are:
+            # - "ROOM_INVITING" - One or more players have been invited and not responded.
+            # - "ROOM_AUTO_MATCHING" - One or more slots need to be filled by auto-matching.
+            # - "ROOM_CONNECTING" - Players have joined and are connecting to each other (either before or after auto-matching).
+            # - "ROOM_ACTIVE" - All players have joined and connected to each other.
+            # - "ROOM_DELETED" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left.
+        "kind": "games#room", # Uniquely identifies the type of this resource. Value is always the fixed string games#room.
+        "autoMatchingCriteria": { # This is a JSON template for a room auto-match criteria object. # Criteria for auto-matching players into this room.
+          "kind": "games#roomAutoMatchingCriteria", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.
+          "minAutoMatchingPlayers": 42, # The minimum number of players that should be added to the room by auto-matching.
+          "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.
+          "maxAutoMatchingPlayers": 42, # The maximum number of players that should be added to the room by auto-matching.
+        },
+        "creationDetails": { # This is a JSON template for room modification metadata. # Details about the room creation.
+          "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+          "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+          "participantId": "A String", # The ID of the participant that modified the room.
+        },
+        "description": "A String", # This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)
+        "roomId": "A String", # Globally unique ID for a room.
+        "autoMatchingStatus": { # This is a JSON template for status of room automatching that is in progress. # Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue.
+          "kind": "games#roomAutoMatchStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.
+          "waitEstimateSeconds": 42, # An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.
+        },
+        "participants": [ # The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.
+          { # This is a JSON template for a participant in a room.
+            "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
+            "status": "A String", # The status of the participant with respect to the room.
+                # Possible values are:
+                # - "PARTICIPANT_INVITED" - The participant has been invited to join the room, but has not yet responded.
+                # - "PARTICIPANT_JOINED" - The participant has joined the room (either after creating it or accepting an invitation.)
+                # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the room.
+                # - "PARTICIPANT_LEFT" - The participant joined the room and then left it.
+            "kind": "games#roomParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.
+            "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.)
+              "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
+              "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
+              "displayName": "A String", # The name to display for the anonymous player.
+            },
+            "leaveReason": "A String", # The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.
+                # Possible values are:
+                # - "PLAYER_LEFT" - The player explicitly chose to leave the room.
+                # - "GAME_LEFT" - The game chose to remove the player from the room.
+                # - "ABANDONED" - The player switched to another application and abandoned the room.
+                # - "PEER_CONNECTION_FAILURE" - The client was unable to establish or maintain a connection to other peer(s) in the room.
+                # - "SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+                # - "TIMEOUT" - The client timed out while waiting for players to join and connect.
+                # - "PRESENCE_FAILURE" - The client's XMPP connection ended abruptly.
+            "capabilities": [ # The capabilities which can be used when communicating with this participant.
+              "A String",
+            ],
+            "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.)
+              "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
+              "displayName": "A String", # The name to display for the player.
+              "name": { # An object representation of the individual components of the player's name.
+                "givenName": "A String", # The given name (first name) of this player.
+                "familyName": "A String", # The family name (last name) of this player.
+              },
+              "lastPlayedWith": { # This is a JSON template for 3P metadata about a player playing a game. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
+                "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
+                "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
+                "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
+              },
+              "playerId": "A String", # The ID of the player.
+              "avatarImageUrl": "A String", # The base URL for the image that represents the player.
+            },
+            "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the participant.
+              "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+              "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+            },
+            "connected": True or False, # True if this participant is in the fully connected set of peers in the room.
+            "id": "A String", # An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.
+          },
+        ],
+        "roomStatusVersion": 42, # The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.
+        "variant": 42, # The variant / mode of the application being played; can be any integer value, or left blank.
+        "lastUpdateDetails": { # This is a JSON template for room modification metadata. # Details about the last update to the room.
+          "kind": "games#roomModification", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.
+          "modifiedTimestampMillis": "A String", # The timestamp at which they modified the room, in milliseconds since the epoch in UTC.
+          "participantId": "A String", # The ID of the participant that modified the room.
+        },
+        "applicationId": "A String", # The ID of the application being played.
+        "inviterId": "A String", # The ID of the participant that invited the user to the room. Not set if the user was not invited to the room.
+      },
+    ],
+    "kind": "games#roomList", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomList.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+    </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="reportStatus">reportStatus(roomId, body, language=None)</code>
+  <pre>Updates sent by a client reporting the status of peers in a room. For internal use by the Games SDK only. Calling this method directly is unsupported.
+
+Args:
+  roomId: string, The ID of the room. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # This is a JSON template for an update on the status of peers in a room.
+    "kind": "games#roomP2PStatuses", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomP2PStatuses.
+    "updates": [ # The updates for the peers.
+      { # This is a JSON template for an update on the status of a peer in a room.
+        "status": "A String", # The status of the peer in the room.
+            # Possible values are:
+            # - "CONNECTION_ESTABLISHED" - The client established a P2P connection with the peer.
+            # - "CONNECTION_FAILED" - The client failed to establish directed presence with the peer.
+        "kind": "games#roomP2PStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomP2PStatus.
+        "participantId": "A String", # The ID of the participant.
+        "unreliableRoundtripLatencyMillis": 42, # The amount of time in milliseconds it took to send packets back and forth on the unreliable channel with this peer.
+        "connectionSetupLatencyMillis": 42, # The amount of time in milliseconds it took to establish connections with this peer.
+        "error": "A String", # The error code in event of a failure.
+            # Possible values are:
+            # - "P2P_FAILED" - The client failed to establish a P2P connection with the peer.
+            # - "PRESENCE_FAILED" - The client failed to register to receive P2P connections.
+            # - "RELAY_SERVER_FAILED" - The client received an error when trying to use the relay server to establish a P2P connection with the peer.
+        "error_reason": "A String", # More detailed diagnostic message returned in event of a failure.
+      },
+    ],
+  }
+
+  language: string, The preferred language to use for strings returned by this method.
+
+Returns:
+  An object of the form:
+
+    { # This is a JSON template for the status of a room that the player has joined.
+    "status": "A String", # The status of the room.
+        # Possible values are:
+        # - "ROOM_INVITING" - One or more players have been invited and not responded.
+        # - "ROOM_AUTO_MATCHING" - One or more slots need to be filled by auto-matching.
+        # - "ROOM_CONNECTING" - Players have joined are connecting to each other (either before or after auto-matching).
+        # - "ROOM_ACTIVE" - All players have joined and connected to each other.
+        # - "ROOM_DELETED" - All joined players have left.
+    "kind": "games#roomStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomStatus.
+    "autoMatchingStatus": { # This is a JSON template for status of room automatching that is in progress. # Auto-matching status for this room. Not set if the room is not currently in the automatching queue.
+      "kind": "games#roomAutoMatchStatus", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.
+      "waitEstimateSeconds": 42, # An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.
+    },
+    "participants": [ # The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.
+      { # This is a JSON template for a participant in a room.
+        "autoMatched": True or False, # True if this participant was auto-matched with the requesting player.
+        "status": "A String", # The status of the participant with respect to the room.
+            # Possible values are:
+            # - "PARTICIPANT_INVITED" - The participant has been invited to join the room, but has not yet responded.
+            # - "PARTICIPANT_JOINED" - The participant has joined the room (either after creating it or accepting an invitation.)
+            # - "PARTICIPANT_DECLINED" - The participant declined an invitation to join the room.
+            # - "PARTICIPANT_LEFT" - The participant joined the room and then left it.
+        "kind": "games#roomParticipant", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.
+        "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.)
+          "kind": "games#anonymousPlayer", # Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.
+          "avatarImageUrl": "A String", # The base URL for the image to display for the anonymous player.
+          "displayName": "A String", # The name to display for the anonymous player.
+        },
+        "leaveReason": "A String", # The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.
+            # Possible values are:
+            # - "PLAYER_LEFT" - The player explicitly chose to leave the room.
+            # - "GAME_LEFT" - The game chose to remove the player from the room.
+            # - "ABANDONED" - The player switched to another application and abandoned the room.
+            # - "PEER_CONNECTION_FAILURE" - The client was unable to establish or maintain a connection to other peer(s) in the room.
+            # - "SERVER_ERROR" - The client received an error response when it tried to communicate with the server.
+            # - "TIMEOUT" - The client timed out while waiting for players to join and connect.
+            # - "PRESENCE_FAILURE" - The client's XMPP connection ended abruptly.
+        "capabilities": [ # The capabilities which can be used when communicating with this participant.
+          "A String",
+        ],
+        "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.)
+          "kind": "games#player", # Uniquely identifies the type of this resource. Value is always the fixed string games#player.
+          "displayName": "A String", # The name to display for the player.
+          "name": { # An object representation of the individual components of the player's name.
+            "givenName": "A String", # The given name (first name) of this player.
+            "familyName": "A String", # The family name (last name) of this player.
+          },
+          "lastPlayedWith": { # This is a JSON template for 3P metadata about a player playing a game. # Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
+            "autoMatched": True or False, # True if the player was auto-matched with the currently authenticated user.
+            "kind": "games#played", # Uniquely identifies the type of this resource. Value is always the fixed string games#played.
+            "timeMillis": "A String", # The last time the player played the game in milliseconds since the epoch in UTC.
+          },
+          "playerId": "A String", # The ID of the player.
+          "avatarImageUrl": "A String", # The base URL for the image that represents the player.
+        },
+        "clientAddress": { # This is a JSON template for the client address when setting up a room. # Client address for the participant.
+          "kind": "games#roomClientAddress", # Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.
+          "xmppAddress": "A String", # The XMPP address of the client on the Google Games XMPP network.
+        },
+        "connected": True or False, # True if this participant is in the fully connected set of peers in the room.
+        "id": "A String", # An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.
+      },
+    ],
+    "statusVersion": 42, # The version of the status for the room: an increasing counter, used by the client to ignore out-of-order updates to room status.
+    "roomId": "A String", # Globally unique ID for a room.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file