syntax = "proto3"; package commandproto; message Event { string id = 1; int64 time = 2; Payload payload = 3; string device_udid = 4; } message Payload { string command_uuid = 1; Command command = 2; } message Command { string request_type = 1; DeviceInformation device_information = 2; InstallProfile install_profile = 3; InstallApplication install_application = 4; AccountConfiguration account_configuration = 5; ScheduleOSUpdate schedule_os_update = 6; ScheduleOSUpdateScan schedule_os_update_scan = 7; RemoveProfile remove_profile = 8; DeleteUser delete_user = 9; Settings settings = 10; } message ScheduleOSUpdate { repeated OSUpdate updates = 1; } message OSUpdate { string product_key = 1; string install_action = 2; } message ScheduleOSUpdateScan { bool force = 1; } message AccountConfiguration { bool skip_primary_setup_account_creation = 1; bool set_primary_setup_account_as_regular_user = 2; repeated AutoSetupAdminAccounts auto_setup_admin_accounts = 3; } message AutoSetupAdminAccounts { string short_name = 1; string full_name = 2; bytes password_hash = 3; bool hidden = 4; } message DeviceInformation { repeated string queries = 1; } message InstallProfile { bytes payload = 1; } message RemoveProfile { string identifier = 1; } message DeleteUser { string username = 1; bool force_deletion = 2; } message InstallApplication { int64 itunes_store_id = 1; string identifier = 2; string manifest_url = 3; int64 management_flags = 4; bool not_managed = 5; string change_management_state = 6; } message Settings { repeated Setting settings = 1; } message Setting { string item = 1; DeviceNameSetting device_name = 2; HostnameSetting hostname = 3; } message DeviceNameSetting { string device_name = 1; } message HostnameSetting { string hostname = 1; }