Find Every Instagram Post That Tags Your Brand (UGC Discovery API)
Collect the user-generated content creators have tagged a brand in, then pull the full-resolution photos and videos for the posts you want - the backbone of UGC campaigns, ambassador tracking and repost workflows.
- /v1/profile/tagged
- /v1/post/media
When customers love a product they tag the brand - and those posts land on the brand's Tagged tab, not its own grid. /v1/profile/tagged turns that tab into a JSON feed you can monitor, so no piece of UGC slips past your social team.
Try it free in your browser, no key needed →
Paste a URL, see the result as a table and export it. Come back here for the code when you want it automated.
1. Pull the Tagged tab
Pass the brand's profile and a count. Each result is a full post object: URL, caption, timestamp, like and comment counts, media type and thumbnail. These posts belong to the creators who tagged the brand, not to the brand itself.
2. Get the creator and full-resolution media
For the posts worth featuring, /v1/post/media returns the direct CDN URL of every photo and video (one entry per carousel slide) plus the creator's username - everything you need to reach out and ask permission to repost.
Tips
- Run it daily and diff shortcodes to get a "new UGC" alert.
- Sort by
like_countto surface your best-performing fan content first. - Always get the creator's permission before reposting their content.
Full example (Python)
# Get an API key: https://rapidapi.com/goodstobkal-goodstobkal-default/api/instagram-scraper57
HOST = "YOUR-API-HOST.p.rapidapi.com"
HEADERS = {"x-rapidapi-key": "YOUR_RAPIDAPI_KEY", "x-rapidapi-host": HOST}
BASE = f"https://{HOST}"
import requests
tagged = requests.get(
f"{BASE}/v1/profile/tagged",
params={"channel_url": "eufy", "count": 100},
headers=HEADERS,
timeout=330,
).json()["posts"]
best = sorted(tagged, key=lambda p: p["like_count"] or 0, reverse=True)[:5]
for post in best:
media = requests.get(
f"{BASE}/v1/post/media",
params={"post_url": post["url"]},
headers=HEADERS,
timeout=120,
).json()
print(f'@{media["owner"]["username"]} {post["like_count"] or 0:,} likes {post["url"]}')
for item in media["media"]:
print(" ", "video" if item["is_video"] else "photo", item["url"])Replace YOUR-API-HOST and YOUR_RAPIDAPI_KEY with the values from the listing's Endpoints tab on RapidAPI.
Frequently asked questions
How do I find Instagram posts that tag my brand?
Call /v1/profile/tagged with your brand's username. It returns the posts on the brand's Tagged tab - the content other accounts tagged it in.
Can I download the full-resolution photos and videos?
Yes. /v1/post/media returns direct CDN URLs for every photo and video in a post, one entry per carousel slide.
Can I repost the UGC I find?
Only with the creator's permission. The API gives you the creator's username so you can ask.