Social platforms

Search Instagram audio · Instagram API

GET/instagram/search/audio
$min $0.003

Returns Instagram audio tracks (songs and original audio) that match a keyword, with ids for /instagram/audio/{id}.

Using ChatGPT, Claude Code or another client? See the setup steps

Request
curl https://api.unifapi.com/instagram/search/audio?query= \
  -H "Authorization: Bearer $UNIFAPI_KEY"

Parameters

queryqueryrequired
Song or sound to search for.
Overview

This operation is part of the Instagram API in the social platforms category. It uses the same Bearer token, request tracing, error model, and billing envelope as every UnifAPI endpoint, so agents can switch between platforms without custom per-vendor glue code.

Use it when a workflow needs Instagram public data alongside other social networks, but should still keep one API key, one account balance, and one predictable JSON contract.

Common agent workflows

  • Search Instagram for public mentions, creators, posts, or topics matching a user query.
  • Feed ranked Instagram results into research, monitoring, and enrichment workflows.
  • Give an AI agent a stable Instagram data source without building a per-platform integration.
  • Normalize Instagram responses into the same UnifAPI envelope used across the catalog.
Response shape

Unified envelope, platform-native fields

  • List-style responses return `data` as an array of top-level records plus optional `pagination` for continuation tokens or cursors.
  • The operation has a 3 credits ($0.003) minimum charge, so `billing.records_charged` can be higher than the visible records returned.
  • If the workspace balance cannot cover every result, the response can be truncated and `billing.truncated_due_to_balance` tells the caller why.

Response status codes

200400401402404429500502503

Billing

This operation charges 1 credit per billable record, with a 3 credits ($0.003) operation minimum. Public responses include billing metadata with credits charged, records charged, and remaining workspace balance. Incorrect Credit deductions caused by platform failures can be restored as billing corrections.

Errors and retries

Authentication, validation, rate-limit, not-found, and provider errors use the unified UnifAPI error format. Agents should log `request_id`, retry only retryable failures, and treat invalid API keys, disabled keys, and expired keys as the same public `unauthorized` error type.

Response fields

Fields on each record in data

A successful Search Instagram audio call returns data as an array; each record carries these fields (12 of 14 shown — the docs list the full schema).

idstring | null
Audio id. The audio endpoints take it as `audio_id`, and it matches `audio.id` on a Reel.
asset_idstring | null
A second id Instagram gives some audio, set only when it differs from `id`. If `GET /v2/instagram/audio/{audioId}` answers not_found for an `id` from search, try `asset_id`. Null when none.
titlestring | null
Song or sound title.
artiststring | null
Artist name.
artist_handlestring | null
Username of the account behind the audio: the creator of original audio, or the artist's account for licensed music when Instagram links one. Null when none or not reported.
duration_msnumber | null
Length in milliseconds.
is_originalboolean | null
Whether it is original audio rather than licensed music.
is_explicitboolean | null
Whether it is marked explicit.
reel_countnumber | null
Reels using it, as an exact count. Null when Instagram only gives a rounded figure (such as 2.5M).
is_trendingboolean | null
Whether Instagram marks it trending.
cover_urlstring | null
Cover art. Null for original audio. Instagram CDN URL; it expires after a while.
preview_urlstring | null
Short audio clip of the track. Null for original audio and when Instagram gives none. Instagram CDN URL; it expires after a while.