# Google Play Game Services . achievements

## Instance Methods

Increments the steps of the achievement with the given ID for the currently

Lists the progress for all your application's achievements for the

Retrieves the next page of results.

Sets the state of the achievement with the given ID to

Sets the steps for the currently authenticated player towards unlocking an

Unlocks this achievement for the currently authenticated player.

Updates multiple achievements for the currently authenticated player.

### Method Details

`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
        "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.
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed
            # string `games#achievementIncrementResponse`.
      }

`list(playerId, state=None, maxResults=None, pageToken=None, language=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)
      state: string, Tells the server to return only achievements with the specified state.  If
    this parameter isn't specified, all achievements are returned.
      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`.
      pageToken: string, The token returned by the previous request.
      language: string, The preferred language to use for strings returned by this method.
      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.
        "items": [ # The achievements.
          { # An achievement object.
            "id": "A String", # The ID of the achievement.
            "formattedCurrentStepsString": "A String", # The current steps for an incremental achievement as a string.
            "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.
            "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed
                # string `games#playerAchievement`.
            "currentSteps": 42, # The current steps for an incremental achievement.
            "achievementState": "A String", # The state of the achievement.
          },
        ],
        "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`.
      }

`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.
        "currentSteps": 42, # The current steps recorded for this incremental achievement.
        "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.
      }

`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
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed
            # string `games#achievementUnlockResponse`.
        "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).
      }

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

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

    Returns:
      An object of the form:

        {
        "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed
            # string `games#achievementUpdateMultipleResponse`.
        "updatedAchievements": [ # The updated state of the achievements.
          { # An updated achievement.
            "currentState": "A String", # The current state of the achievement.
            "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed
                # string `games#achievementUpdateResponse`.
            "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).
            "updateOccurred": True or False, # Whether the requested updates actually affected the achievement.
            "achievementId": "A String", # The achievement this update is was applied to.
            "currentSteps": 42, # The current steps recorded for this achievement if it is incremental.
          },
        ],
      }