Upcoming HTTP header changes



As part of our ongoing efforts to simplify and streamline our infrastructure, we’ll shortly be deploying an updated routing component. This will have some impact on the structure and format of HTTP headers returned on API responses.

Currently, HTTP headers returned on calls to the Twitter APIs may be rendered in mixed case (e.g. Content-Type, X-Rate-Limit-Remaining, X-Access-Level).

The change that will be deployed will force all HTTP headers into lowercase (content-type, x-rate-limit-remaining, x-access-level etc). There is no impact or change to the JSON response bodies, or the HTTP response codes, served by the Twitter API endpoints.

RFCs 2616 and 7230 both explicitly state that HTTP headers are case insensitive, so this should have minimal impact on most code (additionally, note that RFC 7540 states that headers must be lowercase). If your code, or a library that your app depends on to communicate with Twitter’s API, is performing case-sensitive matching of any of these headers, the results may be unexpected. You should ensure that your code conforms with the relevant RFCs and avoids case-sensitive parsing of headers, per HTTP/1.1 and HTTP/2 specifications.

We expect to deploy this change on (or after) May 22 2017.