All Projects → adrenth → thetvdb2

adrenth / thetvdb2

Licence: MIT License
Thetvdb.com API v2 Client

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to thetvdb2

SignNowNodeSDK
The Official SignNow Node.js Client Library for interacting with SignNow REST API. Sign documents, request e-signatures, and build role-based workflows with multiple signers using this client.
Stars: ✭ 14 (-57.58%)
Mutual labels:  api-client
ruby-ipfs-http-client
A client library for the IPFS HTTP API, implemented in Ruby.
Stars: ✭ 21 (-36.36%)
Mutual labels:  api-client
salt-netapi-client
Java bindings for the Salt API
Stars: ✭ 78 (+136.36%)
Mutual labels:  api-client
genderize
Python client for the Genderize.io web service.
Stars: ✭ 59 (+78.79%)
Mutual labels:  api-client
approveapi-go
A Go library for using ApproveAPI
Stars: ✭ 16 (-51.52%)
Mutual labels:  api-client
primeuploads-py
An unoffcial python API client for primeuploads.com
Stars: ✭ 40 (+21.21%)
Mutual labels:  api-client
activecollab-feather-sdk
PHP SDK for ActiveCollab 5 and 6 API
Stars: ✭ 47 (+42.42%)
Mutual labels:  api-client
vsphere-automation-sdk-rest
REST (Postman and JavaScript) samples and API reference documentation for vSphere using the VMware REST API
Stars: ✭ 194 (+487.88%)
Mutual labels:  api-client
Custom-Software-For-Xiaomi-Dafang
API and panel site for Xiaomi Dafang
Stars: ✭ 36 (+9.09%)
Mutual labels:  api-client
tyfon
typed functions over network
Stars: ✭ 38 (+15.15%)
Mutual labels:  api-client
HaloSharp
A C# wrapper for the Halo® 5 Game Data API.
Stars: ✭ 24 (-27.27%)
Mutual labels:  api-client
healthchecksio
Update and display the status of your healthchecks.io checks.
Stars: ✭ 30 (-9.09%)
Mutual labels:  api-client
helpscout-docs-api-php
DocsApi client for HelpScout
Stars: ✭ 21 (-36.36%)
Mutual labels:  api-client
Workday.WebServices
Workday API clients
Stars: ✭ 18 (-45.45%)
Mutual labels:  api-client
canvas python sdk
Canvas Python SDK
Stars: ✭ 21 (-36.36%)
Mutual labels:  api-client
doccano-client
A simple client wrapper for doccano API.
Stars: ✭ 52 (+57.58%)
Mutual labels:  api-client
webapi
WAI based library for web api
Stars: ✭ 27 (-18.18%)
Mutual labels:  api-client
youtube-deno
A Deno client library of the YouTube Data API.
Stars: ✭ 30 (-9.09%)
Mutual labels:  api-client
adyen-dotnet-api-library
Adyen API Library for .NET
Stars: ✭ 69 (+109.09%)
Mutual labels:  api-client
DroidShows
A Reboot of DroidSeries Offline TV Shows Tracker
Stars: ✭ 69 (+109.09%)
Mutual labels:  thetvdb

adrenth/thetvdb2

This is an API client for the thetvdb.com website. It's using the RESTful API which you'll need to register for to use this package.

API Key Registration

To use this PHP package, you need to request an API Key from the thetvdb.com website: http://thetvdb.com/?tab=apiregister.

Please follow these guidelines:

  • If you will be using the API information in a commercial product or website, you must email [email protected] and wait for authorization before using the API. However, you MAY use the API for development and testing before a public release.
  • If you have a publicly available program, you MUST inform your users of this website and request that they help contribute information and artwork if possible.
  • You MUST familiarize yourself with our data structure, which is detailed in the wiki documentation.
  • You MUST NOT perform more requests than are necessary for each user. This means no downloading all of our content (we'll provide the database if you need it). Play nice with our server.
  • You MUST NOT directly access our data without using the documented API methods.
  • You MUST keep the email address in your account information current and accurate in case we need to contact you regarding your key (we hate spam as much as anyone, so we'll never release your email address to anyone else).
  • Please feel free to contact us and request changes to our site and/or API. We'll happily consider all reasonable suggestions.

Source: thetvdb.com

Installation

Install this package using composer:

$ composer require adrenth/thetvdb2

Requirements

At least PHP 7.4

Documentation

The official API documentation can be found here: https://api.thetvdb.com/swagger.

Authentication

$client = new \Adrenth\Thetvdb\Client();
$client->setLanguage('nl');

// Obtain a token
$token = $client->authentication()->login($apiKey, $username, $userKey);
$client->setToken($token);

// Or refresh the token
$client->refreshToken();

Extensions

The Client has a few extensions. A few usage examples are listed below:

Authentication

$client->authentication()->login($apiKey, $username, $userKey);
$client->authentication()->refreshToken();

Languages

$client->languages()->all();
$client->languages()->get($languageId);

Episodes

$client->episodes()->get($episodeId);

Series

$client->series()->get($seriesId);
$client->series()->getActors($seriesId);
$client->series()->getEpisodes($seriesId);
$client->series()->getImages($seriesId);
$client->series()->getLastModified($seriesId);

Search

$client->search()->seriesByName('lost');
$client->search()->seriesByImdbId('tt2243973');
$client->search()->seriesByZap2itId('EP015679352');

Updates

Fetch a list of Series that have been recently updated:

$client->updates()->query($fromTime, $toTime);

Users

$client->users()->get();
$client->users()->getFavorites();
$client->users()->addFavorite($identifier);
$client->users()->removeFavorite($identifier);
$client->users()->getRatings();
$client->users()->addRating($type, $itemId, $rating);
$client->users()->updateRating($type, $itemId, $rating);
$client->users()->removeRating($type, $itemId);

Movies

$client->movies()->get(78398);
$client->movies()->getUpdates();

Response data

Every response object has a getData() method which may contain a collection of objects.

For example:

// Get all available languages
$languageData = $client->languages()->all(); // Returns a LanguageData instance
$languages = $languageData->getData()->all();

array:23 [▼
  0 => Language {#26 ▼
    -values: array:4 [▼
      "id" => 27
      "abbreviation" => "zh"
      "name" => "中文"
      "englishName" => "Chinese"
    ]
  }
  1 => Language {#19 ▶}
  2 => Language {#30 ▶}
  3 => Language {#21 ▶}
  // ..
];

Contributing

Feel free to join us and create a stable version which is compatible with the brand new TheTVDB.com RESTful API.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].