This document outlines the changes to the BitBrew platform and management APIs that will be released May 26, 2017. Changes to existing endpoints and new endpoints should be carefully read and understood.

BitBrew's API documentation will be updated when the release has been successfully deployed to our production environment.

Table of Contents

Last Reported Firmware and Configuration

This new feature adds fields to the response body of the device file status endpoint to show the firmware and configuration files that the device was running during its most recent connection.

[GET] /v1/tenants/{tenantId}/devices/{deviceId}/files/status

Updated Response Body

            {
              "deviceId": "602091918",
              "configurationInfo": {
                 "folderName": "test-configs",
                  "activeFileName": "LGRTCS.05",
+                 "lastReportedFileName": "LGRTCS.05",
                  "status": "uptodate",
                  "updateFailureLimitReached": false
               },
               "firmwareInfo": {
                  "folderName": "friends-and-family-fw",
                  "activeFileName": "LGRTFS.04",
+                 "lastReportedFileName": "LGRTFS.03",
                  "status": "updateCancelled",
                  "updateFailureLimitReached": true
                }
            }

Even if no firmware or configuration folder is assigned to the device, the entire object will be displayed.

            {
              "deviceId": "602091918",
-            "configurationInfo": null
+            "configurationInfo": {
+                "folderName": null,
+                 "activeFileName": null,
+                 "lastReportedFileName": "LGRTCS.05",
+                 "status": "notApplicable",
+                 "updateFailureLimitReached": false
               },
-              "firmwareInfo": null
+              "firmwareInfo": {
+                 "folderName": null,
+                 "activeFileName": null,
+                 "lastReportedFileName": "LGRTFS.03",
+                 "status": "notApplicable",
+                 "updateFailureLimitReached": false
                }
            }

List Clients

[GET] /v1/tenants/{tenantId}/clients
The format of this API call's response body has been updated to a key-value pair.

Updated Response Body

{
  "clients": [
     {
-       "41a269ad-8766-4703-9df7-b943c5a645d9",
-       "lostgenClient",
-       "The default Lost Generation client."
+       "clientId": "41a269ad-8766-4703-9df7-b943c5a645d9",
+       "name": "lostgenClient",
+       "description": "The default Lost Generation client."
    }
  ]
}

Bug Fixes

Duplicate Event Delivery

Two bugs that were separately causing duplicate delivery of device events have been fixed. Due to the distributed nature of the system and the at-least-once delivery guarantee, duplicate events are still a possibility, but the frequency and number should be drastically reduced after this release.

Did this answer your question?