# Google Play EMM API . managedconfigurationsforuser

## Instance Methods

Removes a per-user managed configuration for an app for the specified user.

Retrieves details of a per-user managed configuration for an app for the specified user.

Lists all the per-user managed configurations for the specified user. Only the ID is set.

Adds or updates the managed configuration settings for an app for the specified user. If you support the Managed configurations iframe, you can apply managed configurations to a user by specifying an mcmId and its associated configuration variables (if any) in the request. Alternatively, all EMMs can apply managed configurations by passing a list of managed properties.

### Method Details

`delete(enterpriseId, userId, managedConfigurationForUserId)`

    Removes a per-user managed configuration for an app for the specified user.

    Args:
      enterpriseId: string, The ID of the enterprise. (required)
      userId: string, The ID of the user. (required)
      managedConfigurationForUserId: string, The ID of the managed configuration (a product ID), e.g. "app:com.google.android.gm". (required)

`get(enterpriseId, userId, managedConfigurationForUserId)`

    Retrieves details of a per-user managed configuration for an app for the specified user.

    Args:
      enterpriseId: string, The ID of the enterprise. (required)
      userId: string, The ID of the user. (required)
      managedConfigurationForUserId: string, The ID of the managed configuration (a product ID), e.g. "app:com.google.android.gm". (required)

    Returns:
      An object of the form:

        { # A managed configuration resource contains the set of managed properties defined by the app developer in the app's managed configurations schema, as well as any configuration variables defined for the user.
        "configurationVariables": { # A configuration variables resource contains the managed configuration settings ID to be applied to a single user, as well as the variable set that is attributed to the user. The variable set will be used to replace placeholders in the managed configuration settings. # Contains the ID of the managed configuration profile and the set of configuration variables (if any) defined for the user.
          "kind": "androidenterprise#configurationVariables",
          "mcmId": "A String", # The ID of the managed configurations settings.
          "variableSet": [ # The variable set that is attributed to the user.
            { # A variable set is a key-value pair of EMM-provided placeholders and its corresponding value, which is attributed to a user. For example, $FIRSTNAME could be a placeholder, and its value could be Alice. Placeholders should start with a '$' sign and should be alphanumeric only.
              "kind": "androidenterprise#variableSet",
              "placeholder": "A String", # The placeholder string; defined by EMM.
              "userValue": "A String", # The value of the placeholder, specific to the user.
            },
          ],
        },
        "kind": "A String", # Deprecated.
        "managedProperty": [ # The set of managed properties for this configuration.
          { # A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.
            "key": "A String", # The unique key that identifies the property.
            "valueBool": True or False, # The boolean value - this will only be present if type of the property is bool.
            "valueBundle": { # A bundle of managed properties. # The bundle of managed properties - this will only be present if type of the property is bundle.
              "managedProperty": [ # The list of managed properties.
                # Object with schema name: ManagedProperty
              ],
            },
            "valueBundleArray": [ # The list of bundles of properties - this will only be present if type of the property is bundle_array.
              { # A bundle of managed properties.
                "managedProperty": [ # The list of managed properties.
                  # Object with schema name: ManagedProperty
                ],
              },
            ],
            "valueInteger": 42, # The integer value - this will only be present if type of the property is integer.
            "valueString": "A String", # The string value - this will only be present if type of the property is string, choice or hidden.
            "valueStringArray": [ # The list of string values - this will only be present if type of the property is multiselect.
              "A String",
            ],
          },
        ],
        "productId": "A String", # The ID of the product that the managed configuration is for, e.g. "app:com.google.android.gm".
      }

`list(enterpriseId, userId)`

    Lists all the per-user managed configurations for the specified user. Only the ID is set.

    Args:
      enterpriseId: string, The ID of the enterprise. (required)
      userId: string, The ID of the user. (required)

    Returns:
      An object of the form:

        { # The managed configuration resources for the user.
        "kind": "androidenterprise#managedConfigurationsForUserListResponse", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#managedConfigurationsForUserListResponse".
        "managedConfigurationForUser": [ # A managed configuration for an app for a specific user.
          { # A managed configuration resource contains the set of managed properties defined by the app developer in the app's managed configurations schema, as well as any configuration variables defined for the user.
            "configurationVariables": { # A configuration variables resource contains the managed configuration settings ID to be applied to a single user, as well as the variable set that is attributed to the user. The variable set will be used to replace placeholders in the managed configuration settings. # Contains the ID of the managed configuration profile and the set of configuration variables (if any) defined for the user.
              "kind": "androidenterprise#configurationVariables",
              "mcmId": "A String", # The ID of the managed configurations settings.
              "variableSet": [ # The variable set that is attributed to the user.
                { # A variable set is a key-value pair of EMM-provided placeholders and its corresponding value, which is attributed to a user. For example, $FIRSTNAME could be a placeholder, and its value could be Alice. Placeholders should start with a '$' sign and should be alphanumeric only.
                  "kind": "androidenterprise#variableSet",
                  "placeholder": "A String", # The placeholder string; defined by EMM.
                  "userValue": "A String", # The value of the placeholder, specific to the user.
                },
              ],
            },
            "kind": "A String", # Deprecated.
            "managedProperty": [ # The set of managed properties for this configuration.
              { # A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.
                "key": "A String", # The unique key that identifies the property.
                "valueBool": True or False, # The boolean value - this will only be present if type of the property is bool.
                "valueBundle": { # A bundle of managed properties. # The bundle of managed properties - this will only be present if type of the property is bundle.
                  "managedProperty": [ # The list of managed properties.
                    # Object with schema name: ManagedProperty
                  ],
                },
                "valueBundleArray": [ # The list of bundles of properties - this will only be present if type of the property is bundle_array.
                  { # A bundle of managed properties.
                    "managedProperty": [ # The list of managed properties.
                      # Object with schema name: ManagedProperty
                    ],
                  },
                ],
                "valueInteger": 42, # The integer value - this will only be present if type of the property is integer.
                "valueString": "A String", # The string value - this will only be present if type of the property is string, choice or hidden.
                "valueStringArray": [ # The list of string values - this will only be present if type of the property is multiselect.
                  "A String",
                ],
              },
            ],
            "productId": "A String", # The ID of the product that the managed configuration is for, e.g. "app:com.google.android.gm".
          },
        ],
      }

