https://github.com/tomjowitt/gotidal
Go package for the TIDAL API
https://github.com/tomjowitt/gotidal
go golang golang-package tidal
Last synced: 6 months ago
JSON representation
Go package for the TIDAL API
- Host: GitHub
- URL: https://github.com/tomjowitt/gotidal
- Owner: tomjowitt
- License: apache-2.0
- Created: 2024-02-05T22:46:28.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-07T21:29:45.000Z (almost 2 years ago)
- Last Synced: 2025-10-09T07:54:55.721Z (10 months ago)
- Topics: go, golang, golang-package, tidal
- Language: Go
- Homepage: https://github.com/tomjowitt/gotidal
- Size: 218 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gotidal
An unofficial Go library for interacting with the TIDAL API.
[](https://pkg.go.dev/github.com/tomjowitt/gotidal)






[](https://0dependencies.dev)
## Guidelines
As the public TIDAL API is still in beta and subject to change, we cannot guarantee this package will always work
and therefore should not be used in production systems. We endeavor to patch and release fixes as soon as possible.
Hopefully, in the future, we will be able to match parity and provide backward compatibility with TIDAL.
## Official Documentation
Developer documentation and API keys:
Discussion and feature requests:
## Roadmap
Please see the issues tab for work left to be completed.
## Installation
```bash
go get -u github.com/tomjowitt/gotidal
```
## Usage
There are working examples for each TIDAL endpoint in the `/examples` folder.
```go
package main
import (
...
"github.com/tomjowitt/gotidal"
)
const maxSearchResults = 5
func main() {
ctx := context.Background()
clientID := os.Getenv("TIDAL_CLIENT_ID")
clientSecret := os.Getenv("TIDAL_CLIENT_SECRET")
client, err := gotidal.NewClient(clientID, clientSecret, "AU")
if err != nil {
log.Fatal(err)
}
params := gotidal.SearchParams{
Query: "Peso Pluma",
Limit: maxSearchResults,
Popularity: gotidal.SearchPopularityCountry,
}
results, err := client.Search(ctx, params)
if err != nil {
log.Fatal(err)
}
for _, album := range results.Albums {
log.Printf("%s - %s", album.Title, album.Artists[0].Name)
}
```
## Credits
Logo created with Gopher Konstructor based on original artwork
by Renee French.