Record

List Records

GET https://api.idol.io/api/v2/records

Headers

Name
Type
Description

Authorization*

string

Bearer <token>

Content-Type*

string

application/vnd.api+json

{
  "data": [
    {
      "id": "<ID>",
      "type": "records",
      "links": {
        "self": "https://api.idol.io/api/v2/records/<ID>"
      },
      "attributes": {
        "created-at": "2024-09-25T13:32:13.098+02:00",
        "updated-at": "2024-09-25T13:34:30.369+02:00",
        "new-file": null,
        "precision": 16,
        "master-type": "cd"
      },
      "relationships": {
        "creator": {
          "links": {
            "self": "https://api.idol.io/api/v2/records/<ID>/relationships/creator",
            "related": "https://api.idol.io/api/v2/records/<ID>/creator"
          },
          "data": {
            "type": "tracks",
            "id": "<ID>"
          }
        },
        "tracks": {
          "links": {
            "self": "https://api.idol.io/api/v2/records/<ID>/relationships/tracks",
            "related": "https://api.idol.io/api/v2/records/<ID>/tracks"
          }
        }
      }
    },
    {
      "id": "<ID>",
      "type": "records",
      "links": {
        "self": "https://api.idol.io/api/v2/records/<ID>"
      },
      "attributes": {
        "created-at": "2024-09-25T13:32:14.253+02:00",
        "updated-at": "2024-09-25T13:38:27.110+02:00",
        "new-file": null,
        "precision": 16,
        "master-type": "cd"
      },
      "relationships": {
        "creator": {
          "links": {
            "self": "https://api.idol.io/api/v2/records/<ID>/relationships/creator",
            "related": "https://api.idol.io/api/v2/records/<ID>/creator"
          },
          "data": {
            "type": "tracks",
            "id": "<ID>"
          }
        },
        "tracks": {
          "links": {
            "self": "https://api.idol.io/api/v2/records/<ID>/relationships/tracks",
            "related": "https://api.idol.io/api/v2/records/<ID>/tracks"
          }
        }
      }
    },
    {
      "id": "<ID>",
      "type": "records",
      "links": {
        "self": "https://api.idol.io/api/v2/records/<ID>"
      },
      "attributes": {
        "created-at": "2024-09-25T13:32:15.253+02:00",
        "updated-at": "2024-09-25T13:37:11.746+02:00",
        "new-file": null,
        "precision": 16,
        "master-type": "cd"
      },
      "relationships": {
        "creator": {
          "links": {
            "self": "https://api.idol.io/api/v2/records/<ID>/relationships/creator",
            "related": "https://api.idol.io/api/v2/records/<ID>/creator"
          },
          "data": {
            "type": "tracks",
            "id": "<ID>"
          }
        },
        "tracks": {
          "links": {
            "self": "https://api.idol.io/api/v2/records/<ID>/relationships/tracks",
            "related": "https://api.idol.io/api/v2/records/<ID>/tracks"
          }
        }
      }
    }
  ],
  "meta": {
    "record-count": 226,
    "page-count": 76
  },
  "links": {
    "first": "https://api.idol.io/api/v2/records?page%5Bnumber%5D=1&page%5Bsize%5D=3",
    "next": "https://api.idol.io/api/v2/records?page%5Bnumber%5D=2&page%5Bsize%5D=3",
    "last": "https://api.idol.io/api/v2/records?page%5Bnumber%5D=76&page%5Bsize%5D=3"
  }
}

Filter resources

api/v2/records?filter[track-ids]=1,2

Get Record

GET https://api.idol.io/api/v2/records/:id

Path Parameters

Name
Type
Description

id*

number

ID of the Record

Headers

Name
Type
Description

Authorization*

string

Bearer <token>

Content-Type*

string

application/vnd.api+json

{
  "data": {
    "id": "<ID>",
    "type": "records",
    "links": {
      "self": "https://api.idol.io/api/v2/records/<ID>"
    },
    "attributes": {
      "created-at": "2024-09-25T13:32:13.098+02:00",
      "updated-at": "2024-09-25T13:34:30.369+02:00",
      "new-file": null,
      "precision": 16,
      "master-type": "cd"
    },
    "relationships": {
      "creator": {
        "links": {
          "self": "https://api.idol.io/api/v2/records/<ID>/relationships/creator",
          "related": "https://api.idol.io/api/v2/records/<ID>/creator"
        },
        "data": {
          "type": "tracks",
          "id": "<ID>"
        }
      },
      "tracks": {
        "links": {
          "self": "https://api.idol.io/api/v2/records/<ID>/relationships/tracks",
          "related": "https://api.idol.io/api/v2/records/<ID>/tracks"
        }
      }
    }
  }
}

