Username Search & Cross-Platform Identity Resolution
Search usernames across 400+ social networks with target-network filtering, then confirm which account on a specific platform truly belongs to a known profile using transparent, signal-based confidence scoring.
Open in Apify Store$0.99 / 1K on Free
Short answer
Username Search & Cross-Platform Identity Resolution is an Apify Store Actor that returns 5 published output fields, including username, foundCount, verifiedCount, checkedCount. It lists $0.99 per 1,000 results on the Free plan (pay per event), $0.49 on the Business plan. It takes 16 input settings; one is required (mode). Last updated Nov 4, 2026.
From the public Store listing and published build schema, synced 2026-11-12.What it returns
5 fields from the published dataset schema. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
usernamefoundCountverifiedCountcheckedCountsearchMode
Input
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| mode | string | Yes | broadSearch | broadSearch: check usernames across networks (optionally filtered) and return every found profile with its status. identityResolution: disambiguate which candidate account on a target network matches a source profile. |
| usernames | array | No | – | Usernames to search for (mode=broadSearch). Accepts one to 500, but only maxUsernames (default 100) are processed per run; the status message and record warnings report any shortfall. Supports the {?} wildcard (e.g. 'john{?}doe' expands to 'john_doe', 'john-doe', 'john.doe'). A leading @ is ignored. |
| targetNetworks | array | No | – | Limit the search/resolution to these networks. Omit to check the 410-site safe sweep (435 vendored sites minus 17 adult/NSFW and 8 known-false-positive sites; Reddit is only checked when explicitly targeted). In identityResolution this field is required; candidateMode 'verify' requires exactly one n |
| includeNsfw | boolean | No | false | When no targetNetworks are supplied, also check the 17 adult/NSFW sites in the site database. Off by default. |
| includeUnreliable | boolean | No | false | When no targetNetworks are supplied, also check the 8 sites that reported random control handles as found in live testing. Their results are marked unreliable. Off by default. |
| verifyResults | boolean | No | true | Re-open each found profile page. broadSearch drops dead URLs and keeps gated pages flagged; identityResolution marks every candidate with profileExists/verificationStatus and only emits a bestMatch supported by independent evidence or a verified profile. Soft-404 and login pages are never marked ver |
| extractProfileFields | boolean | No | false | Opt in to public profile details (display name, bio, avatar, location, follower count where the source exposes them) in both modes. Identity resolution always fetches what it needs for scoring, but emits the optional detail fields only when this is on. Adds one request per found profile. Off by defa |
| maxUsernames | integer | No | 100 | How many usernames a broadSearch run will process. Defaults to 100; raise it to 500 for larger batches. When input is truncated, the status message and each record's warnings state how many usernames were skipped. |
| maxConcurrency | integer | No | 2 | How many usernames are searched at the same time in broadSearch. Lower this on a small-memory run. |
| requestTimeoutSecs | integer | No | 20 | Per-site timeout for existence checks and profile verification. |
Show the other 6 settings
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| sourceProfile | object | No | – | The known account to resolve against (mode=identityResolution). Example: {"platform": "github", "handle": "torvalds"}. The legacy `profile` key is still accepted. |
| sourceOverrides | object | No | – | Optional manual displayName/bio/avatarUrl for the source profile, used when the source platform cannot be read or to supplement missing data. |
| candidateMode | string | No | discover | discover: auto-generate candidates via search + username-variation heuristics. verify: score only the candidateHandles you supply. |
| candidateHandles | array | No | [] | Handles to verify against the source profile on the single target network (required when candidateMode is 'verify'). Capped at 60 to keep existence checks bounded. The legacy `handles` key is still accepted. |
| maxCandidatesToDiscover | integer | No | 20 | Upper bound on generated/searched candidates per target network in discover mode. |
| minConfidenceScore | number | No | 0.3 | A candidate becomes bestMatch only when its confidence score reaches this value (0-1). Lower it to see weaker matches; raise it for stricter matching. |
Example input
Built from the input form's published example values and defaults.
{
"mode": "broadSearch",
"usernames": [
"torvalds"
],
"targetNetworks": [
"GitHub"
],
"includeNsfw": false,
"includeUnreliable": false,
"verifyResults": true,
"extractProfileFields": false,
"maxUsernames": 1,
"maxConcurrency": 1,
"requestTimeoutSecs": 15,
"sourceProfile": {
"platform": "github",
"handle": "torvalds"
},
"candidateMode": "discover",
"candidateHandles": [],
"maxCandidatesToDiscover": 20,
"minConfidenceScore": 0.3
} Run it from code or an AI agent
The same run through the Apify API, with the example input. You need an Apify API token; the run is billed to your account at the Store price.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "broadSearch",
"usernames": [
"torvalds"
],
"targetNetworks": [
"GitHub"
],
"includeNsfw": False,
"includeUnreliable": False,
"verifyResults": True,
"extractProfileFields": False,
"maxUsernames": 1,
"maxConcurrency": 1,
"requestTimeoutSecs": 15,
"sourceProfile": {
"platform": "github",
"handle": "torvalds"
},
"candidateMode": "discover",
"candidateHandles": [],
"maxCandidatesToDiscover": 20,
"minConfidenceScore": 0.3
}
run = client.actor("nimbryxo-studio/username-search-and-cross-platform-identity").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"mode": "broadSearch",
"usernames": [
"torvalds"
],
"targetNetworks": [
"GitHub"
],
"includeNsfw": false,
"includeUnreliable": false,
"verifyResults": true,
"extractProfileFields": false,
"maxUsernames": 1,
"maxConcurrency": 1,
"requestTimeoutSecs": 15,
"sourceProfile": {
"platform": "github",
"handle": "torvalds"
},
"candidateMode": "discover",
"candidateHandles": [],
"maxCandidatesToDiscover": 20,
"minConfidenceScore": 0.3
};
const run = await client.actor("nimbryxo-studio/username-search-and-cross-platform-identity").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/nimbryxo-studio~username-search-and-cross-platform-identity/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"mode":"broadSearch","usernames":["torvalds"],"targetNetworks":["GitHub"],"includeNsfw":false,"includeUnreliable":false,"verifyResults":true,"extractProfileFields":false,"maxUsernames":1,"maxConcurrency":1,"requestTimeoutSecs":15,"sourceProfile":{"platform":"github","handle":"torvalds"},"candidateMode":"discover","candidateHandles":[],"maxCandidatesToDiscover":20,"minConfidenceScore":0.3}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=nimbryxo-studio/username-search-and-cross-platform-identity",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
What a run costs
The result rate falls on higher Apify plans. Each figure is the published per-result rate times the number of results.
| Apify plan | Per 1,000 | 10,000 results | 100,000 results |
|---|---|---|---|
| Free plan | $0.99 | $9.90 | $99 |
| Starter plan | $0.82 | $8.20 | $82 |
| Scale plan | $0.66 | $6.60 | $66 |
| Business plan | $0.49 | $4.90 | $49 |
- Every run also has a start event, charged per GB of memory (minimum one): $0.10 on Free, $0.03 on Business. At its default memory of 4 GB a run starts at $0.40 on Free. Fewer, larger runs keep this small.
- The Free plan includes $5 of monthly usage (Apify pricing, checked 2026-11-11); at the Free rate that covers at most about 5,050 results, less start events and platform usage.
- Worked example: 10,000 results in one run on the Free plan cost $10.30 ($9.90 for results + $0.40 start), plus Apify platform usage (compute), billed separately by Apify.
- Pay per event. Platform usage (compute) is billed by Apify on top of the event prices. Compare other tools in the cost estimator.
What people use it for
- search usernames across networks
- verify candidate profiles
Similar Actors
Multi-Site Username Lookup & Profile Link Finder
Search for usernames across 400+ social networks and websites and get a direct profile URL for every site where that username exists. No login or…
Username Lookup Across 400+ Social Platforms
Check a username or nickname against 400+ social, gaming, professional and messaging platforms and get back the public profiles confirmed to exist…
Facebook Page & Profile Finder by Keyword or URL
Find Facebook Pages or public profiles by keyword, or scrape a list of Facebook URLs directly, and get back contact info, category, ratings,…
Facebook Public Follower & Following Snapshot Tool
Get the public preview of a Facebook Page or Profile's followers, following, or friends, plus aggregate follower/following counts and parsed…
Instagram Profile Scraper - Bio & Posts
Scrape public Instagram profiles from a list of usernames: bio, followers, following, post count, verified badge and bio links. Add recent posts…
LinkedIn Guest-View Profile Data Extractor
Extract names, headlines, work history, education, certifications, honors, volunteer work, projects, and follower counts from public LinkedIn…
Questions people ask
How much does Username Search & Cross-Platform Identity Resolution cost?
The published result rate depends on your Apify plan: $0.99 per 1,000 on Free, $0.82 per 1,000 on Starter, $0.66 per 1,000 on Scale, $0.49 per 1,000 on Business. So 10,000 results cost about $9.90 on the Free plan and $4.90 on Business, plus a start fee of $0.10 per run per GB of memory on Free. Platform usage is billed separately.
What data does Username Search & Cross-Platform Identity Resolution return?
Its published output schema lists 5 fields: username, foundCount, verifiedCount, checkedCount, searchMode. A listed field is not guaranteed to be filled in every row.
What input does Username Search & Cross-Platform Identity Resolution need?
Required: mode. Optional settings include usernames, targetNetworks, includeNsfw, includeUnreliable, verifyResults, extractProfileFields.
How do I run Username Search & Cross-Platform Identity Resolution from Python or the API?
Use the Apify API client: in Python, ApifyClient(token).actor("nimbryxo-studio/username-search-and-cross-platform-identity").call(run_input=...), then read the run's default dataset (run.default_dataset_id); in JavaScript the same call is client.actor("nimbryxo-studio/username-search-and-cross-platform-identity").call(input). Without a client, POST the input JSON to https://api.apify.com/v2/actors/nimbryxo-studio~username-search-and-cross-platform-identity/run-sync-get-dataset-items with your API token. Ready-to-paste code with the example input is on this page.
Sources
- Username Search & Cross-Platform Identity Resolution on Apify Store
- Published build with input and output schema (JSON)
Cite this page
Scraper Finder. "Username Search & Cross-Platform Identity Resolution." https://scraperfinder.com/catalogue/username-search-and-cross-platform-identity/ (data checked 2026-11-12).
Run Username Search & Cross-Platform Identity Resolution
$0.99 per 1,000 results. Paste the example input above, set your target query, then export the dataset.