movie-trailer

Get movie trailer url(s): Oceans Eleven ➔ http://path/to/trailer

Usage no npm install needed!

<script type="module">
  import movieTrailer from 'https://cdn.skypack.dev/movie-trailer';
</script>

README

movie-trailer npm version Build Status Try movie-trailer on RunKit

Fetch movie trailer url(s): "Oceans Eleven" ➔ https://www.youtube.com/watch?v=...

movie-trailer

Try it on RunKit (Output)

Features

  • Fetch Youtube trailers for any movie
  • Return one or many trailer URLs
  • Use anywhere, browser or Node - UMD (Browser Support)
  • Async/await, Promise and Callback APIs

Install

Using NPM:

npm install --save movie-trailer

In the browser:

<!-- movieTrailer window global -->
<script type="text/javascript" src="https://unpkg.com/movie-trailer"></script>

(via Unpkg, or via JSDelivr)

Usage

const movieTrailer = require( 'movie-trailer' ) // or import movieTrailer from 'movie-trailer'

await movieTrailer( 'Up' )
//=> https://www.youtube.com/watch?v=...
Return an array of video IDs
movieTrailer( 'Oceans Eleven', {id: true, multi: true} )
  .then( response => console.log( response ) )
  
//=> [ 'XXXXXXXXX', 'XXXXXXXXX', ... ]
Both
movieTrailer( 'Oceans Eleven', {year: '1960', multi: true} )
  .then( response => console.log( response ) )

//=> [ https://www.youtube.com/watch?v=XXXXXXXXX, ... ]
Legacy-style search using release date year
movieTrailer( 'Oceans Eleven', 1960 )
  .then( response => console.log( response ) )

//=> http://path/to/trailer

API

movieTrailer(movie [, options ] [, callback])

  • movie

    Required

    Type: string

    Movie to search for. If searching with a tmdbId, pass null.

  • options

    Type: object

    • apiKey

      Type: boolean

      (optional) Use your own TMDB api key. You can get a free key here: https://developers.themoviedb.org/ .

      Use -a or --api_key on the CLI

    • id (false)

      Type: boolean

      (optional) Return only Youtube video IDs.

      Use -i or --id on the CLI

    • multi (false)

      Type: boolean

      (optional) Return an array of urls vs a single url.

      Use -m or --multi on the CLI

      movieTrailer( 'Oceans Eleven', { multi: true } )
      
    • tmdbId

      Type: boolean

      (optional) Search using a TMDB content ID instead of a search term

      Use -t or --tmdb_id on the CLI

      movieTrailer( null, { tmdbId: 161 } )  // Content ID for "Ocean's Eleven"
      
    • year

      Type: string || number

      (optional) Movie release year.

      Use -y or --year on the CLI

  • callback(error, response)

    Callback function.

    movieTrailer( 'Oceans Eleven', ( error, response ) => {
        console.log( response ); 
        //=> http://path/to/trailer
    } )
    

From the command line

$ npx movie-trailer --help

Usage
    $ npx movie-trailer movie 	

Options
    --api_key   -k   (optional) Your own TMDB API key: http://developers.themoviedb.org
    --id        -i   Return just the Youtube video ID.
    --language, -l   Specify a language code (eg: 'de_DE').
    --multi,    -m   Returns an array of URLs instead of a single URL.
    --tmdb_id   -t   Specify an explicit TMDB ID.
    --year,     -y   Specify a release year to search.

Example
    $ npx movie-trailer 'Oceans Eleven' -y 1960 -m
    //=> http://path/to/trailer

Related

License

This package uses data from TMDB. You may consult TMDB terms of service for usage rights.

MIT © Lacy Morrow