GraphQL schema for Spotify WebAPI — TypeScript / Node.js (v6)
Clone or download
Latest commit f3d3b11 Jul 29, 2018

README.md

Spotify GraphQL npm version https://david-dm.org/thefrenchhouse/spotify-graphql TypeScript

GraphQL schema for Spotify Web API — TypeScript / Node.js (v6)


Try with the interactive console !

See spotify-graphql-examples for more examples

API documentation : http://thefrench.house/spotify-graphql/


import SpotifyGraphQLClient from '../src/spotify-graphql';
import config from './config';

SpotifyGraphQLClient(config).query(`
  {
    track(id: "3W2ZcrRsInZbjWylOi6KhZ") {
      name
      artists {
        name
      }
    }
  }
`).then(result => {
  console.log(JSON.stringify(result));
});

// Print : 
// {
//   "data": {
//     "track": {
//       "name": "You & Me - Flume Remix",
//       "artists": [
//         {
//           "name": "Disclosure"
//         },
//         {
//           "name": "Eliza Doolittle"
//         },
//         {
//           "name": "Flume"
//         }
//       ]
//     }
//   }
// }

Queries

Albums

  • Get an Album
  • Get Several Albums
  • Get an Album's Tracks

Artists

  • Get an Artist
  • Get Several Artists
  • Get an Artist's Albums
  • Get an Artist's Top Tracks
  • Get an Artist's Related Artists

Tracks

  • Get a Track
  • Get Several Tracks
  • Get Audio Features for a Track
  • Get Audio Features for Several Tracks
  • Get Audio Analysis for a Track

Search

  • Search for an Item

Playlists

  • Get a List of a User's Playlists
  • Get a List of Current User's Playlists
  • Get a Playlist
  • Get a Playlist's Tracks

Create a Playlist

  • Add Tracks to a Playlist
  • Remove Tracks from a Playlist
  • Reorder or replace a Playlist's Tracks
  • Change a Playlist's Details

User Profiles

  • Get a User's Profile
  • Get Current User's Profile

User Library

  • Get Current User's Saved Tracks
  • Check Current User's Saved Tracks
  • Save Tracks for Current User
  • Remove Tracks for Current User
  • Get Current User's Saved Albums
  • Check Current User's Saved Albums
  • Save Albums for Current User
  • Remove Albums for Current User

Personalization

  • Get User's Top Artists and Tracks

Browse

  • Get a List of New Releases
  • Get a List of Featured Playlists
  • Get a List of Browse Categories
  • Get a Single Browse Category
  • Get a Category's playlists
  • Get Recommendations Based on Seeds
  • Get Available Genre Seeds

Follow

  • Get Followed Artists
  • Check if Current User Follows Artists or Users
  • Follow Artists or Users
  • Unfollow Artists or Users
  • Check if Users Follow a Playlist
  • Follow a Playlist
  • Unfollow a Playlist

Player

  • Get the Current User's Recently Played Tracks
  • Get Information About The User's Current Playback
  • Transfer a User's Playback
  • Get a User's Available Devices
  • Get the User's Currently Playing Track
  • Start/Resume a User's Playback
  • Pause a User's Playback
  • Skip User's Playback To Next Track
  • Skip User's Playback To Previous Track
  • Seek To Position In Currently Playing Track
  • Set Repeat Mode On User's Playback
  • Set Volume For User's Playback
  • Toggle Shuffle For User's Playback