Release Tracking
Insight Hub will automatically detect new releases (builds) of your application using version information in received error events and sessions. The Build API can be used provide extra information about your builds, including:
- Linking to your source code from the releases dashboard and release annotations on the timeline.
- Linking to your source code from stack traces (on some platforms).
- Providing extra information to be displayed on the releases dashboard including the person that performed the release and other metadata.
- Automatically assigning a version number to error reports if it is not possible to configure it in your application.
Build tooling
For many platforms, additional build tools are available to make it easier to integrate the upload into your builds, without the need to integrate with the API directly. In particular, the BugSnag CLI provides a command-line interface to the Build API, with functionality to extract version information automatically from your project files.
For full details of the build integrations available see: https://docs.bugsnag.com/build-integrations.
cURL example
Matching error events and sessions to builds
The application version details are used to identify unique builds. Each unique appVersion represents a different build (combined with appVersionCode and appBundleVersion on some platforms). These version numbers must match the version number configured in your application (usually in one of the SDKs).
Configuring the application version in your application is strongly recommended but if you are unable to do so the autoAssignRelease release flag can be used. This will associate any error events and sessions subsequently received with the most recent build for the release stage (e.g. production, development).
Updating build data
Information about existing builds can be updated by making another call using the same application version details.
Any existing fields for that build will be updated with the new values. Omitted fields will not be removed. If you want to explicitly remove a field (e.g. sensitive data was accidentally included) you can set the field to null to indicate that you want it to be removed.