{ "transactionId": "T4331c8274241", "code": "00000", "message": "SUCCESS", "data": { "campaignSchemas": [ { "schemaVersion": 1, "apiVersion": 1, "campaign": [ { "key": "txId", "description": "TransactionId for this operation", "type": "hidden", "mandatory": false }, { "key": "basicInfo", "title": "BASIC INFO", "type": "object", "mandatory": true, "nestedObjects": [ { "key": "name", "title": "Campaign name", "description": "Enter campaign name", "type": "string", "mandatory": true }, { "key": "description", "title": "Description", "description": "Enter campaign description", "type": "string", "mandatory": false } ] }, { "key": "schedule", "title": "SCHEDULE", "type": "object", "mandatory": true, "nestedObjects": [ { "key": "startDate", "title": "Start Date", "type": "string", "pattern": "yyyy-mm-dd", "mandatory": true }, { "key": "endDate", "title": "End Date", "type": "string", "pattern": "yyyy-mm-dd", "mandatory": false }, { "key": "timezone", "title": "Time Zone", "type": "number", "mandatory": true, "multiple": false, "enum": [ { "text": "(UTC-12:00) International Date Line West", "value": -720 }, { "text": "(UTC-11:00) Midway Island, Samoa", "value": -660 }, { "text": "(UTC-10:00) Hawaii", "value": -600 }, { "text": "(UTC-09:00) Alaska", "value": -540 }, { "text": "(UTC-08:00) Pacific Time (US and Canada); Tijuana, Baja California", "value": -480 }, { "text": "(UTC-07:00) Mountain Time (US and Canada), Chihuahua, La Paz, Mazatlan, Arizona, Chihuahua, La Paz, Mazatlan - New", "value": -420 }, { "text": "(UTC-06:00) Central Time (US and Canada), Saskatchewan, Guadalajara, Mexico City, Monterrey, Central America, Guadalajara, Mexico City, Monterrey - New", "value": -360 }, { "text": "(UTC-05:00) Eastern Time (US and Canada), Indiana (East), Bogota, Lima, Quito", "value": -300 }, { "text": "(UTC-04:30) Caracas", "value": -270 }, { "text": "(UTC-04:00) Atlantic Time (Canada), Georgetown, La Paz, San Juan, Santiago, Manaus, Asuncion", "value": -240 }, { "text": "(UTC-03:30) Newfoundland", "value": -210 }, { "text": "(UTC-03:00) Brasilia, Georgetown, Greenland, Buenos Aires, Montevideo", "value": -180 }, { "text": "(UTC-02:00) Mid-Atlantic", "value": -120 }, { "text": "(UTC-01:00) Azores, Cape Verde Islands", "value": -60 }, { "text": "(UTC) Greenwich Mean Time: Dublin, Edinburgh, Lisbon, London, Monrovia, Reykjavik, Casablanca", "value": 0 }, { "text": "(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague, Sarajevo, Skopje, Warsaw, Zagreb, Brussels, Copenhagen, Madrid, Paris, Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna, West Central Africa ", "value": 60 }, { "text": "(UTC+02:00) Minsk, Cairo, Helsinki, Kiev, Riga, Sofia, Tallinn, Vilnius, Athens, Bucharest, Istanbul, Jerusalem, Harare, Pretoria, Beirut, Amman, Windhoek", "value": 120 }, { "text": "(UTC+03:00) Moscow, St. Petersburg, Volgograd, Kuwait, Riyadh, Nairobi, Baghdad, Tbilisi", "value": 180 }, { "text": "(UTC+03:30) Tehran", "value": 210 }, { "text": "(UTC+04:00) Abu Dhabi, Muscat, Baku, Tbilisi, Yerevan, Port Louis", "value": 240 }, { "text": "(UTC+04:30) Kabul", "value": 270 }, { "text": "(UTC+05:00) Ekaterinburg, Tashkent, Islamabad, Karachi", "value": 300 }, { "text": "(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi", "value": 330 }, { "text": "(UTC+05:45) Kathmandu", "value": 345 }, { "text": "(UTC+06:00) Astana, Dhaka, Sri Jayawardenepura, Almaty, Novosibirsk", "value": 360 }, { "text": "(UTC+06:30) Yangon (Rangoon)", "value": 390 }, { "text": "(UTC+07:00) Bangkok, Hanoi, Jakarta, Krasnoyarsk", "value": 420 }, { "text": "(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi, Kuala Lumpur, Singapore, Taipei, Perth, Irkutsk, Ulaanbaatar", "value": 480 }, { "text": "(UTC+09:00) Seoul, Osaka, Sapporo, Tokyo, Yakutsk", "value": 540 }, { "text": "(UTC+09:30) Darwin, Adelaide", "value": 570 }, { "text": "(UTC+10:00) Canberra, Melbourne, Sydney, Brisbane, Hobart, Vladivostok, Guam, Port Moresby", "value": 600 }, { "text": "(UTC+11:00) Magadan, Solomon Islands, New Caledonia", "value": 660 }, { "text": "(UTC+12:00) Fiji, Kamchatka, Marshall Is., Auckland, Wellington, Petropavlovsk-Kamchatsky", "value": 720 }, { "text": "(UTC+13:00) Nuku alofa", "value": 780 } ], "defaultValue": 0 }, { "key": "fota", "title": "Firmware Installation Period", "description": "Firmware will be installed during this period on device timezone. Actual installation can go beyond the end time specified. (24 hour format)", "type": "object", "mandatory": true, "nestedObjects": [ { "key": "from", "title": "From", "type": "number", "mandatory": true, "defaultValue": 2 }, { "key": "to", "title": "To", "description": "Minimum of 3 hours from the starting time", "type": "number", "mandatory": true, "defaultValue": 5 } ] }, { "key": "downloadTime", "title": "Firmware download period", "description": "Set a time to download firmware. By default it can be downloaded anytime.", "type": "number", "mandatory": true, "multiple": false, "enum": [ { "text": "AnyTime", "value": 1 }, { "text": "Use the Same timeframes as firmware installation period", "value": 2 }, { "text": "Custom period", "value": 3 } ], "defaultValue": 1 }, { "key": "customDownload", "title": "Custom Firmware Download Period", "type": "object", "mandatory": false, "required": { "downloadTime": 3 }, "nestedObjects": [ { "key": "fromDownload", "title": "From", "type": "number", "mandatory": false, "defaultValue": 2, "required": { "downloadTime": 3 } }, { "key": "toDownload", "title": "To", "description": "Minimum of 3 hours from the starting time", "type": "number", "mandatory": false, "defaultValue": 5, "required": { "downloadTime": 3 } } ] }, { "key": "postponeInstall", "title": "Postpone installation", "description": "Set and customize postpone policy for end users. If you don’t select this option, installation will be forced.", "type": "object", "mandatory": false, "nestedObjects": [ { "key": "postponeInstallation", "title": "Times allowed to postpone", "description": "User can postpone installation for maximum of 3 times.", "type": "number", "mandatory": false, "enum": [ { "text": "Never", "value": 0 }, { "text": "1 time", "value": 1 }, { "text": "2 times", "value": 2 }, { "text": "3 times", "value": 3 } ], "defaultValue": 0 }, { "key": "postponeDuration", "title": "Postpone duration", "description": "Set how long before a user will be reminded to install the firmware per time postponed. (range: 1-24) (For example, 2 times Postpone installation with 8 hour Postpone duration means users receive 1st reminder after 8 hours and 2nd reminder after 16 hours.)", "type": "number", "mandatory": false, "defaultValue": 8, "required": [ "postponeInstallation" ] }, { "key": "autoInstallTime", "title": "Auto-install timer", "description": "A user can set a timer to postpone firmware installation (minutes). If a user doesn’t react to the message with the timer, then installation begins automatically. (range: 1-43200) In minutes.", "type": "number", "mandatory": false, "defaultValue": 5, "required": [ "postponeInstallation" ] } ] }, { "key": "gradualRolloutOn", "title": "Set gradual campaign rollout", "description": "Select the percentage of assigned devices you want to download the new firmware on per day.", "type": "bool", "mandatory": false, "defaultValue": false }, { "key": "gradualRolloutNumber", "title": "Percent of total devices for starting the firmware download per day (1-50%).", "type": "number", "mandatory": false, "defaultValue": 10, "required": { "gradualRolloutOn": true } } ] }, { "key": "networkAndSpeed", "title": "NETWORK AND SPEED", "type": "object", "mandatory": true, "nestedObjects": [ { "key": "downloadNetwork", "title": "Download Network", "type": "string", "mandatory": true, "multiple": false, "enum": [ { "text": "Wi-Fi or Ethernet", "value": "WIFIONLY" }, { "text": "Any (Wi-Fi, Mobile or Ethernet)", "value": "ANY" } ], "defaultValue": "WIFIONLY", "nestedObjects": [ { "key": "downloadAvailableDuringRoamingNetwork", "title": "Download allowed while roaming", "type": "bool", "mandatory": false, "defaultValue": false, "required": { "downloadNetwork": "ANY" } }, { "key": "switchToWifi", "title": "Switch to Wi-Fi when firmware size is over", "type": "number", "mandatory": false, "defaultValue": 6000, "required": { "downloadNetwork": "ANY" } } ] }, { "key": "downloadSpeed", "title": "Download speed up to", "description": "This setting will control the download speed (MB in 10 mins)", "type": "number", "mandatory": false, "defaultValue": 0 }, { "key": "ssidThrottling", "title": "Set SSID download speed", "description": "This setting will control the download speed per SSID. SSID download speed is a higher priority than non-SSID download speed (MB in 10 mins)", "type": "objectArray", "mandatory": false, "nestedObjects": [ { "key": "ssidForThrottling", "title": "SSID", "description": "This field can contain a maximum of 50 characters", "type": "string", "mandatory": false }, { "key": "maxSpeedThrottling", "title": "Max Download Speed", "description": "The value should be in numeric or decimal form (MB in 10 mins).", "type": "number", "mandatory": false } ] }, { "key": "ssidRestriction", "title": "Set SSID restrictions", "description": "Selecting this option will allow/block firmware download over only allowlisted SSID(s). This option will not be enabled if campaign is saved without any SSID(s) added.", "type": "object", "mandatory": false, "nestedObjects": [ { "key": "allowOrBlock", "title": "Select option to set allowlist or blocklist", "type": "number", "mandatory": false, "multiple": false, "defaultValue": 0, "enum": [ { "text": "Not used", "value": 0 }, { "text": "Allow list", "value": 1 }, { "text": "Block list", "value": 2 } ] }, { "key": "ssidsForRestriction", "title": "Add Wi-Fi SSID", "type": "objectArray", "mandatory": false, "nestedObjects": [ { "key": "ssidForRestriction", "title": "SSID", "description": "This field can contain a maximum of 50 characters.", "type": "string", "mandatory": false }, { "key": "descriptionRestriction", "title": "Description", "description": "This field can contain a maximum of 500 characters.", "type": "string", "mandatory": false } ] } ] } ] }, { "key": "deviceCondition", "title": "DEVICE CONDITION", "type": "object", "mandatory": false, "nestedObjects": [ { "key": "batteryLevel", "title": "Battery Level for installation", "description": "Start installing when device battery level is above the selected value", "type": "number", "mandatory": false, "enum": [ { "text": "Above 20%", "value": 20 }, { "text": "Above 25%", "value": 25 }, { "text": "Above 30%", "value": 30 }, { "text": "Above 35%", "value": 35 }, { "text": "Above 40%", "value": 40 }, { "text": "Above 45%", "value": 45 }, { "text": "Above 50%", "value": 50 }, { "text": "Above 55%", "value": 55 }, { "text": "Above 60%", "value": 60 }, { "text": "Above 65%", "value": 65 }, { "text": "Above 70%", "value": 70 }, { "text": "Above 75%", "value": 75 }, { "text": "Above 80%", "value": 80 } ], "defaultValue": 20 }, { "key": "isConnectedToCharging", "title": "Allow installation only when connected to charging dock", "type": "bool", "mandatory": false, "defaultValue": false } ] }, { "key": "factoryReset", "title": "FACTORY RESET", "type": "object", "mandatory": false, "nestedObjects": [ { "key": "allowFactoryReset", "title": "Allow the factory reset option", "description": "If you enable this setting, users can factory reset the device themselves.", "type": "bool", "mandatory": false, "defaultValue": true } ] }, { "key": "contact", "title": "SUPPORT CONTACT DETAILS", "type": "object", "mandatory": true, "nestedObjects": [ { "key": "phoneNumber", "title": "Phone number", "description": "Enter contact phone number", "type": "string", "mandatory": true }, { "key": "emailAddress", "title": "E-mail address", "description": "Enter contact e-mail address", "type": "string", "mandatory": true } ] } ] } ] }}