scraping-instagram-users-by-keyword — Claude Code skill
Collects Instagram profiles from keywords, handles, and URLs, with optional follower and following lists. Useful for account data exports and research.
npx skills add apidojo-io/apidojo-skills --skill scraping-instagram-users-by-keyword -a claude-codeWhat scraping-instagram-users-by-keyword does
This skill runs the apidojo~instagram-user-scraper actor on Apify and returns Instagram account data. Inputs can include keywords, handles, startUrls, or userIds; getFollowers and getFollowings request related lists, while maxItems caps the result size.
The recommended runner is scripts/run_actor.js, which can print a table or write results.csv and results.json. A REST request is also available with APIFY_TOKEN; when Apify MCP is available, the skill can use its call_actor tool. Returned fields include usernames, bios, follower and post counts, verification state, business-account details, and public contact fields.
Private accounts return profile metadata, but their follower and following lists are not available. A public email is returned when the account exposes one.
What it helps with
- find Instagram accounts from a keyword
- collect followers for selected profiles
- retrieve accounts followed by a profile
- export profile records as CSV or JSON
- gather public emails from business accounts
Example prompts for the agent
- Find Instagram users for these keywords and return their profile data.
- Collect followers for the handle
natgeo, cap the result withmaxItems, and save it toresults.csv. - Fetch the Instagram profile data for this URL, including the username, follower count, bio, and verification status.
How to install scraping-instagram-users-by-keyword
1Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill scraping-instagram-users-by-keyword -a claude-code2Manually: put the files in place
~/.claude/skills/scraping-instagram-users-by-keyword/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/scraping-instagram-users-by-keyword/
1Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill scraping-instagram-users-by-keyword -a codex2Manually: put the files in place
.agents/skills/scraping-instagram-users-by-keyword/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill scraping-instagram-users-by-keyword -a cursor2Manually: put the files in place
.cursor/skills/scraping-instagram-users-by-keyword/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install apidojo-io/apidojo-skills scraping-instagram-users-by-keyword2Manually: put the files in place
.github/skills/scraping-instagram-users-by-keyword/SKILL.md1Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill scraping-instagram-users-by-keyword -a gemini-cli2Platform CLI
gemini skills install https://github.com/apidojo-io/apidojo-skills --path skills/primitives/scraping-instagram-users-by-keywordManually: put the files in place
.devin/skills/scraping-instagram-users-by-keyword/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill scraping-instagram-users-by-keyword -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about scraping-instagram-users-by-keyword
How do I install scraping-instagram-users-by-keyword in Claude Code?
Run npx skills add apidojo-io/apidojo-skills --skill scraping-instagram-users-by-keyword -a claude-code. Then use the file ~/.claude/skills/scraping-instagram-users-by-keyword/SKILL.md.
What does scraping-instagram-users-by-keyword do?
The skill runs Instagram User Scraper on Apify to collect profiles and, when requested, follower or following lists. Its output includes profile fields, account counts, verification data, and available public contacts.
Can it retrieve followers from a private Instagram account?
No. A private account yields profile metadata, while its follower and following lists are not returned.
Source text
SKILL.md · Apache-2.0
---
name: scraping-instagram-users-by-keyword
description: >
Extracts Instagram user profiles, followers, and following lists using apidojo's Instagram
User Scraper on Apify. Triggers when the user asks to: find Instagram users by keyword or name,
get follower lists for Instagram accounts, get following lists for Instagram accounts, export
Instagram profile data in bulk, fetch public email addresses from Instagram business profiles,
search for Instagram users by username or handle, or build a dataset of Instagram account metadata.
Returns username, follower count, bio, post count, verification status, public email, and more.
Ideal for influencer researchers, outreach teams, and competitive intelligence analysts.
license: Apache-2.0
metadata:
author: apidojo
version: "1.0"
apify-actor: apidojo/instagram-user-scraper
---
# Scraping Instagram Users By Keyword
Raw data collection. No assumed use case — returns the full dataset for downstream analysis.
---
## Inputs
| Parameter | Type | Required | Default | Notes |
|-----------|------|----------|---------|-------|
| `keywords` | array | Optional | `[]` | Keywords to search for users |
| `handles` | array | Optional | `[]` | Instagram usernames (without @) |
| `startUrls` | array | Optional | `[]` | Instagram profile URLs |
| `userIds` | array | Optional | `[]` | Instagram user IDs |
| `getFollowers` | boolean | Optional | `false` | Extract follower lists for each profile |
| `getFollowings` | boolean | Optional | `false` | Extract following lists for each profile |
| `maxItems` | number | Optional | Unlimited | Maximum users to return |
| `customMapFunction` | string | Optional | — | JavaScript function to transform each output object |
## How to Run
### Using run_actor.js (recommended)
```bash
# Quick answer (table)
node scripts/run_actor.js --actor "apidojo~instagram-user-scraper" --input '{"handles": ["natgeo"], "getFollowers": false, "maxItems": 50}'
# Save as CSV
node scripts/run_actor.js --actor "apidojo~instagram-user-scraper" --input '{"handles": ["natgeo"], "getFollowers": false, "maxItems": 50}' --output results.csv --format csv
# Save as JSON
node scripts/run_actor.js --actor "apidojo~instagram-user-scraper" --input '{"handles": ["natgeo"], "getFollowers": false, "maxItems": 50}' --output results.json --format json
```
### REST API fallback
```bash
curl -X POST "https://api.apify.com/v2/acts/apidojo~instagram-user-scraper/runs" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"handles": ["natgeo"], "getFollowers": false, "maxItems": 50}'
```
If Apify MCP is available:
Use the Apify MCP `call_actor` tool with actor `apidojo~instagram-user-scraper` and the input above.
---
## Output Fields
| Field | Type | Description |
|-------|------|-------------|
| `id` | string | Instagram user ID |
| `username` | string | @username |
| `fullName` | string | Display name |
| `biography` | string | Profile bio text |
| `externalUrl` | string | Link in bio (website) |
| `followerCount` | number | Follower count |
| `followingCount` | number | Following count |
| `postCount` | number | Total posts |
| `isVerified` | boolean | Verification status |
| `isBusinessAccount` | boolean | Business account flag |
| `businessCategoryName` | string | Business category |
| `profilePicUrl` | string | Profile picture URL |
| `profilePicUrlHd` | string | High-resolution profile picture URL |
| `isPrivate` | boolean | Private account flag |
| `publicEmail` | string | Public email (if available) |
| `publicPhoneNumber` | string | Public phone (if available) |
| `contactPhoneNumber` | string | Contact phone (if available) |
## Edge Cases
- **Private account**: Returns profile metadata but no followers/following.
- **No public email**: publicEmail field absent — normal for personal accounts.
- **Large follower list**: Set maxItems limit to avoid excessive cost.
- **Account not found**: Returns empty result. Check handle spelling.
- **Keyword returns many**: Use maxItems to cap results.
© apidojo · Apache-2.0 · apidojo-io/apidojo-skills