Skip to content

Post a Google play application
Stable

Request

Approves a Google Play application for a Google Enterprise (EMM) instance.

Registers a Play Store app (identified by its Google product identifier) as approved/managed for the specified Google Enterprise binding, making it available for install on GMS-enabled Android devices.

About Google EMM Managed Play Products We generally recommend approving and managing Google Play applications through the Console Google Play Store rather than this API — see Managing Google Play Store Apps in the help center. This endpoint exists for automation scenarios where app approval needs to happen programmatically as part of an enrollment or provisioning pipeline.

Key Fields / Query Parameters

  • emm_id — UUID of the Google Enterprise (EMM) binding to add the app to
  • google_product_id — Google's own identifier for the Play Store product — distinct from Esper's internal product id
  • package_name — Android package name of the app (e.g., com.example.app)
  • is_active — Whether the app is active/approved for use
  • min_sdk_version — Minimum Android SDK version the app requires

Common Use Cases

  • Automating Play Store app approval as part of a scripted EMM enrollment flow
  • Bulk-adding a set of approved apps when onboarding a new Google Enterprise binding
  • Keeping an external app catalog in sync with Esper's managed Play Store apps

Best Practices

  • Use the Console Google Play Store UI for one-off approvals — reserve this endpoint for automation
  • Confirm the emm_id corresponds to an active Google Enterprise binding before adding products
  • Track package_name alongside Esper's internal id, since Google's product identifiers and Esper's UUIDs are not interchangeable

Workflow

  1. Confirm the target emm_id via GET /v0/enterprise/{enterprise_id}/emm/{emm_id}/
  2. POST the app's package_name and Google product details to this endpoint
  3. Verify the app appears via GET /v0/enterprise/{enterprise_id}/emm/{emm_id}/product/
Security
esper_cloud_api_apiKey
Path
enterprise_idstringrequired

A UUID string identifying this enterprise.

emm_idintegerrequired

An integer representing the ID of enterprise.

Bodyapplication/jsonrequired
idstring, (uuid)
icon_urlstring, (url)
is_activeboolean
titlestring
unapprovedboolean
created_onstring, (date-time)
updated_onstring, (date-time)
min_sdk_versionstring
google_product_idstring
package_namestring, [ 1 .. 255 ] characters
google_enterpriseinteger
cURL
curl -i -X POST \
  'https://develop-api.esper.io/_mock/openapi/v0/enterprise/{enterprise_id}/emm/{emm_id}/product/' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "icon_url": "string",
    "is_active": true,
    "title": "string",
    "unapproved": true,
    "created_on": "2019-08-24T14:15:22Z",
    "updated_on": "2019-08-24T14:15:22Z",
    "min_sdk_version": "string",
    "google_product_id": "string",
    "package_name": "string",
    "google_enterprise": 0
  }'

Responses

successful operation

Bodyapplication/json
idstring, (uuid)
icon_urlstring, (url)
is_activeboolean
titlestring
unapprovedboolean
created_onstring, (date-time)
updated_onstring, (date-time)
min_sdk_versionstring
google_product_idstring
package_namestring, [ 1 .. 255 ] characters
google_enterpriseinteger
Response
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "icon_url": "string", "is_active": true, "title": "string", "unapproved": true, "created_on": "2019-08-24T14:15:22Z", "updated_on": "2019-08-24T14:15:22Z", "min_sdk_version": "string", "google_product_id": "string", "package_name": "string", "google_enterprise": 0 }