Skip to content
har-nick edited this page Sep 16, 2025 · 4 revisions

This page will cover general usage of BandKit, including the general process of implementation.

Implementation

BandKit is intended to be a monolithic, self-contained instance to communicate with Bandcamp.

The main class, aptly-named BandKit, requires no parameters to access public functions. Simply instantiate it wherever is recommended according to your project structure guidelines:

val bandKit = BandKit()

BandKit requires a Bandcamp account token to access corresponding private data, including download links to albums and private library data.

Your token should be passed as the raw, encoded string provided to you by Bandcamp's identity cookie.

Configuration

BandKit bundles a configuration class. For now, this only allows changing the user-agent used in requests.

If anyone can think of further configuration that would prove useful, please let me know, and I'll consider adding it.

Passing a Custom Client

BandKit allows passing a custom Ktor client.

The only requirement for passing a client is to ensure the ContentNegotiation Plugin, along with the JSON serializer is also installed.

Clone this wiki locally