Skip to main content
Find relevant people on X (Twitter) using six discovery techniques. Each starts from a different signal: profile keywords, followers, Community membership, recent tweets, verification status, or engagement with a specific post. Combine the results by user ID to build a deduplicated audience. For a narrative walkthrough, see How to Find Your Target Audience on Twitter Using the API.

Choose a technique

Page sizes vary. Use next_cursor to continue; do not treat a short page as the end.

Setup and shared pagination

All examples use https://api.sorsa.io/v3 and require the ApiKey header. Run Python examples in the same script after this setup. Install requests with python -m pip install requests, then set the SORSA_API_KEY environment variable. JavaScript examples require a server-side runtime with fetch, such as Node.js 18 or later.
max_pages limits request usage; reaching it can leave more results unread. These examples stop on HTTP errors. For production jobs, add bounded retries for 429 and transient server errors using Error Codes, and coordinate all workers that share a key under the rate limit. See Authentication and Pagination for shared mechanics. Endpoint: POST /v3/search-users Search for accounts by keyword or phrase, such as a role, title, or interest. Inspect the returned bio, display name, and handle to decide whether each result matches your audience.

Python

JavaScript

Technique 2: Competitor Follower Extraction

Endpoint: GET /v3/followers Retrieve followers of a relevant public account, up to 200 profiles per request. Provide one of username (without @), user_id (a string), or user_link (a full profile URL). Pass an optional next_cursor to continue.

Overlap across multiple seed accounts

Count each user once per seed account. Replace the placeholder handles before running:
This measures overlap in the pages you retrieved, not necessarily the full follower lists. See Followers and Following for a deeper walkthrough.

Technique 3: Community Member Discovery

Check availability first: This section documents the Community request format. Confirm current data availability with support before adding it to a new workflow; see Lists and Communities.
Endpoint: POST /v3/community-members Retrieve the members of an X Community. Membership is a useful interest signal, but does not establish current activity or purchase intent.
community_link accepts the numeric ID as a string or a full Community URL.
The response contains compact profiles: id, username, display_name, profile_image_url, verified, and protected. Before filtering on bio or follower counts, enrich the IDs through User Profile (Batch), up to 100 IDs per call. See Lists and Communities for related endpoints.

Technique 4: Intent-Based Tweet Mining

Endpoint: POST /v3/search-tweets Search recent discussions and extract unique authors. Keep each full user object so it can be combined with profile and follower results later.

Common query patterns

Replace bracketed placeholders with your category, handle, tool, or topic. Parentheses keep shared filters attached to both sides of OR. For a defined observation window, add since: and until: filters. Review the matching posts before treating a keyword match as buying intent. See Search Operators and Search Tweets.

Technique 5: Verified Follower Analysis

Endpoint: GET /v3/verified-followers Retrieve verified followers using the same identifier and pagination pattern as /followers. Verification status is a segment attribute; assess relevance separately.

Technique 6: Retweeters and Quoters

Endpoints: POST /v3/retweeters, POST /v3/quotes /retweeters returns user profiles. /quotes returns quote tweet objects, with the quoting user in user and their commentary in full_text.
The helper get_quoters converts quote tweets into unique user profiles for the workflow below. If you need commentary, keep the original quote_tweets and analyze full_text before this conversion.

Combining Techniques

Combine lists of user objects by string ID, preserving the set of sources for each account. A higher source count means an account appeared in more of your selected inputs; it is a prioritization heuristic, not a confidence score.
Add Community members after enriching their compact profiles. You can also add the user lists returned by get_retweeters and get_quoters.

Filtering for Quality

Use explicit selection criteria for your project. This filter checks profile completeness, account age, and basic counts. It does not detect bots or establish recent activity; inspect recent tweets when activity matters.
Accounts with missing or unparseable creation dates are excluded by this example. Adjust that policy and the thresholds to your use case.

Exporting to CSV

Export user objects after deduplication and filtering. Convert tweet results to their user objects first; enrich compact Community profiles if you need the missing fields.
Missing values remain blank rather than becoming zero. When importing the CSV into a spreadsheet, set the user_id column to text to preserve the full ID.

Next Steps