---
title: Firmware Build Info Entity (v2)
slug: develop/firmware-build-info-entity-v2
docTags: 
createdAt: 2025-03-11T07:03:28.938Z
---

Firmware Build Info entities contain the following required properties: 

- `firmwareUpdateSource` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The enum source from which to get the firmware update. Possible values are “Production”, “Beta”, “MinimumCompatible”, “SpecificUrl”, “None”, or “Existing”. If you use “Production”, “Beta”, or “MinimumCompatible”, no additional values need to be defined.
- `firmwareUpdateSourceFilePath` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: Local file path to the bsfw file. This is only applicable for BrightSign Author desktop version when \` firmwareUpdateSource\` is \`SpecificFile\`.&#x20;
- `firmwareUpdateSourceUrl` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: URL link to the bsfw file (must be publicly accessible). Applicable when \` firmwareUpdateSource\` is \`SpecificUrl\`.
- `firmwareUpdateStandardTargetFileName` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The name of the .bsfw firmware file that is targeted for updates. The update contained in the file is applied and if successful the file is deleted from the storage medium containing it. If the delete succeeds then the system reboots. If it fails then the device behaves as if the file had been named `*_save.bsfw` - see below. The delete always fails if the card uses an NTFS or HFS+ filesystem.
- `firmwareUpdateDifferentTargetFileName` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The name of a .bsfw firmware file. In run mode the update contained in this file is applied only if the version it contains does not match the version that is currently running. The file is not deleted but the infinite loop is avoided because on subsequent boots the version number will be the same so the update file will be ignored. In rescue mode the update is always applied.
- `firmwareUpdateNewerTargetFileName` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The name of a .bsfw firmware file. In run mode the update contained in the file is applied only if the version it contains is strictly newer than the version that is currently running. The file is not deleted but the infinite loop is avoided because on subsequent boots the version number will be the same so the update file will be ignored. In rescue mode, the update is always applied because the version of run mode cannot be checked and the infinite loop won't occur because the device will reboot into run mode.
- `firmwareUpdateSaveTargetFileName` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The name of a .bsfw firmware file. The update contained in the file is applied but the file is not deleted, because if the device rebooted at this point it would just apply the update against the device and will not automatically reboot when applying updates named like this until the storage device containing the update has been removed. This makes this filename useful if you wish to update many units from a USB key.
- `firmwareUpdateVersion` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: This can be an empty string or the version number of the firmware you want to update to
- `productionReleaseURL` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The URL to the .bsfw file that the device will pull the Setup files from for use in production. This is o<font color="#0C121D"> of .</font>
- `betaReleaseURL` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The URL to the .bsfw file for the beta release version in production. This is o<font color="#0C121D"> of </font><font color="#0C121D"></font><font color="#0C121D">.</font>
- `compatibleReleaseURL` <font color="#704ae0">string</font> <font color="#01a0af">read-write</font>: The URL to the .bsfw file for the minimum compatible release version in production. This is o<font color="#0C121D"> of </font><font color="#0C121D"></font><font color="#0C121D">.</font>
- These additional fields will be returned in the GET response. The values are set in the Firmware Manifest. They are not required in a PUT request:
  - `productionVersion` <font color="#704ae0">string</font> <font color="#01a0af">read-only</font>
  - `betaVersion` <font color="#704ae0">string</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>    &#x20;
  - `compatibleVersion` <font color="#704ae0">string</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `productionVersionNumber` <font color="#704ae0">number</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `betaVersionNumber` <font color="#704ae0">number</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `compatibleVersionNumber` <font color="#704ae0">number</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `productionReleaseSHA1` <font color="#704ae0">string</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `betaReleaseSHA1` <font color="#704ae0">string</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `compatibleReleaseSHA1` <font color="#704ae0">string</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `productionReleaseFileLength` <font color="#704ae0">number</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>&#x20;
  - `betaReleaseFileLength` <font color="#704ae0">number</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `compatibleReleaseFileLength` <font color="#704ae0">number</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>
  - `existingFWContentID` <font color="#704ae0">string</font> <font color="#01a0af">read-</font><font color="#01a0af">only</font>&#x20;