Create Record

POST https://api.idol.io/api/v2/records

Important note: the upload method on Record will soon be deprecated to the benefit of ImportTask, which allows direct download of your file via a provided URL. We strongly recommend that you implement the ImportTask instead.

Headers

Name
Type
Description

Authorization*

string

Bearer <token>

Content-Type*

string

application/vnd.api+json

Request Body

Name
Type
Description

master-type*

string

cd or hd or dolby_atmos

creator*

object

Track object

tracks

object

Track object

new-file*

string

Base64 - e.g. data:audio/flac;base64,JsqWlWh...

md5*

string

e2cf9dfacc282c31c8cc296..

{
  "data": {
    "id": "<ID>",
    "type": "records",
    "links": {
      "self": "https://api.idol.io/api/v2/records/<ID>"
    },
    "attributes": {
      "created-at": "2024-05-30T16:11:51.700+02:00",
      "updated-at": "2024-05-30T16:11:51.700+02:00",
      "new-file": null,
      "md5": "e2cf9dfacc282c31c8c296bd11e29aa3",
      "precision": 16,
      "master-type": "cd"
    },
    "relationships": {
      "creator": {
        "links": {
          "self": "https://api.idol.io/api/v2/records/<ID>/relationships/creator",
          "related": "https://api.idol.io/api/v2/records/<ID>/creator"
        },
        "data": {
          "type": "tracks",
          "id": "<ID>"
        }
      },
      "tracks": {
        "links": {
          "self": "https://api.idol.io/api/v2/records/<ID>/relationships/tracks",
          "related": "https://api.idol.io/api/v2/records/<ID>/tracks"
        }
      }
    }
  }
}

MD5 check

By setting the md5 attribute, you will request a file checksum on the server to ensure the checksum is the same after upload. If the checksum differs, the create/update will be rejected. If the value is null, the checksum will not be performed.

Update Record

PUT https://api.idol.io/api/v2/records/:id

Path Parameters

Name
Type
Description

id*

number

ID of the Record

Headers

Name
Type
Description

Authorization*

string

Bearer <token>

Content-Type*

string

application/vnd.api+json

Request Body

Name
Type
Description

master-type*

string

cd or hd or dolby_atmos

creator*

object

Track object

tracks

object

Track object

new-file*

string

Base64 - e.g. data:audio/flac;base64,JsqWlWh...

md5*

string

e2cf9dfacc282c31c8cc296..

{
  "data": {
    "id": "<ID>",
    "type": "records",
    "links": {
      "self": "https://api.idol.io/api/v2/records/<ID>"
    },
    "attributes": {
      "created-at": "2024-05-30T16:11:51.700+02:00",
      "updated-at": "2024-05-30T16:11:51.700+02:00",
      "new-file": null,
      "md5": "e2cf9dfacc282c31c8c296bd11e29aa3",
      "precision": 16,
      "master-type": "cd"
    },
    "relationships": {
      "creator": {
        "links": {
          "self": "https://api.idol.io/api/v2/records/<ID>/relationships/creator",
          "related": "https://api.idol.io/api/v2/records/<ID>/creator"
        },
        "data": {
          "type": "tracks",
          "id": "<ID>"
        }
      },
      "tracks": {
        "links": {
          "self": "https://api.idol.io/api/v2/records/<ID>/relationships/tracks",
          "related": "https://api.idol.io/api/v2/records/<ID>/tracks"
        }
      }
    }
  }
}

MD5 check

By setting the md5 attribute, you will request a file checksum on the server to ensure the checksum is the same after upload. If the checksum differs, the create/update will be rejected. If the value is null, the checksum will not be performed.

Delete Record

DELETE https://api.idol.io/api/v2/records/:id

Path Parameters

Name
Type
Description

id*

number

ID of the Record

Headers

Name
Type
Description

Authorization*

string

Bearer <token>

Content-Type*

string

application/vnd.api+json

Last updated