Analytic Data API: What You Can Access
The Analytic Data API gives you access to everything RescueTime tracks: activity logs, productivity breakdowns, daily summaries, alerts, highlights, and Focus Session history.
Most endpoints are read-only. A handful let you write back: posting offline time, logging highlights, and triggering Focus Sessions programmatically. The full technical reference is at rescuetime.com/developers.
The most flexible endpoint. Query your full activity history with control over the time range, grouping (by app, category, productivity level, or document), and resolution (by minute, hour, day, week, or month). Returns data in JSON or CSV.
Good for: building dashboards, charting productivity trends over time, exporting data for analysis.
Returns a pre-rolled summary for each of the last two weeks: total hours logged, productivity pulse score, and time broken down by productivity level and category. One object per day, updated at 12:01 am in your local time zone. Does not include the current day.
Good for: daily digest emails, simple progress notifications, lightweight productivity summaries that don't need real-time data.
A running log of recently triggered alerts, in reverse chronological order. You can also use it to list your currently defined alerts. Pass op=status for triggered events or op=list for your alert definitions.
Good for: reacting to alert triggers in third-party tools, syncing alert history to a log.
Returns your recently entered daily highlights: the short text entries you log to capture what you got done. Each item includes the highlight text, the date it was entered, and a timestamp.
Good for: pulling highlights into a personal log, journal, or end-of-day summary.
Two separate endpoints: one for sessions that have started, one for sessions that have ended. Each returns a reverse-chronological log of events with a timestamp and (for started events) the session duration.
Good for: triggering actions in other tools when a Focus Session starts or ends, logging Focus Session history externally.
Post a daily highlight entry programmatically. Supply the date, the highlight text (up to 255 characters), and an optional source label to group related highlights together in the UI.
Good for: automatically logging completed tasks from a to-do app, capturing code commits or pull requests as highlights, piping output from other tools into your daily log.
Start or end a Focus Session on your active devices without touching the app. Specify a duration in minutes (must be a multiple of 5), or pass -1 to run until the end of the day.
Good for: starting a Focus Session automatically when a calendar event begins, triggering a session from a physical button or home automation, scheduling focus time with a cron job.
The desktop app syncs with RescueTime servers on a 1-minute interval, so there may be up to a 1-minute delay before the session starts or stops on your device.
Log an offline time block programmatically: supply a start time, an end time or duration, and an activity name. An optional details field lets you add context. Limited to 4 hours per entry, and cannot be used for future dates.
Good for: logging meetings from a calendar app automatically, capturing driving time from location data, syncing time entries from another tool into RescueTime.