CI
cipherc09-blip/threads-connect
GraphQL proxy API for Threads & Instagram data at scale — auto session management, TypeScript SDK, Cloudflare Workers
threads-connect
Unlock Threads Data at Scale
GraphQL proxy API for Threads & Instagram data — auto session management, TypeScript SDK, global Cloudflare Workers deployment.
Features
- Auto Session Management — Zero-maintenance cookie rotation & token refresh
- 15+ Endpoints — Users, posts, search, reposts, replies, followers, media, and more
- TypeScript SDK — Type-safe client with full IntelliSense support
- Sub-500ms Latency — Cloudflare Workers edge deployment, P95 globally
- Paginated Responses — Cursor-based pagination on all list endpoints
- Research-Ready — Designed for academic researchers and data analysts
Quick Start
TypeScript SDK (Recommended)
npm install threads-api-clientimport { ThredlyClient } from 'threads-api-client';
const client = new ThredlyClient({
apiKey: 'your-api-key', // get yours at thredly.dev
baseUrl: 'https://thredly.dev/api',
});
// Resolve username → userId
const { userId } = await client.users.getInfo('zuck');
// Get profile
const profile = await client.users.getProfile(userId);
// Fetch posts (paginated)
const { posts, nextCursor } = await client.users.getPosts(userId);
// Search
const results = await client.search.top('AI research');REST API (cURL)
export API_KEY="your-api-key"
export BASE="https://thredly.dev/api"
# Get user info
curl -H "x-api-key: $API_KEY" "$BASE/user/info?username=zuck"
# Get user posts
curl -H "x-api-key: $API_KEY" "$BASE/user/12345/posts"
# Search Threads
curl -H "x-api-key: $API_KEY" "$BASE/search/top?q=threads"API Endpoints
User Endpoints
| Endpoint | Description | Parameters |
|---|---|---|
GET /api/user/info |
Resolve username to userId + basic info | username |
GET /api/user/:userId |
Full user profile | userId |
GET /api/user/:userId/posts |
User's posts | userId, cursor? |
GET /api/user/:userId/reposts |
User's reposts | userId, cursor? |
GET /api/user/:userId/replies |
User's replies | userId, cursor? |
GET /api/user/:userId/followers |
User's followers | userId, cursor? |
GET /api/user/:userId/following |
Accounts user follows | userId, cursor? |
GET /api/user/:userId/media |
Media posts only | userId, cursor? |
Post Endpoints
| Endpoint | Description | Parameters |
|---|---|---|
GET /api/post/id-by-url |
Resolve post URL to postId | url |
GET /api/post/:postId |
Full post details | postId |
GET /api/post/:postId/related |
Related posts | postId |
GET /api/post/:postId/comments |
Post comments | postId, cursor? |
GET /api/post/:postId/activity |
Engagement activity | postId |
GET /api/post/:postId/impressions |
Impression metrics | postId |
Search Endpoints
| Endpoint | Description | Parameters |
|---|---|---|
GET /api/search/top |
Top results for query | q, cursor? |
GET /api/search/recent |
Most recent results | q, cursor? |
GET /api/search/profiles |
User profile search | q, cursor? |
Examples
See the examples/ directory:
examples/typescript/basic-user.ts— Fetch a user profileexamples/typescript/bulk-posts.ts— Paginated post collectionexamples/typescript/search.ts— Search top/recent/profilesexamples/curl/quickstart.sh— cURL quickstart
Resources
| Resource | Link |
|---|---|
| Full documentation | thredly.dev/docs |
| TypeScript SDK | threads-api-client on npm |
| SDK source | thredly-examples |
| API reference | docs/api-reference.md |
| Get API key | thredly.dev |
Contributing
Contributions are welcome. See CONTRIBUTING.md for guidelines.
License
MIT — see LICENSE
thredly.dev · Built on Cloudflare Workers · Not affiliated with Meta
On this page
Contributors
MIT License
Created September 28, 2025
Updated February 26, 2026