I’m trying to fetch the work hours configuration that users set in their Google Calendar preferences through the API. I’ve been exploring different calendar API endpoints but haven’t found the right method to access this specific data yet.
The working hours feature in Google Calendar allows users to define their typical work schedule (like 9 AM to 5 PM on weekdays), and I need to programmatically retrieve these settings for my application.
I’ve tested the settings endpoint but it doesn’t seem to return the working hours information I’m looking for. Has anyone successfully extracted this type of schedule data from a user’s calendar configuration? What’s the correct API call or endpoint to use?
Any guidance on accessing work schedule settings would be really helpful.
I encountered the same issue when developing a scheduling tool. Unfortunately, the working hours feature in Google Calendar isn’t accessible through their API, which is frustrating since it is available in the interface. After extensive research and testing, I confirmed that this data is not exposed even with appropriate permissions. My workaround was to implement a manual schedule feature in my application. Although it requires user input, it offers greater customization than Google’s default option. Alternatively, analyzing past events for work patterns is a possibility, but it involves heavy data analysis and may not suit every user.
Been there too - Google’s Calendar API sucks for work hours tracking. I ditched the limited endpoints and manual workarounds completely.
I built a Latenode workflow that pulls from multiple sources instead. It grabs calendar events, spots patterns, and cross-references with other scheduling tools you’re already using. Even hooks into Slack status and email activity to map out real work schedules.
Best part? It combines everything through webhooks and APIs from different productivity tools. You’re not stuck with one crappy API - you get the full picture of actual work patterns.
It auto-updates when patterns shift, which beats static settings every time. Runs in the background and sends clean data straight to your app.
Check it out at https://latenode.com
Google’s Calendar API docs are straight-up wrong about this. I spent way too much time digging through developer forums and testing different methods - turns out working hours are only stored locally and never sync to Google’s servers. No API endpoint will give you that data, no matter what OAuth scopes you throw at it. Here’s what actually works: hit the Events endpoint with time filters and look for recurring patterns. I wrote a simple algorithm that checks event density across time slots over a few weeks to figure out working patterns. Filter out personal stuff by checking attendee lists and event titles - makes it way more accurate. You need about 30 days of data for solid results, but it’s still better than making users fill out forms.