I’m working on a Zapier workflow that pulls timesheet data from an API and I need to create separate Google Sheets rows for each timesheet entry. Right now I’m making a GET request to fetch multiple timesheets, but I want each individual timesheet to become its own row in the spreadsheet.
I think the problem might be one of these issues:
- Maybe Zapier needs a specific field name in the API response
- The JSON structure I’m getting back has nested data that’s confusing Zapier
When I try to set up the Google Sheets step, I don’t see the option to split the data into multiple rows like I expected. Instead of getting comma-separated values for each item, I just see the whole response as one block.
Here’s what my API returns:
{
"data": {
"work_logs": {
"12345678": {
"record_id": 12345678,
"employee_id": 987654,
"project_id": 55512233,
"clock_in": "2023-08-15T09:00:00+10:00",
"clock_out": "2023-08-15T17:30:00+10:00",
"total_time": 30600,
"work_date": "2023-08-15",
"timezone": 10,
"region": "Australia/Sydney",
"shift_type": "standard",
"work_location": "Office Building A",
"status": "completed",
"is_locked": 0,
"comments": "Regular shift",
"custom_data": {
"dept_code": "ENG001",
"task_type": "Development",
"priority": "High"
}
},
"12345679": {
"record_id": 12345679,
"employee_id": 987654,
"project_id": 55512234,
"clock_in": "2023-08-16T08:30:00+10:00",
"clock_out": "2023-08-16T16:45:00+10:00",
"total_time": 29700,
"work_date": "2023-08-16",
"timezone": 10,
"region": "Australia/Sydney",
"shift_type": "standard",
"work_location": "Remote",
"status": "completed",
"is_locked": 0,
"comments": "Work from home",
"custom_data": {
"dept_code": "ENG002",
"task_type": "Testing",
"priority": "Medium"
}
}
}
},
"has_more": false
}
Does anyone know if there’s a specific way to format the response so Zapier recognizes it as separate line items? I want each work log to create its own row in the Google Sheet with all the individual fields mapped properly.