Я взломал это. Маркер API передавался в виде строки, но его нужно было закодировать как base64.
Я использовал следующую найденную мной функцию:
Function EncodeBase64(text As String) As String
Dim arrData() As Byte
arrData = StrConv(text, vbFromUnicode)
Dim objXML As MSXML2.DOMDocument
Dim objNode As MSXML2.IXMLDOMElement
Set objXML = New MSXML2.DOMDocument
Set objNode = objXML.createElement("b64")
objNode.DataType = "bin.base64"
objNode.nodeTypedValue = arrData
EncodeBase64 = objNode.text
Set objNode = Nothing
Set objXML = Nothing
End Function
и изменил строку
objHTTP.setRequestHeader "Authorization", "Bearer " & token
до
objHTTP.setRequestHeader "Authorization", "Bearer " & EncodeBase64(token)