{
  "mtlsRootUrl": "https://gamesconfiguration.mtls.googleapis.com/",
  "title": "Google Play Games Services Publishing API",
  "fullyEncodeReservedExpansion": true,
  "batchPath": "batch",
  "revision": "20260813",
  "resources": {
    "achievementConfigurations": {
      "methods": {
        "update": {
          "description": "Update the metadata of the achievement configuration with the given ID.",
          "parameterOrder": [
            "achievementId"
          ],
          "response": {
            "$ref": "AchievementConfiguration"
          },
          "path": "games/v1configuration/achievements/{achievementId}",
          "parameters": {
            "achievementId": {
              "location": "path",
              "description": "The ID of the achievement used by this method.",
              "type": "string",
              "required": true
            }
          },
          "request": {
            "$ref": "AchievementConfiguration"
          },
          "id": "gamesConfiguration.achievementConfigurations.update",
          "httpMethod": "PUT",
          "flatPath": "games/v1configuration/achievements/{achievementId}",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ]
        },
        "get": {
          "response": {
            "$ref": "AchievementConfiguration"
          },
          "path": "games/v1configuration/achievements/{achievementId}",
          "parameters": {
            "achievementId": {
              "description": "The ID of the achievement used by this method.",
              "type": "string",
              "location": "path",
              "required": true
            }
          },
          "description": "Retrieves the metadata of the achievement configuration with the given ID.",
          "parameterOrder": [
            "achievementId"
          ],
          "flatPath": "games/v1configuration/achievements/{achievementId}",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ],
          "id": "gamesConfiguration.achievementConfigurations.get",
          "httpMethod": "GET"
        },
        "list": {
          "description": "Returns a list of the achievement configurations in this application.",
          "parameterOrder": [
            "applicationId"
          ],
          "response": {
            "$ref": "AchievementConfigurationListResponse"
          },
          "path": "games/v1configuration/applications/{applicationId}/achievements",
          "parameters": {
            "maxResults": {
              "format": "int32",
              "description": "The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified `maxResults`.",
              "type": "integer",
              "location": "query"
            },
            "applicationId": {
              "required": true,
              "description": "The application ID from the Google Play developer console.",
              "type": "string",
              "location": "path"
            },
            "pageToken": {
              "location": "query",
              "description": "The token returned by the previous request.",
              "type": "string"
            }
          },
          "id": "gamesConfiguration.achievementConfigurations.list",
          "httpMethod": "GET",
          "flatPath": "games/v1configuration/applications/{applicationId}/achievements",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ]
        },
        "delete": {
          "flatPath": "games/v1configuration/achievements/{achievementId}",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ],
          "path": "games/v1configuration/achievements/{achievementId}",
          "parameters": {
            "achievementId": {
              "location": "path",
              "description": "The ID of the achievement used by this method.",
              "type": "string",
              "required": true
            }
          },
          "description": "Delete the achievement configuration with the given ID.",
          "parameterOrder": [
            "achievementId"
          ],
          "id": "gamesConfiguration.achievementConfigurations.delete",
          "httpMethod": "DELETE"
        },
        "insert": {
          "parameterOrder": [
            "applicationId"
          ],
          "description": "Insert a new achievement configuration in this application.",
          "path": "games/v1configuration/applications/{applicationId}/achievements",
          "parameters": {
            "applicationId": {
              "location": "path",
              "description": "The application ID from the Google Play developer console.",
              "type": "string",
              "required": true
            }
          },
          "request": {
            "$ref": "AchievementConfiguration"
          },
          "response": {
            "$ref": "AchievementConfiguration"
          },
          "id": "gamesConfiguration.achievementConfigurations.insert",
          "httpMethod": "POST",
          "flatPath": "games/v1configuration/applications/{applicationId}/achievements",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ]
        }
      }
    },
    "leaderboardConfigurations": {
      "methods": {
        "insert": {
          "id": "gamesConfiguration.leaderboardConfigurations.insert",
          "httpMethod": "POST",
          "flatPath": "games/v1configuration/applications/{applicationId}/leaderboards",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ],
          "description": "Insert a new leaderboard configuration in this application.",
          "parameterOrder": [
            "applicationId"
          ],
          "response": {
            "$ref": "LeaderboardConfiguration"
          },
          "path": "games/v1configuration/applications/{applicationId}/leaderboards",
          "parameters": {
            "applicationId": {
              "description": "The application ID from the Google Play developer console.",
              "type": "string",
              "location": "path",
              "required": true
            }
          },
          "request": {
            "$ref": "LeaderboardConfiguration"
          }
        },
        "delete": {
          "description": "Delete the leaderboard configuration with the given ID.",
          "id": "gamesConfiguration.leaderboardConfigurations.delete",
          "httpMethod": "DELETE",
          "parameterOrder": [
            "leaderboardId"
          ],
          "flatPath": "games/v1configuration/leaderboards/{leaderboardId}",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ],
          "path": "games/v1configuration/leaderboards/{leaderboardId}",
          "parameters": {
            "leaderboardId": {
              "required": true,
              "description": "The ID of the leaderboard.",
              "type": "string",
              "location": "path"
            }
          }
        },
        "get": {
          "flatPath": "games/v1configuration/leaderboards/{leaderboardId}",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ],
          "id": "gamesConfiguration.leaderboardConfigurations.get",
          "httpMethod": "GET",
          "path": "games/v1configuration/leaderboards/{leaderboardId}",
          "parameters": {
            "leaderboardId": {
              "required": true,
              "location": "path",
              "description": "The ID of the leaderboard.",
              "type": "string"
            }
          },
          "response": {
            "$ref": "LeaderboardConfiguration"
          },
          "parameterOrder": [
            "leaderboardId"
          ],
          "description": "Retrieves the metadata of the leaderboard configuration with the given ID."
        },
        "list": {
          "description": "Returns a list of the leaderboard configurations in this application.",
          "parameterOrder": [
            "applicationId"
          ],
          "response": {
            "$ref": "LeaderboardConfigurationListResponse"
          },
          "path": "games/v1configuration/applications/{applicationId}/leaderboards",
          "parameters": {
            "maxResults": {
              "location": "query",
              "description": "The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified `maxResults`.",
              "type": "integer",
              "format": "int32"
            },
            "applicationId": {
              "required": true,
              "location": "path",
              "description": "The application ID from the Google Play developer console.",
              "type": "string"
            },
            "pageToken": {
              "location": "query",
              "description": "The token returned by the previous request.",
              "type": "string"
            }
          },
          "id": "gamesConfiguration.leaderboardConfigurations.list",
          "httpMethod": "GET",
          "flatPath": "games/v1configuration/applications/{applicationId}/leaderboards",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ]
        },
        "update": {
          "response": {
            "$ref": "LeaderboardConfiguration"
          },
          "path": "games/v1configuration/leaderboards/{leaderboardId}",
          "parameters": {
            "leaderboardId": {
              "required": true,
              "location": "path",
              "description": "The ID of the leaderboard.",
              "type": "string"
            }
          },
          "request": {
            "$ref": "LeaderboardConfiguration"
          },
          "description": "Update the metadata of the leaderboard configuration with the given ID.",
          "parameterOrder": [
            "leaderboardId"
          ],
          "flatPath": "games/v1configuration/leaderboards/{leaderboardId}",
          "scopes": [
            "https://www.googleapis.com/auth/androidpublisher"
          ],
          "id": "gamesConfiguration.leaderboardConfigurations.update",
          "httpMethod": "PUT"
        }
      }
    }
  },
  "servicePath": "",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "parameters": {
    "uploadType": {
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query"
    },
    "fields": {
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query"
    },
    "key": {
      "type": "string",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query"
    },
    "alt": {
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "type": "string",
      "description": "Data format for response.",
      "default": "json",
      "location": "query",
      "enum": [
        "json",
        "media",
        "proto"
      ]
    },
    "$.xgafv": {
      "location": "query",
      "enum": [
        "1",
        "2"
      ],
      "type": "string",
      "description": "V1 error format.",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ]
    },
    "oauth_token": {
      "type": "string",
      "description": "OAuth 2.0 token for the current user.",
      "location": "query"
    },
    "upload_protocol": {
      "location": "query",
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
    },
    "access_token": {
      "location": "query",
      "type": "string",
      "description": "OAuth access token."
    },
    "callback": {
      "location": "query",
      "type": "string",
      "description": "JSONP"
    },
    "prettyPrint": {
      "default": "true",
      "location": "query",
      "type": "boolean",
      "description": "Returns response with indentations and line breaks."
    },
    "quotaUser": {
      "type": "string",
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query"
    }
  },
  "schemas": {
    "AchievementConfigurationListResponse": {
      "description": "A ListConfigurations response.",
      "type": "object",
      "id": "AchievementConfigurationListResponse",
      "properties": {
        "items": {
          "description": "The achievement configurations.",
          "type": "array",
          "items": {
            "$ref": "AchievementConfiguration"
          }
        },
        "nextPageToken": {
          "description": "The pagination token for the next page of results.",
          "type": "string"
        },
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#achievementConfigurationListResponse`.",
          "type": "string"
        }
      }
    },
    "LocalizedStringBundle": {
      "id": "LocalizedStringBundle",
      "properties": {
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#localizedStringBundle`.",
          "type": "string"
        },
        "translations": {
          "description": "The locale strings.",
          "type": "array",
          "items": {
            "$ref": "LocalizedString"
          }
        }
      },
      "description": "A localized string bundle resource.",
      "type": "object"
    },
    "LeaderboardConfiguration": {
      "description": "An leaderboard configuration resource.",
      "type": "object",
      "id": "LeaderboardConfiguration",
      "properties": {
        "published": {
          "description": "The read-only published data of the leaderboard.",
          "$ref": "LeaderboardConfigurationDetail"
        },
        "scoreMax": {
          "description": "Maximum score that can be posted to this leaderboard.",
          "type": "string",
          "format": "int64"
        },
        "token": {
          "description": "The token for this resource.",
          "type": "string"
        },
        "id": {
          "description": "The ID of the leaderboard.",
          "type": "string"
        },
        "scoreMin": {
          "format": "int64",
          "description": "Minimum score that can be posted to this leaderboard.",
          "type": "string"
        },
        "draft": {
          "description": "The draft data of the leaderboard.",
          "$ref": "LeaderboardConfigurationDetail"
        },
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#leaderboardConfiguration`.",
          "type": "string"
        },
        "scoreOrder": {
          "type": "string",
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Larger scores posted are ranked higher.",
            "Smaller scores posted are ranked higher."
          ],
          "enum": [
            "SCORE_ORDER_UNSPECIFIED",
            "LARGER_IS_BETTER",
            "SMALLER_IS_BETTER"
          ]
        }
      }
    },
    "GamesNumberFormatConfiguration": {
      "id": "GamesNumberFormatConfiguration",
      "properties": {
        "suffix": {
          "$ref": "GamesNumberAffixConfiguration",
          "description": "An optional suffix for the NUMERIC format type. These strings follow the same plural rules as all Android string resources."
        },
        "numberFormatType": {
          "enum": [
            "NUMBER_FORMAT_TYPE_UNSPECIFIED",
            "NUMERIC",
            "TIME_DURATION",
            "CURRENCY"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Numbers are formatted to have no digits or fixed number of digits after the decimal point according to locale. An optional custom unit can be added.",
            "Numbers are formatted to hours, minutes and seconds.",
            "Numbers are formatted to currency according to locale."
          ],
          "description": "The formatting for the number.",
          "type": "string"
        },
        "numDecimalPlaces": {
          "description": "The number of decimal places for number. Only used for NUMERIC format type.",
          "type": "integer",
          "format": "int32"
        },
        "currencyCode": {
          "description": "The curreny code string. Only used for CURRENCY format type.",
          "type": "string"
        }
      },
      "description": "A number format resource.",
      "type": "object"
    },
    "LeaderboardConfigurationListResponse": {
      "description": "A ListConfigurations response.",
      "type": "object",
      "id": "LeaderboardConfigurationListResponse",
      "properties": {
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#leaderboardConfigurationListResponse`.",
          "type": "string"
        },
        "items": {
          "items": {
            "$ref": "LeaderboardConfiguration"
          },
          "description": "The leaderboard configurations.",
          "type": "array"
        },
        "nextPageToken": {
          "description": "The pagination token for the next page of results.",
          "type": "string"
        }
      }
    },
    "LocalizedString": {
      "description": "A localized string resource.",
      "type": "object",
      "id": "LocalizedString",
      "properties": {
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#localizedString`.",
          "type": "string"
        },
        "value": {
          "description": "The string value.",
          "type": "string"
        },
        "locale": {
          "description": "The locale string.",
          "type": "string"
        }
      }
    },
    "AchievementConfigurationDetail": {
      "id": "AchievementConfigurationDetail",
      "properties": {
        "iconUrl": {
          "description": "The icon url of this achievement. Writes to this field are ignored.",
          "type": "string"
        },
        "sortRank": {
          "format": "int32",
          "description": "The sort rank of this achievement. Writes to this field are ignored.",
          "type": "integer"
        },
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#achievementConfigurationDetail`.",
          "type": "string"
        },
        "description": {
          "$ref": "LocalizedStringBundle",
          "description": "Localized strings for the achievement description."
        },
        "pointValue": {
          "description": "Point value for the achievement.",
          "type": "integer",
          "format": "int32"
        },
        "name": {
          "$ref": "LocalizedStringBundle",
          "description": "Localized strings for the achievement name."
        }
      },
      "description": "An achievement configuration detail.",
      "type": "object"
    },
    "LeaderboardConfigurationDetail": {
      "description": "A leaderboard configuration detail.",
      "type": "object",
      "id": "LeaderboardConfigurationDetail",
      "properties": {
        "scoreFormat": {
          "description": "The score formatting for the leaderboard.",
          "$ref": "GamesNumberFormatConfiguration"
        },
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#leaderboardConfigurationDetail`.",
          "type": "string"
        },
        "name": {
          "description": "Localized strings for the leaderboard name.",
          "$ref": "LocalizedStringBundle"
        },
        "sortRank": {
          "format": "int32",
          "description": "The sort rank of this leaderboard. Writes to this field are ignored.",
          "type": "integer"
        },
        "iconUrl": {
          "description": "The icon url of this leaderboard. Writes to this field are ignored.",
          "type": "string"
        }
      }
    },
    "GamesNumberAffixConfiguration": {
      "description": "A number affix resource.",
      "type": "object",
      "id": "GamesNumberAffixConfiguration",
      "properties": {
        "one": {
          "$ref": "LocalizedStringBundle",
          "description": "When the language requires special treatment of numbers like one (as with the number 1 in English and most other languages; in Russian, any number ending in 1 but not ending in 11 is in this class)."
        },
        "zero": {
          "$ref": "LocalizedStringBundle",
          "description": "When the language requires special treatment of the number 0 (as in Arabic)."
        },
        "many": {
          "description": "When the language requires special treatment of \"large\" numbers (as with numbers ending 11-99 in Maltese).",
          "$ref": "LocalizedStringBundle"
        },
        "two": {
          "description": "When the language requires special treatment of numbers like two (as with 2 in Welsh, or 102 in Slovenian).",
          "$ref": "LocalizedStringBundle"
        },
        "few": {
          "$ref": "LocalizedStringBundle",
          "description": "When the language requires special treatment of \"small\" numbers (as with 2, 3, and 4 in Czech; or numbers ending 2, 3, or 4 but not 12, 13, or 14 in Polish)."
        },
        "other": {
          "$ref": "LocalizedStringBundle",
          "description": "When the language does not require special treatment of the given quantity (as with all numbers in Chinese, or 42 in English)."
        }
      }
    },
    "AchievementConfiguration": {
      "id": "AchievementConfiguration",
      "properties": {
        "initialState": {
          "enum": [
            "INITIAL_STATE_UNSPECIFIED",
            "HIDDEN",
            "REVEALED"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Achievement is hidden.",
            "Achievement is revealed."
          ],
          "description": "The initial state of the achievement.",
          "type": "string"
        },
        "published": {
          "description": "The read-only published data of the achievement.",
          "$ref": "AchievementConfigurationDetail"
        },
        "kind": {
          "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#achievementConfiguration`.",
          "type": "string"
        },
        "stepsToUnlock": {
          "format": "int32",
          "description": "Steps to unlock. Only applicable to incremental achievements.",
          "type": "integer"
        },
        "token": {
          "description": "The token for this resource.",
          "type": "string"
        },
        "id": {
          "description": "The ID of the achievement.",
          "type": "string"
        },
        "achievementType": {
          "enum": [
            "ACHIEVEMENT_TYPE_UNSPECIFIED",
            "STANDARD",
            "INCREMENTAL"
          ],
          "description": "The type of the achievement.",
          "type": "string",
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Achievement is either locked or unlocked.",
            "Achievement is incremental."
          ]
        },
        "draft": {
          "description": "The draft data of the achievement.",
          "$ref": "AchievementConfigurationDetail"
        }
      },
      "description": "An achievement configuration resource.",
      "type": "object"
    }
  },
  "baseUrl": "https://gamesconfiguration.googleapis.com/",
  "ownerName": "Google",
  "basePath": "",
  "rootUrl": "https://gamesconfiguration.googleapis.com/",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/androidpublisher": {
          "description": "View and manage your Google Play Developer account"
        }
      }
    }
  },
  "discoveryVersion": "v1",
  "name": "gamesConfiguration",
  "kind": "discovery#restDescription",
  "protocol": "rest",
  "documentationLink": "https://developers.google.com/games/",
  "description": "The Google Play Game Services Publishing API allows developers to configure their games in Game Services.",
  "ownerDomain": "google.com",
  "id": "gamesConfiguration:v1configuration",
  "version": "v1configuration",
  "canonicalName": "Games Configuration"
}
