# Google Play Developer API . edits . apks

## Instance Methods

Creates a new APK without uploading the APK itself to Google Play, instead hosting the APK at a specified URL. This function is only available to enterprises using Google Play for Work whose application is configured to restrict distribution to the enterprise domain.

A description of how to use this function

A description of how to use this function

### Method Details

`addexternallyhosted(packageName, editId, body)`

    Creates a new APK without uploading the APK itself to Google Play, instead hosting the APK at a specified URL. This function is only available to enterprises using Google Play for Work whose application is configured to restrict distribution to the enterprise domain.

    Args:
      packageName: string, Unique identifier for the Android app that is being updated; for example, "com.spiffygame". (required)
      editId: string, Unique identifier for this edit. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "externallyHostedApk": { # Defines an APK available for this application that is hosted externally and not uploaded to Google Play. This function is only available to enterprises who are using Google Play for Work, and whos application is restricted to the enterprise private channel # The definition of the externally-hosted APK and where it is located.
          "iconBase64": "A String", # The icon image from the APK, as a base64 encoded byte array.
          "certificateBase64s": [ # A certificate (or array of certificates if a certificate-chain is used) used to signed this APK, represented as a base64 encoded byte array.
            "A String",
          ],
          "externallyHostedUrl": "A String", # The URL at which the APK is hosted. This must be an https URL.
          "maximumSdk": 42, # The maximum SDK supported by this APK (optional).
          "fileSha256Base64": "A String", # The SHA256 checksum of this APK, represented as a base64 encoded byte array.
          "usesPermissions": [ # The permissions requested by this APK.
            { # A permission used by this APK.
              "maxSdkVersion": 42, # Optionally, the maximum SDK version for which the permission is required.
              "name": "A String", # The name of the permission requested.
            },
          ],
          "fileSha1Base64": "A String", # The SHA1 checksum of this APK, represented as a base64 encoded byte array.
          "usesFeatures": [ # The features required by this APK (optional).
            "A String",
          ],
          "fileSize": "A String", # The file size in bytes of this APK.
          "versionName": "A String", # The version name of this APK.
          "versionCode": 42, # The version code of this APK.
          "packageName": "A String", # The package name.
          "minimumSdk": 42, # The minimum SDK targeted by this APK.
          "applicationLabel": "A String", # The application label.
          "nativeCodes": [ # The native code environments supported by this APK (optional).
            "A String",
          ],
        },
      }

    Returns:
      An object of the form:

        {
        "externallyHostedApk": { # Defines an APK available for this application that is hosted externally and not uploaded to Google Play. This function is only available to enterprises who are using Google Play for Work, and whos application is restricted to the enterprise private channel # The definition of the externally-hosted APK and where it is located.
          "iconBase64": "A String", # The icon image from the APK, as a base64 encoded byte array.
          "certificateBase64s": [ # A certificate (or array of certificates if a certificate-chain is used) used to signed this APK, represented as a base64 encoded byte array.
            "A String",
          ],
          "externallyHostedUrl": "A String", # The URL at which the APK is hosted. This must be an https URL.
          "maximumSdk": 42, # The maximum SDK supported by this APK (optional).
          "fileSha256Base64": "A String", # The SHA256 checksum of this APK, represented as a base64 encoded byte array.
          "usesPermissions": [ # The permissions requested by this APK.
            { # A permission used by this APK.
              "maxSdkVersion": 42, # Optionally, the maximum SDK version for which the permission is required.
              "name": "A String", # The name of the permission requested.
            },
          ],
          "fileSha1Base64": "A String", # The SHA1 checksum of this APK, represented as a base64 encoded byte array.
          "usesFeatures": [ # The features required by this APK (optional).
            "A String",
          ],
          "fileSize": "A String", # The file size in bytes of this APK.
          "versionName": "A String", # The version name of this APK.
          "versionCode": 42, # The version code of this APK.
          "packageName": "A String", # The package name.
          "minimumSdk": 42, # The minimum SDK targeted by this APK.
          "applicationLabel": "A String", # The application label.
          "nativeCodes": [ # The native code environments supported by this APK (optional).
            "A String",
          ],
        },
      }

`list(packageName, editId)`

    A description of how to use this function

    Args:
      packageName: string, Unique identifier for the Android app that is being updated; for example, "com.spiffygame". (required)
      editId: string, Unique identifier for this edit. (required)

    Returns:
      An object of the form:

        {
        "apks": [
          {
            "versionCode": 42, # The version code of the APK, as specified in the APK's manifest file.
            "binary": { # Represents the binary payload of an APK. # Information about the binary payload of this APK.
              "sha1": "A String", # A sha1 hash of the APK payload, encoded as a hex string and matching the output of the sha1sum command.
            },
          },
        ],
        "kind": "androidpublisher#apksListResponse", # Identifies what kind of resource this is. Value: the fixed string "androidpublisher#apksListResponse".
      }

`upload(packageName, editId, media_body=None, media_mime_type=None)`

    A description of how to use this function

    Args:
      packageName: string, Unique identifier for the Android app that is being updated; for example, "com.spiffygame". (required)
      editId: string, Unique identifier for this edit. (required)
      media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
      media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object.

    Returns:
      An object of the form:

        {
        "versionCode": 42, # The version code of the APK, as specified in the APK's manifest file.
        "binary": { # Represents the binary payload of an APK. # Information about the binary payload of this APK.
          "sha1": "A String", # A sha1 hash of the APK payload, encoded as a hex string and matching the output of the sha1sum command.
        },
      }