using System.Collections.Generic;
public static void Main()
string json = "{\r\n \"Id\": \"fcb4938e-7e63-4fb3-9128-239ff2c506e6\",\r\n \"Events\": [\r\n {\r\n \"Username\": \"Raphael Strotz\",\r\n \"Timestamp\": \"2023-06-13T09:24:54.7151863+00:00\",\r\n \"Description\": \"contract_recorded\"\r\n }\r\n ]\r\n}";
var obj = System.Text.Json.JsonSerializer.Deserialize<ContractAuditTrailDocument>(json);
Console.WriteLine(obj.Id);
Console.WriteLine(obj.Events.Count);
public class ContractAuditTrailDocument
public Guid Id { get; set; }
public IList<AuditTrailEvent> Events { get; set; } = new List<AuditTrailEvent>();
public record AuditTrailEvent(DateTimeOffset Timestamp, string Username, string Description);