Focuses on API authentication, access scopes, and permission management.
In the Shopify REST API documentation (including the current version 2023-07), in many places such as here, X-Shopify-Shop-Api-Call-Limit is mentioned repeatedly as being the HTTP header that is used regarding API rate limits.
In the past, this has worked; but, as of this week, the actual header returned by the API in practice for this functionality is now all lowercase, x-shopify-shop-api-call-limit
Is this change intentional and expected future behaviour going forward or is it a regression that was not tested for and is subject to change (e.g. implementations must be case-insensitive)? Will the documentation be updated to reflect all lowercase HTTP headers?
(I am aware that the HTTP specification says that field names should be case-insensitive, but, in practice several popular languages/libraries have case-sensitive implementations by default, and, normally one would expect the documentation would match what's actually in production).
Hi there 👋
Are you still seeing this issue? I tried to reproduce it myself and I was receiving the header as X-Shopify-Shop-Api-Call-Limit. I did not see the lower case version.
Could you confirm what API client you are using? (Eg. Postman, shopify-api-js ect)
The API endpoints you are seeing this on?
To learn more visit the Shopify Help Center or the Community Blog.
The behaviour has now changed back to the original behaviour, which matches the documentation (e.g. the headers are no longer all lowercase). It was happening on all REST API endpoints, but, all are now back to as they were before. It was happening in curl, Python, etc. (any client I tested with).
I've got my application now working with both versions, since, it's really unclear what's the intended direction moving forward and this change was rolled out originally with no warning, etc. (and reverted also without warning). The HTTP/2 spec calls for all lowercase field names (which Shopify isn't currently doing, but, was for that period of several days, and, it's now unclear whether or not that's the goal/desired future state or was an oversight/unintended consequence of some infrastructure change or something).
I just noticed most headers from Shopify to any API request are returned in lowercase for me, using Postman and curl