All main components (Calendar, Month, Scheduler) provide visibleStart() and visibleEnd() methods that you can use to get the start and end of the current date segment (calculated from startDate/days).
In the Scheduler, you can also use dynamic event loading (during scrolling):
https://doc.daypilot.org/scheduler/dynamic-event-loading/
This will let you load event data for the current viewport.