Menu

Force a firmware update (Version 1)

After registering for the Knox E-FOTA service and seeing what firmware versions are available, you are ready to update device firmware. You can either:

  • Force a firmware update within a specific time period, as described here.
  • Let devices update their firmware during their regular firmware update checks, as described in Set the allowed firmware version.

This section uses sample JSON and XML to demonstrate how to force a firmware update using Knox E-FOTA.

Request

To force a firmware update, send an HTTP POST request to this URL:

https://eu-api.samsungknox.com/b2bfota/v1/serverInit

Body

In the body of the HTTP request, provide the following information:

  • mdmId—This identifies your company among other partners in our KPP program.
  • customerId—This identifies one of your enterprise customers that will use the Knox E-FOTA service.
  • license—This tracks customer usage of the Knox E-FOTA service for billing purposes.
    NOTE—While trying Knox E-FOTA, the development key is sent to you by email in the following format: "EFOTA1-fff555-ggg666-hh77". During commercial deployment, this license is purchased.
  • groupID—A device group identified by the enterprise IT ;admin to separate groups for different firmware updates . Upper case only, for example: ;"TEST ;GROUP".
  • deviceModelName—The model number of the device you want to get the firmware info for.
  • carrierCode—The consumer software customization code for the device carrier. The carrier code is information obtained from the device.
  • targetFirmwareVersion—The target firmware version to update on to the device.
  • deliveryStartDate—The date set by the IT admin to start pushing the update to the devices.
  • deliveryEndDate—The date set by the IT admin to finish pushing the update to the device group. Note that this can be set up to a maximum of 7 days from the start date.
  • dailyStartHour—The time set by the IT admin to start the update push each day during the update period defined by the start and end dates.
  • dailyEndHour—The time set by the IT admin to end the update push each day during the update period.

You encode this info into REST API calls to the Knox E-FOTA server, and also in the Android API call used to set the allowed firmware version on a device.

For details about each of these XML elements, see the API reference for call serverInit.

Example

Here is a sample request to force a firmware update between July 13 and July 15, from 1 to 4 am for a group of devices named ;"Test Device Group"

We set the target firmware version to the following:

  • ap_version (PDA version)—G930FXXU1DQB3
  • csc_version (Phone/Modem version)—G930FOXA1DQB1
  • cp_version (CP version)—G930FXXU1DQB1

{ "B2bServerInitVO": { "mdmId": "d1e2f3g4h5", "customerId": "EEEE4444-FF55-AA66-BB77-CCCCCC888888", "groupId": "TEST DEVICE GROUP", "license": "EFOTA1-fff555-ggg666-hh77", "deviceModelName": "GT-S8500A", "carrierCode": "QA4", "targetFirmwareVersion": "G930FXXU1DQB3/G930FOXA1DQB1/G930FXXU1DQB1", "deliveryStartDate": "20170713", "deliveryEndDate": "20170715", "dailyStartHour": "01", "dailyEndHour": "04" } }

<B2bServerInitVO>
    <mdmId>d1e2f3g4h5</mdmId>
    <customerId>EEEE4444-FF55-AA66-BB77-CCCCCC888888</customerId>
    <groupId>TEST DEVICE GROUP</groupId>
    <license>EFOTA1-fff555-ggg666-hh77</license>
    <deviceModelName>GT-S8500A</deviceModelName>
    <carrierCode>QA4</carrierCode>
    <targetFirmwareVersion>G930FXXU1DQB3/G930FOXA1DQB1/G930FXXU1DQB1</targetFirmwareVersion>
    <deliveryStartDate>20170713</deliveryStartDate>
    <deliveryEndDate>20170715</deliveryEndDate>
    <dailyStartHour>01</dailyStartHour>
    <dailyEndHour>04</dailyEndHour>
 </B2bServerInitVO>

Response

If the API call is successful, the Knox E-FOTA server returns HTTP/1.1 200 OK.

Tutorial progress

You've completed 6/6 steps! See the next tutorial.