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

Fetch anything you want from Instagram, TikTok, and X.

Openhandle returns public profiles, posts, comments, and metrics through one API. Responses use one format and usually arrive within one second. Pay only for completed requests. No credits or subscriptions.

For agents

100 free requests. No card needed.

One response shape. Click a number to learn more.

Every response shows when we captured the data. Pick live, 24-hour, 7-day, or free 30-day data.

GET /v1/tiktok/posts/7301442198832705
{
"platform": "tiktok",
"resource": "post",
"capturedAt": "2026-08-24T09:12:44Z",
"source": "live",
"data": {
"id": "7301442198832705",
"author": { "handle": "tiktok", "isVerified": true, … },
"media": [{ "type": "video", "url": "https://media.openhandle.dev/m_8f3k2…" }],
"metrics": {
"views": 1204411,
"likes": 88213,
"comments": 1522,
"shares": 40312,
"saves": 9917,
"reach": null
}
…more data
}
}
200 OK812mscharged $0.003
<1stypical live responsefrom request to response
<100mscached responseserved straight from our cache
100free requestsno card needed
curl "https://api.openhandle.dev/v1/instagram/profiles/@nasa" \
  -H "Authorization: Bearer $OPENHANDLE_KEY"
200 OK · 812ms

Get started

Up and running in seconds.

Point your agent at Openhandle. Or grab a key, set a budget, and let your agent take it from there.

Test keysTry every endpoint with test data. Test requests are free.
Docs as markdownAdd .md to any docs link to get plain Markdown.
SDKs includedUse our TypeScript, Python, or Go SDK.
MCP serverConnect your agent to every endpoint through our MCP server.

Reliability

Platforms change. Your integration doesn't.

You use one API. We deal with everything that breaks other social APIs.

200 OK200 OK

More than one way in

If something fails, we switch paths and keep going. You only see the answer.

openhandleother APIs
last 90 days

We handle platform changes

Instagram, TikTok, and X change often. We update Openhandle so your integration keeps working.

{
  "error": {
    "code": "UPSTREAM_DEGRADED",
    "message": "The upstream service is temporarily unavailable.",
    "retryable": true
  }
}
503 ·charged $0.00

We don’t charge for failures

If we cannot complete a request, you get a clear error and pay nothing.

Billing

You always know what you’ll pay.

Simple prices, hard caps, and the invoice comes afterwards. Here is what a month looks like.

  1. 01

    Every endpoint costs the same

    Profiles, posts, comments: same price. Your bill is requests times price, nothing else.

  2. 02

    Failed requests are free

    We only charge when you get a result. The 1,323 failures this month cost $0.00.

  3. 03

    The cap is a hard stop

    Set caps per API key and for the whole account. We stop before the cap, so you never exceed your budget.

  4. 04

    The invoice comes afterwards

    No credits, no top-ups. Pay after use. Every charge includes an invoice.

Calculate your spend
Monthly spendSeptember
hard cap · $250.00$140.00
Sep 1Sep 30
50,000 live requests
$130.00
20,000 cached requests
$10.00
1,323 failed requests
$0.00

Use cases

What people build with it.

Same API underneath. Payout platforms first, because money on wrong numbers hurts the most.

Comparison

Why teams switch.

Build the scrapers yourself, or rent them from a marketplace. Here is what each choice really costs.

Platform updatesYou stop everything and patchWaiting on the authorAbsorbed by failovers on our side
UptimeYou find out from your usersErrors returned as 2xx, counted as uptimeHonest error codes, failovers underneath
Response shapeWhatever you parseDifferent per actor or platformOne schema for all platforms
Data depthEmpty fieldsEmpty fieldsEnriched: shares, saves, and more
Media linksStore them yourselfURLs that expire in daysPermanent links, served from our CDN
BillingCompute, proxies, engineer timeMonthly plans per provider, quotas you never hitPay afterwards for answered requests
Failed requestsYour retry and on-call costOften billed anywayNever billed
Spend controlNever gets built, the scrapers come firstAuto top-ups or a dead keyHard caps per key and per month
SupportYou are the supportTicket queues, if anyDirect support from our team
Names and numbers live on the compare pages.See the comparisons

FAQ

Common questions.

Still stuck?Read the docsRun the quickstart

Or let your agent explain it:

Talk directly with our team.

Chat with the people who build Openhandle. No ticket maze.

Send your agent ahead.

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

For agents