FreeeAPIの認証について

実現したいこと

FreeeAPIの認証をブラウザでのアクセストークン取得を利用しないで認証したい。
(サーバのバッチ処理のタイミングで上記APIを使用したいため)

発生している問題・分からないこと

ブラウザでアクセストークン取得して、FreeeAPIの認証する方法しかネット記事にない。
Freeeに問い合わせたいが有料でのサポートとなっている。(私は無料ユーザ)

該当のソースコード

チャットGPTより、下記のコードを教えて頂き、必要情報を書き換えて実行したが、401で返却された。 using System; using System.Collections.Generic; using System.Net.Http; using System.Net.Http.Headers; using System.Threading.Tasks; class Program { static async Task Main(string[] args) { var clientId = "YOUR_CLIENT_ID"; var clientSecret = "YOUR_CLIENT_SECRET"; using (var client = new HttpClient()) { var request = new HttpRequestMessage(HttpMethod.Post, "https://accounts.secure.freee.co.jp/public_api/token"); var content = new FormUrlEncodedContent(new[] { new KeyValuePair<string, string>("grant_type", "client_credentials"), new KeyValuePair<string, string>("client_id", clientId), new KeyValuePair<string, string>("client_secret", clientSecret) }); request.Content = content; request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/x-www-form-urlencoded")); var response = await client.SendAsync(request); if (response.IsSuccessStatusCode) { var responseBody = await response.Content.ReadAsStringAsync(); Console.WriteLine(responseBody); } else { Console.WriteLine($"Error: {response.StatusCode}"); var responseBody = await response.Content.ReadAsStringAsync(); Console.WriteLine(responseBody); } } } }

試したこと・調べたこと

上記の詳細・結果

ResponseCode:401

補足

特になし

コメントを投稿

0 コメント