# Google Play Game Services . achievements

## Instance Methods

Close httplib2 connections.

Increments the steps of the achievement with the given ID for the currently authenticated player.

Lists the progress for all your application's achievements for the currently authenticated player.

Retrieves the next page of results.

Sets the state of the achievement with the given ID to `REVEALED` for the currently authenticated player.

Sets the steps for the currently authenticated player towards unlocking an achievement. If the steps parameter is less than the current number of steps that the player already gained for the achievement, the achievement is not modified.

Unlocks this achievement for the currently authenticated player.

Updates multiple achievements for the currently authenticated player.

### Method Details

`close()`

    Close httplib2 connections.

`increment(achievementId, stepsToIncrement, requestId=None, x__xgafv=None)`

    Increments the steps of the achievement with the given ID for the currently authenticated player.

    Args:
      achievementId: string, The ID of the achievement used by this method. (required)
      stepsToIncrement: integer, The number of steps to increment. (required)
      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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An achievement increment response
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementIncrementResponse`.
        "currentSteps": 42, # The current steps recorded for this incremental achievement.
        "newlyUnlocked": True or False, # Whether the current steps for the achievement has reached the number of steps required to unlock.
      }

`list(playerId, pageToken=None, state=None, language=None, maxResults=None, x__xgafv=None)`

    Lists the progress for all your application's achievements for the currently authenticated player.

    Args:
      playerId: string, A player ID. A value of `me` may be used in place of the authenticated player's ID. (required)
      pageToken: string, The token returned by the previous request.
      state: string, Tells the server to return only achievements with the specified state. If this parameter isn't specified, all achievements are returned.
        Allowed values
          ALL - List all achievements. This is the default.
          HIDDEN - List only hidden achievements.
          REVEALED - List only revealed achievements.
          UNLOCKED - List only unlocked achievements.
      language: string, The preferred language to use for strings returned by this method.
      maxResults: integer, The maximum number of achievement resources to return in the response, used for paging. For any response, the actual number of achievement resources returned may be less than the specified `maxResults`.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A list of achievement objects.
        "nextPageToken": "A String", # Token corresponding to the next page of results.
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#playerAchievementListResponse`.
        "items": [ # The achievements.
          { # An achievement object.
            "currentSteps": 42, # The current steps for an incremental achievement.
            "achievementState": "A String", # The state of the achievement.
            "experiencePoints": "A String", # Experience points earned for the achievement. This field is absent for achievements that have not yet been unlocked and 0 for achievements that have been unlocked by testers but that are unpublished.
            "lastUpdatedTimestamp": "A String", # The timestamp of the last modification to this achievement's state.
            "formattedCurrentStepsString": "A String", # The current steps for an incremental achievement as a string.
            "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#playerAchievement`.
            "id": "A String", # The ID of the achievement.
          },
        ],
      }

`list_next(previous_request, previous_response)`

    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.

`reveal(achievementId, x__xgafv=None)`

    Sets the state of the achievement with the given ID to `REVEALED` for the currently authenticated player.

    Args:
      achievementId: string, The ID of the achievement used by this method. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An achievement reveal response
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementRevealResponse`.
        "currentState": "A String", # The current state of the achievement for which a reveal was attempted. This might be `UNLOCKED` if the achievement was already unlocked.
      }

`setStepsAtLeast(achievementId, steps, x__xgafv=None)`

    Sets the steps for the currently authenticated player towards unlocking an achievement. If the steps parameter is less than the current number of steps that the player already gained for the achievement, the achievement is not modified.

    Args:
      achievementId: string, The ID of the achievement used by this method. (required)
      steps: integer, The minimum value to set the steps to. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An achievement set steps at least response.
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementSetStepsAtLeastResponse`.
        "newlyUnlocked": True or False, # Whether the current steps for the achievement has reached the number of steps required to unlock.
        "currentSteps": 42, # The current steps recorded for this incremental achievement.
      }

`unlock(achievementId, x__xgafv=None)`

    Unlocks this achievement for the currently authenticated player.

    Args:
      achievementId: string, The ID of the achievement used by this method. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An achievement unlock response
        "newlyUnlocked": True or False, # Whether this achievement was newly unlocked (that is, whether the unlock request for the achievement was the first for the player).
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementUnlockResponse`.
      }

`updateMultiple(body=None, x__xgafv=None)`

    Updates multiple achievements for the currently authenticated player.

    Args:
      body: object, The request body.
        The object takes the form of:

    { # A list of achievement update requests.
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementUpdateMultipleRequest`.
        "updates": [ # The individual achievement update requests.
          { # A request to update an achievement.
            "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementUpdateRequest`.
            "incrementPayload": { # The payload to request to increment an achievement. # The payload if an update of type `INCREMENT` was requested for the achievement.
              "requestId": "A String", # The requestId associated with an increment to an achievement.
              "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#GamesAchievementIncrement`.
              "steps": 42, # The number of steps to be incremented.
            },
            "updateType": "A String", # The type of update being applied.
            "achievementId": "A String", # The achievement this update is being applied to.
            "setStepsAtLeastPayload": { # The payload to request to increment an achievement. # The payload if an update of type `SET_STEPS_AT_LEAST` was requested for the achievement.
              "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#GamesAchievementSetStepsAtLeast`.
              "steps": 42, # The minimum number of steps for the achievement to be set to.
            },
          },
        ],
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response message for UpdateMultipleAchievements rpc.
        "updatedAchievements": [ # The updated state of the achievements.
          { # An updated achievement.
            "updateOccurred": True or False, # Whether the requested updates actually affected the achievement.
            "newlyUnlocked": True or False, # Whether this achievement was newly unlocked (that is, whether the unlock request for the achievement was the first for the player).
            "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementUpdateResponse`.
            "currentState": "A String", # The current state of the achievement.
            "currentSteps": 42, # The current steps recorded for this achievement if it is incremental.
            "achievementId": "A String", # The achievement this update is was applied to.
          },
        ],
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#achievementUpdateMultipleResponse`.
      }