Operated by Sourcelane✓ verified
A scraper for Instagram's audio library that searches by song, artist, or keyword to extract music and sound metadata and usage signals for Reels. It returns track metadata (title, artist, duration, explicit flag, lyrics indicator, cover artwork), Instagram audio identifiers, usage metrics (how many Reels use a sound and a trending indicator), audio assets (short preview and full download links), and optionally the top-performing Reels that use each sound with reel identifiers, URLs, creator usernames, play counts, and like counts. The connector performs automated crawling of Instagram's sound catalog and ranks or surfaces trending audio and top Reels for discovery, sourcing, and analysis without requiring account login.
Verified Sep 28, 3:55 AM
$0.008
per audio track
Up to 100 per call. Only pay for results returned; failed calls are refunded.
| Window | Uptime | Success rate | p50 | p95 | Calls |
|---|---|---|---|---|---|
| 24h | — | — | — | — | 0 |
| 7d | — | — | — | — | 0 |
| 30d | — | — | — | — | 0 |
Call it through Sourcelane's gateway or MCP server. We run the connector, apply your agent's spend guardrails, and bill only the results returned.
Call it via Sourcelane
curl -X POST https://api.usesourcelane.com/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"instagram-music-scraper","params":{"queries":["espresso"],"maxItems":5},"maxResults":10}'Request params
| Field | Type | Required | Description |
|---|---|---|---|
queries | array | required | One or more song titles, artist names, or sound keywords to search Instagram's audio library for (e.g. "espresso", "taylor swift", "trending"). Each returns matching tracks with their Reel usage and trending status. |
reelsPerTrack | integer | optional | For each track, also fetch this many top Reels that use the sound (username, play count, like count). Set 0 to skip. Higher values are slower and use more API calls. Max 12. |
maxItems | integer | optional | Maximum number of tracks to return across all keywords. Set 0 for as many as the search returns. Capped at 100 per call. |
Each result contains
| Field | Type | Description |
|---|---|---|
query | string | Query |
audioClusterId | string | Audio Cluster Id |
audioAssetId | string | Audio Asset Id |
title | string | Title |
artist | string | Artist |
durationSeconds | number | Duration Seconds |
isExplicit | boolean | Is Explicit |
hasLyrics | boolean | Has Lyrics |
reelsCountText | string | Reels Count Text |
isTrending | boolean | Is Trending |
coverArtworkUrl | string | Cover Artwork Url |
previewUrl | null | Preview Url |
downloadUrl | string | — |
topReels | array | — |
Pick your tool and connect in under a minute. Then just ask — for example: “Pull the last 20 posts from @natgeo and tell me which formats get the most engagement.”
Connect Claude
Web, desktop and mobile. Paste one URL.
Adds the Sourcelane MCP server with your key as a header.
claude mcp add --transport http sourcelane https://api.usesourcelane.com/mcp \
--header "Authorization: Bearer sl_live_your_agent_key"Alternative to the connector URL: add to claude_desktop_config.json, then restart Claude.
{
"mcpServers": {
"sourcelane": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.usesourcelane.com/mcp",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer sl_live_your_agent_key"
}
}
}
}Add to ~/.cursor/mcp.json (or Windsurf's mcp_config.json).
{
"mcpServers": {
"sourcelane": {
"url": "https://api.usesourcelane.com/mcp",
"headers": {
"Authorization": "Bearer sl_live_your_agent_key"
}
}
}
}Save as .vscode/mcp.json. VS Code prompts for your key once.
{
"servers": {
"sourcelane": {
"type": "http",
"url": "https://api.usesourcelane.com/mcp",
"headers": {
"Authorization": "Bearer ${input:sourcelane-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "sourcelane-key",
"description": "Sourcelane agent key",
"password": true
}
]
}Create a GPT → Actions → Import from URL, then Authentication: API Key, Bearer.
https://usesourcelane.com/openapi.jsonOne POST. Pass maxResults to cap cost.
curl -X POST https://api.usesourcelane.com/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"instagram-music-scraper","params":{"queries":["espresso"],"maxItems":5},"maxResults":10}'Wrap the REST call as a tool, or point an MCP client at the endpoint.
import requests
res = requests.post(
"https://api.usesourcelane.com/v1/call",
headers={"Authorization": "Bearer sl_live_your_agent_key"},
json={
"listing": "instagram-music-scraper",
"params": {"queries":["espresso"],"maxItems":5},
"maxResults": 10,
},
timeout=300,
)
body = res.json()
print(body["receipt"]["chargedMicros"], "micro-USD for", body["receipt"]["results"], "results")
print(body["data"])—
0 reviews
Leave a review
Loading reviews…