Official Python SDK for Galiboo's Music API
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets
examples
galiboo
tests
.gitignore
LICENSE
MANIFEST.in
README.md
requirements-dev.txt
requirements.txt
setup.py

README.md

Galiboo

Python SDK for Galiboo's A.I. Music API (beta)

https://galiboo.com

Live chat @ Gitter

Got questions or wanna chat about our API? Or maybe even share what you're working on with other developers?

Come hang out with us & other developers online, at https://gitter.im/galiboo/Lobby!

API key

Be sure to get an API key from https://galiboo.com to use this library.

Installation

pip install galiboo

Usage

Here are some examples. You can also checkout our API docs at: https://apidocs.galiboo.com

Authentication

Always set your API key first, before calling any other API endpoints.

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

AI-powered search for music

Find tracks that are relevant to any natural language query, auto-magically.

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's search for some relaxing music
query = "soft, piano tunes"
tracks = galiboo_client.track.smart_search(query)

Get a track's music analysis data

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's get the moods, emotions, & other music analysis data
# that Galiboo's Music A.I. has extracted for Coldplay's "Viva la Vida"

viva_la_vida = galiboo_client.track.get("5a3fc326d836490c18703e3f")

print viva_la_vida['analysis']
print viva_la_vida['analysis']['smart_tags']
# etc...

Find tracks by tags

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's find some nice music for doing focus work
query = {
    "energy" : 0.25,
    "smart_tags" : {
         "Emotion-Calming_/_Soothing" : 0.9
    }
    # etc. (see our API docs for more info)
}

tracks = galiboo_client.track.search_by_tags(query)
print tracks

Find similar-sounding tracks

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's find similar tracks to Coldplay's Viva la Vida
similar_tracks = galiboo_client.track.search_by_similar("5a3fc326d836490c18703e3f")

print similar_tracks

Analyze music from a URL

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's analyze the audio at this URL
audio_url = "https://storage.googleapis.com/gb_spotify20k/spotify_preview_audios/4iLqG9SeJSnt0cSPICSjxv.mp3"
analysis = galiboo_client.track.ai_analyze(audio_url)

print analysis

Analyze music from a YouTube video

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's analyze the audio at this URL
youtube_video = "https://www.youtube.com/watch?v=nfs8NYg7yQM"
analysis = galiboo_client.track.ai_analyze(youtube_video)

print analysis

Schedule a music analysis job

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's schedule a job in Galiboo's cloud to analyze the audio at this URL
audio_url = "https://storage.googleapis.com/gb_spotify20k/spotify_preview_audios/4iLqG9SeJSnt0cSPICSjxv.mp3"
job = galiboo_client.track.analyze(audio_url)

print job

View a music analysis job

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's get the status/results of an analysis job that we scheduled
job_id = "5b8c17c9011610000bc2de67"
job = galiboo_client.job.get(job_id)

print job

View all music analysis jobs

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's get the status/results of all the analysis jobs that we scheduled
jobs = galiboo_client.job.all()
print jobs

Search for tracks

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's search for Charlie Puth's Attention
track = "Attention"
tracks = galiboo_client.track.get(track=track)

Search for artists

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

# Let's search for some relaxing music
artist = "Camila Cabello"
artists = galiboo_client.artist.get(artist)

Get an artist's metadata

from galiboo import Galiboo
galiboo_client = Galiboo("<your api key>")

coldplay = galiboo_client.artist.metadata("5a3fc2ffd836490c18703c7d")

print coldplay['tracks']

Last words

Be sure to checkout our API docs at apidocs.galiboo.com and visit our website (galiboo.com) for more information.

If you have any questions, feel free to email us at hello@galiboo.com, and we'll get back to you ASAP! :)