新しい 3.0 REST API を介して MailChimp アカウントにアクセスしようとしています。私は次のことをしました:
using(var http = new HttpClient())
{
var creds = Convert.ToBase64String(Encoding.ASCII.GetBytes("username:mailchimpapikey-us1"));
http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", creds);
string content = await http.GetStringAsync(@"https://us1.api.mailchimp.com/3.0/lists");
Console.WriteLine(content);
}
ただし、このコードを実行すると、次の json の詳細で 401 エラーが発生します。
{"type":"http://kb.mailchimp.com/api/error-docs/401-api-key-invalid","title":"API Key Invalid","status":401,"detail":"Your API key may be invalid, or you've attempted to access the wrong datacenter.","instance":"a9fe4028-519e-41d6-9f77-d2caee4d4683"}
URI で使用しているデータセンター (この例では us1) は、API キーの dc と一致します。MailChimp SDK を使用すると API キーが機能するので、キーが無効ではないことがわかります。また、Fiddler を使用すると、MailChimp SDK が URI で行っているのと同じ dc を呼び出していることがわかります。
認証に問題がある理由についてのアイデアはありますか?
EDIT 質問で述べたように、新しい 3.0 REST API へのアクセスについて具体的に尋ねています。サードパーティのラッパーを使用するのではなく、これを直接実行しようとしています。
新しい API は http 呼び出しで構成されているため、非常に簡単です。私は単に認証ピースに問題があります。