Products

Para obtener una lista de métodos para este recurso, consulta al final de esta página.

Representaciones de recursos

Un recurso de Productos representa una app en Google Play Store que está disponible para, al menos, algunos usuarios de la empresa. (Algunas apps están restringidas a una sola empresa, y no hay información sobre ellas disponible fuera de ella).

La información proporcionada para cada producto (nombre localizado, ícono, vínculo a la página completa de detalles de Google Play) tiene como objetivo permitir una representación básica del producto en una interfaz de usuario de EMM.



{
  "kind": "androidenterprise#product",
  "productId": string,
  "title": string,
  "authorName": string,
  "iconUrl": string,
  "smallIconUrl": string,
  "detailsUrl": string,
  "workDetailsUrl": string,
  "requiresContainerApp": boolean,
  "appVersion": [
    {
      "versionString": string,
      "versionCode": integer,
      "track": string,
      "targetSdkVersion": integer,
      "trackId": [
        string
      ],
      "isProduction": boolean
    }
  ],
  "distributionChannel": string,
  "productPricing": string,
  "signingCertificate": {
    "certificateHashSha256": string,
    "certificateHashSha1": string
  },
  "availableTracks": [
    string
  ],
  "appTracks": [
    {
      "trackId": string,
      "trackAlias": string
    }
  ],
  "description": string,
  "fullDescription": string,
  "screenshotUrls": [
    string
  ],
  "category": string,
  "recentChanges": string,
  "minAndroidSdkVersion": integer,
  "contentRating": string,
  "lastUpdatedTimestampMillis": long,
  "permissions": [
    {
      "permissionId": string,
      "state": string
    }
  ],
  "availableCountries": [
    string
  ],
  "features": [
    string
  ],
  "iarcGenericRating": string,
  "appRestrictionsSchema": {
    "kind": string,
    "restrictions": [
      {
        "key": string,
        "title": string,
        "restrictionType": string,
        "description": string,
        "entry": [
          string
        ],
        "entryValue": [
          string
        ],
        "defaultValue": {
          "type": string,
          "valueBool": boolean,
          "valueString": string,
          "valueInteger": integer,
          "valueMultiselect": [
            string
          ]
        },
        "nestedRestriction": [
          (AppRestrictionsSchemaRestriction)
        ]
      }
    ]
  }
}
Nombre de la propiedad Valor Descripción Notas
appRestrictionsSchema nested object Esquema de restricciones de apps
appRestrictionsSchema.kind string Obsoleto.

appRestrictionsSchema.restrictions[] list Es el conjunto de restricciones que conforman este esquema.
appRestrictionsSchema.restrictions[].defaultValue nested object Es el valor predeterminado de la restricción. Las restricciones bundle y bundleArray nunca tienen un valor predeterminado.
appRestrictionsSchema.restrictions[].defaultValue.type string Es el tipo del valor que se proporciona.

Los valores aceptables son los siguientes:
  • "bool"
  • "bundle"
  • "bundleArray"
  • "choice"
  • "hidden"
  • "integer"
  • "multiselect"
  • "string"
appRestrictionsSchema.restrictions[].defaultValue.valueBool boolean El valor booleano: este solo estará presente si el tipo es bool.
appRestrictionsSchema.restrictions[].defaultValue.valueInteger integer El valor del número entero. Solo estará presente si el tipo es un número entero.
appRestrictionsSchema.restrictions[].defaultValue.valueMultiselect[] list La lista de valores de cadena, que solo estará presente si el tipo es de selección múltiple.
appRestrictionsSchema.restrictions[].defaultValue.valueString string El valor de cadena: estará presente para los tipos string, choice y oculta.
appRestrictionsSchema.restrictions[].description string Una descripción más larga de la restricción, que brinda más detalles sobre lo que afecta.
appRestrictionsSchema.restrictions[].entryValue[] list Para las restricciones de choice o multiselect, es la lista de valores de entradas posibles legibles por máquina. Estos valores se deben usar en la configuración, ya sea como un solo valor string para una restricción choice o en stringArray para una restricción multiselect.
appRestrictionsSchema.restrictions[].entry[] list Para las restricciones choice o multiselect, es la lista de nombres legibles por humanos de las entradas posibles.
appRestrictionsSchema.restrictions[].key string La clave única que usa el producto para identificar la restricción, p.ej., "com.google.android.gm.fieldname".
appRestrictionsSchema.restrictions[].nestedRestriction[] list Para las restricciones bundle o bundleArray, es la lista de restricciones anidadas. Una restricción bundle siempre está anidada dentro de una restricción bundleArray, y una restricción bundleArray tiene dos niveles de profundidad como máximo.
appRestrictionsSchema.restrictions[].restrictionType string El tipo de restricción.

