A production-ready REST API wrapper for Gaana music streaming, built with Hono, Bun, and TypeScript. Provides access to songs, albums, playlists, artists, trending tracks, charts, and new releases metadata.
Disclaimer: This project is created solely for educational and research purposes. It is not an official Gaana API. Use responsibly and respect Gaana's terms of service.
Search across all content types
Clean, standard REST API design
Full details with ISRC codes
Interactive API documentation
Get trending tracks and top charts
Full TypeScript support
# Clone the repository
git clone https://github.com/ryanwtf88/gaana-api.git
cd gaana-api
# Install dependencies
npm install# Start development server
npm run dev
# API will be available at http://localhost:3000Visit http://localhost:3000 to view the interactive Swagger UI documentation.
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/search |
Unified search across all types |
GET |
/api/search/songs |
Search for songs only |
GET |
/api/search/albums |
Search for albums only |
GET |
/api/search/playlists |
Search for playlists only |
GET |
/api/search/artists |
Search for artists only |
Parameters:
q(required): Search querylimit(optional): Number of results (default: 10)
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/songs/:id |
Get song details by ID or SEO key |
GET |
/api/songs |
Get details by URL or SEO key |
Parameters:
url: Gaana song URLseokey: Song SEO key
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/albums/:id |
Get album details by ID or SEO key |
GET |
/api/albums |
Get details by URL or SEO key |
Parameters:
url: Gaana album URLseokey: Album SEO key
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/playlists/:id |
Get playlist details by ID or SEO key |
GET |
/api/playlists |
Get details by URL or SEO key |
Parameters:
url: Gaana playlist URLseokey: Playlist SEO key
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/artists/:id |
Get artist details by ID or SEO key |
GET |
/api/artists |
Get details by URL or SEO key |
Parameters:
url: Gaana artist URLseokey: Artist SEO key
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/trending |
Get trending songs |
GET |
/api/charts |
Get top charts |
GET |
/api/new-releases |
Get new releases |
Parameters:
language(optional): Content language (default: 'hi')limit(optional): Number of results
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/health |
Check API health status |
- Install Vercel CLI:
npm i -g vercel - Deploy:
vercel deploy - Important: Set Function Region to Mumbai (ap-south-1) for best performance.
This project is licensed under the MIT License.