/** * ID lookups are helpful if you have an external ID and want to get the trakt ID and info. This method will search * for movies, shows, episodes, people, users, and lists. * * @param idType Set to any of {@link com.uwetrottmann.trakt.v2.enums.IdType}. * @param id ID that matches with the type. */ @GET("/search") List<SearchResult> idLookup( @EncodedQuery("id_type") IdType idType, @EncodedQuery("id") String id, @Query("page") Integer page, @Query("limit") Integer limit );
/** * Returns the most popular shows. Popularity is calculated using the rating percentage and the number of ratings. * * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/shows/popular") List<Show> popular( @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended );
/** * Returns all shows being watched right now. Shows with the most users are returned first. * * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/shows/trending") List<TrendingShow> trending( @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended );
/** * Returns all top level comments for an episode. Most recent comments returned first. * * @param showId trakt ID, trakt slug, or IMDB ID. Example: "game-of-thrones". * @param season Season number. * @param episode Episode number. */ @GET("/shows/{id}/seasons/{season}/episodes/{episode}/comments") List<Comment> comments( @Path("id") String showId, @Path("season") int season, @Path("episode") int episode, @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended );
/** * <b>OAuth Optional</b> * * <p> Get all items on a custom list. Items can be movies, shows, seasons, episodes, or people. */ @GET("/users/{username}/lists/{id}/items") List<ListEntry> listItems( @Path("username") String username, @Path("id") String id, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * Returns the most popular movies. Popularity is calculated using the rating percentage and the number of ratings. * * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/movies/popular") List<Movie> popular( @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended );
/** * Returns all movies being watched right now. Movies with the most users are returned first. * * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/movies/trending") List<TrendingMovie> trending( @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended );
/** * Returns all top level comments for a show. Most recent comments returned first. * * @param showId trakt ID, trakt slug, or IMDB ID. Example: "game-of-thrones". * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/shows/{id}/comments") List<Comment> comments( @Path("id") String showId, @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended );
/** * Returns a single episode's details. * * @param showId trakt ID, trakt slug, or IMDB ID. Example: "game-of-thrones". * @param season Season number. * @param episode Episode number. */ @GET("/shows/{id}/seasons/{season}/episodes/{episode}") Episode summary( @Path("id") String showId, @Path("season") int season, @Path("episode") int episode, @EncodedQuery("extended") Extended extended );
/** * Returns a single movie's details. * * @param movieId trakt ID, trakt slug, or IMDB ID. Example: "tron-legacy-2010". */ @GET("/movies/{id}") Movie summary( @Path("id") String movieId, @EncodedQuery("extended") Extended extended );
/** * Returns all top level comments for a movie. Most recent comments returned first. * * @param movieId trakt ID, trakt slug, or IMDB ID. Example: "tron-legacy-2010". * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/movies/{id}/comments") List<Comment> comments( @Path("id") String movieId, @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended );
/** * Returns all seasons for a show including the number of episodes in each season. * * @param showId trakt ID, trakt slug, or IMDB ID. Example: "game-of-thrones". */ @GET("/shows/{id}/seasons") List<Season> summary( @Path("id") String showId, @EncodedQuery("extended") Extended extended );
/** * Returns a single shows's details. * * @param showId trakt ID, trakt slug, or IMDB ID. Example: "game-of-thrones". */ @GET("/shows/{id}") Show summary( @Path("id") String showId, @EncodedQuery("extended") Extended extended );
/** * <b>OAuth Optional</b> * * <p> Returns episodes that a user has watched with the most recent first. * * @param username Example: "sean". * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/users/{username}/history/episodes") List<HistoryEntry> historyEpisodes( @Path("username") String username, @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Returns movies that a user has watched with the most recent first. * * @param username Example: "sean". * @param page Number of page of results to be returned. If {@code null} defaults to 1. * @param limit Number of results to return per page. If {@code null} defaults to 10. */ @GET("/users/{username}/history/movies") List<HistoryEntry> historyMovies( @Path("username") String username, @Query("page") Integer page, @Query("limit") Integer limit, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Get a user's ratings filtered by movies. You can filter for a specific rating between 1 and 10. * * @param username Example: "sean". * @param filter Filter for a specific rating. */ @GET("/users/{username}/ratings/movies{rating}") List<RatedMovie> ratingsMovies( @Path("username") String username, @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Get a user's ratings filtered by shows. You can filter for a specific rating between 1 and 10. * * @param username Example: "sean". * @param filter Filter for a specific rating. */ @GET("/users/{username}/ratings/shows{rating}") List<RatedShow> ratingsShows( @Path("username") String username, @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Get a user's ratings filtered by seasons. You can filter for a specific rating between 1 and 10. * * @param username Example: "sean". * @param filter Filter for a specific rating. */ @GET("/users/{username}/ratings/seasons{rating}") List<RatedSeason> ratingsSeasons( @Path("username") String username, @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Get a user's ratings filtered by episodes. You can filter for a specific rating between 1 and 10. * * @param username Example: "sean". * @param filter Filter for a specific rating. */ @GET("/users/{username}/ratings/episodes{rating}") List<RatedEpisode> ratingsEpisodes( @Path("username") String username, @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Personalized movie recommendations for a user. Results returned with the top recommendation first. */ @GET("/recommendations/movies") List<Movie> movies( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Personalized show recommendations for a user. Results returned with the top recommendation first. */ @GET("/recommendations/shows") List<Show> shows( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Get a user's profile information. If the user is private, info will only be returned if you send OAuth and * are either that user or an approved follower. * * @param username Example: "sean". */ @GET("/users/{username}") User profile( @Path("username") String username, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Get all collected movies in a user's collection. A collected item indicates availability to watch digitally * or on physical media. * * @param username Example: "sean". */ @GET("/users/{username}/collection/movies") List<BaseMovie> collectionMovies( @Path("username") String username, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Get all collected shows in a user's collection. A collected item indicates availability to watch digitally or * on physical media. * * @param username Example: "sean". */ @GET("/users/{username}/collection/shows") List<BaseShow> collectionShows( @Path("username") String username, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Returns all movies or shows a user has watched sorted by most plays. * * @param username Example: "sean". */ @GET("/users/{username}/watched/movies") List<BaseMovie> watchedMovies( @Path("username") String username, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Optional</b> * * <p> Returns all movies or shows a user has watched sorted by most plays. * * @param username Example: "sean". */ @GET("/users/{username}/watched/shows") List<BaseShow> watchedShows( @Path("username") String username, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Get all collected movies in a user's collection. A collected item indicates availability to watch digitally * or on physical media. */ @GET("/sync/collection/movies") List<BaseMovie> collectionMovies( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Get all collected shows in a user's collection. A collected item indicates availability to watch digitally or * on physical media. */ @GET("/sync/collection/shows") List<BaseShow> collectionShows( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Returns all movies a user has watched. */ @GET("/sync/watched/movies") List<BaseMovie> watchedMovies( @EncodedQuery("extended") Extended extended) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Returns all shows a user has watched. */ @GET("/sync/watched/shows") List<BaseShow> watchedShows( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Get a user's ratings filtered by movies. You can filter for a specific rating between 1 and 10. * * @param filter Filter for a specific rating. */ @GET("/sync/ratings/movies{rating}") List<RatedMovie> ratingsMovies( @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Get a user's ratings filtered by shows. You can filter for a specific rating between 1 and 10. * * @param filter Filter for a specific rating. */ @GET("/sync/ratings/shows{rating}") List<RatedShow> ratingsShows( @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Get a user's ratings filtered by seasons. You can filter for a specific rating between 1 and 10. * * @param filter Filter for a specific rating. */ @GET("/sync/ratings/seasons{rating}") List<RatedSeason> ratingsSeasons( @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Get a user's ratings filtered by episodes. You can filter for a specific rating between 1 and 10. * * @param filter Filter for a specific rating. */ @GET("/sync/ratings/episodes{rating}") List<RatedEpisode> ratingsEpisodes( @EncodedPath("rating") RatingsFilter filter, @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Returns all items in a user's watchlist filtered by movies. When an item is watched, it will be automatically * removed from the watchlist. To track what the user is actively watching, use the progress APIs. */ @GET("/sync/watchlist/movies") List<BaseMovie> watchlistMovies( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Returns all items in a user's watchlist filtered by shows. When an item is watched, it will be automatically * removed from the watchlist. To track what the user is actively watching, use the progress APIs. */ @GET("/sync/watchlist/shows") List<BaseShow> watchlistShows( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;
/** * <b>OAuth Required</b> * * <p> Returns all items in a user's watchlist filtered by episodes. When an item is watched, it will be * automatically removed from the watchlist. To track what the user is actively watching, use the progress APIs. */ @GET("/sync/watchlist/episodes") List<WatchlistedEpisode> watchlistEpisodes( @EncodedQuery("extended") Extended extended ) throws OAuthUnauthorizedException;