Instagram Video Download API
One authenticated GET request returns a public Instagram post's URL, caption, creator, and engagement metrics as clean JSON — ready for downloader workflows and data pipelines.
- One REST Endpoint
- URL Or Post ID Input
- Structured JSON Output
- Post And Creator Context
- Predictable Error Codes
- Samples In Five Languages
Request examples
curl "https://api.agentbody.io/v1/instagram/post?post_id=1234567890123456789&url=https%3A%2F%2Fwww.instagram.com%2Fp%2FDcLs3w6GZGH%2F" \
-H "Authorization: Bearer <YOUR_AGENTBODY_API_KEY>"Response examples
Documented responses from the OpenAPI specification.
Successful Gateway result.
{
"id": "example_id"
}Features
Use the Instagram Video Download API to fetch public post details — URL, caption, creator, and engagement metrics — for downloader-style products, research pipelines, and content monitoring.
One REST Endpoint
Call GET /v1/instagram/post with a bearer API key and a public post URL or post ID. The Instagram video download API returns that post's details through a documented HTTP request, so your application can retrieve post information without maintaining a browser-driven scraper or an unofficial client SDK.
URL Or Post ID Input
Submit the public post URL directly, or the post identifier extracted from it — whichever your pipeline already has. Both resolve to the same structured response, so integrations can accept links from users without a separate parsing step.
Structured JSON Output
Receive id, url, name, text, username, media_type, created_at, and a metrics object with view, like, comment, and share counts in a predictable JSON response. This structure fits services that store post records, build collections, or feed downstream analysis pipelines.
Post And Creator Context
Every response pairs the post URL with its caption, creator username, and posting date. Downloader workflows, archiving systems, and research tools get a complete, citable record of the public post instead of a bare link with no context.
Predictable Error Codes
Handle failures with documented status codes: 400 for an invalid request, 401 for a missing or bad API key, 402 for insufficient balance, and 502, 503, or 504 for temporary upstream issues. Each response identifies the problem class, so retry and alerting logic stays simple.
Samples In Five Languages
This page generates request examples in curl, JavaScript, Python, Java, and Go directly from the API's OpenAPI definition. Adopt the language and HTTP client your stack already uses, and keep the integration as one standard authenticated GET.
How to use
Follow these six steps to call the Instagram Video Download API, pass a public post URL or ID, and process the returned details in your application.
Create An API Key
Create an AgentBody account and generate an API key in the console. Keep the key in your server environment or an approved secret store and send it as a bearer token. Never place a live key in browser code, public repositories, or client-side bundles.
Choose A Public Post
Pick the public Instagram video or reel whose details you need and copy its URL or extract the post ID. Private posts, deleted posts, and stories will not resolve — prepare alternates when your workflow needs coverage.
Build The GET Request
Send an authenticated GET request to /v1/instagram/post with the url or post_id query parameter. The generated examples on this page show the exact request in curl, JavaScript, Python, Java, and Go for the HTTP client your service already uses.
Keep The Key Server-Side
Call the endpoint from your backend, a serverless function, or a scheduled job — anywhere the API key stays out of the browser. If you expose the lookup to end users, proxy it through your own endpoint so the key and billing stay under your control.
Parse The JSON Response
Read the returned id, url, name, text, username, media_type, created_at, and metrics fields. Store only the fields your product needs, keep the post URL paired with its creator and caption context, and align retention with your own privacy policy.
Handle Errors Correctly
Fix 400 responses by correcting the request, 401 by configuring a valid key, and 402 by topping up balance. Retry 502, 503, and 504 responses with backoff, since they indicate temporary upstream conditions rather than a permanent problem with the post.
Frequently asked questions
What is the Instagram Video Download API?
The Instagram Video Download API is an authenticated GET endpoint, /v1/instagram/post, that returns the details of a public Instagram post — its URL, caption, creator username, posting date, media type, and engagement metrics — as structured JSON. Send a public post URL or post ID with your bearer API key and process the response in your application.
Is there a free Instagram video download API?
You can start with a free AgentBody account, and every call runs on your account's credits, so the API is free to try before committing to volume. Usage-based pricing is governed by the gateway rather than fixed numbers on this page — check the console for current per-call costs.
Can this replace an Instagram download API scraper setup?
Yes, for public post details. Instead of maintaining an Instagram download API scraper with browser automation, proxies, and parsing code, you call one documented REST endpoint and receive stable JSON fields. The API reads public data only, so it is not a way around private or deleted posts.
What does the download Instagram video API response include?
A successful response includes id, url, name, text, username, media_type, created_at, and a metrics object with views, likes, comments, and shares. The url field carries the post's link, and metrics capture engagement at request time. Use these fields directly in storage, search, or analysis workflows.
Does the API return video files or download links?
It returns structured post details including the post URL — not re-encoded media files. Your application works with the public post record: link, creator, caption, and stats. Media processing, if any, belongs to your own pipeline within Instagram's terms.
How do I handle API errors?
Correct the request shape on 400, fix your bearer key on 401, and resolve balance on 402. Treat 502, 503, and 504 as temporary upstream failures and retry with backoff. Log the status and error code before retrying so your pipeline can distinguish bad requests from transient issues.