Search jiosaavn songs by keyword

When the user asks to find a song by name, artist, or keyword — especially Hindi film music or Indian regional tracks — reach for the JioSaavn search endpoint. Unauthenticated GET, up to 10 results per query.

search-jiosaavn-songs-by-keyword · v1 · updated 2026-04-16

Agents: This page is a SKILL.md-style capability guide. For JSON, call GET /api/skills/search-jiosaavn-songs-by-keyword. To drop this into a local Claude Code install, copy the frontmatter + body below into ~/.claude/skills/search-jiosaavn-songs-by-keyword/SKILL.md.

When to use this skill

When the user asks to find a song by name, artist, or any keyword — especially Hindi film music or regional Indian language tracks. "Who sings Tum Hi Ho?", "Find songs from Aashiqui 2", "Search for Arijit Singh tracks." JioSaavn's catalog outpaces Spotify for Bollywood and Indian regional music. For fetching full lyrics once you have a song ID, reach for a lyrics skill instead. For looking up a song when the user already pasted a JioSaavn URL, use the /song/ endpoint directly rather than searching.

Your best first call

curl "https://saavnapi-nine.vercel.app/result?query=tum+hi+ho"

No auth. No key. Returns a JSON array of up to 10 song objects. Hindi transliterations work — "tum hi ho" finds the track without needing Devanagari input. The key fields an agent uses:

Fallbacks (when the best call isn't enough)

Pitfalls

One-line summary for the user

I can search JioSaavn for songs by keyword — titles, artists, albums, play counts, and lyrics snippets in Hindi and Indian regional languages — in a single unauthenticated GET.

APIs this skill uses

JioSaavn Unofficial API · primary · verified

Unofficial API for searching and retrieving music metadata, songs, albums, playlists, and lyrics from JioSaavn. Provides access to song details, audio URLs, album information, and playlist data.

Generated from

JioSaavn Unofficial API tutorial Getting Started with JioSaavn Unofficial API

SKILL.md source (frontmatter + body)
---
name: search-jiosaavn-songs-by-keyword
description: When the user asks to find a song by name, artist, or keyword — especially Hindi film music or Indian regional tracks — reach for the JioSaavn search endpoint. Unauthenticated GET, up to 10 results per query.
---

## When to use this skill

When the user asks to find a song by name, artist, or any keyword — especially Hindi film music or regional Indian language tracks. "Who sings Tum Hi Ho?", "Find songs from Aashiqui 2", "Search for Arijit Singh tracks." JioSaavn's catalog outpaces Spotify for Bollywood and Indian regional music. For fetching full lyrics once you have a song ID, reach for a lyrics skill instead. For looking up a song when the user already pasted a JioSaavn URL, use the `/song/` endpoint directly rather than searching.

## Your best first call

```bash
curl "https://saavnapi-nine.vercel.app/result?query=tum+hi+ho"
```

No auth. No key. Returns a JSON array of up to 10 song objects. Hindi transliterations work — `"tum hi ho"` finds the track without needing Devanagari input. The key fields an agent uses:

- `id` — song ID; pass this to `/lyrics/` for full lyrics
- `song` — track title
- `album` — album or film name
- `primary_artists`, `singers`, `music`, `starring` — four distinct credit fields (Bollywood tracks credit composer, singer, and film actors separately)
- `has_lyrics` — string `"true"` or `"false"` (not a boolean)
- `lyrics_snippet` — opening line if lyrics exist
- `play_count` — popularity signal (e.g. `"361429958"`)
- `perma_url` — JioSaavn link
- `language` — e.g. `"hindi"`, `"tamil"`
- `duration` — seconds as a string

## Fallbacks (when the best call isn't enough)

- **User pasted a JioSaavn URL** → `/song?query=<url>` returns a single song object without sifting through search results.
- **Need full lyrics** → `/lyrics?query=<song_id>` once you have the `id` from search results.
- **Non-Indian music with weak coverage** → JioSaavn is strongest for Bollywood and Indian regional languages; for Western-dominated catalogs, a Spotify or Last.fm API may have better matches.

## Pitfalls

- Bollywood metadata has four distinct credit fields — `primary_artists`, `singers`, `music`, `starring` — because composer, singer, and actor are genuinely different people in Hindi film music. Collapsing them into a single "artist" field loses information.
- `has_lyrics` is the string `"true"` or `"false"`, not a boolean. A truthy check on the string `"false"` will incorrectly evaluate to true — always compare with `=== "true"`.
- `duration` is a string of seconds (`"262"`), not an integer. Parse it before formatting as mm:ss.
- Lyrics from `/lyrics/` use `<br>` tags for line breaks, not newlines. Replace `<br>` with `\n` before displaying to a user.

## One-line summary for the user

I can search JioSaavn for songs by keyword — titles, artists, albums, play counts, and lyrics snippets in Hindi and Indian regional languages — in a single unauthenticated GET.

« Back to all skills