Fadr APIfadr.com ↗
Access Fadr's public music data via API: browse remix packs, fetch audio asset metadata (tempo, key, stems), and retrieve active contest details.
What is the Fadr API?
The Fadr API exposes 4 endpoints covering the platform's public music library, including remix packs, individual audio assets, and remix contests. The get_asset endpoint returns per-track metadata fields such as tempo, key, sample rate, stems, MIDI IDs, and engagement counts. You can enumerate the full public catalog through get_public_assets or navigate curated collections through get_packs, making it straightforward to inventory Fadr's licensed audio content programmatically.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/b05a61a8-1ee5-40c8-ad68-dd46866c7982/get_packs' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace fadr-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""
Explore Fadr's music platform: browse remix packs, look up asset details,
and discover active contests.
"""
from parse_apis.fadr_music_platform_api import Fadr, Pack, Asset, Contest
fadr = Fadr()
# List all remix packs
for pack in fadr.packs.list():
print(pack.name, pack.description, len(pack.asset_ids))
# Get detailed info for a specific asset from the first pack's assets
first_pack: Pack = next(iter(fadr.packs.list()))
asset: Asset = fadr.assets.get(asset_id=first_pack.asset_ids[0])
print(asset.name, asset.file_type, asset.like_count, asset.view_count)
print(asset.metadata.tempo, asset.metadata.key, asset.metadata.sample_rate)
# Browse all public assets
for public_asset in fadr.assets.list():
print(public_asset.name, public_asset.asset_type, public_asset.created_timestamp)
# Explore remix contests
for contest in fadr.contests.list():
print(contest.name, contest.slug, contest.start_date, contest.end_date)
Retrieve all available remix packs (library categories). Each pack contains a collection of licensed songs or loops organized by genre/theme. Returns the full list in a single response with no pagination.
No input parameters required.
{
"type": "object",
"fields": {
"packs": "array of pack objects with id, name, description, thumbnail_id, and asset_ids",
"total": "integer total number of packs"
},
"sample": {
"data": {
"packs": [
{
"id": "63b4fd2c639f3c22b8ed6f0d",
"name": "Demo Songs",
"asset_ids": [
"6338a399b373d30059cfd1f3"
],
"description": "A library of licensed songs for mashups and remixes.",
"thumbnail_id": "63bca6617bbb3dda2f139727"
}
],
"total": 25
},
"status": "success"
}
}About the Fadr API
Remix Packs and Public Asset Catalog
The get_packs endpoint returns every remix pack on Fadr — each object includes a pack id, name, description, thumbnail_id, and an asset_ids array you can use to drill into individual tracks. Packs are organized by genre and theme, so iterating them gives you a structured map of the library. get_public_assets returns the full flat list of public content with a total count, per-asset file_type, asset_type, engagement counts, and the same metadata block (tempo, key, sample_rate, source_type) as the detail endpoint.
Individual Asset Detail
Once you have an asset ID — a 24-character hex string like 63bca6617bbb3dda2f139727, obtainable from get_packs — get_asset returns the complete record for that asset. The response includes midi (array of MIDI IDs), stems (array of stem IDs), tags, listed and public boolean flags, and the metadata object with tempo, key, sample_rate, and source_type. This is the primary endpoint for building per-track detail pages or audio analysis pipelines.
Contests
The get_contests endpoint returns all remix contests on the platform. Each contest object includes id, name, slug, description, a collaborators list (artist names/handles), start and end dates, and external links including SoundCloud references. The total field gives the count of active and past contests. This endpoint is useful for monitoring new contest announcements or tracking which artists are running campaigns on the platform.
The Fadr API is a managed, monitored endpoint for fadr.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when fadr.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official fadr.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a remix pack browser that displays pack names, descriptions, and track lists sourced from
get_packs. - Construct a BPM/key index of Fadr's public catalog using the
metadata.tempoandmetadata.keyfields fromget_public_assets. - Monitor new remix contests and collaborating artists by polling
get_contestsfor updateddatesandcollaborators. - Fetch stem and MIDI availability for a specific track using
get_assetto determine whether a song has multitrack components. - Aggregate tag frequency across all public assets to identify genre trends on the platform.
- Sync contest SoundCloud links from
get_contestsinto a playlist or notification system. - Filter public assets by
file_typeorasset_typeto locate loops, stems, or full tracks separately.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Fadr have an official public developer API?+
What does `get_asset` return beyond basic metadata?+
get_asset returns midi (an array of MIDI IDs associated with the track), stems (an array of stem IDs), tags, listed and public boolean flags, user_id, file_type, and a metadata object containing tempo, key, sample_rate, and source_type. It does not return direct download URLs or waveform data — those fields are not exposed.Can I retrieve assets belonging to a specific user or filter by genre?+
get_public_assets or get_packs by user, genre, or tag. The endpoints return full unfiltered lists. You can fork this API on Parse and revise it to add a filtered endpoint that accepts query parameters for those fields.Does the API expose audio file download URLs or streaming links?+
get_asset and get_public_assets return metadata fields like file_type, tempo, and stems arrays, but no direct audio URLs or CDN links. You can fork this API on Parse and revise it to add an endpoint that resolves asset IDs to playback or download URLs if that surface becomes available.How are asset IDs obtained for use with `get_asset`?+
get_asset requires a 24-character hex asset_id. These IDs appear in the asset_ids arrays returned by get_packs, and also in the assets array returned by get_public_assets. Collect them from either of those endpoints before calling get_asset.