Introducing the Instagram APIRead more →

Instagram Topic API. Send a topic or hashtag, or its link.

Generated summary, related searches and reel count. We handle the proxies, blocks and platform changes.

Instagram Topic API at a glance

Returns an Instagram topic, the public page Instagram publishes for a search keyword, from its link, a hashtag link or its words. You get its title, Instagram's generated summary with the web pages it cites, the related searches Instagram suggests and how many reels it counts.

GET /v1/instagram/topic

Read the API reference
  • 1 credit per request, $0.75–$1.97 per 1,000 requests
  • 8 typed fields null when unknown
  • url is all it needs, e.g. https://www.instagram.com/popular/harry-potter/
  • 100 credits free when you sign up, no card, so you can build before you spend

Send one request. Get 8 fields back.

Copy the request in your language, or hand it to your agent. Sign up for an API key and your first 100 credits are free.

$ npm install socialtap
url = https://www.instagram.com/popular/harry-potter/
GET /v1/instagram/topicTry in
const params = new URLSearchParams({
  url: "https://www.instagram.com/popular/harry-potter/",
});
const res = await fetch(`https://socialtap.dev/v1/instagram/topic?${params}`, {
  headers: { "x-api-key": process.env.SOCIALTAP_API_KEY ?? "" },
});
const body = await res.json();
if (!res.ok) throw new Error(`${body.error.code}: ${body.error.message}`);
const { data, meta } = body;
console.log(data, meta.credits_charged);
200 OK · GET https://socialtap.dev/v1/instagram/topicLong arrays and strings are shortened here. Real responses are complete.Docs

One schema on 2 platforms.

The response reference lists every field, its type and when it is null. See the full schema.

  • Null means unknown

    A field Instagram doesn't show is null, never zero or an empty string, so a real zero always means zero.

  • What it accepts

    An Instagram topic page link (instagram.com/popular/harry-potter/), a hashtag link (instagram.com/explore/tags/cooking/, which opens its topic page for signed-out visitors), a keyword search link (instagram.com/explore/search/keyword/?q=harry%20potter), or the topic's words (harry potter).

  • Write one parser

    Instagram and Pinterest answer in these fields, so the code that reads one reads them all.

platformstring
Platform ID (instagram, tiktok, …).
idstring
Platform-native topic ID; on platforms whose topic pages are keyed by their words (Instagram), the words lowercased and joined by hyphens (harry-potter).
namestring
The topic's title as its page shows it (Harry Potter); null when the source does not show it.
urlstring
Canonical topic page URL.
descriptionstring
The platform's summary of the topic, as plain text with paragraph breaks (on Instagram, superscript markers ¹, ² cite platform_specific.instagram.source_urls by position). Null when the page has none.
related_searchesstring[]
Related searches the platform suggests for the topic, in its order; each is a topic of its own (pass it as url). [] when none.
approximate_fieldsstring[]
JSON paths of values rounded by the platform or parsed from display text ("189M reels": platform_specific.instagram.post_count). [] when all exact.
unknown_fieldsstring[]
JSON paths of lists whose [] means unknown rather than none (a source that cannot see them); null already means unknown for every other field. [] when every list is known.

What teams build with the Instagram Topic API.

  • See which sources a topic's summary cites

  • Expand a keyword into related searches

  • Size a topic by its reel count

  • Find topics to monitor for trends

Good to know before you build.

  • A topic's reels are Instagram's search results for its words: send the topic to the Instagram Search API.
  • Case, a leading # or @ and hyphens are ignored, so Harry Potter and harry-potter are one topic and harrypotter another.
  • Instagram publishes a page for many keywords but not all. A keyword without one is answered from Instagram's search when that has a summary, related searches or reels (name and reel count then null), and returns not_found when it has none.
  • The reel count is rounded as Instagram shows it and listed in approximate_fields. Rarer topics and categories show none.
  • Broad topics are Instagram categories (platform_specific.instagram.is_category), pages made of narrower topics, without a reel count.

1 credit per request. Failed requests are free.

Buy credits once and spend them on any endpoint, on any platform.

SourcePrice per successful requestPer 1,000 requests
Any source1 credit$0.75–$1.97
  • Cache hits are free.
  • Credits from packs and top-ups never expire.
  • A monthly plan's credits are spent first, and what is left of them ends at each renewal.
  • Prices exclude tax: sales tax is added at checkout where it applies.
  • Outside the US, plans and packs are sold to businesses: checkout asks for your VAT, GST or other business tax ID.

Questions about the Instagram Topic API.

More in the API reference.

Is this Instagram's popular page?
Yes. instagram.com/popular/<keyword>/ is the page Instagram shows logged-out visitors and search engines for a keyword, and the page its hashtag links open. This endpoint returns the topic's facts, and the Instagram Search API returns its reels.
What are the superscript numbers in the description?
Citations. ¹ is the first of platform_specific.instagram.source_urls, ² the second, and so on.
How much does the Instagram Topic API cost?
A request costs 1 credit. SocialTap credits cost $0.75–$1.97 per 1,000, depending on the plan or pack.

Try it on a link you already have.

Paste it in the playground, or copy the request into your code.

100free credits
  • No credit card
  • Failed requests are free
  • Works on all 218 endpoints
Start for free Read the docs