# List command requests API to get and filter command requests Endpoint: GET /v0/enterprise/{enterprise_id}/command/ Version: 1.0.0 Security: apiKey ## Path parameters: - `enterprise_id` (string, required) ID of the enterprise ## Query parameters: - `command_type` (string) Filter by type of command request i.e device, group etc - `devices` (string) Filter by device IDs. Accepts comma separated values. - `device_type` (string) Filter by device type i.e active, inactive etc - `command` (string) Filter by command name - `issued_by` (string) Filter by user. Accepts user id. ## Response 200 fields (application/json): - `count` (integer) - `next` (string) - `previous` (string) - `results` (array) - `results.id` (string) Unique command request identifier - `results.enterprise` (string) Esper account identifier - `results.command_type` (string) Identifies the type of command * DEVICE: command request is meant for devices * GROUP: command request is meant for groups * DYNAMIC: command request is meant for dynamic set of devices i.e subset of devices from different groups or otherwise. Enum: "DEVICE", "GROUP", "DYNAMIC" - `results.devices` (array) list of devices to run commands - `results.groups` (array) list of groups to run commands - `results.command` (string) Following commands are supported * ADD_TO_WHITELIST: Whitelist an installed sytem app. Requires package_name in command arguments where package_name is the app package uploaded on Esper * ADD_WIFI_AP : Add wifi access points for device. Requires wifi_access_points in command arguments where wifi_access_points is the data with access points * CLEAR_APP_DATA : Clear data for an installed app. Requires package_name in command arguments where package_name is the app package uploaded on Esper * INSTALL: Install an app on a device. Requires app_version in command arguments where app_version is the version id of app uploaded on Esper * LOCK: Lock device screen * REBOOT: Reboot a device * REMOVE_FROM_WHITELIST : Remove an installed system app from whitelist. Requires package_name in command arguments where package_name is the app package uploaded on Esper * REMOVE_WIFI_AP : Remove Wifi access points for device. Requires wifi_access_points in command arguments where wifi_access_points is the data with access points * SET_APP_PERMISSION : Set permission for an installed app. Requires package_name, grant_state, permission in command arguments where package_name is the app package uploaded on Esper, grant_state should be "PERMISSION_GRANT_STATE_DEFAULT", "PERMISSION_GRANT_STATE_DENIED", "PERMISSION_GRANT_STATE_GRANTED" and permission is a valid permission * SET_APP_STATE : Set the state of an app - SHOW/HIDE/DISABLE/LAUNCHABLE_BUT_HIDDEN. Requries app_state and package_name in command arguments where app_state is the state of app and package_name is the app package uploaded on Esper * SET_BLUETOOTH_STATE : Set bluetooth state (ON/OFF) for device. Requires bluetooth_state in command arguments where bluetooth_state is a boolean. * SET_BRIGHTNESS_SCALE : Set brightness for device. Requires brightness_value in command arguments where brightness_value is an integer (1-100). * SET_DEVICE_LOCKDOWN_STATE : Set lockdown state for a device. Requires state and message in command arguments where state is LOCKED/UNLOCKED and message is the message to be added with command * SET_GPS_STATE :Set the GPS state for a device. Requires gps_state in command arguments where gps_state should be either 0, 1, 2, 3 or 4 (LOCATION_MODE_HIGH_ACCURACY = 0, LOCATION_MODE_SENSORS_ONLY = 1, LOCATION_MODE_BATTERY_SAVING = 2, LOCATION_MODE_OFF = 3, LOCATION_MODE_ON = 4) * SET_KIOSK_APP : Command to set the Kiosk app for a device. Requires package_name in command arguments where package_name is the app package uploaded on Esper * SET_NEW_POLICY : Apply policy on device. Requires policy_url in command arguments where policy_url is the URL to the policy * SET_ROTATION_STATE : Set screen orientation. Requires rotate_state in command arguments where rotate_state should be either 0, 1 or 2 (0 = AUTO, 1 = PORTRAIT_ONLY, 2 = LANDSCAPE_ONLY) * SET_SCREEN_OFF_TIMEOUT: Set screen off timeout for a device. Requires screen_off_timeout in command arguments where screen_off_timeout should be either -1 or between 5000 and 1800000 * SET_STREAM_VOLUME : Set stream volume for a device. Requires stream and volume_level in command arguments where stream should be either 0(Ring), 1(Notification), 2(Alarm) or 3(Music) and volume_level should be a value from 0 to 100 * SET_TIMEZONE : Set the timezone for a device. Requires timezone_string in command arguments where timezone_string is a valid string representing the timezone * SET_WIFI_STATE : Set the wifi state (ON/OFF) for a device. Requires wifi_state in command arguments where wifi_state is a boolean. * UNINSTALL: Uninstall an app from device. Requires package_name in command arguments where package_name is the app package uploaded on Esper * UPDATE_DEVICE_CONFIG: Push additional configurations to the Device * UPDATE_HEARTBEAT: Ping a device * UPDATE_LATEST_DPC : Prompt device to update the DPC app to the latest versions. * WIPE : Wipes the device. * RESET_LOCKSCREEN_PASSWORD: Change the lockscreen password of the device. Requires new_lockscreen_password in command arguments where new_lockscreen_password is a valid string. * CAPTURE_SCREENSHOT: Allows you to take a screenshot of the device's current screen. The "tag" is an optional param that can be set to corresponding screenshot. * UPDATE_BLUEPRINT: Pushes or reapplies the most current Blueprint version to the device or group. * NOTIFY_DEVICE: Allows you to broadcast message to the device. Requires 'title', 'message' and 'url' (optional) as string in command arguments. For scheduled message command requires 'name', 'time_type' as string and 'start_datetime' and 'end_datetime' as date-time. * SET_DEVICE_LANGUAGE: Set language for a device. Requires locale value in xx[_Zzzz]_yy where xx is language code, Zzzz is script (optional) and yy is country code. * SET_ETHERNET_SETTINGS: Set ethernet settings on supported Device * SET_STATIC_IP: Set static ip on the deivce. Requires interface, dhcp_dnabled, static_ip, primary_dns, subnet_mask, gateway, secondary_dns (optional) * BEEP_DEVICE: Allows you to make the device beep for a specified duration * SET_APP_NOTIFICATIONS: Enable/disable app notifications. Requries app_notifications_state and package_name in command arguments where app_notifications_state is a string that has the value ENABLED or DISABLED and package_name is the app package uploaded on Esper. * USE_ONLY_SAVED_WIFI_AP: Allow/disallow device to connect to unregistered WiFi APs. Requires boolean use_only_saved_ap. * CONVERGE: Allows you to converge the device to the latest version of its assigned blueprint. * SYNC_CONTENT: Allows you to sync content to the device. Requires content_id in command arguments where content_id is the id of the content to be synced. Enum: "ADD_TO_WHITELIST", "ADD_WIFI_AP", "CLEAR_APP_DATA", "INSTALL", "LOCK", "REBOOT", "REMOVE_FROM_WHITELIST", "REMOVE_WIFI_AP", "SET_APP_PERMISSION", "SET_APP_STATE", "SET_BLUETOOTH_STATE", "SET_BRIGHTNESS_SCALE", "SET_DEVICE_LOCKDOWN_STATE", "SET_GPS_STATE", "SET_KIOSK_APP", "SET_NEW_POLICY", "SET_ROTATION_STATE", "SET_SCREEN_OFF_TIMEOUT", "SET_STREAM_VOLUME", "SET_TIMEZONE", "SET_WIFI_STATE", "UNINSTALL", "UPDATE_DEVICE_CONFIG", "UPDATE_HEARTBEAT", "UPDATE_LATEST_DPC", "WIPE", "RESET_LOCKSCREEN_PASSWORD", "UPDATE_BLUEPRINT", "CAPTURE_SCREENSHOT", "NOTIFY_DEVICE", "SET_DEVICE_LANGUAGE", "SET_ETHERNET_SETTINGS", "SET_STATIC_IP", "BEEP_DEVICE", "SET_APP_NOTIFICATIONS", "USE_ONLY_SAVED_WIFI_AP", "CONVERGE", "SYNC_CONTENT" - `results.command_args` (object) - `results.command_args.device_alias_name` (string) Alternate human-readable name for your Device - `results.command_args.custom_settings_config` (object) Managed configurations for your device (passed as JSON object) - `results.command_args.app_version` (string) The version id of app uploaded on Esper - `results.command_args.package_name` (string) The app package name uploaded on Esper - `results.command_args.policy_url` (string) The URL to the policy - `results.command_args.wifi_access_points` (object) Wifi access points for the device (passed as JSON object) - `results.command_args.state` (string) LOCKED/UNLOCKED - `results.command_args.message` (string) Message to be added with command to notify device. - `results.command_args.title` (string) Message title to be added with command to notify device. - `results.command_args.url` (string) (Optional) Link to notify device. - `results.command_args.app_state` (string) The state of app - SHOW/HIDE/DISABLE/LAUNCHABLE_BUT_HIDDEN - `results.command_args.bluetooth_state` (boolean) The state of bluetooth - ON/OFF - `results.command_args.brightness_value` (integer) The brightness value of a device(1-100) - `results.command_args.gps_state` (integer) The GPS state of a device. Should be either 0, 1, 2, 3 or 4 (LOCATION_MODE_HIGH_ACCURACY = 0, LOCATION_MODE_SENSORS_ONLY = 1, LOCATION_MODE_BATTERY_SAVING = 2, LOCATION_MODE_OFF = 3, LOCATION_MODE_ON = 4) - `results.command_args.rotate_state` (integer) The screen orientation of a device. Should be either 0, 1 or 2 (0 = AUTO, 1 = PORTRAIT_ONLY, 2 = LANDSCAPE_ONLY) - `results.command_args.screen_off_timeout` (integer) The value for screen timeout of a device. Should be either -1 or between 5000 and 1800000 - `results.command_args.stream` (integer) The value of the volume stream. Should be either 0(Ring), 1(Notification), 2(Alarm) or 3(Music) - `results.command_args.volume_level` (integer) The level of volume. Should be a value from 0 to 100 - `results.command_args.timezone_string` (integer) The timezone of a device. Should be a valid timezone string - `results.command_args.wifi_state` (boolean) The state of WIFI - ON/OFF - `results.command_args.wifi_revert_timeout` (integer) The WIFI revert timeout. Should be greater than or equal to 1 - `results.command_args.locale` (string) Language and country code in xx[_Zzzz]_yy where xx is language code, Zzzz is script (optional) and yy is country code. - `results.command_args.ethernet_auth_mode` (string) Chosen mode of authentication Enum: "NONE", "EAP_TLS" - `results.command_args.ethernet_ca_cert_alias` (string) CA certificate alias. It is mandatory with Auth Mode EAP_TLS - `results.command_args.ethernet_client_cert_alias` (string) Client certificate alias. It is mandatory with Auth Mode EAP_TLS - `results.command_args.ethernet_eap_identity` (string) EAP identity - `results.command_args.interface` (string) The network interface of the device - wlan/eth - `results.command_args.dhcp_enabled` (string) The dhcp state on the device - true/false - `results.command_args.static_ip` (string) The static ip to set on the device. Should be a valid ipv4 - `results.command_args.primary_dns` (string) The primary dns to set on the device. Should be a valid ipv4 - `results.command_args.subnet_mask` (string) The subnet mask set on the device. Should between 1-32 both inclusive - `results.command_args.secondary_dns` (string) The secondary dns to set on the device. Should be a valid ipv4 - `results.command_args.gateway` (string) The gateway to set on the device. Should be a valid ipv4 - `results.command_args.duration` (string) The beep duration specified in seconds. Value must be between 10 and 300, both inclusive. - `results.command_args.tag` (string) The tag is an optional param that can be set to corresponding screenshot. Options are "tag". - `results.command_args.video_quality` (string) The video quality of the respective Remote Viewer session. Options are "STANDARD" and "DATA_SAVER". - `results.command_args.enable_debug_mode` (boolean) The flag to determine whether device must go into Debug Mode, in order to retreive bug report when the device is already in Kiosk Mode. - `results.command_args.converge_with_provision_option` (boolean) The flag to determine whether device should be converged with provision only or not. - `results.command_args.auto_update_mode` (string) (Optional) Auto update mode for google play application Enum: "autoUpdateDefault", "autoUpdateHighPriority", "autoUpdatePostponed" - `results.command_args.content_id` (string) The id of the content to be synced. - `results.schedule` (string) Following Schedule types are supported * IMMEDIATE: Schedule the command to execcute Immediately * WINDOW: Schedule the command to execute within the given window * RECURRING: Schedule the command to execute during the scheduled time until it succeeds or expires. After executing successfully, it will not fire again. Enum: "IMMEDIATE", "WINDOW", "RECURRING" - `results.schedule_args` (object) - `results.schedule_args.name` (string) - `results.schedule_args.start_datetime` (string) - `results.schedule_args.end_datetime` (string) - `results.schedule_args.time_type` (string) The Time-Type argument, in Schedule args, is to indicate which timezone the Command Framework should utilize when scheduling the command. Following Schedule Args for Time-Type are supported: * CONSOLE: Use the local timezone of the user creating the schedule. * DEVICE: Use the local timezone of the device, to which the command is issued, wherever it may be. Enum: "console", "device" - `results.schedule_args.window_start_time` (string) It is automatically populated by the time field from the request's start_datetime and cannot be injected via the API request body. - `results.schedule_args.window_end_time` (string) It is automatically populated by the time field from the request's end_datetime and cannot be injected via the API request body. - `results.schedule_args.days` (array) - `results.issued_by` (string) command is issued by this user - `results.created_on` (string) Timestamp of command request - `results.status` (array) Show current status of commands issued during this request - `results.status.state` (string) Current State of command - `results.status.total` (integer) No of commands currently in this state ## Response 401 fields (application/json): - `errors` (array) - `message` (string) - `status` (integer) ## Response 404 fields (application/json): - `errors` (array) - `message` (string) - `status` (integer) ## Response 500 fields (application/json): - `errors` (array) - `message` (string) - `status` (integer)