When calling an Appian WebAPI users see that HTTP headers sent to Appian appear as all lowercase regardless of the original casing.
Users may also report the following symptoms:
Example of SAIL code that will fail or return null when sent a header with value "exampleToken":
a!localVariables( local!exampleToken: http!request.headers.exampleToken
Example of SAIL code that will succeed or return expected values when sent a header with value "exampleToken" or "exampletoken":
a!localVariables(local!exampleToken: http!request.headers.exampletoken
Per Appian's documentation, this expected behavior due to Appian Cloud's adherence to the HTTP/2 spec as defined in RFC 7540 section 8.1.2. HTTP/2 does not guarantee that request headers sent by clients will maintain their original casing when returned in the response. Thus, Appian Cloud customers should not rely on case-sensitive HTTP header names in their Web APIs or other portions of their Appian applications.
Users should update their application design to follow HTTP/2 header specifications and treat headers as case-insensitive. This may include one or both of the following actions:
This article applies to all versions of Appian Cloud
Last Reviewed: June 2025