using System.Collections.Generic;
using System.Text.Json.Serialization;
public static void Main()
var json = "{\"type\": \"service_account\",\"project_id\": \"lner-dev-etickets\",\"private_key_id\": \"1d16459728453f12a4a3427ebf6dfda0ff66b0ac\"," +
"\"private_key\": \"-----BEGIN PRIVATE KEY-----\\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCvWwuD4tI+u1Zu\\nNhckFRNECDus48njZzcZt2bo6eP4o2lASw3DnqMc9DFRXti4QbMp1ruZQ6ctcmhM\\nwsoXgo6MsuVX8BocrZJiRJeRUJ+2pRocrzmcWwVJoFfvm9QoZChNNtsIDKriUJVq\\n0q5G2xe9iVjbmC9zcxB0yS3dEDlE1hqcx4134835m7SPD3zeL9jU6p3+WcZCPU+3\\nykHY0Fp0/swGRRwYj3k5gvSGJlGzZ7HjeKlDBbvTAhN2C0Ix4et8+85qnrKJcW/q\\n831JKUFvQ+jHnOUkE9ulqEp1NxCgycn2VEG6p3ROCxTotBuoB6aNWl5e0uc2CnrN\\nbqCKgaXXAgMBAAECggEAJFwXfihI+fL0T/PtRnEMRp4Caa3tzbY4KZ/qub7No1+W\\n0lr9pqM9JSLJGxs0irgswy8gRP5PKtA/KjN1nfxXPHtXrK0/bNTctn2Mg/gYtdF0\\nIaB/rJj+9q5FrYw9KIbkCGaocfnWcQjOgpDezBhfytAw2Y+rvx+LuPuCBAV6Knh2\\nYi8Yqh3247+sz6RVujPPqsCEPnxaZM7rwZU5CBbc0YiiRgEbac+psJE6r8ByaYBT\\ndbUY5O1BegppyNIQ/U0B+iMVa1otD/I2LHxCsCv7RUT4sTAtJw85XrwVPxrCPuxM\\nGgI71xhUTGpN6h9AKecWwQywp+/Ax9QHNZfTvQ7ocQKBgQDnv/0y+ZGzudTphl4R\\nKagff1h8VBUNC/ZVV6lP6zvDujrtFFfREKmTc3i0qO8SKdsPDhusqQXG9bAQxj0W\\niV4MSreJ99VC4T7b5MdwfNZDF3/yOSIIxZHpr+8Iu6D2aGbhdHUP/omspfiGBVOk\\nWboSUopgNuEZ4AMTao5CczlwqQKBgQDBtGQeTLADf08eY7ge0GbCMluTEw6okwiN\\n975U02CwkaGuoWJPx55lHovMg8RPTmteFxTJBUPTMa6zVVz9pabU1RH1F1607MP5\\nO07cWwPmabIHgilu6VebOhmPlQBYshMWgX0fXF/gsrR9b3pFD1ujoyIZAiCfK40V\\nQaAVW0vyfwKBgAPRriKA6l3D2jZe+H3f6d1bA+JIoHAumkidwTSH89wt3Xq6sxfG\\n5oR/iqWvgwERn4KIAPy/bFDzC4u7OJZ+fQZG1O95HhKUE60cAA1igUVpxboAJwdt\\n+hGXzKCgNu7YmZltieBRmYM22PmcbNxwfhh/M7iSLvN2NZbEUsPVkkTBAoGBAIe8\\nRLwGuQB6YZLGBetx1dAXQZxaKlduUPxKspD2XjbclhOs+xs0ooXxVb1GSHXaWdph\\nCiujCNghZG4+Tx9eyP0zIZZBfhgCIYGwUZ6QGLeJMTuZtjcGRGF94ROAMfH1NvL6\\nYhdrv7PRBjEvwNpL3MdaNTaZCwr+lapjhi3w/9M5AoGAQ9/O5rCD3RVx1LHgskI1\\naMj0DksrsSW1KN17T00VV3e0HdNFOd6GHH7Gq1AMigQJ91qGK475G7a3kWo4TIdY\\nHdZacyLZy1L5TG0vJnAthIMxpW8sFmiHTWa8aWyT6uNG6e0ed49DL/yPt+oztrs0\\nz5veFc96DS2m+UeM8X0o9Ws=\\n-----END PRIVATE KEY-----\\n\"," +
"\"client_email\": \"lner-dev-etickets@lner-dev-etickets.iam.gserviceaccount.com\",\"client_id\": \"106754010446988763725\",\"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\"token_uri\": \"https://oauth2.googleapis.com/token\","+
"\"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\"client_x509_cert_url\": \"https://www.googleapis.com/robot/v1/metadata/x509/lner-dev-etickets%40lner-dev-etickets.iam.gserviceaccount.com\"}";
string privatKeyId = JsonSerializer.Deserialize<Program.GPCredentials>(json).PrivateKeyId;
Console.WriteLine("privatKeyId: " + privatKeyId);
var jsonElement = "{\"29f9758c18fbe03cb0bc3cd2542632ba87d88dde\": \"-----BEGIN CERTIFICATE-----\\nMIIDRjCCAi6gAwIBAgIIBzE5HSLoKbEwDQYJKoZIhvcNAQEFBQAwRjFEMEIGA1UE\\nAww7bG5lci1kZXYtZXRpY2tldHMubG5lci1kZXYtZXRpY2tldHMuaWFtLmdzZXJ2\\naWNlYWNjb3VudC5jb20wHhcNMjMwNTMxMDc0MzU1WhcNMjMwNjE2MTk1ODU1WjBG\\nMUQwQgYDVQQDDDtsbmVyLWRldi1ldGlja2V0cy5sbmVyLWRldi1ldGlja2V0cy5p\\nYW0uZ3NlcnZpY2VhY2NvdW50LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC\\nAQoCggEBAI8xxOoDU/luh5DqwZLWtPGXJp6Mc6awaPR3I8O6omnpFW0QUjcj/ACZ\\nlWh3kHGr+jaXzPtu4l+/oUZr7J9X7LSOn0yFwa9THrTP1FijbqlTaEpro8rQrBXI\\nulCUY6nALkzTyWO8OxLjxcBq1DlfFRqvXQcin7m09IPRt6cFk5SVZL+ctoxfK7ZP\\nh9ldvhBP0EW+FUHnIlR++Z/fb0QohLx5g1rCYiEANRa5fvdJ9vCJxCz1rs+mWBRk\\nUsi+Ww+iK9Bn1RwlHjwEyvCwweqXdo0/HpcldcuzYUh+vwVH6DeI3Lfw2fKoMuIZ\\npoI7aAFyvV80i21R9YO7Vxq3BHlrTzECAwEAAaM4MDYwDAYDVR0TAQH/BAIwADAO\\nBgNVHQ8BAf8EBAMCB4AwFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcN\\nAQEFBQADggEBAEFqbp7d2eXXsqUxhQnAXW0gVzqy7lqnadNTo47WtYMEi8TwYK84\\nKqYp3RC4BkbXpsXdo4nzi0BG+ycKDojDkwuLgNoQ1tZMBrXW0jGn7fl6okPX8lqX\\niRL87ven6AJqINpXIaxTbmmC3bV/tod4tLhN5alvKRfGOmCRwTeB55/ZBWoKxIjC\\nJrZ5kCCMgGoLnjPmr0inrNgKhV3WJvcYJHZWVGoXulDMv6MXACM9q1xfBE5ZkEio\\nJaOsNvwN74g5n/Yo4XWnuS/uISGW/iAQ7TebPByindsPKB9MjvO72FdLDK6gNXAS\\nJ4O+4tQ6A6HE3RqCLUsbKHlE2OSXPHzr8Y4=\\n-----END CERTIFICATE-----\\n\","+
"\"43593b00becdad210fd9f5c55b5119867ee10400\": \"-----BEGIN CERTIFICATE-----\\nMIIDRjCCAi6gAwIBAgIII2SPmKtOrzAwDQYJKoZIhvcNAQEFBQAwRjFEMEIGA1UE\\nAww7bG5lci1kZXYtZXRpY2tldHMubG5lci1kZXYtZXRpY2tldHMuaWFtLmdzZXJ2\\naWNlYWNjb3VudC5jb20wHhcNMjMwNTIzMDcxMDE0WhcNMjMwNjA4MTkyNTE0WjBG\\nMUQwQgYDVQQDDDtsbmVyLWRldi1ldGlja2V0cy5sbmVyLWRldi1ldGlja2V0cy5p\\nYW0uZ3NlcnZpY2VhY2NvdW50LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC\\nAQoCggEBAKdV/ZeX58TKMeEEsAnoK/xZND9B3JeYR2ipdDRLmYDZtaenYcC1HgqD\\nAn6Bi9gXm20HCGiEG5GLxqk1rp1fxi0b1NV1RxaFASOGlDbNPdAiQsJZw6WZF4I6\\nOe/+Nk/DGKuvuO4aHe/5IH8raoNHAp4LsZNGmJM1jVwU8E4uyQ8IHK7sUnitbsgV\\n70g9sO2yZxmjkmxe7eh3YgEg1aq282y3+YaEajujraX5zDjehLDYfLerqVRD69oE\\nElMxnNPco3J3QaV2LU24+skWr/A7E7lC4fJI6InUe8qjG+S35iadYtZZeUPOeOtK\\nfpFYN3OrDSwJ68EVtjZXM21iTTnr2p0CAwEAAaM4MDYwDAYDVR0TAQH/BAIwADAO\\nBgNVHQ8BAf8EBAMCB4AwFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcN\\nAQEFBQADggEBABpK5iE8QBNhzGs/VfwmtMxAOeVClqvz8IY1epmvXWiOeuvTa721\\nnqIAXUrnUJXlvSSmwocDD7I1wTYMrLXTHCcsLxxSqEPAt4FpraCc3svCOPuFfzIR\\n/BeFC/rJK2WUOcfOKRsx9p7Z5pZxO4JDAQQ//BLh5QCAdu49qtVbjO8k7pbWSbGo\\nW36/H0w/qWclUZpYSWlP9ILDa10qjzPVBtQU+ruQsNSkaiEsmfgKuU6/SPIGJF6O\\noDwW4vCJAMhvQjpLq3l6AmYq1tPxSzvXPQZwhXlvL0S5E2FLIRntqpOzIB8egNoJ\\nG85m3eOQ+Srp4KQjGltJAmiYlCZ+q7O4HZs=\\n-----END CERTIFICATE-----\\n\","+
"\"1d16459728453f12a4a3427ebf6dfda0ff66b0ac\": \"-----BEGIN CERTIFICATE-----\\nMIIC+jCCAeKgAwIBAgIIbTLwYZ2oXakwDQYJKoZIhvcNAQEFBQAwIDEeMBwGA1UE\\nAxMVMTA2NzU0MDEwNDQ2OTg4NzYzNzI1MB4XDTE5MDMxODE2MzAwMVoXDTI5MDMx\\nNTE2MzAwMVowIDEeMBwGA1UEAxMVMTA2NzU0MDEwNDQ2OTg4NzYzNzI1MIIBIjAN\\nBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr1sLg+LSPrtWbjYXJBUTRAg7rOPJ\\n42c3Gbdm6Onj+KNpQEsNw56jHPQxUV7YuEGzKda7mUOnLXJoTMLKF4KOjLLlV/Aa\\nHK2SYkSXkVCftqUaHK85nFsFSaBX75vUKGQoTTbbCAyq4lCVatKuRtsXvYlY25gv\\nc3MQdMkt3RA5RNYanMeNd+PN+Zu0jw983i/Y1Oqd/lnGQj1Pt8pB2NBadP7MBkUc\\nGI95OYL0hiZRs2ex43ipQwW70wITdgtCMeHrfPvOap6yiXFv6vN9SSlBb0Pox5zl\\nJBPbpahKdTcQoMnJ9lRBuqd0TgsU6LQbqAemjVpeXtLnNgp6zW6gioGl1wIDAQAB\\nozgwNjAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIHgDAWBgNVHSUBAf8EDDAK\\nBggrBgEFBQcDAjANBgkqhkiG9w0BAQUFAAOCAQEApxpNu1M07i5tYBYCizo6bJEz\\nnuwjKYLGtefi0YbHhTLcZ0YlU674PcRWZlFyHTGNchIDt0ojbBP/lnKy0mjrJdVc\\n2m0y4YAdOSZ1EXObXKySDBi1plzvevmft9p6RwZFPVSljmFReg+f7gulXdVaUDqd\\nGSpydRE5sfaAdkFMZ5y+TbHLUjuQS67+WdVbrEi8otQCekDZCu4C5WVpueR9Z7cg\\nWMXOHa3bPFRMU6QOI2cEemRD7R0HUmQ635njq6jybiRmqH3iwq49WbVC/hsh1N7b\\nS+UWRY3Ur4LmPTWMosXM2gvRz8mqa7JdC3jD2LYP2WP3O6QTcxclBp2w7k86gA==\\n-----END CERTIFICATE-----\\n\"}";
string publicKey = JsonSerializer.Deserialize<JsonElement>(jsonElement).GetProperty(privatKeyId).GetString();
Console.WriteLine("publicKey: "+publicKey );
var settings = new JsonSerializerOptions { PropertyNameCaseInsensitive = true };
var enumConverter = new JsonStringEnumConverter(new UpperCaseNamingPolicy());
settings.Converters.Add(enumConverter);
var jsonEnum = "{\"Shoe\":3, \"GP\":[" +json+ "], \"NullValue\":0 }";
var jsonEnumText = "{\"Shoe\":\"abcDeFG\"}";
Help help = JsonSerializer.Deserialize<Program.Help>(jsonEnum, settings);
Help shText = JsonSerializer.Deserialize<Program.Help>(jsonEnumText, settings);
Console.WriteLine("Shoe: "+help.Shoe );
Console.WriteLine("Shoe from text: "+shText.Shoe );
help.DateIso = DateTime.UtcNow;
Slip, Tracker, Trainee, abcDeFG
public Program.Shoes Shoe {get; set; }
public DateTime NullDate { get; set; }
public DateTime DateIso {get; set; }
public string Must {get; set; }
public IList<GPCredentials> GP {get; private set; } = new List<GPCredentials>();
public string PrivateField { get; }
public int NullValue { get; set; }
[JsonPropertyName("type")]
public string Type {get; set; }
[JsonPropertyName("project_id")]
public string ProjectId {get; set; }
[JsonPropertyName("private_key_id")]
public string PrivateKeyId {get; set; }
[JsonPropertyName("private_key")]
public string PrivateKey {get; set; }
[JsonPropertyName("client_email")]
public string ClientEmail {get; set; }
[JsonPropertyName("client_id")]
public string ClientId {get; set; }
[JsonPropertyName("auth_uri")]
public string AuthUri {get; set; }
[JsonPropertyName("token_uri")]
public string TokenUri {get; set; }
[JsonPropertyName("auth_provider_x509_cert_url")]
public string AuthProviderX509CertUrl {get; set; }
[JsonPropertyName("client_x509_cert_url")]
public string ClientX509CertUrl {get; set; }
public class UpperCaseNamingPolicy : JsonNamingPolicy
public override string ConvertName(string name) =>string.Concat(name.Select((x, i) =>
i > 0 && char.IsUpper(x) && (char.IsLower(name[i - 1]) || (i < name.Length - 1 && char.IsLower(name[i + 1])))
: x.ToString())).ToLowerInvariant();