# Instagram Post Scraper via StableApify

> Instagram Post Scraper via StableApify is a paid API for AI agents from stableapify.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Scrapes Instagram posts by username, returning captions, engagement metrics, images, mentions, coauthors, and comments.

## Facts

- Endpoint: POST https://stableapify.dev/api/actors/apify/instagram-post-scraper/call
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/instagram-post-scraper-via-stableapify-6b2ba4fc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_zm0KSORpYwWw03bLjAm27

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability instagram-post-scraper-via-stableapify-6b2ba4fc -d '<json body>'
```

Example prompt: Pull all recent Instagram posts from the account @natgeo — I need the captions, like counts, comment counts, image URLs, and any tagged usernames for each post.

## When to prefer this

Use this endpoint when you need structured Instagram post data — captions, metrics, images, mentions — at low per-call cost ($0.01 USDC) without managing Apify credentials yourself. Prefer it over direct Apify API calls when you want a pay-per-use model with no subscription, or when operating in an x402 payment-enabled agent environment.

## Known failure modes

- Private or restricted account returns no posts
- Username not found returns empty dataset
- Instagram rate limiting may cause partial results
- Actor run timeout on accounts with very large post histories
- Payment failure if USDC balance is insufficient

## How this service works

Start the "Instagram Post Scraper" Apify actor (apify/instagram-post-scraper). Scrape Instagram posts. Just add one or more Instagram usernames and get your data in seconds including caption, metrics, images, mentions, coauthors, recent c…

## Output

Returns a dataset of Instagram posts for the specified usernames, each containing: post caption, like count, comment count, view count, image URLs, timestamp, tagged mentions, coauthor profiles, and recent comments.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "username",
    "skipPinnedPosts",
    "dataDetailLevel"
   ],
   "properties": {
    "username": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "description": "Insert the username or URL of any profile you want to get posts from. You can also paste the post URLs."
    },
    "resultsLimit": {
     "type": "integer",
     "maximum": 9007199254740991,
     "minimum": 1,
     "description": "This is the maximum number of posts you want to scrape per profile. If you set it to 5, you'll get 5 posts for each profile you've included. This setting does not apply if you're scraping by post URLs."
    },
    "dataDetailLevel": {
     "enum": [
      "basicData",
      "detailedData"
     ],
     "type": "string",
     "default": "detailedData",
     "description": "Choose the data package you want to extract. Please note the Detailed data are paid extra."
    },
    "skipPinnedPosts": {
     "type": "boolean",
     "default": false,
     "description": "Check if you do not want to save pinned posts."
    },
    "onlyPostsNewerThan": {
     "type": "string",
     "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(T[0-2]\\d:[0-5]\\d(:[0-5]\\d)?(\\.\\d+)?Z?)?$|^(\\d+)\\s*(minute|hour|day|week|month|year)s?$",
     "description": "Limit how far back to the history the scraper should go. The date should be in YYYY-MM-DD or full ISO absolute format or in relative format e.g. 1 days, 2 months, 3 years. All time values are taken in UTC timezone"
    }
   },
   "description": "Normalized actor input. See field descriptions for the simplified shape; native Apify input also accepted (passed through).",
   "additionalProperties": {}
  },
  "options": {
   "type": "object",
   "properties": {
    "build": {
     "type": "string",
     "maxLength": 100,
     "minLength": 1
    },
    "memory": {
     "type": "integer",
     "maximum": 32768,
     "minimum": 128
    },
    "maxItems": {
     "type": "integer",
     "maximum": 100000,
     "minimum": 1
    }
   },
   "description": "Optional Apify run options.",
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/instagram-post-scraper-via-stableapify-6b2ba4fc/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stableapify.dev](https://www.zero.xyz/host/stableapify.dev/llms.txt)
