Coming soonWe are adding Reddit endpoints and more updates.Request an endpoint
All use cases

Collect what people post about your brand, and put it on your site.

Watch hashtags and mentions across Instagram and TikTok. Publish approved posts with media links that never expire.

100 free requests, no card needed.

Product page · refreshed daily · Instagram and TikTokUGC gallery#summerdrop@yourbrand
Request rights · 2Publish 1 new
Collected this month128
Rights granted41
On site36
Removed this week2posts deleted by creators
@mira.editsOn site
@kofi.cutsOn site
@lena.clipsRights pending
@daan.filmsOn site
@juno.reelsRemoved · deleted
@s.okaforNew
@mvdbergOn site
@lin.uxRights pending
Media served from media.openhandle.dev, so tiles do not break when the platform rotates its URLs.refreshed 2026-09-02T06:00:09Z · live check before publish

For teams like TINT, Yotpo, Bazaarvoice, Flowbox, and Foursixty.

The problem

Why teams use Openhandle.

Basic scraperProduct page gallery · #summerdrop · Friday
PostAuthorMedia linkOn site
Post · Aug 30@mira.editscdn.platform/…/a81f.jpgShowing
Reel · Aug 30@kofi.cutscdn.platform/…/c22e.mp4Showing
Post · Aug 31@juno.reelsexpiredBroken tile

The platform rotated its media URLs on Thursday. Three tiles on the product page are broken images, and a customer noticed before you did.

OpenhandleProduct page gallery · #summerdrop · Friday
PostAuthorMedia linkOn site
Post · Aug 30@mira.editsmedia.openhandle.dev/m_8f3k2…Showing
Reel · Aug 30@kofi.cutsmedia.openhandle.dev/m_2c9df…Showing
Post · Aug 31@juno.reelsmedia.openhandle.dev/m_71ab0…Showing

Same posts. Stable media links served from our CDN, so the gallery renders the same on Friday. A deleted post returns not-found and leaves the wall on the next refresh.

Search hashtag posts, newest firstPage through recent hashtag posts. You can also find mentions in comments under your posts.
Media links that never expireWe serve requested media from our CDN. Your gallery stays intact when platform links expire.
Post ID, author, and posting time on every postAsk for permission from the row itself and store the consent next to it. The gallery and the rights log come from one record.
Daily refresh from cache, live check before publishingRefresh the pool from the 24-hour cache. Re-read a post live before it goes on the site. A deleted post comes back as not-found and drops off.

How it works

How a gallery stays alive.

  1. 01

    Watch tags and mentions

    Read the posts under your hashtags newest-first, and the comments under your own posts for mentions. Daily, from cache.

  2. 02

    Ask for rights, keep the receipt

    Every post carries its author, ID, and posting time. Request permission from that record and store the consent next to it.

  3. 03

    Publish on stable media, refresh daily

    Use the media links from the response. Re-read a post live before it goes up. If it comes back not-found, it comes down.

Posts under your hashtag
curl "https://api.openhandle.dev/v1/instagram/hashtags/summerdrop/posts?sort=recent&freshness=24h" \
  -H "Authorization: Bearer $OPENHANDLE_API_KEY"
200 OK
{
  "platform": "instagram",
  "resource": "posts",
  "capturedAt": "2026-09-01T06:00:09Z",
  "source": "cache",
  "data": [
    {
      "id": "DL8ma11pR2k",
      "author": { "id": "25025320", "handle": "mira.edits" },
      "createdAt": "2026-08-30T18:41:12Z",
      "media": [{ "type": "image", "url": "https://media.openhandle.dev/m_8f3k2…" }],
      "metrics": { "likes": 18211, "comments": 402 }
    },

  ],
  "nextCursor": "eyJvZmZzZXQiOjI0fQ"
}

Each post carries its author, its posting time, and stable media links served from our CDN. The gallery tile and the rights request come from one row.

Trust

Keep every gallery post tied to its source.

Proper invoicing

Card payment, an invoice for every charge. Nothing prepaid, nothing that expires.

A person answers

Chat directly with the people who build Openhandle through Crisp.

Documentation

Read how it works.

Send your agent ahead.

Paste the prompt into your agent and it sets everything up. Or come yourself, it takes five minutes.

For agents