Planning to Analyze My Browsing History (2019)
davidbieber.com
davidbieber.com
Interesting note: the visits.visit_duration column is not exposed through this API (or at least - not listed in the documentation). This may be because it's apparently misleading. (It apparently captures the time the tab was open not the time the tab was active)
Hope this helps
In short, there's a FF-specific hashing function that's needed when updating and inserting new rows.