Los valores aceptables son los siguientes:
  • "bool"
  • "bundle"
  • "bundleArray"
  • "choice"
  • "hidden"
  • "integer"
  • "multiselect"
  • "string"
appRestrictionsSchema.restrictions[].title string Es el nombre de la restricción.
appTracks[] list Los recorridos visibles para la empresa.
appTracks[].trackAlias string Es un nombre modificable para una pista. Este es el nombre visible en Play Console.
appTracks[].trackId string Identificador de pista único, que no se puede modificar. Este identificador es el releaseTrackId en la URL de la página de Play Developer Console que muestra la información del segmento.
appVersion[] list Versiones de la app disponibles actualmente para este producto
appVersion[].isProduction boolean Es verdadero si esta versión es un APK de producción.
appVersion[].targetSdkVersion integer Es la versión del SDK a la que se orienta esta app, como se especifica en el manifiesto del APK. Consulta http://developer.android.com/guide/topics/manifest/uses-sdk-element.html
appVersion[].track string obsoleta: Usa trackId en su lugar.

Los valores aceptables son los siguientes:
  • "alpha"
  • "beta"
  • "production"
appVersion[].trackId[] list Los IDs de seguimiento en los que se publica la versión de la app. Reemplaza el campo track (obsoleto), pero no incluye el segmento de producción (consulta isProduction en su lugar).
appVersion[].versionCode integer Identificador único creciente para la versión de la app.
appVersion[].versionString string Es la cadena que el desarrollador de la app usa en Play Store para identificar la versión. La cadena no es necesariamente única ni está localizada (por ejemplo, la cadena podría ser "1.4").
authorName string Es el nombre del autor del producto (por ejemplo, el desarrollador de la app).
availableCountries[] list Los países en los que está disponible esta app.
availableTracks[] list obsoleta: Usa appTracks en su lugar.
category string La categoría de la app (p. ej., REGISTRO, REDES SOCIALES, etcétera)
contentRating string La clasificación del contenido de esta app.

Los valores aceptables son los siguientes:
  • "all"
  • "mature"
  • "preTeen"
  • "teen"
description string La descripción promocional localizada, si está disponible.
detailsUrl string Es un vínculo a la página de detalles de Google Play (para el consumidor) del producto.
distributionChannel string Indica cómo y para quiénes está disponible el paquete. El valor publicGoogleHosted significa que el paquete está disponible a través de Play Store y no está restringido a una empresa específica. El valor privateGoogleHosted significa que el paquete es una app privada (restringida a una empresa), pero alojada por Google. El valor privateSelfHosted significa que el paquete es una app privada (restringida a una empresa) y está alojada de forma privada.

Los valores aceptables son los siguientes:
  • "privateGoogleHosted"
  • "privateSelfHosted"
  • "publicGoogleHosted"
features[] list Características notables (si las hubiera) de este producto.
fullDescription string La descripción completa localizada de la tienda de aplicaciones, si está disponible.
iarcGenericRating string La clasificación del contenido de esta app.

