Movies Watched
Endpoint
Section titled “Endpoint”GET /api/public/:username/movies/watched?limit=50Returns movies the user has marked as watched. Unlike Likes and Watchlist, this endpoint is film-only — it does not include TV series.
Path params
Section titled “Path params”| Param | Type | Required | Description |
|---|---|---|---|
username | string | yes | Interis username to resolve |
Query params
Section titled “Query params”| Param | Type | Default | Max | Description |
|---|---|---|---|---|
limit | number | 50 | 200 | Number of watched rows to return |
Response
Section titled “Response”[ { "tmdbId": 550, "title": "Fight Club", "posterPath": "/a.jpg", "releaseYear": 1999, "runtime": 139, "genres": [ { "id": 18, "name": "Drama" } ], "mediaType": "movie", "lastInteractionAt": "2026-01-10T12:00:00.000Z" }]- Film-only. For a combined movie + TV “liked”/“watchlisted” view, see Likes and Watchlist.
- Sorted by
lastInteractionAtdescending (most recently marked watched first). isWatchedis a direct flag on the movie interaction row, independent of like/rating/watchlist state.
Empty state behavior
Section titled “Empty state behavior”Returns [] when the user hasn’t marked any movies watched.
Error behavior
Section titled “Error behavior”404when username does not exist.429when the public rate limit is exceeded.500for unexpected server errors.
Examples
Section titled “Examples”const res = await fetch('https://api.interis.gorkemkaryol.dev/api/public/your_username/movies/watched?limit=20');if (!res.ok) throw new Error(`Movies Watched failed: ${res.status}`);
const watched = await res.json();curl "https://api.interis.gorkemkaryol.dev/api/public/your_username/movies/watched?limit=20"Related: Serials Watched