You're viewing a demo portfolio

Join the waitlist
PRSM

get_audio_features_batch

Active

Tool of FreqBlog Music Metadata

declared in 1.27.2

Get audio features for MANY tracks in one call (up to 50 processed) — ideal for analysing a whole playlist at once. Identify each item by name (`track`/`artist`), by `isrc` (matched exactly first — best for CJK / K-pop / niche tracks whose fuzzy name-match misses), or both (ISRC first, name as the fallback). One bad entry never fails the batch. Items beyond the 50-per-call cap come back with `found: false` and `backfill_status: "over_limit"`; an item missing BOTH `track` and `isrc` comes back `"invalid_no_query"`. Neither is processed or charged — the response's `skipped` field counts them, so split a long list into calls of <=50 and resubmit any skipped rows. Returns counts (`found` / `not_found` / `skipped`) plus a per-track `results` array, where each entry's `result` is the same feature object as get_audio_features (or null when not found), and `isrc` is echoed back. An item is billed only when it returns features or queues an on-demand ingest; an ISRC/name with no match anywhere is free. For a single track, use get_audio_features.

Parameters schema

{
  "type": "object",
  "$defs": {
    "TrackQuery": {
      "type": "object",
      "title": "TrackQuery",
      "properties": {
        "isrc": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 15
            },
            {
              "type": "null"
            }
          ],
          "title": "Isrc",
          "default": null,
          "description": "ISRC, e.g. 'USUM71900001' (hyphens optional). Matched exactly first — resolves CJK/K-pop/niche tracks whose fuzzy name-match misses. Supply this OR `track`."
        },
        "track": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 200
            },
            {
              "type": "null"
            }
          ],
          "title": "Track",
          "default": null,
          "description": "Track title. Supply this OR `isrc` (or both — ISRC is matched exactly first, the name is the fallback)."
        },
        "artist": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 200
            },
            {
              "type": "null"
            }
          ],
          "title": "Artist",
          "default": null,
          "description": "Artist name (optional, improves name-match accuracy)"
        }
      },
      "description": "One track to look up by name and/or ISRC. Supply `track` or `isrc` (or both); an item\ncarrying neither is skipped by the batch tool (`invalid_no_query`), not an error."
    }
  },
  "title": "get_audio_features_batchArguments",
  "required": [
    "tracks"
  ],
  "properties": {
    "tracks": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/TrackQuery"
      },
      "title": "Tracks",
      "maxItems": 200,
      "minItems": 1,
      "description": "List of {track?, artist?, isrc?} objects. Up to 50 are processed per call; any extra (up to 200 accepted) come back skipped. Each item should carry `track` or `isrc`."
    }
  }
}

What this tool wraps· 1 endpoint

min confidence0.700.50

Parent server

FreqBlog Music Metadata

1/7 registries
View full server →