Twitter Following API | List Who a User Follows
Fetch the accounts a user follows, cursor-paginated. Returns full user objects. Page with next_cursor until the users array comes back empty (the follower graph keeps returning a non-null cursor even on the final page). Cost: $0.0008 per call.
User Following pages through every account a user follows, returned as cursor-paginated full user objects. Use it to map a profile's outbound graph and interests. The follower graph keeps returning a non-null cursor even on the final page, so stop when the users array is empty. Each page is one $0.0008 read.
Authorization
bearerAuth Pass your API key as a bearer token on every request: Authorization: Bearer <API_KEY>.
In: header
Query Parameters
Handle without the leading @.
Numeric user ID; provide either username or user_id.
Pagination cursor from a previous response.
Max items to return for this page. Default 20; clamped to 1-100.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/user/following?username=naval&user_id=44196397&count=20"{ "users": [ { "id": "2178758961", "username": "balajis", "name": "Balaji", "followers_count": 1000000, "verified": true } ], "next_cursor": "DAABCgABF..."}{ "error": "bad_request", "message": "Missing or malformed parameter. Fix the request before retrying."}{ "error": "unauthorized", "message": "The API key is missing, malformed, or revoked. Check the Authorization header."}{ "error": "insufficient_credits", "message": "Your balance is exhausted. Top up your credits to continue."}{ "error": "not_found", "message": "The resource does not exist, for example a deleted tweet or a private account."}{ "error": "rate_limited", "message": "Too many requests. Back off and retry with exponential backoff."}{ "error": "server_error", "message": "Something failed on our side. Retry with backoff; if it persists, contact support."}Pricing
| Unit | Price |
|---|---|
| Per call | $0.0008 |
| Per 1,000 calls | $0.80 |
| Per 1,000 records (~20 per call) | ~$0.04 |
Each page is one $0.0008 read, so a heavy-following account costs one call per page. Stop at the depth your graph analysis needs.
When to use
Use it to map who an account follows, for example profiling a buyer by the accounts they follow.
Pagination
This endpoint is cursor-paginated and returns roughly 20 records per call. Pass the next_cursor from each response back as the cursor parameter to read the next page. Stop when the records array comes back empty: follower-graph endpoints return a non-null cursor even on the final page, so the empty array is the only reliable stop signal. See Pagination for the full loop.
Related endpoints
- User Followers: Page through the accounts that follow a user.
- User Info by Username: Fetch a full profile by @handle.
- User Info by ID: Fetch a full profile by numeric user ID.
FAQ
What is the difference from User Followers?
User Followers returns accounts that follow the user; User Following returns the accounts the user follows. Both are cursor-paginated user objects.
When does paging stop?
Stop when the users array comes back empty. The cursor stays non-null even on the final page, so do not rely on it alone.
Is a v2 variant available?
Yes. User Following v2 returns the same data with a consistent cursor model and extra fields. Prefer it for new integrations.
User Followers GET
Fetch a user's followers, cursor-paginated. Returns full user objects. For large accounts, page with next_cursor until the users array comes back empty (the follower graph keeps returning a non-null cursor even on the final page). Cost: $0.0008 per call.
User Followers (v2) GETNew
The v2 variant of the followers endpoint. Same data, with a more consistent cursor model and additional user fields. Prefer v2 for new integrations. Cost: $0.0008 per call.