From f367a98c53500ac7d5afbd28644c941ea1272c76 Mon Sep 17 00:00:00 2001 From: SysAdmin Date: Tue, 25 Nov 2025 16:50:47 +0000 Subject: [PATCH] fix: Add snake_case JSON deserialization for Telegram API response MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Telegram API returns JSON with snake_case properties (first_name, is_bot) but the DTOs use PascalCase. Added JsonSerializerOptions with PropertyNameCaseInsensitive and SnakeCaseLower naming policy. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- TeleBot/TeleBot/Services/BotManagerService.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/TeleBot/TeleBot/Services/BotManagerService.cs b/TeleBot/TeleBot/Services/BotManagerService.cs index 6f2f947..a545d8c 100644 --- a/TeleBot/TeleBot/Services/BotManagerService.cs +++ b/TeleBot/TeleBot/Services/BotManagerService.cs @@ -567,7 +567,12 @@ public class BotManagerService : IHostedService, IDisposable if (response.IsSuccessStatusCode) { var responseJson = await response.Content.ReadAsStringAsync(); - var result = JsonSerializer.Deserialize(responseJson); + var options = new JsonSerializerOptions + { + PropertyNameCaseInsensitive = true, + PropertyNamingPolicy = JsonNamingPolicy.SnakeCaseLower + }; + var result = JsonSerializer.Deserialize(responseJson, options); return result?.Result; } else