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; } 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 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; }