# Instadata: Instagram Data API > Profiles, posts, reels, comments, hashtags, places, Meta Ad Library ads and reel transcripts from public Instagram as JSON. One REST API, a hosted MCP server and agent skills. Base URL: https://api.instadata.dev. Auth: `Authorization: Bearer ik_live_...` (keys from https://instadata.dev/app/keys, 25 free credits at signup, no card; free keys return up to 5 items per list call). Every response is `{ data, meta?, request_id }`. Lists take `limit` (max 50 synchronous; more becomes a job) and `cursor`; any call takes `fresh=true`, `fields=a,b.c` and `format=json|csv|text`. Failed calls are never charged. Instadata is an independent API for publicly available Instagram data and is not affiliated with Instagram or Meta Platforms, Inc. ## Endpoints - GET https://api.instadata.dev/v1/instagram/transcript?url=… — 1 credit + 20 per started minute. Spoken words of a public reel or video post as plain text. 1 credit for the reel plus 20 per started minute of video. - GET https://api.instadata.dev/v1/instagram/summary?url=… — 4 credit + 20 per started minute. Short summary and key points of a public reel or video post, built on the same per-minute transcript. 4 credits plus 20 per started minute of video. - GET https://api.instadata.dev/v1/instagram/stats?url=… — 1 credit per post - GET https://api.instadata.dev/v1/instagram/comments?url=… — 1 credit per comment, paginated - GET https://api.instadata.dev/v1/instagram/channel-stats?handle=… — 1 credit per profile - GET https://api.instadata.dev/v1/instagram/channel-posts?handle=… — 1 credit per post, paginated - GET https://api.instadata.dev/v1/instagram/channel-reels?handle=… — 1 credit per reel, paginated - GET https://api.instadata.dev/v1/instagram/reels-search?query=… — 1 credit per result, paginated - GET https://api.instadata.dev/v1/instagram/download?url=… — 8 credits per video - GET https://api.instadata.dev/v1/instagram/profile-full?handle=… — 1 credit per profile - GET https://api.instadata.dev/v1/instagram/profile-about?handle=… — 4 credits per profile - GET https://api.instadata.dev/v1/instagram/similar?handle=… — 1 credit per profile - GET https://api.instadata.dev/v1/instagram/tagged?handle=… — 1 credit per post, paginated - GET https://api.instadata.dev/v1/instagram/hashtag-posts?query=… — 1 credit per post, paginated. Posts that carry the hashtag. - GET https://api.instadata.dev/v1/instagram/hashtag-reels?query=… — 1 credit per reel, paginated. Reels only (video) that carry the hashtag. - GET https://api.instadata.dev/v1/instagram/keyword-search?query=… — 1 credit per result, paginated. Posts found by Instagram's keyword search, including posts that never used the word as a hashtag. - GET https://api.instadata.dev/v1/instagram/hashtag-stats?query=… — 1 credit per hashtag. Numbers for one hashtag you already know: post count, posts per day and related tags. Returns no posts. - GET https://api.instadata.dev/v1/instagram/hashtag-analytics?query=… — 4 credits per hashtag. Everything hashtag-stats returns for one hashtag, plus its current top posts. - GET https://api.instadata.dev/v1/instagram/hashtag-search?query=… — 1 credit per hashtag, paginated. Finds hashtags matching a keyword, each with its post count and related tags. Returns hashtags, not posts; use hashtag-posts for the posts. - GET https://api.instadata.dev/v1/instagram/profile-search?query=… — 1 credit per profile, paginated - GET https://api.instadata.dev/v1/instagram/location-search?query=… — 1 credit per place, paginated - GET https://api.instadata.dev/v1/instagram/location-stats?query=… — 1 credit per place - GET https://api.instadata.dev/v1/instagram/location-posts?query=… — 1 credit per post, paginated - GET https://api.instadata.dev/v1/instagram/mentions?handle=… — 1 credit per post, paginated. Posts by other accounts that tag or @-mention the profile, in the standard post shape. - GET https://api.instadata.dev/v1/instagram/ads-search?query=… — 3 credits per ad, paginated. Ads in the Meta Ad Library matching a keyword, with the advertiser's Instagram handle when it has one. 3 credits per ad. - GET https://api.instadata.dev/v1/instagram/ads-by-page?query=… — 3 credits per ad, paginated. Ads one advertiser is running, from its Facebook Page URL or Ad Library page URL passed as query. 3 credits per ad. - GET https://api.instadata.dev/v1/instagram/collaborations?handle=… — 3 credits per collaboration, paginated. Paid-partnership posts, reels and stories between a creator and brands, for a creator's or a brand's profile. 3 credits per row. - GET https://api.instadata.dev/v1/instagram/profile-comments?handle=… — 1 credit per comment, paginated. Recent comments across a profile's latest posts, one row per comment with the post it was left on. comments is for one post you already have. ## MCP server - Streamable HTTP at https://mcp.instadata.dev (OAuth 2.1 with PKCE, or `Authorization: Bearer ik_live_...`). - Tools: get_transcript, get_summary, get_post_stats, get_comments, get_profile, get_channel_posts, search_hashtag, download_media, list_endpoints, call_endpoint. `list_endpoints` is free; `call_endpoint` reaches any path above. - Server card: https://instadata.dev/.well-known/mcp/server-card.json - Agent skills: https://instadata.dev/.well-known/agent-skills/index.json (`npx skills add nikhonit/instagram-api-skills`) ## Docs - [Quickstart](https://instadata.dev/docs/quickstart/): From signup to your first record in a few minutes. Get a key, send one GET, read the JSON. - [Authentication](https://instadata.dev/docs/authentication/): One bearer header. Create, name and revoke keys from the dashboard. - [Envelope and errors](https://instadata.dev/docs/envelope-and-errors/): What every response looks like, every error code, and what to retry. - [Pagination and jobs](https://instadata.dev/docs/pagination-and-jobs/): Cursors on every list, and how a request for more than 50 items becomes a job. - [Webhooks](https://instadata.dev/docs/webhooks/): Job completions and account events at your URL, signed with x-instadata-signature. - [Caching and freshness](https://instadata.dev/docs/caching-and-freshness/): The x-cache header, fresh=true, and what each freshness class means. - [Formats and fields](https://instadata.dev/docs/formats-and-fields/): JSON by default, CSV for lists, plain text for transcripts, and a fields parameter that trims any response. - [Rate limits](https://instadata.dev/docs/rate-limits/): Requests per minute by plan, what a 429 looks like, and how to back off. - [MCP server](https://instadata.dev/docs/mcp-server/): Connect Claude, ChatGPT, Cursor or any MCP client to mcp.instadata.dev and every endpoint becomes a tool. - [Machine-readable surfaces](https://instadata.dev/docs/machine-readable/): OpenAPI, llms.txt, the MCP server card and the agent-skills index, for tools that read the API without a human. - [Endpoint reference](https://instadata.dev/endpoints/) - [OpenAPI 3.1](https://instadata.dev/openapi.json) - [Pricing](https://instadata.dev/pricing/)