Production-ready developer examples for extracting Instagram Reels transcripts with the Apify Actor apple_yang/instagram-transcripts-scraper.
This repository helps developers validate the Actor and integrate transcript extraction into apps, internal tools, databases, batch workflows, and AI/MCP workflows.
It includes cURL, Python, Node.js, Java, Go, and Rust examples.
- Actor page: Instagram Transcripts Scraper
- Actor ID:
apple_yang/instagram-transcripts-scraper
-
Create a local environment file:
cp .env.example .env
-
Add your Apify token:
APIFY_TOKEN='your_apify_token_here' APIFY_ACTOR_ID='apple_yang/instagram-transcripts-scraper' INSTAGRAM_SESSIONID='' MAX_CONCURRENCY=3
-
Run the cURL quick validation example with a Reel URL as runtime input:
bash examples/curl/single-url-sync.sh "https://www.instagram.com/reel/your_reel_id/" -
Choose a language example for production integration:
| Language | Single URL | Batch CSV | Directory |
|---|---|---|---|
| cURL | Yes | No | examples/curl/ |
| Python | Yes | Yes | examples/python/ |
| Node.js | Yes | Yes | examples/nodejs/ |
| Java | Yes | Yes | examples/java/ |
| Go | Yes | Yes | examples/go/ |
| Rust | Yes | Yes | examples/rust/ |
If you want to test Instagram transcript extraction without writing code, try the web demo built on top of this API: https://www.transcript365.com
The API examples in this repository can also be used as building blocks for AI agents and LLM workflows.
For MCP-compatible clients, start with the practical setup hub:
Platform-specific guides:
- ChatGPT via Apify MCP
- Claude via Apify MCP
- Gemini CLI via Apify MCP
- Cursor and VS Code via Apify MCP
Analysis and prompt resources:
- Build transcript extraction into your own app.
- Process batches of Instagram Reel URLs.
- Feed transcript text into internal tools, databases, or content analysis pipelines.
- Avoid maintaining your own video download and transcription infrastructure.
You must provide your own Apify API token.
Do not hard-code tokens in source code, scripts, docs, commits, logs, screenshots, or shared output files.
Configuration belongs in .env:
APIFY_TOKENAPIFY_ACTOR_IDINSTAGRAM_SESSIONIDMAX_CONCURRENCY
Instagram Reel URLs are runtime input:
- Single URL examples accept a CLI argument.
- Batch examples read URLs from
sample-data/instagram-reel-urls.csv.
{
"videoUrl": "https://www.instagram.com/reel/your_reel_id/",
"sessionid": ""
}videoUrl is the Reel URL for the current request.
sessionid is optional configuration and should remain blank unless your
integration requires it.
textsegmentstitleuserNamelikeCountcommentCountvideoUrlaudioUrlerrMsgurl
See docs/input-output-fields.md for the full field reference.
.
├── docs/
│ ├── ai-agent-use-cases.md
│ ├── batch-processing-guide.md
│ ├── error-handling-and-retries.md
│ ├── input-output-fields.md
│ ├── production-integration-checklist.md
│ ├── prompt-recipes-for-reels-analysis.md
│ ├── use-with-apify-mcp.md
│ ├── use-with-chatgpt-mcp.md
│ ├── use-with-claude-mcp.md
│ ├── use-with-cursor-vscode-mcp.md
│ └── use-with-gemini-cli-mcp.md
├── examples/
│ ├── curl/
│ ├── go/
│ ├── java/
│ ├── nodejs/
│ ├── python/
│ └── rust/
├── sample-data/
│ └── instagram-reel-urls.csv
├── sample-output/
│ └── .gitkeep
├── .env.example
├── .gitignore
├── LICENSE
└── README.md
This project is licensed under the MIT License.