Trakt + deariary: your movie and TV diary
You watched Past Lives in the afternoon and gave it a 9. In the evening you started Severance, got pulled in, and ended up watching three episodes back to back before bed. Somewhere in between you added Perfect Days to your watchlist because you had seen the trailer at the cinema that morning.
Trakt recorded all of it. One film, three episodes, one watchlist entry, one rating. What it did not record is that the film left you sitting on the couch for ten minutes after the credits, that Severance was the first thing you had binged in months, or that Perfect Days had stuck with you ever since the cinema lights came up.
We announced Trakt as an integration previously. This post is the technical companion: exactly what deariary pulls from Trakt, how it handles the data, and what your diary looks like when your watch history becomes entries.
How the connection works
Trakt uses OAuth 2.0 for authentication. When you connect Trakt in deariary, you are redirected to Trakt’s own authorization page to approve read access to your history, ratings, and comments.
deariary stores an OAuth access token for your account, plus the trakt-api-key client ID and API version header that Trakt requires on every request. The token grants read-only access: deariary cannot scrobble plays, create lists, post comments, rate titles, or modify your Trakt account in any way. You can revoke access at any time by disconnecting Trakt from your deariary settings.
What deariary collects from Trakt
Each morning, deariary fetches your previous day’s activity from Trakt’s API. The Trakt changelog post covers the basics. Here is the full picture of what each part yields:
Watched movies
- Title: localized to your deariary locale when Trakt has a translation, with the English title kept internally as a fallback
- Year and runtime: runtime in minutes is included when Trakt provides it
- Watched-at timestamp: converted to your configured timezone so entries read in local time
- Link to the title’s page on app.trakt.tv
Watched episodes, grouped by show
Episodes are not listed one by one. They are grouped under the show they belong to, mirroring the way Last.fm groups tracks under albums, so a six-episode binge of one series reads as a single thread instead of six disconnected lines. For each group:
- Show title and year
- Every episode watched during the period: season number, episode number, episode title, and watched-at timestamp
Ratings
The 1 to 10 scores you gave titles during the period:
- Movie ratings
- Show ratings
- Episode ratings, with the parent show attached
Ratings are joined to the watched items by Trakt ID, so a movie you both watched and rated appears as one unit in the diary, not two.
Reviews and shouts
If you wrote anything on Trakt during the period, deariary collects it:
- The text you wrote, in full
- What it was about: movie, show, episode, or season
- Whether it was a long-form review or a short “shout”
- Whether you flagged it a spoiler
- The rating you attached, if any
Watchlist additions
Titles you added to your watchlist during the period, along with any notes you left on the entry. These are not things you watched. They are things you wanted to watch, which is its own kind of signal.
Aggregated stats
At the end of collection, deariary computes:
- Total movies watched and total episodes watched for the day
- Unique shows those episodes came from
- Total ratings, reviews, and watchlist adds logged during the period
The totals surface as text-only highlight cards on your entry. Trakt’s public API does not expose poster or still images (the old extended=images flag was removed), so unlike Last.fm or Steam, Trakt highlights cannot include cover art.
What deariary does NOT collect
- No one else’s activity. deariary reads only your own history, ratings, and comments. Your friends’ watches and your shared lists stay private.
- No recommendations or trends. Trakt’s recommendation engine, trending charts, and social feed are not accessed.
- No full watch history backfill. Only activity within the collection period (usually the previous day). Your lifetime history on Trakt is not copied to deariary.
- No edits or writes. deariary cannot scrobble plays, rate titles, post comments, or modify your lists. The token is read-only.
- No playback content. deariary sees the metadata of what you watched, not the video itself. Trakt never had access to the media in the first place.
Revoking access is immediate: disconnect Trakt from your settings page and the stored token is discarded.
Titles as memory anchors
Watch history behaves differently from most integrations in one important way: titles anchor memories more reliably than timestamps.
You probably do not remember what you did on a particular Saturday last month. But if someone says “the night we watched Past Lives and then could not stop talking about it,” the whole evening might come back. The film, the couch, the conversation, the silence before bed.
Trakt history provides this narrative anchor. When deariary weaves watches into a diary entry, the resulting text reads like a sequence of evenings rather than a list of titles. Each show and film carries its own weight, and the rhythm of what you chose to watch shapes the feel of the day around it.
From watch history to a readable day
Here is what the transformation looks like. Say you had a Saturday with one film, a binge, and a watchlist add:
Trakt’s data looks something like:
14:22 Movie: Past Lives (2023, 106 min) rated 9/10
14:30 Shout: "Quiet and devastating. The airport scene."
20:05 Episode: Severance S02E04
20:45 Episode: Severance S02E05
21:35 Episode: Severance S02E06
22:25 Watchlist: Perfect Days (note: "saw the trailer at the cinema")
deariary hands this to the LLM alongside any other integration data for that day. The result reads like:
Saturday’s matinee was Past Lives. You gave it a 9 and wrote, right after, “Quiet and devastating. The airport scene.” In the evening you started Severance and kept going, three episodes back to back, from just after eight until almost half past ten. Before bed you added Perfect Days to your watchlist, noting that you had seen the trailer at the cinema.
One film, three episodes, one watchlist entry became a day. The shout “Quiet and devastating” gave the LLM texture it could not have invented. The three-episode stretch read as a binge because that is what it was, not as three separate lines because it was not three separate decisions. The watchlist note kept the trailer in the story, so the day carried forward what had caught your attention in the morning.
What the LLM does with Trakt data
The Trakt fetcher provides context hints to the LLM: watches are things the user cared about enough to track, episodes should be grouped by show in the narrative, and any reviews or shouts are the user’s own words and the most specific signal about how they felt.
On a day with one movie and no other integration data, Trakt carries the entry. On a day with one episode surrounded by a busy calendar and dozens of Slack messages, the episode gets a brief mention and the workday carries the entry. The LLM sees the full picture and balances proportionally.
Reviews and shouts: your words, preserved
Most integration data is structured: IDs, timestamps, ratings. Reviews and shouts are different. They are free text, written by you a few minutes after the credits rolled or the episode ended. “Quiet and devastating.” “Finale stuck the landing.” “Not as good as season one.”
These fragments are gold for diary generation. A numeric rating compresses the film into a single axis. A shout keeps the reaction intact. The LLM is told to quote or paraphrase shouts directly when you wrote one, because a sentence in your own voice, captured while the feeling was warm, carries more across six months than any number does.
If you do not write shouts, the diary still works. Titles, ratings, and watch counts give the LLM enough to write a watch-history narrative. But adding even a one-line reaction at rate time makes the resulting diary noticeably more personal.
Trakt alone vs. with other integrations
A Trakt-only diary captures what you watched and what you thought of it. For a film lover or a TV binger, that is already enough to read like a life.
Add other integrations and the watches gain context:
Trakt only:
You watched Past Lives in the afternoon and gave it a 9. In the evening you watched three episodes of Severance.
Trakt + Swarm + Bluesky:
You checked in at the cinema just before two, came out of Past Lives, and posted, “Quiet and devastating. The airport scene.” By evening you were back home, and the three-episode stretch of Severance carried you from just after eight until almost half past ten. You added Perfect Days to your watchlist on the strength of the trailer you had seen earlier in the day.
The first version is a log. The second is a day. The Swarm check-in puts you in a specific cinema. The Bluesky post puts the thought in your own voice with a timestamp that lines up with the end credits. Together they reconstruct not just the watches, but the watching.
On the Free plan you can connect one integration, which is enough to try Trakt on its own. Upgrading to Basic (up to 5 integrations) lets you layer your watch history with your calendar, your check-ins, and your posts. See pricing on deariary.com for details.
Scrobblers and the shared Trakt pipe
Trakt is not only fed by the Trakt app. A wide range of players (Plex, Kodi, Infuse, and others) can be configured to scrobble plays to Trakt when you finish a title. Anything that reaches your Trakt history through that pipe reaches deariary the next morning, without deariary ever having to talk to the player directly. If you already use a scrobbler for your home-server library, your movie nights and TV binges flow through the same path as everything else.
When you do not watch
Some days there is no watch history at all. You read instead, went out, spent the evening talking, or simply did not open anything to watch.
On those days, deariary has no Trakt data to include. Your other integrations fill the picture: the calendar shows where you were, Swarm shows the places you went, Bluesky shows what was on your mind. The entry still exists. It just does not have the watch-history thread that Trakt provides.
Over time, the weeks you watch and the weeks you do not form their own pattern. A month of nightly episodes followed by three weeks of almost nothing might mark a season of winding down after work, or a stretch where evenings went somewhere else entirely. The diary records both modes without judgment.
Getting started
The setup is three clicks: open Settings > Integrations, select Trakt, and authorize through Trakt’s login page. Your first batch of watches arrives the next morning. Timestamps are converted to your configured timezone, so a late-night episode in Tokyo reads as 11 PM, not 2 PM UTC.
Trakt is available on every paid plan and on the Free plan. On the Free plan, Trakt counts as your one active integration.
What surprised us
Trakt has been connected to our own diaries since the integration shipped. A few patterns stood out quickly.
Shouts carry more than ratings. A 9 and an 8 feel the same a month later. A one-line reaction written ten minutes after the film ended stays specific indefinitely. The diary entries that quote a shout are the ones we re-read. The diary entries that only list a rating are the ones we scroll past.
Grouping is the whole ball game. “You watched three episodes of Severance after dinner” reads like a Saturday night. “You watched S02E04, S02E05, S02E06 of Severance” reads like a database query. The grouping decision was small in the fetcher. It is the difference between a diary and a log.
Watchlist adds belong in the diary. We almost did not collect them. They are not things you watched, and at first glance they do not belong alongside a watch history. But a title you noted down on a specific day, with a note about where you first saw it, is a snapshot of what caught your attention that week. Six months later, when you finally watch the film, reading the day you first added it is half the pleasure.
Your Trakt history already records every movie and TV episode you watch. deariary turns that history into a diary that preserves not just the titles, but the evenings they belonged to. The scrobbles become scenes, the ratings become reactions, and the shouts become the voice of the person watching.