{
  "title": "Google Play Custom App Publishing API",
  "name": "playcustomapp",
  "ownerDomain": "google.com",
  "description": "API to create and publish custom Android apps",
  "protocol": "rest",
  "version": "v1",
  "basePath": "",
  "resources": {
    "accounts": {
      "resources": {
        "customApps": {
          "methods": {
            "create": {
              "supportsMediaUpload": true,
              "mediaUpload": {
                "maxSize": "10737418240",
                "accept": [
                  "*/*"
                ],
                "protocols": {
                  "simple": {
                    "path": "/upload/playcustomapp/v1/accounts/{account}/customApps",
                    "multipart": true
                  },
                  "resumable": {
                    "path": "/resumable/upload/playcustomapp/v1/accounts/{account}/customApps",
                    "multipart": true
                  }
                }
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidpublisher"
              ],
              "request": {
                "$ref": "CustomApp"
              },
              "path": "playcustomapp/v1/accounts/{account}/customApps",
              "id": "playcustomapp.accounts.customApps.create",
              "parameters": {
                "account": {
                  "required": true,
                  "type": "string",
                  "location": "path",
                  "format": "int64",
                  "description": "Developer account ID."
                }
              },
              "response": {
                "$ref": "CustomApp"
              },
              "flatPath": "playcustomapp/v1/accounts/{account}/customApps",
              "parameterOrder": [
                "account"
              ],
              "httpMethod": "POST",
              "description": "Creates a new custom app."
            }
          }
        }
      }
    }
  },
  "icons": {
    "x32": "http://www.google.com/images/icons/product/search-32.gif",
    "x16": "http://www.google.com/images/icons/product/search-16.gif"
  },
  "id": "playcustomapp:v1",
  "mtlsRootUrl": "https://playcustomapp.mtls.googleapis.com/",
  "fullyEncodeReservedExpansion": true,
  "ownerName": "Google",
  "batchPath": "batch",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/androidpublisher": {
          "description": "View and manage your Google Play Developer account"
        }
      }
    }
  },
  "kind": "discovery#restDescription",
  "revision": "20260817",
  "servicePath": "",
  "baseUrl": "https://playcustomapp.googleapis.com/",
  "rootUrl": "https://playcustomapp.googleapis.com/",
  "documentationLink": "https://developers.google.com/android/work/play/custom-app-api/",
  "parameters": {
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "type": "string",
      "location": "query"
    },
    "fields": {
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query"
    },
    "key": {
      "location": "query",
      "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.",
      "type": "string"
    },
    "quotaUser": {
      "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.",
      "type": "string",
      "location": "query"
    },
    "prettyPrint": {
      "type": "boolean",
      "location": "query",
      "description": "Returns response with indentations and line breaks.",
      "default": "true"
    },
    "alt": {
      "description": "Data format for response.",
      "type": "string",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "default": "json",
      "location": "query"
    },
    "uploadType": {
      "type": "string",
      "location": "query",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "type": "string",
      "location": "query"
    },
    "access_token": {
      "type": "string",
      "description": "OAuth access token.",
      "location": "query"
    },
    "callback": {
      "location": "query",
      "type": "string",
      "description": "JSONP"
    }
  },
  "discoveryVersion": "v1",
  "schemas": {
    "CustomApp": {
      "properties": {
        "title": {
          "type": "string",
          "description": "Title for the Android app."
        },
        "languageCode": {
          "description": "Default listing language in BCP 47 format.",
          "type": "string"
        },
        "packageName": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Package name of the created Android app. Only present in the API response."
        },
        "organizations": {
          "type": "array",
          "items": {
            "$ref": "Organization"
          },
          "description": "Organizations to which the custom app should be made available. If the request contains any organizations, then the app will be restricted to only these organizations. To support the organization linked to the developer account, the organization ID should be provided explicitly together with other organizations. If no organizations are provided, then the app is only available to the organization linked to the developer account."
        }
      },
      "description": "This resource represents a custom app.",
      "type": "object",
      "id": "CustomApp"
    },
    "Organization": {
      "id": "Organization",
      "description": "Represents an organization that can access a custom app.",
      "type": "object",
      "properties": {
        "organizationId": {
          "description": "Required. ID of the organization.",
          "type": "string"
        },
        "organizationName": {
          "type": "string",
          "description": "Optional. A human-readable name of the organization, to help recognize the organization."
        }
      }
    }
  }
}
