# Hirescrape Instagram Scraper

> Hirescrape Instagram Scraper is a paid API for AI agents from www.hirescrape.com, paid per call via x402, $0.00225/call, status unknown (last checked 2026-09-13).

Scrapes Instagram profiles, posts, reels, comments, highlights, and search results in multiple modes via a pay-per-call API

## Facts

- Endpoint: POST https://www.hirescrape.com/api/tools/instagram
- Price: $0.00225/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Success rate: 0% of calls made through Zero
- Rating: 1.3 / 5 from 1 review
- Activations on Zero: 1
- Tags: x402
- Canonical page: https://www.zero.xyz/c/hirescrape-instagram-scraper-2964de37
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_qqKBdtGFiC_PgC9XLzyxE

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 hirescrape-instagram-scraper-2964de37 -d '<json body>'
```

Example prompt: Pull the last 50 posts from the Instagram account 'natgeo' — I need the captions, like counts, and media URLs — use the user_posts mode and return permanent media URLs.

## When to prefer this

Use this endpoint when you need to extract Instagram data (profiles, posts, reels, comments, highlights, or search) without managing Instagram API credentials, OAuth flows, or scraping infrastructure. Ideal for AI agents that need pay-per-call, no-subscription access to Instagram data settled in USDC via x402.

## Known failure modes

- Invalid or private Instagram handle returns empty items array
- Unsupported mode value causes validation error
- Rate limits or Instagram blocks result in empty or partial results
- Invalid pagination cursor causes 400 error
- Region not supported returns proxy error
- Missing required fields (e.g. handle for profile mode) returns schema validation error

## How this service works

Pay-per-call web scrapers for AI agents. 28 tools across Reddit, 8-board job search (LinkedIn · Indeed · Glassdoor · Google Jobs · +5), TikTok · Douyin · Bilibili, cross-platform trend research, social media, and ad libraries. No API keys. Agent wallets settle USDC on Tempo or Base via x402 + MPP.

## Output

A JSON object with an 'items' array containing scraped Instagram data (shape varies by mode — e.g. profile fields, post metadata, comments, reel info), plus a runId for audit, payment settlement summary, and run duration in seconds.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "id": {
   "type": "string",
   "description": "Object ID (ad / highlight / etc)."
  },
  "url": {
   "type": "string",
   "description": "Full URL of the target object."
  },
  "mode": {
   "enum": [
    "profile",
    "basic_profile",
    "user_posts",
    "post",
    "transcript",
    "search_reels",
    "post_comments",
    "user_reels",
    "highlights",
    "highlight_detail",
    "song_reels",
    "embed"
   ],
   "type": "string",
   "default": "profile",
   "description": "Which endpoint to call. Options: profile, basic_profile, user_posts, post, transcript, search_reels, post_comments, user_reels, highlights, highlight_detail, song_reels, embed."
  },
  "page": {
   "type": "integer",
   "description": "Page number (default 1)."
  },
  "trim": {
   "type": "boolean",
   "description": "Return a condensed response."
  },
  "limit": {
   "type": "integer",
   "default": 20,
   "maximum": 500,
   "minimum": 1,
   "description": "Max items to collect (applies to paginated modes)."
  },
  "query": {
   "type": "string",
   "description": "Search keyword."
  },
  "cursor": {
   "type": "string",
   "description": "Pagination cursor."
  },
  "handle": {
   "type": "string",
   "description": "Username / handle (without @)."
  },
  "max_id": {
   "type": "string",
   "description": "Pagination token."
  },
  "region": {
   "type": "string",
   "description": "Proxy / market region (e.g. US)."
  },
  "userId": {
   "type": "string",
   "description": "Instagram user ID."
  },
  "user_id": {
   "type": "string",
   "description": "Platform user ID (often faster than handle)."
  },
  "audio_id": {
   "type": "string",
   "description": "Instagram audio/song ID."
  },
  "date_posted": {
   "type": "string",
   "description": "Posting timeframe."
  },
  "next_max_id": {
   "type": "string",
   "description": "Pagination token."
  },
  "download_media": {
   "type": "boolean",
   "description": "Return permanent media URLs."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "required": [
   "items"
  ],
  "properties": {
   "items": {
    "type": "array",
    "items": {
     "type": "object"
    },
    "description": "Scraped items. Shape varies per tool â see each tool's outputSample for a concrete example."
   },
   "runId": {
    "type": "string",
    "description": "Run ID for debugging/audit."
   },
   "payment": {
    "type": "object",
    "description": "Settlement summary (protocol, amount, currency)."
   },
   "duration": {
    "type": "integer",
    "description": "Run duration in seconds."
   }
  }
 },
 "example": {
  "items": [
   {
    "note": "Shape varies per tool â see each tool's docs for fields."
   }
  ],
  "runId": "sc_example",
  "payment": {
   "amount": "0.040000",
   "currency": "USD",
   "protocol": "x402"
  },
  "duration": 4
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/hirescrape-instagram-scraper-2964de37/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from www.hirescrape.com](https://www.zero.xyz/host/www.hirescrape.com/llms.txt)
