Skip to content

charlypoly/spotify-graphql

Repository files navigation

Spotify GraphQL npm version https://david-dm.org/wittydeveloper/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


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 ❌