In this article, we will walk through the procedures we have in place to ensure our product releases are as smooth and safe as possible.
Talon.One regularly releases updates to our product, including the Integration API, Management API, and user interface. We release updates on an approximately weekly basis, but do not follow a set day or time to ensure that we can deploy important changes as soon as possible. Additionally, this helps us release at optimal times where traffic across our customer deployments is lower.
Our modern infrastructure also enables us to release to production with no downtime.
At time of release, we publish a comprehensive overview of the release’s changes to our Platform Changelog. We also share a more detailed overview of changes geared towards marketing users via our Update Feed.
When we are planning any adjustments to the core way a feature works or an Attribute is used –– meaning any potential “workflow-breaking” changes –– we manually audit the way those features or attributes are used by our live customers in production. We then proactively communicate any changes and actively assist those customers with any required migration prior to release. This planning and outreach occurs weeks before the release with ample time and guidance for any required changes.
New features, integrations, and bug fixes are pushed into production following our standard QA process.
The Management API and Integration API as a whole are not ‘versioned' (with the exception of API V2, released Q1 2020). Changes to these APIs go into effect for all customer deployments at time of release.
We do version API endpoints when implementing a workflow-breaking change, such as changing the behavior of a field, removing fields, or adding new mandatory fields. This does not include when we add additional options to requests, or additional information in the response body.
SDKs are updated to remain up-to-date with our APIs. Any SDK changes are updated in GitHub.
Performance Monitoring & Support
In addition to a thorough testing process for all changes by our QA team, we also have rigorous performance monitoring before, during, and after any code is changed in production.
Prior to release, all code changes are run against a tool to load-test and ensure performance benchmarks are met.
During release, we monitor an array of key performance metrics at time of release, looking closely for any concerning changes in response time or errors. We continue to monitor these after the release as the customer hits their peak traffic hours.
Finally, we also have a 24/7/365 alert system for each customer deployment. These alerts immediately notify the developers and support agents on call of issues including:
- Response times and timeouts
- Request volume (spikes or drop-offs)
- Error responses
Please reach out to firstname.lastname@example.org with any questions or issues.