`update(enterpriseId, userId, managedConfigurationForUserId, body=None)`

    Adds or updates the managed configuration settings for an app for the specified user. If you support the Managed configurations iframe, you can apply managed configurations to a user by specifying an mcmId and its associated configuration variables (if any) in the request. Alternatively, all EMMs can apply managed configurations by passing a list of managed properties.

    Args:
      enterpriseId: string, The ID of the enterprise. (required)
      userId: string, The ID of the user. (required)
      managedConfigurationForUserId: string, The ID of the managed configuration (a product ID), e.g. "app:com.google.android.gm". (required)
      body: object, The request body.
        The object takes the form of:

    { # A managed configuration resource contains the set of managed properties defined by the app developer in the app's managed configurations schema, as well as any configuration variables defined for the user.
      "configurationVariables": { # A configuration variables resource contains the managed configuration settings ID to be applied to a single user, as well as the variable set that is attributed to the user. The variable set will be used to replace placeholders in the managed configuration settings. # Contains the ID of the managed configuration profile and the set of configuration variables (if any) defined for the user.
        "kind": "androidenterprise#configurationVariables",
        "mcmId": "A String", # The ID of the managed configurations settings.
        "variableSet": [ # The variable set that is attributed to the user.
          { # A variable set is a key-value pair of EMM-provided placeholders and its corresponding value, which is attributed to a user. For example, $FIRSTNAME could be a placeholder, and its value could be Alice. Placeholders should start with a '$' sign and should be alphanumeric only.
            "kind": "androidenterprise#variableSet",
            "placeholder": "A String", # The placeholder string; defined by EMM.
            "userValue": "A String", # The value of the placeholder, specific to the user.
          },
        ],
      },
      "kind": "A String", # Deprecated.
      "managedProperty": [ # The set of managed properties for this configuration.
        { # A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.
          "key": "A String", # The unique key that identifies the property.
          "valueBool": True or False, # The boolean value - this will only be present if type of the property is bool.
          "valueBundle": { # A bundle of managed properties. # The bundle of managed properties - this will only be present if type of the property is bundle.
            "managedProperty": [ # The list of managed properties.
              # Object with schema name: ManagedProperty
            ],
          },
          "valueBundleArray": [ # The list of bundles of properties - this will only be present if type of the property is bundle_array.
            { # A bundle of managed properties.
              "managedProperty": [ # The list of managed properties.
                # Object with schema name: ManagedProperty
              ],
            },
          ],
          "valueInteger": 42, # The integer value - this will only be present if type of the property is integer.
          "valueString": "A String", # The string value - this will only be present if type of the property is string, choice or hidden.
          "valueStringArray": [ # The list of string values - this will only be present if type of the property is multiselect.
            "A String",
          ],
        },
      ],
      "productId": "A String", # The ID of the product that the managed configuration is for, e.g. "app:com.google.android.gm".
    }

    Returns:
      An object of the form:

        { # A managed configuration resource contains the set of managed properties defined by the app developer in the app's managed configurations schema, as well as any configuration variables defined for the user.
        "configurationVariables": { # A configuration variables resource contains the managed configuration settings ID to be applied to a single user, as well as the variable set that is attributed to the user. The variable set will be used to replace placeholders in the managed configuration settings. # Contains the ID of the managed configuration profile and the set of configuration variables (if any) defined for the user.
          "kind": "androidenterprise#configurationVariables",
          "mcmId": "A String", # The ID of the managed configurations settings.
          "variableSet": [ # The variable set that is attributed to the user.
            { # A variable set is a key-value pair of EMM-provided placeholders and its corresponding value, which is attributed to a user. For example, $FIRSTNAME could be a placeholder, and its value could be Alice. Placeholders should start with a '$' sign and should be alphanumeric only.
              "kind": "androidenterprise#variableSet",
              "placeholder": "A String", # The placeholder string; defined by EMM.
              "userValue": "A String", # The value of the placeholder, specific to the user.
            },
          ],
        },
        "kind": "A String", # Deprecated.
        "managedProperty": [ # The set of managed properties for this configuration.
          { # A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.
            "key": "A String", # The unique key that identifies the property.
            "valueBool": True or False, # The boolean value - this will only be present if type of the property is bool.
            "valueBundle": { # A bundle of managed properties. # The bundle of managed properties - this will only be present if type of the property is bundle.
              "managedProperty": [ # The list of managed properties.
                # Object with schema name: ManagedProperty
              ],
            },
            "valueBundleArray": [ # The list of bundles of properties - this will only be present if type of the property is bundle_array.
              { # A bundle of managed properties.
                "managedProperty": [ # The list of managed properties.
                  # Object with schema name: ManagedProperty
                ],
              },
            ],
            "valueInteger": 42, # The integer value - this will only be present if type of the property is integer.
            "valueString": "A String", # The string value - this will only be present if type of the property is string, choice or hidden.
            "valueStringArray": [ # The list of string values - this will only be present if type of the property is multiselect.
              "A String",
            ],
          },
        ],
        "productId": "A String", # The ID of the product that the managed configuration is for, e.g. "app:com.google.android.gm".
      }