Namedtuple and list to populate each record of a JSON file
A small issue, that is probably no big deal for this program, but could cause problems over smaller timescales than days:

json_data = json.load(data)
for record in json_data["data"]:
    # Time in JSON file also has timezone so i have to use timezone.utc
    today = datetime.now(timezone.utc)


Having a different definition of "now" for each element in the file is unexpected.  We can ensure consistency by assigning today once, outside the loop.  (That slightly improves efficiency, too - but probably not by enough to measure!)