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.3.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