Skip to content

Instantly share code, notes, and snippets.

@devgianlu devgianlu/0x0f and 0x10.md Secret
Last active Jan 4, 2019

Embed
What would you like to do?
Spotify Investigation

Unknown packet type 0x0f

It is sent after APWelcome and will make the server send a 0x10.

Sample payload: c53033c4b1e21ef4f77d4573acebf0749859ac91 Sample response: 9859ac91c1e7fdce81cac2fbbf6d08242bb5781e

Unknown packet type 0x4f

It is sent before requesting the audio key with an empty payload.

hm://context-resolve/v1/

Example request: GET hm://context-resolve/v1/spotify:album:3O8l62XajhWhcMTnqFbKSo

Example response:

{
  "metadata": {
    "context_description": "Where The River Goes"
  },
  "pages": [
    {
      "tracks": [
        {
          "uri": "spotify:track:5SNES1QX0v9kS6Juph9Di3",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        },
        {
          "uri": "spotify:track:5mY9zcN13WdxRH85y8oebp",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        },
        {
          "uri": "spotify:track:0YOihnmfonuEXMwjUjvFKq",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        },
        {
          "uri": "spotify:track:6UoH00TP0hZjD5rMUlr0EK",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        },
        {
          "uri": "spotify:track:6iqmLBuSn1yTj2tSNDmxDv",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        },
        {
          "uri": "spotify:track:1z45OqFB3rkJ7A1zN0T3KL",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        },
        {
          "uri": "spotify:track:4XBOUjNwPXBn4cNprjJUNz",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        },
        {
          "uri": "spotify:track:5wCV5gRbGBoe8lJsHlJrtw",
          "metadata": {
            "artist_uri": "spotify:artist:7a7Vs88vzOcmHh4GOpUEJJ",
            "album_uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo"
          }
        }
      ]
    }
  ],
  "uri": "spotify:album:3O8l62XajhWhcMTnqFbKSo",
  "url": "context://spotify:album:3O8l62XajhWhcMTnqFbKSo"
}

hm://keymaster/token/authenticated

Example request: hm://keymaster/token/authenticated?client_id=65b703a8073fc04876sg4233ca87bdd&scope=playlist-read Example response:

{"accessToken":"BQA5CppV944taWShj8G918F3lI3k7G1k1KAuBFYgUMiv0u1miQeefQq7H68P2iZWCl8j5U4yH_AVIST8FwNlLGBea8riYJCuOxVIST88j3R0yg09stm7vHatj1C-HjjjHg901-V1quszaJ0NwvCEkKU","expiresIn":3600,"tokenType":"Bearer","scope":["playlist-read"]}

What is client_id?

wg.spotify.com endpoint

This endpoint is used for communication on behalf of the already existing system. Radios are handled by this, for example.

To authenticate, an Authorization header is used, like so Authorization: Bearer {token}. token is a token provided by the keymaster endpoint.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.