OmdbApiNet 1.3.0

dotnet add package OmdbApiNet --version 1.3.0
NuGet\Install-Package OmdbApiNet -Version 1.3.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="OmdbApiNet" Version="1.3.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add OmdbApiNet --version 1.3.0
#r "nuget: OmdbApiNet, 1.3.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install OmdbApiNet as a Cake Addin
#addin nuget:?package=OmdbApiNet&version=1.3.0

// Install OmdbApiNet as a Cake Tool
#tool nuget:?package=OmdbApiNet&version=1.3.0

Usage

There is a synchronous client OmdbClient and a asynchronous client AsyncOmdbClient. The asynchronous client provides the same methods as the synchronous one. The only differences are that you have to append Async to the method name and they will return Tasks, so that they are awaitable:

    Item item = await omdb.GetItemByTitleAsync("title");

Create an OMDb Client

    OmdbClient omdb = new OmdbClient("your_apikey");
    
    // enable ratings from Rotten Tomatoes
    OmdbClient omdb = new OmdbClient("your_apikey", true);

    // Asynchronous client
    AsyncOmdbClient omdb = new AsyncOmdbClient("your_apikey");

You can get an api key on the OMDb website.

Get an Item (movie, series or game)

Games (OmdbType.Game) can only be requested by id, not by title. This is due to restrictions of the Open Movie Database API and can't be fixed on the client side.

    // Item GetItemByTitle(string title, bool fullPlot = false);
    Item item = omdb.GetItemByTitle("title");
    Item item = omdb.GetItemByTitle("title", true);

    // Item GetItemByTitle(string title, OmdbType type, bool fullPlot = false);
    Item item = omdb.GetItemByTitle("title", OmdbType.Movie);
    Item item = omdb.GetItemByTitle("title", OmdbType.Series, true);
    
    // Item GetItemByTitle(string title, int? year, bool fullPlot = false);
    Item item = omdb.GetItemByTitle("title", 2017);
    Item item = omdb.GetItemByTitle("title", 2017, true);
    
    // Item GetItemByTitle(string title, OmdbType type, int? year, bool fullPlot = false);
    Item item = omdb.GetItemByTitle("title", OmdbType.Series, 2017);
    Item item = omdb.GetItemByTitle("title", OmdbType.Movie, 2017, true);

    // Item GetItemById(string id, bool fullPlot = false);
    Item item = omdb.GetItemById("imdb_id");
    Item item = omdb.GetItemById("imdb_id", true);

You can get the type of an item with item.Type. item.Type can either be "movie", "series" or "episode". For getting an episode use GetEpisodeBySeriesId(), GetEpisodeBySeriesTitle() or GetEpisodeByEpisodeId() instead.

Get an Episode

    // Episode GetEpisodeBySeriesId(string seriesId, int seasonNumber, int episodeNumber);
    Episode episode = omdb.GetEpisodeBySeriesId("imdb_series_id", 1, 1);
    
    // Episode GetEpisodeBySeriesTitle(string seriesTitle, int seasonNumber, int episodeNumber);
    Episode episode = omdb.GetEpisodeBySeriesTitle("imdb_series_title", 1, 1);
    
    // Episode GetEpisodeByEpisodeId(string episodeId);
    Episode episode = omdb.GetEpisodeByEpisodeId("imdb_id");

Get a Season

    // Season GetSeasonBySeriesId(string seriesId, int seasonNumber);
    Season season = omdb.GetSeasonBySeriesId("imdb_series_id", 1);
    
    // Season GetSeasonBySeriesTitle(string seriesTitle, int seasonNumber);
    Season season = omdb.GetSeasonBySeriesTitle("imdb_series_title", 1);

Get Search Results (movies, series or game)

    // SearchList GetSearchList(string query, int page = 1);
    SearchList searchList = omdb.GetSearchList("query");
    SearchList searchList = omdb.GetSearchList("query", 2);
    
    // SearchList GetSearchList(string query, OmdbType type, int page = 1);
    SearchList searchList = omdb.GetSearchList("query", OmdbType.Movie);
    SearchList searchList = omdb.GetSearchList("query", OmdbType.Series, 2);
    SearchList searchList = omdb.GetSearchList("query", OmdbType.Game);
    
    // SearchList GetSearchList(int? year, string query, int page = 1);
    SearchList searchList = omdb.GetSearchList(2017, "query");
    SearchList searchList = omdb.GetSearchList(2017, "query", 2);
    
    // SearchList GetSearchList(int? year, string query, OmdbType type, int page = 1);
    SearchList searchList = omdb.GetSearchList(2017, "query", OmdbType.Movie);
    SearchList searchList = omdb.GetSearchList(2017, "query", OmdbType.Series, 2);
    SearchList searchList = omdb.GetSearchList(2017, "query", OmdbType.Game);

The query can contain whitespaces.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.3.0 6,415 7/28/2019
1.2.0 1,889 2/2/2019
1.1.0 1,189 10/26/2018

- Added OmdbType.Game since there are also games on IMDb and the OmdbApi database.
- Updated all libraries to the newest stable version.