{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-android/json-schema/google-android-product-permissions-schema.json",
  "title": "ProductPermissions",
  "description": "Information about the permissions required by a specific app and whether they have been accepted by the enterprise.",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-android-androidenterprise-products-api-openapi.yml#/components/schemas/ProductPermissions",
  "type": "object",
  "properties": {
    "productId": {
      "description": "The ID of the app that the permissions relate to, e.g. \"app:com.google.android.gm\".",
      "type": "string"
    },
    "permission": {
      "description": "The permissions required by the app.",
      "type": "array",
      "items": {
        "$ref": "#/$defs/ProductPermission"
      }
    }
  },
  "$defs": {
    "ProductPermission": {
      "type": "object",
      "description": "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.",
      "properties": {
        "state": {
          "enum": [
            "required",
            "accepted"
          ],
          "description": "Whether the permission has been accepted or not.",
          "type": "string"
        },
        "permissionId": {
          "type": "string",
          "description": "An opaque string uniquely identifying the permission."
        }
      }
    }
  }
}