- HTTP request
- Path parameters
- Request body
- Response body
- Authorization scopes
- GeneratedApksPerSigningKey
- GeneratedSplitApk
- GeneratedAssetPackSlice
- GeneratedStandaloneApk
- GeneratedUniversalApk
- TargetingInfo
- SplitApkVariant
- VariantTargeting
- SdkVersionTargeting
- SdkVersion
- AbiTargeting
- Abi
- AbiAlias
- ScreenDensityTargeting
- ScreenDensity
- DensityAlias
- MultiAbiTargeting
- MultiAbi
- TextureCompressionFormatTargeting
- TextureCompressionFormat
- TextureCompressionFormatAlias
- ApkSet
- ModuleMetadata
- FeatureModuleType
- DeliveryType
- ModuleTargeting
- DeviceFeatureTargeting
- DeviceFeature
- UserCountriesTargeting
- ApkDescription
- ApkTargeting
- LanguageTargeting
- SplitApkMetadata
- StandaloneApkMetadata
- AssetSliceSet
- AssetModuleMetadata
- Try it!
Returns download metadata for all APKs that were generated from a given app bundle.
HTTP request
GET https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/generatedApks/{versionCode}
The URL uses gRPC Transcoding syntax.
Path parameters
Parameters | |
---|---|
packageName |
Package name of the app. |
versionCode |
Version code of the app bundle. |
Request body
The request body must be empty.
Response body
Response to list generated APKs.
If successful, the response body contains data with the following structure:
JSON representation |
---|
{
"generatedApks": [
{
object ( |
Fields | |
---|---|
generatedApks[] |
All generated APKs, grouped by the APK signing key. |
Authorization scopes
Requires the following OAuth scope:
https://www.googleapis.com/auth/androidpublisher
GeneratedApksPerSigningKey
generatedapks.download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given key.
JSON representation |
---|
{ "certificateSha256Hash": string, "generatedSplitApks": [ { object ( |
Fields | |
---|---|
certificateSha256Hash |
SHA256 hash of the APK signing public key certificate. |
generatedSplitApks[] |
generatedapks.list of generated split APKs, signed with a key corresponding to certificateSha256Hash. |
generatedAssetPackSlices[] |
generatedapks.list of asset pack slices which will be served for this app bundle, signed with a key corresponding to certificateSha256Hash. |
generatedStandaloneApks[] |
generatedapks.list of generated standalone APKs, signed with a key corresponding to certificateSha256Hash. |
generatedUniversalApk |
Generated universal APK, signed with a key corresponding to certificateSha256Hash. This field is not set if no universal APK was generated for this signing key. |
targetingInfo |
Contains targeting information about the generated apks. |
GeneratedSplitApk
generatedapks.download metadata for a split APK.
JSON representation |
---|
{ "downloadId": string, "variantId": integer, "moduleName": string, "splitId": string } |
Fields | |
---|---|
downloadId |
generatedapks.download ID, which uniquely identifies the APK to download. Should be supplied to |
variantId |
ID of the generated variant. |
moduleName |
Name of the module that this APK belongs to. |
splitId |
Split ID. Empty for the main split of the base module. |
GeneratedAssetPackSlice
generatedapks.download metadata for an asset pack slice.
JSON representation |
---|
{ "downloadId": string, "moduleName": string, "sliceId": string, "version": string } |
Fields | |
---|---|
downloadId |
generatedapks.download ID, which uniquely identifies the APK to download. Should be supplied to |
moduleName |
Name of the module that this asset slice belongs to. |
sliceId |
Asset slice ID. |
version |
Asset module version. |
GeneratedStandaloneApk
generatedapks.download metadata for a standalone APK.
JSON representation |
---|
{ "downloadId": string, "variantId": integer } |
Fields | |
---|---|
downloadId |
generatedapks.download ID, which uniquely identifies the APK to download. Should be supplied to |
variantId |
ID of the generated variant. |
GeneratedUniversalApk
generatedapks.download metadata for a universal APK.
JSON representation |
---|
{ "downloadId": string } |
Fields | |
---|---|
downloadId |
generatedapks.download ID, which uniquely identifies the APK to download. Should be supplied to |
TargetingInfo
Targeting information about the generated apks.
JSON representation |
---|
{ "packageName": string, "variant": [ { object ( |
Fields | |
---|---|
packageName |
The package name of this app. |
variant[] |
generatedapks.list of the created variants. |
assetSliceSet[] |
generatedapks.list of created asset slices. |
SplitApkVariant
Variant is a group of APKs that covers a part of the device configuration space. APKs from multiple variants are never combined on one device.
JSON representation |
---|
{ "targeting": { object ( |
Fields | |
---|---|
targeting |
Variant-level targeting. |
apkSet[] |
Set of APKs, one set per module. |
variantNumber |
Number of the variant, starting at 0 (unless overridden). A device will receive APKs from the first variant that matches the device configuration, with higher variant numbers having priority over lower variant numbers. |
VariantTargeting
Targeting on the level of variants.
JSON representation |
---|
{ "sdkVersionTargeting": { object ( |
Fields | |
---|---|
sdkVersionTargeting |
The sdk version that the variant targets |
abiTargeting |
The abi that the variant targets |
screenDensityTargeting |
The screen densities that this variant supports |
multiAbiTargeting |
Multi-api-level targeting |
textureCompressionFormatTargeting |
Texture-compression-format-level targeting |
SdkVersionTargeting
Targeting based on sdk version.
JSON representation |
---|
{ "value": [ { object ( |
Fields | |
---|---|
value[] |
Value of an sdk version. |
alternatives[] |
Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits. |
SdkVersion
Represents an sdk version.
JSON representation |
---|
{ "min": integer } |
Fields | |
---|---|
min |
Inclusive minimum value of an sdk version. |
AbiTargeting
Targeting based on Abi.
JSON representation |
---|
{ "value": [ { object ( |
Fields | |
---|---|
value[] |
Value of an abi. |
alternatives[] |
Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits. |
Abi
Represents an Abi.
JSON representation |
---|
{
"alias": enum ( |
Fields | |
---|---|
alias |
Alias for an abi. |
AbiAlias
Alias definition for abis.
Enums | |
---|---|
UNSPECIFIED_CPU_ARCHITECTURE |
Unspecified abi. |
ARMEABI |
ARMEABI abi. |
ARMEABI_V7A |
ARMEABI_V7A abi. |
ARM64_V8A |
ARM64_V8A abi. |
X86 |
X86 abi. |
X86_64 |
X86_64 abi. |
ScreenDensityTargeting
Targeting based on screen density.
JSON representation |
---|
{ "value": [ { object ( |
Fields | |
---|---|
value[] |
Value of a screen density. |
alternatives[] |
Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits. |
ScreenDensity
Represents a screen density.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field
|
|
densityAlias |
Alias for a screen density. |
densityDpi |
Value for density dpi. |
DensityAlias
Alias definition for screen densities.
Enums | |
---|---|
DENSITY_UNSPECIFIED |
Unspecified screen density. |
NODPI |
NODPI screen density. |
LDPI |
LDPI screen density. |
MDPI |
MDPI screen density. |
TVDPI |
TVDPI screen density. |
HDPI |
HDPI screen density. |
XHDPI |
XHDPI screen density. |
XXHDPI |
XXHDPI screen density. |
XXXHDPI |
XXXHDPI screen density. |
MultiAbiTargeting
Targeting based on multiple abis.
JSON representation |
---|
{ "value": [ { object ( |
Fields | |
---|---|
value[] |
Value of a multi abi. |
alternatives[] |
Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits. |
MultiAbi
Represents a list of apis.
JSON representation |
---|
{
"abi": [
{
object ( |
Fields | |
---|---|
abi[] |
A list of targeted ABIs, as represented by the Android Platform |
TextureCompressionFormatTargeting
Targeting by a texture compression format.
JSON representation |
---|
{ "value": [ { object ( |
Fields | |
---|---|
value[] |
The list of targeted TCFs. Should not be empty. |
alternatives[] |
generatedapks.list of alternative TCFs (TCFs targeted by the sibling splits). |
TextureCompressionFormat
Represents texture compression format.
JSON representation |
---|
{
"alias": enum ( |
Fields | |
---|---|
alias |
Alias for texture compression format. |
TextureCompressionFormatAlias
Alias definition for texture compression formats.
Enums | |
---|---|
UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT |
Unspecified format. |
ETC1_RGB8 |
ETC1_RGB8 format. |
PALETTED |
PALETTED format. |
THREE_DC |
THREE_DC format. |
ATC |
ATC format. |
LATC |
LATC format. |
DXT1 |
DXT1 format. |
S3TC |
S3TC format. |
PVRTC |
PVRTC format. |
ASTC |
ASTC format. |
ETC2 |
ETC2 format. |
ApkSet
A set of apks representing a module.
JSON representation |
---|
{ "moduleMetadata": { object ( |
Fields | |
---|---|
moduleMetadata |
Metadata about the module represented by this ApkSet |
apkDescription[] |
Description of the generated apks. |
ModuleMetadata
Metadata of a module.
JSON representation |
---|
{ "name": string, "moduleType": enum ( |
Fields | |
---|---|
name |
Module name. |
moduleType |
Indicates the type of this feature module. |
deliveryType |
Indicates the delivery type (e.g. on-demand) of the module. |
dependencies[] |
Names of the modules that this module directly depends on. Each module implicitly depends on the base module. |
targeting |
The targeting that makes a conditional module installed. Relevant only for Split APKs. |
FeatureModuleType
Type of the feature module.
Enums | |
---|---|
UNKNOWN_MODULE_TYPE |
Unknown feature module. |
FEATURE_MODULE |
Regular feature module. |
DeliveryType
Indicates the delivery type of the module.
Enums | |
---|---|
UNKNOWN_DELIVERY_TYPE |
Unspecified delivery type. |
INSTALL_TIME |
This module will always be downloaded as part of the initial install of the app. |
ON_DEMAND |
This module is requested on-demand, which means it will not be part of the initial install, and will only be sent when requested by the client. |
FAST_FOLLOW |
This module will be downloaded immediately after initial install finishes. The app can be opened before these modules are downloaded. |
ModuleTargeting
Targeting on the module level.
JSON representation |
---|
{ "sdkVersionTargeting": { object ( |
Fields | |
---|---|
sdkVersionTargeting |
The sdk version that the variant targets |
deviceFeatureTargeting[] |
Targeting for device features. |
userCountriesTargeting |
Countries-level targeting |
DeviceFeatureTargeting
Targeting for a device feature.
JSON representation |
---|
{
"requiredFeature": {
object ( |
Fields | |
---|---|
requiredFeature |
Feature of the device. |
DeviceFeature
Represents a device feature.
JSON representation |
---|
{ "featureName": string, "featureVersion": integer } |
Fields | |
---|---|
featureName |
Name of the feature. |
featureVersion |
The feature version specified by android:glEsVersion or android:version in |
UserCountriesTargeting
Describes an inclusive/exclusive list of country codes that module targets.
JSON representation |
---|
{ "countryCodes": [ string ], "exclude": boolean } |
Fields | |
---|---|
countryCodes[] |
generatedapks.list of country codes in the two-letter CLDR territory format. |
exclude |
Indicates if the list above is exclusive. |
ApkDescription
Description of the created apks.
JSON representation |
---|
{ "targeting": { object ( |
Fields | |
---|---|
targeting |
Apk-level targeting. |
path |
Path of the Apk, will be in the following format: |
Union field
|
|
splitApkMetadata |
Set only for Split APKs. |
standaloneApkMetadata |
Set only for standalone APKs. |
instantApkMetadata |
Set only for Instant split APKs. |
assetSliceMetadata |
Set only for asset slices. |
ApkTargeting
Represents a set of apk-level targetings.
JSON representation |
---|
{ "abiTargeting": { object ( |
Fields | |
---|---|
abiTargeting |
The abi that the apk targets |
languageTargeting |
The language that the apk targets |
screenDensityTargeting |
The screen density that this apk supports. |
sdkVersionTargeting |
The sdk version that the apk targets |
textureCompressionFormatTargeting |
Texture-compression-format-level targeting |
multiAbiTargeting |
Multi-api-level targeting. |
LanguageTargeting
Targeting based on language.
JSON representation |
---|
{ "value": [ string ], "alternatives": [ string ] } |
Fields | |
---|---|
value[] |
ISO-639: 2 or 3 letter language code. |
alternatives[] |
Alternative languages. |
SplitApkMetadata
Holds data specific to Split APKs.
JSON representation |
---|
{ "splitId": string, "isMasterSplit": boolean } |
Fields | |
---|---|
splitId |
Id of the split. |
isMasterSplit |
Indicates whether this APK is the main split of the module. |
StandaloneApkMetadata
Holds data specific to Standalone APKs.
JSON representation |
---|
{ "fusedModuleName": [ string ] } |
Fields | |
---|---|
fusedModuleName[] |
Names of the modules fused in this standalone APK. |
AssetSliceSet
Set of asset slices belonging to a single asset module.
JSON representation |
---|
{ "assetModuleMetadata": { object ( |
Fields | |
---|---|
assetModuleMetadata |
Module level metadata. |
apkDescription[] |
Asset slices. |
AssetModuleMetadata
Metadata of an asset module.
JSON representation |
---|
{
"name": string,
"deliveryType": enum ( |
Fields | |
---|---|
name |
Module name. |
deliveryType |
Indicates the delivery type for persistent install. |