PHPackages                             atomescrochus/laravel-gracenote - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. atomescrochus/laravel-gracenote

AbandonedLibrary[API Development](/categories/api)

atomescrochus/laravel-gracenote
===============================

A Laravel 5.\* package to search the Gracenote Web API.

1.5.0(6y ago)634MITPHP ~7.0

Since Dec 18Compare

[ Source](https://github.com/atomescrochus/laravel-gracenote)[ Packagist](https://packagist.org/packages/atomescrochus/laravel-gracenote)[ Docs](https://github.com/atomescrochus/laravel-gracenote)[ RSS](/packages/atomescrochus-laravel-gracenote/feed)WikiDiscussions Synced 2d ago

READMEChangelogDependencies (4)Versions (16)Used By (0)

Interact with the Gracenote Web API
===================================

[](#interact-with-the-gracenote-web-api)

[![Latest Stable Version](https://camo.githubusercontent.com/e013998ae03058fe0e78845642102889c5e540430e2dc74204877e58d7dfa7f0/68747470733a2f2f706f7365722e707567782e6f72672f61746f6d657363726f636875732f6c61726176656c2d67726163656e6f74652f762f737461626c65)](https://packagist.org/packages/atomescrochus/laravel-gracenote)[![License](https://camo.githubusercontent.com/b79dcff684bf909179520cc73198726c550df8c3a8a5e9d85f22c5c9395e3c27/68747470733a2f2f706f7365722e707567782e6f72672f61746f6d657363726f636875732f6c61726176656c2d67726163656e6f74652f6c6963656e7365)](https://packagist.org/packages/atomescrochus/laravel-gracenote)[![StyleCI](https://camo.githubusercontent.com/d76464a4e06855ccdfe88caf234af82c9d6930b6eb811c34768bd19a87c143be/68747470733a2f2f7374796c6563692e696f2f7265706f732f37363739323537322f736869656c643f6272616e63683d6d6173746572)](https://styleci.io/repos/76792572)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/631abf51757ccaf903052d7d0f5c82ac8f7656c095660d87e5170589c19855f5/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f61746f6d657363726f636875732f6c61726176656c2d67726163656e6f74652f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/atomescrochus/laravel-gracenote/?branch=master)[![Total Downloads](https://camo.githubusercontent.com/0eb8fffd9a42ac423ab8984c75797017e4a3ad5b9e3fb638d8e0b178e98db1b0/68747470733a2f2f706f7365722e707567782e6f72672f61746f6d657363726f636875732f6c61726176656c2d67726163656e6f74652f646f776e6c6f616473)](https://packagist.org/packages/atomescrochus/laravel-gracenote)

The `atomescrochus/laravel-gracenote` package provide and easy way to interact with the Gracenote Web API from any Laravel 5.\* application.

This package is usable in production, but should still be considered a work in progress (contribution welcomed!). It required PHP &gt;= `7.0`.

Install
-------

[](#install)

You can install this package via composer:

```
$ composer require atomescrochus/laravel-gracenote
```

Then you have to install the package' service provider and alias, *unless you are running Laravel &gt;=5.5*, then the package will auto discover itself:

```
// config/app.php
'providers' => [
    ...
    Atomescrochus\Gracenote\GracenoteServiceProvider::class,
];

'aliases' => [
	....
    'GracenoteAPI' => Atomescrochus\Gracenote\Facades\Gracenote::class,
];
```

You will have to publish the configuration files also if you want to change the default value:

```
php artisan vendor:publish --provider="Atomescrochus\Gracenote\GracenoteServiceProvider" --tag="config"
```

You are also required to put the values you can fetch in your Gracenote developer account in your .env files:

```
GRACENOTE_CLIENT_ID=12345678
GRACENOTE_CLIENT_TAG=abcdefg12345678
GRACENOTE_USER_ID=wxyz-9876

```

**NOTE**: If you don't have your Gracenote user id, you can get it by setting the `GRACENOTE_CLIENT_ID` and `GRACENOTE_CLIENT_TAG` value, then run `php artisan gracenote:user-id`. This will run the appropriate API call to fetch your user id so you can add it to your .env file.

Usage
-----

[](#usage)

```
use Atomescrochus\Gracenote\Facades\Gracenote as GracenoteAPI;
// $results will be an object containing a collection of results and raw response data from Gracenote

// here is an example query to search in the Gracenote database
$results = GracenoteAPI::lang('eng') // natural language of metadata
    ->cache(120) // integer representing minutes to cache results for
    ->searchMode('single_best') // OPTIONAL. Can be 'single_best' or 'single_best_cover'
    ->searchType('track_title') //either 'track_title', 'album_title', or 'artist'
    ->query('Poker face') // the search query
    ->search(); // do some magic

// if you happen to have a gracenote id, you can search for it in this fashion
// you need not to set other options, it is all set by default to be sure the search by ID
// won't fail on Gracenote's part.
$results = GracenoteAPI::lang('eng') // natural language of metadata
    ->cache(120) // integer representing minutes to cache results for
    ->getTrackById('167695000-B4D3EE5FF9011CCFCF0296FF1D8E8131');
```

Tests
-----

[](#tests)

Some tests are provided. I don't think it's as extensive as it could be, but it shows expected behavior works well, assuming that Gracenote API is responding. The tests are also thought to be ran while the package is installed in Laravel, and not standalone. If anyone wants to improve on the current test, please do!

Change log
----------

[](#change-log)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) and [CONDUCT](CONDUCT.md) for details.

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Jean-Philippe Murray](https://github.com/jpmurray)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity66

Established project with proven stability

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~78 days

Recently: every ~249 days

Total

14

Last Release

2462d ago

Major Versions

0.3.0 → 1.0.02016-12-19

PHP version history (2 changes)0.1.0PHP ~5.6|~7.0

1.1.1PHP ~7.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1550428?v=4)[Jean-Philippe Murray](/maintainers/jpmurray)[@jpmurray](https://github.com/jpmurray)

---

Tags

atomescrochusgracenotelaravel-gracenote

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/atomescrochus-laravel-gracenote/health.svg)

```
[![Health](https://phpackages.com/badges/atomescrochus-laravel-gracenote/health.svg)](https://phpackages.com/packages/atomescrochus-laravel-gracenote)
```

###  Alternatives

[rapidez/core

Rapidez Core

1823.5k70](/packages/rapidez-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
