PUT /campaigns/{acc}/{campaignId}/dates
Allows you to change campaign dates and time windows.
Note: Campaign time windows for downloading and installing software are available as long as the device OEM supports this. (The devices must support date windows, but the device OEM may download and install once they checked-in, provided they are in the date range.)
The following limitations apply to changing campaign dates and time windows:
Before the campaign starts, you can:
After the campaign has begun, but before it ends, you can:
If you are modifying any campaign dates or windows, you must provide the full payload in the request, including any modified fields.
PUT https://thingspace.verizon.com/api/fota/v2/campaigns/{acc}/{campaignId}/dates
Parameter Name | Data Type | Description |
---|---|---|
acc required |
string | The account name. |
campaignId required |
string | Software upgrade identifier, returned in the "id" value of the POST /{campaigns}/acc response when the upgrade was scheduled. |
The request header must contain a current ThingSpace authorization token and a current VZ-M2M-session token.
Parameter Name | Data Type | Description |
---|---|---|
Authorization required |
string | HTTP Authorization request header containing a valid Bearer token. |
VZ-M2M-Token required |
string | A valid session token returned by a Connectivity Management POST /session/login request. |
The request body identifies the devices that you want to upgrade.
Parameter Name | Data Type | Description |
---|---|---|
startDate required |
string($date) | Campaign start date. |
endDate required |
string($date) | Campaign end date. |
downloadAfterDate | string($date) | Specifies the starting date the client should download the package. If null, client downloads as soon as possible. |
downloadTimeWindowList | Array of startTime and endTime objects | List of allowed download time windows. |
downloadTimeWindowList.startTime required |
integer | Start hour in range [0-23], current hour >= startTime. When the current hour falls between the startTime and the endTime, it starts. |
downloadTimeWindowList.endTime required |
integer | End hour in range [1-24], current hour < endTime. |
installAfterDate | string($date) | The date after which you will install the package. If null, install as soon as possible. |
installTimeWindowList | Array of startTime and endTime objects | List of allowed install time windows. |
installTimeWindowList.startTime required |
integer | Start hour in range [0-23], current hour >= startTime. When the current hour falls between the startTime and the endTime, it starts. |
installTimeWindowList.endTime required |
integer | End hour in range [1-24], current hour < endTime. |
Modify a software upgrade.
curl -X PUT https://thingspace.verizon.com/api/fota/v2/campaigns/$ACC/$CAMPAIGN_ID/dates -H 'Authorization: Bearer $AUTH_TOKEN' -H 'VZ-M2M-Token: $M2M_TOKEN' -H 'Content-Type: application/json' -d
{
"startDate": "2020-08-21",
"endDate": "2020-08-22",
"downloadAfterDate": "2020-08-21",
"downloadTimeWindowList": [
{
"startTime": 3,
"endTime": 4
}
],
"installAfterDate": "2020-08-21",
"installTimeWindowList": [
{
"startTime": 5,
"endTime": 6
}
]
}
In this example, some fields are unchanged from the original request, but even unchanged fields must be provided in the requested. This request also includes an additional downloadTimeWindowList and an additional installTimeWindowList.
curl -X PUT https://thingspace.verizon.com/api/fota/v2/campaigns/$ACC/$CAMPAIGN_ID/dates -H 'Authorization: Bearer $AUTH_TOKEN' -H 'VZ-M2M-Token: $M2M_TOKEN' -H 'Content-Type: application/json' -d
{
"startDate": "2020-08-21",
"endDate": "2020-08-22",
"downloadAfterDate": "2020-08-21",
"downloadTimeWindowList": [
{
"startTime": 3,
"endTime": 4
},
{
"startTime": 5,
"endTime": 6
}
],
"installAfterDate": "2020-08-21",
"installTimeWindowList": [
{
"startTime": 5,
"endTime": 6
},
{
"startTime": 6,
"endTime": 7
}
]
}
Status 200
Parameter Name | Data Type | Description |
---|---|---|
id | string | Upgrade identifier. |
accountName | string | The account name. |
campaignName | string | The campaign name. |
softwareName | string | The name of the software to which you are upgrading. |
distributionType | string | Valid values include:
|
make | string | Applicable make. |
model | string | Applicable model. |
softwareFrom | string | The name of the old software on the device. |
softwareTo | string | The name of the new software to which you are upgrading. |
startDate | string($date) | Campaign start date. |
endDate | string($date) | Campaign end date. |
downloadAfterDate | string($date) | Specifies the starting date the client should download the package. If null, client downloads as soon as possible. |
downloadTimeWindowList | Array of startTime and endTime objects | List of allowed download time windows. |
downloadTimeWindowList.startTime required |
integer | Start hour in range [0-23], current hour >= startTime. When the current hour falls between the startTime and the endTime, it starts. |
downloadTimeWindowList.endTime required |
integer | End hour in range [1-24], current hour < endTime. |
installAfterDate | string($date) | The date after which you install the package. If null, installs as soon as possible. |
installTimeWindowList | Array of startTime and endTime objects | List of allowed install time windows. |
installTimeWindowList.startTime | integer | Start hour in range [0-23], startTime >= current hour. |
installTimeWindowList.endTime | integer | End hour in range [1-24], endTime < current hour. |
status | string | Software upgrade status. |
{
"id": "60b5d639-ccdc-4db8-8824-069bd94c95bf",
"accountName": "0402196254-00001",
"campaignName": "FOTA_Verizon_Upgrade",
"softwareName": "FOTA_Verizon_Model-A_02To03_HF",
"distributionType": "HTTP",
"make": "Verizon",
"model": "Model-A",
"softwareFrom": "FOTA_Verizon_Model-A_00To01_HF",
"softwareTo": "FOTA_Verizon_Model-A_02To03_HF",
"startDate": "2020-08-21",
"endDate": "2020-08-22",
"downloadAfterDate": "2020-08-21",
"downloadTimeWindowList": [
{
"startTime": 3,
"endTime": 4
},
{
"startTime": 5,
"endTime": 6
}
],
"installAfterDate": "2020-08-21",
"installTimeWindowList": [
{
"startTime": 5,
"endTime": 6
},
{
"startTime": 6,
"endTime": 7
}
],
"status": "RequestPending"
}
Status 400
All error messages are returned in this format:
{
"errorCode": "error code string",
"errorMessage": "error message string"
}
Error codes and messages are listed on the Error Messages page, along with explanations and suggestions for corrective actions.