# 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
      "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#achievementIncrementResponse`.
      "newlyUnlocked": True or False, # Whether the current steps for the achievement has reached the number of steps required to unlock.
    }

`list(playerId, language=None, maxResults=None, pageToken=None, state=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)
      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`.
      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.
      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.
          "achievementState": "A String", # The state of the achievement.
          "currentSteps": 42, # The current steps for an incremental 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.
          "formattedCurrentStepsString": "A String", # The current steps for an incremental achievement as a string.
          "id": "A String", # The ID of the achievement.
          "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#playerAchievement`.
          "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#playerAchievementListResponse`.
      "nextPageToken": "A String", # Token corresponding to the next page of results.
    }

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

`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.
      "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.
          "achievementId": "A String", # The achievement this update is being applied to.
          "incrementPayload": { # The payload to request to increment an achievement. # The payload if an update of type `INCREMENT` was requested for the achievement.
            "kind": "A String", # Uniquely identifies the type of this resource. Value is always the fixed string `games#GamesAchievementIncrement`.
            "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#achievementUpdateRequest`.
          "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.
          },
          "updateType": "A String", # The type of update being applied.
        },
      ],
    }

      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.
      "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.
          "achievementId": "A String", # The achievement this update is was applied to.
          "currentState": "A String", # The current state of the achievement.
          "currentSteps": 42, # The current steps recorded for this achievement if it is incremental.
          "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.
        },
      ],
    }