import csv
# response_data = response.json()
response_data = {
"Results": {
"10000": {
"Code1": "9108423",
"Code2": "0",
"Code3": "not available",
"Code4": "Confirmed",
"Code5": "N/A",
"Code6": "N/A"
},
"10008": {
"Code1": "410661",
"Code2": "0",
"Code3": "not available",
"Code4": "Confirmed",
"Code5": "N/A",
"Code6": "N/A"
},
"10009": {
"Code1": "1066228",
"Code2": "0",
"Code3": "available",
"Code4": "Confirmed",
"Code5": "N/A",
"Code6": "7"
}
},
"Override": [],
"Summary": {
"Total": 864,
"Inferrence": 12,
"GlobalUnits": 7206,
"TotalDivereged": 3808,
"ErrorCount": 2,
"ProcessingTimeSeconds": 14.591021
},
"APIMessage": {
"StatusCode": 200,
"Message": "SUCCESS"
}
}
with open('data.csv', 'w') as f:
fieldnames = list(response_data["Results"].values())[0].keys() # you can split this in multiple steps
wrtr = csv.DictWriter(f, fieldnames=fieldnames)
wrtr.writeheader()
wrtr.writerows(response_data["Results"].values())
all you need is to extract value for key "results" (it's a dict) and pass its values to csv.DictWriter.writerows()