HAQM Music Web API
Web API Albums V1.0
Important:
These HAQM Music APIs are currently in a closed Beta. Please check back soon for updates.
Important:
These HAQM Music documents are in preview status. Be aware that content may change. Please use the
developer forum for any questions or comments.
Albums
Retrieve albums and related meta-data from the HAQM Music catalog.
- Get Album
- Get Multiple Albums
- Get Current User's Library Albums
- Add Album to Current User's Library
- Delete Album From Current User's Library
Get Album
GET
/albums/{id}/
Authorization Scope: [music::catalog]
Get the HAQM Music catalog meta-data for a single album by album ID. The meta-data includes the album name, artist, cover art, track-listing, label and more.
Path Parameters
Name | Data Type | Required | Description |
---|---|---|---|
id | string | No | The HAQM Catalog ID of the album to be retrieved. |
Example
curl --request GET <base url>/v1/albums/B08XK843KK
--header 'x-api-key: <your security profile ID>' \
--header 'Authorization: Bearer <your auth token>'
Responses
HAQM Music response object containing:
Name | Data Type | Required | Description |
---|---|---|---|
album | album | No | An object representing the meta-data for the requested album |
Example
(Some lines omitted for brevity)
{
"data": {
"album": {
"id": "B0064UPU4G",
"globalAsin": "B0064UPU4G",
"title": "Discovery",
"shortTitle": "Discovery",
"duration": 3660,
"url": "http://music.haqm.com/albums/B0064UPU4G",
"releaseDate": "2001-03-07T05:00:00.000Z",
"availableMarkets": [
{
"id": "US",
"name": "United States"
},
...
],
"artists": [
{
"id": "B000S9ULT8",
"name": "Daft Punk",
"url": "http://music.haqm.com/artists/"
}
],
"eligibility": {
"isDownloadable": true,
"isPurchaseable": true,
"isPreviewable": true,
"isPrimeEligible": false
},
"parentalSettings": {
"isKidFriendly": false,
"hasExplicitLanguage": false
},
"tracks": [
{
"id": "B0064UPUDC",
"title": "One More Time",
"url": "http://music.haqm.com/albums/B0064UPU4G"
},
...
],
"trackCount": 14,
"images": [
{
"height": 1800,
"width": 1800,
"url": "http://m.media-haqm.com/images/I/71bsHTr6idL.jpg"
},
...
],
"label": "Daft Life Ltd./ADA France"
}
}
}
Get Multiple Albums
GET
/albums
Authorization Scope: [music::catalog]
Get the HAQM Music catalog meta-data for multiple albums identified by comma-separated catalog IDs. The meta-data includes the album name, artist, cover art, track-listing, label and more.
Query Parameters
Name | Data Type | Required | Description |
---|---|---|---|
ids | string | Yes | A comma-separated list of the IDs of the albums to be retrieved. There is a maximum limit of 100 IDs. |
Example
curl --request GET <base url>/v1/albums?ids=B08XK843KK,B08XJQM7YV
--header 'x-api-key: <your security profile ID>' \
--header 'Authorization: Bearer <your auth token>'
Responses
HAQM Music response object containing:
Name | Data Type | Required | Description |
---|---|---|---|
albums | Album[] | No | An array of Album objects |
Example
(Some lines omitted for brevity)
{
"data": {
"albums": [
{
"id": "B0064UPU4G",
"globalAsin": "B0064UPU4G",
"title": "Discovery",
"duration": 3660,
"url": "http://music.haqm.com/albums/B0064UPU4G",
"releaseDate": "2001-03-07T05:00:00.000Z",
...
},
{
"id": "B00D3PLC1K",
"globalAsin": "B00D3PLC1K",
"title": "Around the world",
"duration": 3660,
"url": "http://music.haqm.com/albums/B0064UPU4G",
"releaseDate": "1997-04-11T05:00:00.000Z",
...
}
]
}
}
Get Current User's Library Albums
GET
/me/library/albums
Authorization Scope: [music::library::read]
Get a list of library albums for the current HAQM Music user. Flags on each album in the user's library indicates whether they were purchased from HAQM Music, or uploaded by the user. Optional pagination parameters can be used to limit the number of albums returned.
Query Parameters
Name | Data Type | Required | Description |
---|---|---|---|
albumIds | string | Yes | A comma-separated list of album IDs. This method will check the user’s library albums against the specified album IDs (if provided). |
limit | number | No | The maximum number of albums to return (default: 100). Minimum of 1, maximum of 100. |
cursor | string | No | The cursor/token for the page to continue pagination results from. |
Example
curl --request GET <base url>/v1/me/library/albums?limit=20
--header 'x-api-key: <your security profile ID>' \
--header 'Authorization: Bearer <your auth token>'
Responses
HAQM Music response object containing:
Name | Data Type | Required | Description |
---|---|---|---|
libraryAlbums | Response Collection | No | A collection of objects representing a list of albums and their uploaded or purchased status |
Example
(Some lines omitted for brevity)
{
"data": {
"user": {
"id": "6ozjgidgbvjdv3j6dd5jm7ipom",
"libraryAlbums": {
"pageInfo": {
"hasNextPage": false
},
"edgeCount": 2,
"edges": [
{
"purchased": false,
"uploaded": false,
"node": {
"id": "B07B62ZK5S"
},
"objectId": "15e6a15f-4c2f-4b24-a2fd-286b37ad4fa3"
},
{
"purchased": false,
"uploaded": false,
"node": {
"id": "B06VWVWDDH"
},
"objectId": "15e6a15f-4c2f-4b24-a2fd-286b37ad4fa3"
},
...
]
}
}
}
}
Add Album to Current User's Library
PUT
/me/library/albums/{id}
Authorization Scope: [music::library]
Save a specified album to the current HAQM Music user’s library.
Path Parameters
Name | Data Type | Required | Description |
---|---|---|---|
id | string | Yes | The HAQM Music catalog ID of the album to save. |
Example
curl --request PUT <base url>/v1/me/library/albums/B0101GQZGA
--header 'x-api-key: <your security profile ID>' \
--header 'Authorization: Bearer <your auth token>'
Responses
HAQM Music response object containing:
Name | Data Type | Required | Description |
---|---|---|---|
saveAlbum | Response | No | a saveAlbum object containg the Album information and the saveState of the album |
Example
{
"data": {
"saveAlbum": {
"album": {
"id": "B091MTJT3P",
"title": "All Rebel Rockers",
"url": "http://music.haqm.com/albums/B091MTJT3P"
},
"saveState": "SAVED"
}
}
}
Delete Album From Current User's Library
DELETE
/me/library/albums/{id}
Authorization Scope: [music::library]
Remove a specified album from the current HAQM Music user’s library.
Path Parameters
Name | Data Type | Required | Description |
---|---|---|---|
id | string | Yes | The HAQM Music catalog ID of the album to remove. |
Example
curl --request DELETE <base url>/v1/me/library/albums?B0101GQZGA
--header 'x-api-key: <your security profile ID>' \
--header 'Authorization: Bearer <your auth token>'
Responses
HAQM Music response object containing:
Name | Data Type | Required | Description |
---|---|---|---|
removeAlbum | Response | No |
Example
{
"data": {
"removeAlbum": {
"album": {
"id": "B091MTJT3P",
"title": "All Rebel Rockers",
"url": "http://music.haqm.com/albums/B091MTJT3P"
},
"saveState": "REMOVED"
}
}
}