CSV bulk actions for mass device management (beta)
This feature allows you to execute multiple actions across various devices through a single CSV file upload. This makes it easier to manage and perform actions on a whole fleet of devices. After your CSV file has been uploaded and processed, you will promptly receive an email containing the outcomes and details of every action and command executed.
This method currently supports actions such as changing a policy, triggering a location request, and broadcasting a message, as well as any device command (including lock, reboot, reset password, wipe) with more options to come. Note that commands like 'Broadcast message' depend on your team having said feature flag on their plan.
Before proceeding, it is crucial to acknowledge that the respective permissions for each action must be granted to the user’s role. Please communicate with your team owners regarding any permissions required for a role. For example, if a user intends to lock devices through CSV bulk device actions, they would require the 'Can lock devices' command to be enabled in their role.
If a user attempts an action without having the proper roles, an error will be received on their email report.
Note: this feature is currently in beta, if you encounter any issues or think of improvements let us know via our support email or in-app feedback form.
Now let's get started with doing bulk device actions via CSV!
First steps
- Once logged into the mambo EMM console navigate to Management > Devices.
- Click Actions on Devices on the top right corner to open a dropdown and then click on Bulk Actions.
- This opens a modal with the required information, a downloadable test file, and an input to add your CSV file.
- Upload your CSV file below Add CSV file and click Upload.
- Once the file is uploaded and processed, you will receive an email with the result of each action.
The CSV file
Each row will require a way to identify a device, this can be done via imei
only or a combination of sn
, model
, and manufacturer
. You can combine these accordingly, for example:
imei | sn | model | manufacturer | command |
---|---|---|---|---|
1234 | LOCK | |||
4321 | C6 | Rhino Mobility | LOCK |
The CSV above will trigger a lock command to two devices, one identified via IMEI and the other via serial number, model, and manufacturer.
Actions
To trigger actions on devices a column command
is required. The applicable values are: CHANGE_POLICY
, WIPE
, LOCK
, RESET_PASSWORD
, REBOOT
, CLEAR_APP_DATA
and BROADCAST_MESSAGE
to signal which action should be applied to the respective device. Certain commands have extra options or requirements that can be set via other columns, here's a list of them all:
Change policy
CHANGE_POLICY
requires a new_policy
column which identifies to which policy the device should be changed. This field should be filled with either the ID or the name of the desired policy.
imei | command | new_policy |
---|---|---|
1234 | CHANGE_POLICY | abc1234cde |
4321 | CHANGE_POLICY | Default |
Wipe
WIPE
has no additional fields, but please be sure to double-check whenever you are using this command as it will delete the device from your list.
imei | command |
---|---|
1234 | WIPE |
Lock
LOCK
can be used standalone, optionally a command_expiry
column can be set in seconds with a value of NUMBERs
. E.g.: 10s
for ten seconds.
imei | command | command_expiry |
---|---|---|
1234 | LOCK | 60s |
4321 | LOCK |
Reset password
RESET_PASSWORD
can be used standalone to clear the password. Additionally and optionally, these fields could be set:
- A
new_password
to be used on the device. Note numeric passwords on Android +14 devices have a minimum requirement of 6 characters. - A
reset_password_flags
, with the following flags:REQUIRE_ENTRY
,DO_NOT_ASK_CREDENTIALS_ON_BOOT
andLOCK_NOW
. This field should be wrapped around quotations and each item should be separated with a comma or comma space. E.g.:"REQUIRE_ENTRY,DO_NOT_ASK_CREDENTIALS_ON_BOOT"
or"LOCK_NOW, DO_NOT_ASK_CREDENTIALS_ON_BOOT"
. - A
command_expiry
column can be set in seconds with a value of[NUMBER]s
. E.g.:10s
for ten seconds.
imei | command | new_password | reset_password_flags | command_expiry |
---|---|---|---|---|
1234 | RESET_PASSWORD | 3344 | "REQUIRE_ENTRY" | 120s |
4321 | RESET_PASSWORD | test123 | "DO_NOT_ASK_CREDENTIALS_ON_BOOT,LOCK_NOW" | |
4321 | RESET_PASSWORD | test123 | "REQUIRE_ENTRY, LOCK_NOW" | |
3214 | RESET_PASSWORD |
Reboot
REBOOT
can be used standalone, optionally a command_expiry
column can be set in seconds with a value of NUMBERs
. E.g.: 10s
for ten seconds.
imei | command | command_expiry |
---|---|---|
1234 | REBOOT | 120s |
4321 | REBOOT |
Clear app data
CLEAR_APP_DATA
has a required and optional field:
clear_app_data_packages
is required to define which package apps should have their data cleared. This field should be wrapped around quotations and each item should be separated with a comma or comma space. E.g.:"com.android.chrome"
for a single app or"com.android.chrome,com.Slack,com.myApp"
/"com.android.chrome, com.Slack, com.myApp"
for two.- An optional
command_expiry
column can be set in seconds with a value of[NUMBER]s
. E.g.:10s
for ten seconds.
imei | command | clear_app_data_packages | command_expiry |
---|---|---|---|
1234 | CLEAR_APP_DATA | "com.android.chrome" | 60s |
4321 | CLEAR_APP_DATA | "com.android.chrome,com.Slack,com.myApp" | |
3214 | CLEAR_APP_DATA | "com.android.chrome,com.Slack,com.myApp" | 120s |
3214 | CLEAR_APP_DATA | "com.android.chrome, com.Slack, com.myApp" | 120s |
Broadcast message
BROADCAST_MESSAGE
depends on your team having the related feature flag. It also has the following additional fields:
broadcast_title
is required and can contain any text.broadcast_message
is also required and can contain any text.broadcast_priority_high
is optional, and a value oftrue
can be set to send the message as high priority orfalse
for the opposite. If left empty it will default tofalse
.
imei | command | broadcast_title | broadcast_message | broadcast_priority_high |
---|---|---|---|---|
1234 | BROADCAST_MESSAGE | New release | Content... | |
4321 | BROADCAST_MESSAGE | Testing trial | Content... | |
3214 | BROADCAST_MESSAGE | Update available | Content... | true |
Trigger location request
LOCATION
has no additional fields. This action will trigger a location on the device, you can check your device location via the device details action > location tab.
imei | command |
---|---|
1234 | LOCATION |
Final thoughts
Note that you can combine multiple actions in a single file, you can also do different actions on a single device.
imei | command | broadcast_title | broadcast_message | broadcast_priority_high | command_expiry | new_password |
---|---|---|---|---|---|---|
1234 | BROADCAST_MESSAGE | New release | Content... | true | ||
4321 | REBOOT | 300s | ||||
4321 | RESET_PASSWORD | test1234 |