# Instagram data API. Pay per request.

Stories, profiles, posts, reels, comments, followers, hashtags and places of any public account. One clean JSON shape for everything. **From $1.50 per 1,000 requests**, prepaid balance that never expires.

- 43 endpoints · JSON · no Instagram login
- Sign in with Telegram, get your key in a minute. No card.
- **1** request per call or page
- Stories **1** request
- Errors on our side **free**
- Up to **3** req/s

## Everything public on Instagram and TikTok, one key

Pick an endpoint to see a real answer. Paged lists return a `next_cursor`; pass it back for the next page.

### User

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/user/profile](https://storiesfly.com/developers/docs/user-profile) | Profile with verified badge, bio, link and counts | 1 |
| [GET /v1/user/about](https://storiesfly.com/developers/docs/user-about) | Country, join month and former usernames | 1 |
| [GET /v1/user/posts](https://storiesfly.com/developers/docs/user-posts) | Posts with likes, comments, views, shares, saves and reposts | 1 |
| [GET /v1/user/reels](https://storiesfly.com/developers/docs/user-reels) | Reels with captions, video and play counts | 1 |
| [GET /v1/user/tagged](https://storiesfly.com/developers/docs/user-tagged) | Posts the account is tagged in | 1 |
| [GET /v1/user/pinned](https://storiesfly.com/developers/docs/user-pinned) | Posts pinned to the top of the profile | 1 |
| [GET /v1/user/stories](https://storiesfly.com/developers/docs/user-stories) | Stories live now, with the length of each video | 1 |
| [GET /v1/user/highlights](https://storiesfly.com/developers/docs/user-highlights) | Highlight covers and titles | 1 |
| [GET /v1/user/followers](https://storiesfly.com/developers/docs/user-followers) | Followers, page by page | 1 |
| [GET /v1/user/following](https://storiesfly.com/developers/docs/user-following) | Accounts followed, page by page | 1 |
| [GET /v1/user/followers/search](https://storiesfly.com/developers/docs/user-followers-search) | Find someone among the followers | 1 |
| [GET /v1/user/following/search](https://storiesfly.com/developers/docs/user-following-search) | Find someone among the accounts followed | 1 |
| [GET /v1/user/reposts](https://storiesfly.com/developers/docs/user-reposts) | Posts and reels the account reposted | 1 |
| [GET /v1/user/suggested](https://storiesfly.com/developers/docs/user-suggested) | Similar accounts Instagram suggests | 1 |

### Post

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/post](https://storiesfly.com/developers/docs/post) | One post: media links, caption, views, likes, comments, shares, saves and reposts | 1 |
| [GET /v1/post/comments](https://storiesfly.com/developers/docs/post-comments) | Comments with likes and reply counts | 1 |
| [GET /v1/post/comment-replies](https://storiesfly.com/developers/docs/post-comment-replies) | Replies to a comment | 1 |
| [GET /v1/post/likers](https://storiesfly.com/developers/docs/post-likers) | Accounts that liked the post | 1 |
| [GET /v1/post/usertags](https://storiesfly.com/developers/docs/post-usertags) | People tagged in the post | 1 |
| [GET /v1/post/music](https://storiesfly.com/developers/docs/post-music) | The track used in a reel | 1 |
| [GET /v1/comment/likers](https://storiesfly.com/developers/docs/comment-likers) | Accounts that liked a comment | 1 |

### Stories

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/story](https://storiesfly.com/developers/docs/story) | One story by link or id | 1 |
| [GET /v1/highlight](https://storiesfly.com/developers/docs/highlight) | Every story in a highlight, by link or id | 1 |

### Hashtags

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/hashtag](https://storiesfly.com/developers/docs/hashtag) | A hashtag with its post count | 1 |
| [GET /v1/hashtag/posts](https://storiesfly.com/developers/docs/hashtag-posts) | Posts under a hashtag: top, recent or reels | 1 |

### Places

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/location](https://storiesfly.com/developers/docs/location) | Place name, address, city and coordinates | 1 |
| [GET /v1/location/posts](https://storiesfly.com/developers/docs/location-posts) | Posts tagged at a place: top or recent | 1 |
| [GET /v1/location/search](https://storiesfly.com/developers/docs/location-search) | Find places by name or around a point | 1 |

### Search

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/search/users](https://storiesfly.com/developers/docs/search-users) | Find accounts by name or username | 1 |
| [GET /v1/search/hashtags](https://storiesfly.com/developers/docs/search-hashtags) | Find hashtags, with their post counts | 1 |
| [GET /v1/search/places](https://storiesfly.com/developers/docs/search-places) | Find places by name | 1 |
| [GET /v1/search/music](https://storiesfly.com/developers/docs/search-music) | Find tracks by title or artist | 1 |
| [GET /v1/search/reels](https://storiesfly.com/developers/docs/search-reels) | Find reels for a text | 1 |
| [GET /v1/search/top](https://storiesfly.com/developers/docs/search-top) | The top posts for a text | 1 |

### TikTok

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/tiktok/video](https://storiesfly.com/developers/docs/tiktok-video) | One TikTok video without the watermark, with views, likes, comments and shares | 1 |
| [GET /v1/tiktok/user/profile](https://storiesfly.com/developers/docs/tiktok-user-profile) | TikTok profile with followers, following, likes and video count | 1 |
| [GET /v1/tiktok/user/videos](https://storiesfly.com/developers/docs/tiktok-user-videos) | A TikTok account's latest videos with their numbers | 1 |
| [GET /v1/tiktok/user/stories](https://storiesfly.com/developers/docs/tiktok-user-stories) | TikTok stories live now | 1 |

### Download

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/download](https://storiesfly.com/developers/docs/download) | Files of an Instagram post or reel, or a TikTok video, by link | 1 |

### Other

| Endpoint | What it returns | Requests |
| --- | --- | --- |
| [GET /v1/track](https://storiesfly.com/developers/docs/track) | Track title, artist, length and audio link | 1 |
| [GET /v1/resolve](https://storiesfly.com/developers/docs/resolve) | Turn a post, reel or share link into data | 1, or 2 for a share link |
| [GET /v1/shop/storefront](https://storiesfly.com/developers/docs/shop-storefront) | An account's shop: collections and first products | 1 |
| [GET /v1/shop/products](https://storiesfly.com/developers/docs/shop-products) | Products in a shop collection | 1 |
| [GET /v1/account](https://storiesfly.com/developers/docs/account) | Your plan, balance, free units and use | 0 |

## Every data request costs $1.50 per 1,000 today

One API, one key, one balance. Downloads have a fixed price at every level: TikTok $0.20, Instagram $0.50 per 1,000 downloads.

Lower rates for larger top-ups open soon, and top-ups made now count toward them. No subscription, no monthly minimum. The balance does not expire.

[Full pricing, examples and billing rules](https://storiesfly.com/developers/pricing)

| Level | Reached by | Per 1,000 requests | Per request | Requests per second | Status |
| --- | --- | --- | --- | --- | --- |
| Free | Signing in with Telegram | 100 requests, once | - | 1 | Open |
| Start | Top up from $10 | $1.50 | $0.0015 | 3 | Open |
| Growth | Top-ups totalling $100 | $0.95 | $0.00095 | 5 | Opens soon |
| Business | Top-ups totalling $300 | $0.80 | $0.0008 | 10 | Opens soon |
| Scale | Top-ups totalling $1,000 | $0.70 | $0.0007 | 15 | Opens soon |
| Enterprise | An agreement for 10 million requests a month and more | From $0.55 | From $0.00055 | By agreement | Write to us |

## You pay for answers, not for our errors

| Status | Code | Charged | When |
| --- | --- | --- | --- |
| `200` | `ok` | 1 request | The data you asked for |
| `404` | `not_found` | 1 request | The account or post does not exist |
| `403` | `private_account` | 1 request | The account is private |
| `400` | `bad_request` | free | A parameter is missing or wrong |
| `402` | `credits_exhausted` | free | Top up to continue |
| `429` | `rate_limited` | free | Too fast; wait for `Retry-After` |
| `5xx` | `upstream_unavailable` | refunded | Our side failed or timed out |

### What one request is

A data call, or one page of a list, at your level's rate. A download is one request at its fixed price: $0.20 per 1,000 for a TikTok link, $0.50 per 1,000 for an Instagram link. A download uses one free request while you have free requests left. The response headers say what was charged and what is left.

| Call | Requests |
| --- | --- |
| Profile, about, post, story | 1 |
| Stories of an account | 1 |
| Page of posts, reels, followers, comments | 1 |
| Resolve a share link (`/s/…`) | 2 |
| Download the files of a post (`download`), fixed price | 1 |
| Your balance and usage | 0 |

```text
X-Units-Charged: 1
X-Balance-Remaining: 23.4085
X-Free-Units-Remaining: 0
X-RateLimit-Remaining: 2
```

## Instagram Graph API or StoriesFly API

The Graph API is built for managing your own business account. It does not read other people's stories or follower lists.

|   | Instagram Graph API | StoriesFly API |
| --- | --- | --- |
| Read any public account | Business and Creator accounts only, through Business Discovery | Any public account |
| Stories of other accounts | No | Yes, with video length |
| Followers and following lists | No | Yes, paged |
| Views, shares, saves, reposts of a post | Only on your own posts | On any public post where Instagram shows them |
| Country and join date of an account | No | Yes (`user/about`) |
| App review, Facebook login | Required | Not needed: one API key |
| Price | Free, with per-app call limits | From $1.50 per 1,000 requests |

## Questions developers ask

### Do I need an Instagram account or login?

No. You send a username, an id or a link with your API key in the `X-Api-Key` header. You never log in to Instagram.

### Which accounts can I read?

Any public account. For a private account the profile still works; stories, posts and lists answer `private_account`.

### What counts as one request?

A data call, or one page of a list, at your level's rate. Resolving a share link costs 2. Checking your balance is free. A download is one request at its fixed price: $0.20 per 1,000 for a TikTok link, $0.50 per 1,000 for an Instagram link. A download uses one free request while you have free requests left.

### Are failed calls charged?

Only answers are charged: `200`, `not_found` and `private_account`. Bad parameters, rate limits and errors on our side cost nothing; a failure after the charge is refunded automatically.

### How do I pay?

Top up from $10 with crypto (USDT, BTC, ETH and more) or with TON and USDT on TON. The balance never expires.

### How fast and how fresh?

Up to 3 requests per second on the Start rate today; higher rates open soon, up to 15 on Scale. Stories are at most 3 minutes old, posts and comments at most 15 minutes, profiles at most 45 minutes.

### Is there an OpenAPI file for code generators and AI agents?

Yes. The full spec is at `/openapi.json`, and every docs page has a plain-text `.md` version.

### Can I get a lower rate for a large volume?

For 10 million requests a month and more, write to us. Rates for data requests start at $0.55 per 1,000.

### How much does downloading a reel or a TikTok video cost?

`download` returns only the files of a post, reel or TikTok video, at a fixed price at every level: $0.20 per 1,000 for a TikTok link, $0.50 per 1,000 for an Instagram link. It is the same API, key and balance as every other call.

## Your first 100 requests are on us

Sign in with Telegram, create a key, call any endpoint. Top up only when you need more.

- [Get my API key](https://storiesfly.com/developers/dashboard)
- [Read the docs](https://storiesfly.com/developers/docs)

## Links

- [This page on the site](https://storiesfly.com/developers)
- [Pricing](https://storiesfly.com/developers/pricing): rates, examples and billing rules
- [Documentation](https://storiesfly.com/developers/docs): quick start, authentication, errors and every endpoint
- [OpenAPI file](https://storiesfly.com/openapi.json): the whole API in one file
- [API dashboard](https://storiesfly.com/developers/dashboard): get a key and top up
- [Changelog](https://storiesfly.com/developers/changelog): what changed and when
