Você tem razão, isso é algo que a ferramenta que estou usando para testar a API está fazendo, e funciona — e isso, por si só, parece ser um problema:
header1 = CaseInsensitiveDict()
header1["Authorization"] = '{"api-key": "longapikey", "api-username": "myusername"}'
header2 = {"api-key": "longapikey", "api-username": "myusername"}
r = requests.get(url, headers= HEADER)
Quando HEADER == header1, funciona; quando == header2, recebo:
{"errors":["Você não tem permissão para visualizar o recurso solicitado. O nome de usuário ou a chave da API são inválidos."],"error_type":"invalid_access"}
A propósito, obrigado pela sua resposta!