1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351
|
<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="androidenterprise_v1.html">Google Play EMM API</a> . <a href="androidenterprise_v1.products.html">products</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#approve">approve(enterpriseId, productId, body)</a></code></p>
<p class="firstline">Approves the specified product and the relevant app permissions, if any. The maximum number of products that you can approve per enterprise customer is 1,000.</p>
<p class="toc_element">
<code><a href="#generateApprovalUrl">generateApprovalUrl(enterpriseId, productId, languageCode=None)</a></code></p>
<p class="firstline">Generates a URL that can be rendered in an iframe to display the permissions (if any) of a product. An enterprise admin must view these permissions and accept them on behalf of their organization in order to approve that product.</p>
<p class="toc_element">
<code><a href="#get">get(enterpriseId, productId, language=None)</a></code></p>
<p class="firstline">Retrieves details of a product for display to an enterprise admin.</p>
<p class="toc_element">
<code><a href="#getAppRestrictionsSchema">getAppRestrictionsSchema(enterpriseId, productId, language=None)</a></code></p>
<p class="firstline">Retrieves the schema that defines the configurable properties for this product. All products have a schema, but this schema may be empty if no managed configurations have been defined. This schema can be used to populate a UI that allows an administrator to configure the product. To apply a managed configuration based on the schema obtained using this API, see Managed Configurations through Play.</p>
<p class="toc_element">
<code><a href="#getPermissions">getPermissions(enterpriseId, productId)</a></code></p>
<p class="firstline">Retrieves the Android app permissions required by this app.</p>
<p class="toc_element">
<code><a href="#list">list(enterpriseId, language=None, maxResults=None, token=None, query=None, approved=None)</a></code></p>
<p class="firstline">Finds approved products that match a query, or all approved products if there is no query.</p>
<p class="toc_element">
<code><a href="#unapprove">unapprove(enterpriseId, productId)</a></code></p>
<p class="firstline">Unapproves the specified product (and the relevant app permissions, if any)</p>
<p class="toc_element">
<code><a href="#updatePermissions">updatePermissions(enterpriseId, productId, body)</a></code></p>
<p class="firstline">This method has been deprecated. To programmatically approve applications, you must use the iframe mechanism via the generateApprovalUrl and approve methods of the Products resource. For more information, see the Play EMM API usage requirements.</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="approve">approve(enterpriseId, productId, body)</code>
<pre>Approves the specified product and the relevant app permissions, if any. The maximum number of products that you can approve per enterprise customer is 1,000.
To learn how to use Google Play for Work to design and create a store layout to display approved products to your users, see Store Layout Design.
Args:
enterpriseId: string, The ID of the enterprise. (required)
productId: string, The ID of the product. (required)
body: object, The request body. (required)
The object takes the form of:
{
"approvalUrlInfo": { # Information on an approval URL. # The approval URL that was shown to the user. Only the permissions shown to the user with that URL will be accepted, which may not be the product's entire set of permissions. For example, the URL may only display new permissions from an update after the product was approved, or not include new permissions if the product was updated since the URL was generated.
"kind": "androidenterprise#approvalUrlInfo", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#approvalUrlInfo".
"approvalUrl": "A String", # A URL that displays a product's permissions and that can also be used to approve the product with the Products.approve call.
},
}
</pre>
</div>
<div class="method">
<code class="details" id="generateApprovalUrl">generateApprovalUrl(enterpriseId, productId, languageCode=None)</code>
<pre>Generates a URL that can be rendered in an iframe to display the permissions (if any) of a product. An enterprise admin must view these permissions and accept them on behalf of their organization in order to approve that product.
Admins should accept the displayed permissions by interacting with a separate UI element in the EMM console, which in turn should trigger the use of this URL as the approvalUrlInfo.approvalUrl property in a Products.approve call to approve the product. This URL can only be used to display permissions for up to 1 day.
Args:
enterpriseId: string, The ID of the enterprise. (required)
productId: string, The ID of the product. (required)
languageCode: string, The BCP 47 language code used for permission names and descriptions in the returned iframe, for instance "en-US".
Returns:
An object of the form:
{
"url": "A String", # A URL that can be rendered in an iframe to display the permissions (if any) of a product. This URL can be used to approve the product only once and only within 24 hours of being generated, using the Products.approve call. If the product is currently unapproved and has no permissions, this URL will point to an empty page. If the product is currently approved, a URL will only be generated if that product has added permissions since it was last approved, and the URL will only display those new permissions that have not yet been accepted.
}</pre>
</div>
<div class="method">
<code class="details" id="get">get(enterpriseId, productId, language=None)</code>
<pre>Retrieves details of a product for display to an enterprise admin.
Args:
enterpriseId: string, The ID of the enterprise. (required)
productId: string, The ID of the product, e.g. "app:com.google.android.gm". (required)
language: string, The BCP47 tag for the user's preferred language (e.g. "en-US", "de").
Returns:
An object of the form:
{ # A Products resource represents an app in the Google Play Store that is available to at least some users in the enterprise. (Some apps are restricted to a single enterprise, and no information about them is made available outside that enterprise.)
#
# The information provided for each product (localized name, icon, link to the full Google Play details page) is intended to allow a basic representation of the product within an EMM user interface.
"smallIconUrl": "A String", # A link to a smaller image that can be used as an icon for the product. This image is suitable for use at up to 128px x 128px.
"kind": "androidenterprise#product", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#product".
"distributionChannel": "A String", # How and to whom the package is made available. The value publicGoogleHosted means that the package is available through the Play Store and not restricted to a specific enterprise. The value privateGoogleHosted means that the package is a private app (restricted to an enterprise) but hosted by Google. The value privateSelfHosted means that the package is a private app (restricted to an enterprise) and is privately hosted.
"title": "A String", # The name of the product.
"workDetailsUrl": "A String", # A link to the Google Play for Work details page for the product, for use by an Enterprise administrator.
"appVersion": [ # App versions currently available for this product. The returned list contains only public versions. Alpha and beta versions are not included.
{ # This represents a single version of the app.
"versionCode": 42, # Unique increasing identifier for the app version.
"versionString": "A String", # The string used in the Play Store by the app developer to identify the version. The string is not necessarily unique or localized (for example, the string could be "1.4").
},
],
"productPricing": "A String", # Whether this product is free, free with in-app purchases, or paid. If the pricing is unknown, this means the product is not generally available anymore (even though it might still be available to people who own it).
"iconUrl": "A String", # A link to an image that can be used as an icon for the product. This image is suitable for use at up to 512px x 512px.
"authorName": "A String", # The name of the author of the product (e.g. the app developer).
"requiresContainerApp": True or False, # Whether this app can only be installed on devices using the Android for Work container app.
"detailsUrl": "A String", # A link to the (consumer) Google Play details page for the product.
"productId": "A String", # A string of the form app:<package name>. For example, app:com.google.android.gm represents the Gmail app.
}</pre>
</div>
<div class="method">
<code class="details" id="getAppRestrictionsSchema">getAppRestrictionsSchema(enterpriseId, productId, language=None)</code>
<pre>Retrieves the schema that defines the configurable properties for this product. All products have a schema, but this schema may be empty if no managed configurations have been defined. This schema can be used to populate a UI that allows an administrator to configure the product. To apply a managed configuration based on the schema obtained using this API, see Managed Configurations through Play.
Args:
enterpriseId: string, The ID of the enterprise. (required)
productId: string, The ID of the product. (required)
language: string, The BCP47 tag for the user's preferred language (e.g. "en-US", "de").
Returns:
An object of the form:
{ # Represents the list of app restrictions available to be pre-configured for the product.
"restrictions": [ # The set of restrictions that make up this schema.
{ # A restriction in the App Restriction Schema represents a piece of configuration that may be pre-applied.
"description": "A String", # A longer description of the restriction, giving more detail of what it affects.
"title": "A String", # The name of the restriction.
"defaultValue": { # A typed value for the restriction. # The default value of the restriction. bundle and bundleArray restrictions never have a default value.
"valueBool": True or False, # The boolean value - this will only be present if type is bool.
"valueString": "A String", # The string value - this will be present for types string, choice and hidden.
"type": "A String", # The type of the value being provided.
"valueMultiselect": [ # The list of string values - this will only be present if type is multiselect.
"A String",
],
"valueInteger": 42, # The integer value - this will only be present if type is integer.
},
"nestedRestriction": [ # For bundle or bundleArray restrictions, the list of nested restrictions. A bundle restriction is always nested within a bundleArray restriction, and a bundleArray restriction is at most two levels deep.
# Object with schema name: AppRestrictionsSchemaRestriction
],
"entryValue": [ # For choice or multiselect restrictions, the list of possible entries' machine-readable values. These values should be used in the configuration, either as a single string value for a choice restriction or in a stringArray for a multiselect restriction.
"A String",
],
"key": "A String", # The unique key that the product uses to identify the restriction, e.g. "com.google.android.gm.fieldname".
"entry": [ # For choice or multiselect restrictions, the list of possible entries' human-readable names.
"A String",
],
"restrictionType": "A String", # The type of the restriction.
},
],
"kind": "androidenterprise#appRestrictionsSchema", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#appRestrictionsSchema".
}</pre>
</div>
<div class="method">
<code class="details" id="getPermissions">getPermissions(enterpriseId, productId)</code>
<pre>Retrieves the Android app permissions required by this app.
Args:
enterpriseId: string, The ID of the enterprise. (required)
productId: string, The ID of the product. (required)
Returns:
An object of the form:
{ # Information about the permissions required by a specific app and whether they have been accepted by the enterprise.
"kind": "androidenterprise#productPermissions", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#productPermissions".
"productId": "A String", # The ID of the app that the permissions relate to, e.g. "app:com.google.android.gm".
"permission": [ # The permissions required by the app.
{ # A product permissions resource represents the set of permissions required by a specific app and whether or not they have been accepted by an enterprise admin.
#
# The API can be used to read the set of permissions, and also to update the set to indicate that permissions have been accepted.
"permissionId": "A String", # An opaque string uniquely identifying the permission.
"state": "A String", # Whether the permission has been accepted or not.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="list">list(enterpriseId, language=None, maxResults=None, token=None, query=None, approved=None)</code>
<pre>Finds approved products that match a query, or all approved products if there is no query.
Args:
enterpriseId: string, The ID of the enterprise. (required)
language: string, The BCP47 tag for the user's preferred language (e.g. "en-US", "de"). Results are returned in the language best matching the preferred language.
maxResults: integer, Specifies the maximum number of products that can be returned per request. If not specified, uses a default value of 100, which is also the maximum retrievable within a single response.
token: string, A pagination token is contained in a requestÂ’s response when there are more products. The token can be used in a subsequent request to obtain more products, and so forth. This parameter cannot be used in the initial request.
query: string, The search query as typed in the Google Play Store search box. If omitted, all approved apps will be returned (using the pagination parameters), including apps that are not available in the store (e.g. unpublished apps).
approved: boolean, Specifies whether to search among all products (false) or among only products that have been approved (true). Only "true" is supported, and should be specified.
Returns:
An object of the form:
{ # The matching products.
"product": [ # Information about a product (e.g. an app) in the Google Play Store, for display to an enterprise admin.
{ # A Products resource represents an app in the Google Play Store that is available to at least some users in the enterprise. (Some apps are restricted to a single enterprise, and no information about them is made available outside that enterprise.)
#
# The information provided for each product (localized name, icon, link to the full Google Play details page) is intended to allow a basic representation of the product within an EMM user interface.
"smallIconUrl": "A String", # A link to a smaller image that can be used as an icon for the product. This image is suitable for use at up to 128px x 128px.
"kind": "androidenterprise#product", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#product".
"distributionChannel": "A String", # How and to whom the package is made available. The value publicGoogleHosted means that the package is available through the Play Store and not restricted to a specific enterprise. The value privateGoogleHosted means that the package is a private app (restricted to an enterprise) but hosted by Google. The value privateSelfHosted means that the package is a private app (restricted to an enterprise) and is privately hosted.
"title": "A String", # The name of the product.
"workDetailsUrl": "A String", # A link to the Google Play for Work details page for the product, for use by an Enterprise administrator.
"appVersion": [ # App versions currently available for this product. The returned list contains only public versions. Alpha and beta versions are not included.
{ # This represents a single version of the app.
"versionCode": 42, # Unique increasing identifier for the app version.
"versionString": "A String", # The string used in the Play Store by the app developer to identify the version. The string is not necessarily unique or localized (for example, the string could be "1.4").
},
],
"productPricing": "A String", # Whether this product is free, free with in-app purchases, or paid. If the pricing is unknown, this means the product is not generally available anymore (even though it might still be available to people who own it).
"iconUrl": "A String", # A link to an image that can be used as an icon for the product. This image is suitable for use at up to 512px x 512px.
"authorName": "A String", # The name of the author of the product (e.g. the app developer).
"requiresContainerApp": True or False, # Whether this app can only be installed on devices using the Android for Work container app.
"detailsUrl": "A String", # A link to the (consumer) Google Play details page for the product.
"productId": "A String", # A string of the form app:<package name>. For example, app:com.google.android.gm represents the Gmail app.
},
],
"kind": "androidenterprise#productsListResponse", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#productsListResponse".
"tokenPagination": { # Pagination information for token pagination.
"nextPageToken": "A String",
"previousPageToken": "A String",
},
"pageInfo": { # General pagination information.
"totalResults": 42,
"startIndex": 42,
"resultPerPage": 42,
},
}</pre>
</div>
<div class="method">
<code class="details" id="unapprove">unapprove(enterpriseId, productId)</code>
<pre>Unapproves the specified product (and the relevant app permissions, if any)
Args:
enterpriseId: string, The ID of the enterprise. (required)
productId: string, The ID of the product. (required)
</pre>
</div>
<div class="method">
<code class="details" id="updatePermissions">updatePermissions(enterpriseId, productId, body)</code>
<pre>This method has been deprecated. To programmatically approve applications, you must use the iframe mechanism via the generateApprovalUrl and approve methods of the Products resource. For more information, see the Play EMM API usage requirements.
The updatePermissions method (deprecated) updates the set of Android app permissions for this app that have been accepted by the enterprise.
Args:
enterpriseId: string, The ID of the enterprise. (required)
productId: string, The ID of the product. (required)
body: object, The request body. (required)
The object takes the form of:
{ # Information about the permissions required by a specific app and whether they have been accepted by the enterprise.
"kind": "androidenterprise#productPermissions", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#productPermissions".
"productId": "A String", # The ID of the app that the permissions relate to, e.g. "app:com.google.android.gm".
"permission": [ # The permissions required by the app.
{ # A product permissions resource represents the set of permissions required by a specific app and whether or not they have been accepted by an enterprise admin.
#
# The API can be used to read the set of permissions, and also to update the set to indicate that permissions have been accepted.
"permissionId": "A String", # An opaque string uniquely identifying the permission.
"state": "A String", # Whether the permission has been accepted or not.
},
],
}
Returns:
An object of the form:
{ # Information about the permissions required by a specific app and whether they have been accepted by the enterprise.
"kind": "androidenterprise#productPermissions", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#productPermissions".
"productId": "A String", # The ID of the app that the permissions relate to, e.g. "app:com.google.android.gm".
"permission": [ # The permissions required by the app.
{ # A product permissions resource represents the set of permissions required by a specific app and whether or not they have been accepted by an enterprise admin.
#
# The API can be used to read the set of permissions, and also to update the set to indicate that permissions have been accepted.
"permissionId": "A String", # An opaque string uniquely identifying the permission.
"state": "A String", # Whether the permission has been accepted or not.
},
],
}</pre>
</div>
</body></html>
|