{"id":50474293,"url":"https://github.com/shnwazdeveloper/shnwazdev-jiomusicapi","last_synced_at":"2026-06-01T12:02:52.213Z","repository":{"id":355656684,"uuid":"1229032716","full_name":"shnwazdeveloper/shnwazdev-jiomusicapi","owner":"shnwazdeveloper","description":"Clean Vercel-ready JioMusic API website with docs, health, and search endpoints","archived":false,"fork":false,"pushed_at":"2026-05-04T17:02:00.000Z","size":34,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-04T18:30:18.058Z","etag":null,"topics":["api","flask","jiomusic","jiosaavn","vercel"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shnwazdeveloper.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-04T16:21:39.000Z","updated_at":"2026-05-04T17:02:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/shnwazdeveloper/shnwazdev-jiomusicapi","commit_stats":null,"previous_names":["shnwazdeveloper/shnwazdev-jiomusicand"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/shnwazdeveloper/shnwazdev-jiomusicapi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shnwazdeveloper%2Fshnwazdev-jiomusicapi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shnwazdeveloper%2Fshnwazdev-jiomusicapi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shnwazdeveloper%2Fshnwazdev-jiomusicapi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shnwazdeveloper%2Fshnwazdev-jiomusicapi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shnwazdeveloper","download_url":"https://codeload.github.com/shnwazdeveloper/shnwazdev-jiomusicapi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shnwazdeveloper%2Fshnwazdev-jiomusicapi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33773782,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-01T02:00:06.963Z","response_time":115,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","flask","jiomusic","jiosaavn","vercel"],"created_at":"2026-06-01T12:02:50.482Z","updated_at":"2026-06-01T12:02:52.208Z","avatar_url":"https://github.com/shnwazdeveloper.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# shnwazdev-jiomusicapi\n\nClean Flask API and documentation website for the legacy JioMusic search API. This repo is based on `cyberboysumanjay/JioMusicAPI` and modernized for local development and Vercel deployment.\n\nRepository: `shnwazdeveloper/shnwazdev-jiomusicapi`\n\n## What is included\n\n- Documentation homepage at `/` and `/docs`\n- Endpoint index at `/api`\n- Fast uptime endpoint at `/api/ping`\n- Modern search endpoint at `/api/search`\n- Compact search summary endpoint at `/api/summary`\n- Category endpoints for songs, albums, playlists, artists, top results, shows, and episodes\n- Raw autocomplete endpoint at `/api/raw/autocomplete`\n- Deployment diagnostics endpoint at `/api/diagnostics`\n- Health endpoints at `/api/health` and `/health`\n- Legacy compatibility route at `/result/`\n- Vercel-ready Flask entrypoint in `app.py`\n- Local development port set to `5575`\n\n## Run locally\n\n```powershell\npython -m venv .venv\n.\\.venv\\Scripts\\Activate.ps1\npython -m pip install -r requirements.txt\n$env:PORT = \"5575\"\npython app.py\n```\n\nOpen `http://localhost:5575`.\n\nRun the smoke test:\n\n```powershell\npython scripts/smoke_test.py\n```\n\n## API\n\nAll endpoints accept `query` or `q` where search text is needed.\n\n### Ping\n\n```http\nGET /api/ping\n```\n\nReturns a fast no-upstream `pong` response for uptime monitors.\n\n### Endpoint index\n\n```http\nGET /api\n```\n\nReturns service metadata and every documented endpoint.\n\n### Search all categories\n\n```http\nGET /api/search?query=slow%20motion\n```\n\nOptional parameters:\n\n- `query` or `q`: song, album, artist, playlist, show, or episode search text\n- `details=true`: include album and playlist track lists\n\n### Search summary\n\n```http\nGET /api/summary?query=slow%20motion\n```\n\nReturns counts, the top result, and every upstream item for each category by default. `limit` is optional and has no server-side maximum; use `limit=3` only when you want a smaller preview. You can also use `limit=all`, `limit=unlimited`, or `limit=0` to request every available item explicitly.\n\n### Category endpoints\n\n```http\nGET /api/songs?query=slow%20motion\nGET /api/albums?query=slow%20motion\nGET /api/playlists?query=bollywood\nGET /api/artists?query=arijit%20singh\nGET /api/top?query=slow%20motion\nGET /api/shows?query=music\nGET /api/episodes?query=music\n```\n\nEach category endpoint returns:\n\n```json\n{\n  \"ok\": true,\n  \"query\": \"slow motion\",\n  \"category\": \"songs\",\n  \"count\": 5,\n  \"data\": []\n}\n```\n\n### Health\n\n```http\nGET /api/health\n```\n\nUse `upstream=true` to include a live upstream check:\n\n```powershell\ncurl \"http://localhost:5575/api/health?upstream=true\"\n```\n\n### Raw autocomplete\n\n```http\nGET /api/raw/autocomplete?query=slow%20motion\n```\n\nReturns the unmodified upstream autocomplete response.\n\n### Deployment diagnostics\n\n```http\nGET /api/diagnostics\n```\n\nChecks Python, Vercel environment markers, required files, public assets, and endpoint count without exposing secrets.\n\n### Legacy route\n\n```http\nGET /result/?query=slow%20motion\n```\n\nThis keeps old clients working by returning the raw payload.\n\n## Deploy to Vercel\n\nVercel can detect the Flask app from the root `app.py` file and install `requirements.txt`. The project also includes `vercel.json`, `.vercelignore`, and `.python-version` for predictable Vercel hosting.\n\nThe `vercel.json` file intentionally does not define `functions.app.py`. Root Flask apps are handled by Vercel's Flask framework detection, while the `functions` property only targets function files such as files inside `/api`.\n\n```powershell\nnpx vercel@latest\n```\n\nFor production:\n\n```powershell\nnpx vercel@latest --prod\n```\n\nAfter deployment, check:\n\n```text\nhttps://your-project.vercel.app/api/health\nhttps://your-project.vercel.app/api/ping\nhttps://your-project.vercel.app/api/diagnostics\nhttps://your-project.vercel.app/api/search?query=slow%20motion\nhttps://your-project.vercel.app/api\n```\n\n## Notes\n\nThe original JioMusic `beatsapi.media.jio.com` endpoint is legacy and may fail or return unavailable responses. The app now falls back to JioSaavn autocomplete so search stays usable, and it returns clear JSON errors if every upstream is unavailable.\n\n## Attribution\n\nOriginal project: `cyberboysumanjay/JioMusicAPI`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshnwazdeveloper%2Fshnwazdev-jiomusicapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshnwazdeveloper%2Fshnwazdev-jiomusicapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshnwazdeveloper%2Fshnwazdev-jiomusicapi/lists"}