agentleFS
nikhonitnikhonit/social-media-api-skills/skills/spotify-api/SKILL.md

spotify-api

Skill3 starsChanged 3 months agoMIT-0View on GitHub

Spotify data toolkit via ScraperSocial — tracks, albums, artists, top tracks, playlists and catalogue search.

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 4 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read public Spotify catalogue data as clean JSON.

    line 34
  2. Distinctive:

    You need listener counts or royalties: Not published, not available.

    line 48
  3. Very specific:

    Every script also accepts --limit, --cursor, --fields, --format and --fresh.

    line 74
  4. Distinctive:

    Every response uses the same envelope:

    line 82
  5. Distinctive:

    If Spotify is your only source, do — it is free and more complete.

    line 115

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Spotify API skill

Read public Spotify catalogue data as clean JSON. This Spotify API skill returns a track, album, artist, an artist's top tracks, a playlist, or search results across the catalogue — 2 credits per call, no OAuth dance, no token refresh loop.

This skill wraps 6 live Spotify endpoints from the ScraperSocial API. Public data only, returned as clean JSON.

When to use this skill

  • A user pastes a Spotify link and wants the track, album or artist details.
  • You are building a music research or recommendation workflow that needs catalogue metadata.
  • You want an artist's top tracks or the contents of a public playlist.

Do not use this skill when

  • You are building a real music app. Spotify's own Web API is free, richer, covers playback and user libraries, and is the licensed route. Use this when you want one client across many platforms and no OAuth setup.
  • You need audio, streams or private library data. Catalogue metadata only.
  • You need listener counts or royalties. Not published, not available.

Setup

export SCRAPERSOCIAL_KEY=sk_live_...   # https://scrapersocial.com/app/keys

Signing up at scrapersocial.com/signup includes 100 free credits, no card required.

Permissions and scope

These scripts do exactly three things and nothing else: read one environment variable (SCRAPERSOCIAL_KEY), send HTTPS requests to https://api.scrapersocial.com (the host is a constant in the code, not configurable), and print JSON. They run as node scripts/<name>.js with no other shell use, no file writes and no persistence. call_endpoint.js accepts only the 6 documented /v1/spotify/ paths in the table below and refuses anything else before a request is made.

Scripts

ScriptWhat it doesInputCredits
get_album.jsGet Spotify album.handle2 credits
get_artist.jsGet Spotify artist.handle2 credits
get_artist_top_tracks.jsList Spotify artist top tracks.handle2 credits per track
get_playlist.jsGet Spotify playlist.handle2 credits
search.jsList Spotify search.query2 credits per result
get_track.jsGet Spotify track.handle2 credits
call_endpoint.jsCall any /v1/spotify/ endpoint directlypath + paramsvaries

Every script also accepts --limit, --cursor, --fields, --format and --fresh. --limit is clamped to 50: above that the API returns an async job instead of data.

Example

node skills/spotify-api/scripts/search.js "Radiohead"

Every response uses the same envelope:

{ "data": {}, "meta": { "count": 20, "next_cursor": "..." }, "request_id": "a18e4ef88ad4b00b" }

meta appears on paginated endpoints only. Keep request_id — support traces calls with it.

Endpoints

EndpointInputReturnsCreditsPaginated
/v1/spotify/albumhandlealbum2 creditsno
/v1/spotify/artisthandleartist2 creditsno
/v1/spotify/artist-top-trackshandletrack2 credits per trackyes
/v1/spotify/playlisthandleplaylist2 creditsno
/v1/spotify/searchqueryresult2 credits per resultyes
/v1/spotify/trackhandletrack2 creditsno

Costs shown per item for paginated endpoints, per call otherwise. Failed calls are not charged.

FAQ

How do I get a Spotify track as JSON?

get_track.js with the track handle, 2 credits. Albums, artists and playlists have their own scripts at the same price.

How do I get an artist's top tracks?

get_artist_top_tracks.js with the artist handle, 2 credits per track returned.

Why not just use Spotify's official API?

If Spotify is your only source, do — it is free and more complete. This exists so one key and one envelope cover Spotify alongside the other 32 platforms here.

Is this an official Spotify API?

No. ScraperSocial is independent and not affiliated with Spotify. It returns publicly available catalogue data only.

Links

Disclaimer

ScraperSocial is an independent product and is not affiliated with, endorsed by, or sponsored by any platform named in this repository. All product names, logos and brands are property of their respective owners. These skills return only publicly available data.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.