ShazamKit

Elixir client for the ShazamKit API.

It covers the server-side Shazam catalog endpoints used for:

Installation

Add to your mix.exs:

defp deps do
  [
    {:shazam_kit, "~> 0.1.0"}
  ]
end

Configuration

config :shazam_kit,
  team_id: System.get_env("APPLE_TEAM_ID"),
  key_id: System.get_env("SHAZAM_KEY_ID"),
  private_key_path: System.get_env("SHAZAM_PRIVATE_KEY_PATH")

Supported options:

Quick Start

# Match a client-generated signature
{:ok, result} = ShazamKit.match_signature(signature)

# Search by ISRC
{:ok, result} = ShazamKit.search_by_isrc("USUG12002836")

# Search tracks by text
{:ok, result} = ShazamKit.search_tracks("The Beatles", limit: 5)

# Fetch a track by Shazam ID
{:ok, track} = ShazamKit.get_track("548587123")

Audio Signatures

This library does not generate Shazam signatures itself.

Generate signatures on the client side with:

Then send the base64 signature to your Elixir service.

Notes

License

MIT