We noticed that there are some failures on the “Initiate a transfer” API from our end today, after debugging, the failure was due to a change in the API response:
We’re reading the ‘Location’ header from the response per this API doc
This worked fine for a long time, however today, we found that some responses were returning a lower cased ‘location’ header, this change is not captured by the dwolla client lib we used(dwolla-elixir) thus causing errors on parsing responses.
Now we have fixed the lib to make it compatible with both forms of the Location headers.
We would like to confirm that such API changes are intentional and that we should be notified of the changes in advance and migrate to the new version to avoid any disruption to production services.
Thank you for bringing this matter to our attention. We understand the importance of ensuring seamless integration with our APIs and apologize for any inconvenience this may have caused.
Upon investigating the reported issue, we discovered that our WAF provider recently upgraded a component of our infrastructure to utilize HTTP/2 instead of HTTP/1. While HTTP/1 permits both upper and lower case headers, HTTP/2 mandates that headers must be lowercase. Consequently, some of Dwolla’s response headers were altered from capital to lowercase, such as ‘Location’ becoming ‘location’.
Upon recognizing the impact of this change and the challenges it presented for some clients, we took immediate action to address the situation. We have reverted the infrastructure to utilize HTTP/1, thereby restoring the previous behavior of our response headers.
Moving forward, it’s essential to note that while we have resolved the immediate issue, we are also planning for future upgrades to transition to HTTP/2 fully. As part of this transition, there may be further changes to response headers. We are encouraging all clients to update their code to accommodate case-insensitive response headers, as this will facilitate a smoother transition when we ultimately migrate to HTTP/2.
Once again, we apologize for any disruption caused and appreciate your patience and understanding as we work to enhance our systems and services. To assure you, we do provide prior notification about any intentional API changes made by Dwolla. If you have any further questions or concerns, please don’t hesitate to reach out to our support team.