Los valores aceptables son los siguientes:
  • "eighteenYears"
  • "iarcGenericRatingUnspecified"
  • "sevenYears"
  • "sixteenYears"
  • "threeYears"
  • "twelveYears"
iconUrl string Un vínculo a una imagen que se puede usar como ícono del producto. Esta imagen es apta para usarse con un máximo de 512 px x 512 px.
kind string
lastUpdatedTimestampMillis long El tiempo aproximado (en un plazo de 7 días) en que se publicó la app por última vez, expresado en milisegundos desde el ciclo de entrenamiento.
minAndroidSdkVersion integer El SDK de Android mínimo necesario para ejecutar la app.
permissions[] list Una lista de los permisos que requiere la app
permissions[].permissionId string Es una cadena opaca que identifica de forma exclusiva el permiso.
permissions[].state string Si el permiso se aceptó o no

Los valores aceptables son los siguientes:
  • "accepted"
  • "required"
productId string Una cadena con el formato app:<package name>. Por ejemplo, app:com.google.android.gm representa la app de Gmail.
productPricing string Indica si el producto es gratuito, gratuito con compras directas desde la aplicación o pagado. Si se desconoce el precio, significa que el producto ya no está disponible de forma general (aunque podría estarlo de todos modos para los propietarios).

Los valores aceptables son los siguientes:
  • "free"
  • "freeWithInAppPurchase"
  • "paid"
recentChanges string Una descripción de los cambios recientes que se hicieron en la app
requiresContainerApp boolean Ya no está disponible.
screenshotUrls[] list Una lista de vínculos de captura de pantalla que representan la app.
signingCertificate nested object El certificado que se usa para firmar este producto.
signingCertificate.certificateHashSha1 string El hash SHA1 codificado en base64 urlsafe del certificado. (Este campo dejó de estar disponible y se reemplazó por SHA2-256. No debe usarse y puede quitarse en cualquier momento).

signingCertificate.certificateHashSha256 string El hash SHA2-256 codificado en base64 del certificado.
smallIconUrl string Un vínculo a una imagen más pequeña que se puede usar como ícono del producto. Esta imagen es apta para usarse con un máximo de 128 px x 128 px.
title string Es el nombre del producto.
workDetailsUrl string Un vínculo a la página de detalles de Google Play administrado del producto, para que lo use un administrador empresarial.

Métodos

aprobar

Aprueba el producto especificado y los permisos relevantes de la app, si los hay. La cantidad máxima de productos que puedes aprobar por cliente empresarial es de 1,000.

Si quieres aprender a usar Google Play administrado para diseñar y crear un diseño de tienda a fin de mostrar productos aprobados a los usuarios, consulta Diseño de la tienda.

generateApprovalUrl
Genera una URL que se puede renderizar en un iframe para mostrar los permisos (si los hay) de un producto. Un administrador empresarial debe ver estos permisos y aceptarlos en nombre de su organización para aprobar ese producto.

Los administradores deben aceptar los permisos que se muestran interactuando con un elemento de la IU separado en la consola de EMM, lo que, a su vez, debería activar el uso de esta URL como la propiedad approvalUrlInfo.approvalUrl en una llamada a Products.approve para aprobar el producto. Esta URL solo se puede usar para mostrar los permisos durante 1 día como máximo.
get
Recupera detalles de un producto para mostrar a un administrador empresarial.
getAppRestrictionsSchema
Recupera el esquema que define las propiedades configurables de este producto. Todos los productos tienen un esquema, pero este puede estar vacío si no se definió ninguna configuración administrada. Este esquema se puede usar para propagar una IU que permita que un administrador configure el producto. Para aplicar una configuración administrada según el esquema obtenido con esta API, consulta Configuraciones administradas a través de Play.
getPermissions
Recupera los permisos de las apps para Android que requiere esta app.
list
Encuentra productos aprobados que coinciden con una consulta o todos los productos aprobados si no hay una consulta.
no aprobar
Anula la aprobación del producto especificado (y los permisos relevantes de la app, si los hubiera).