Nimbryxo Studio

Use Username Lookup Across 400+ Social Platforms with Python

Check a username or nickname against 400+ social, gaming, professional and messaging platforms and get back the public profiles confirmed to exist for it.

1. Choose the data you need

Review the published README for supported collection modes, examples, and limits. The recipe below uses the current published input definition.

2. Prepare a source-based input

This JSON contains published prefills and required-field defaults. Review every value for your task before running it; it is not a promise of successful collection.

{
  "coverage": "verified",
  "maxConcurrency": 12,
  "maxResults": 10,
  "mode": "lookup",
  "platforms": [
    "GitHub",
    "YouTube",
    "TikTok",
    "Pinterest",
    "X/Twitter",
    "Bluesky",
    "Steam"
  ],
  "usernames": [
    "torvalds"
  ]
}

Download input.example.json and save your reviewed copy as input.json.

FieldTypeRequiredDescription
modestringrequiredlookup returns found profiles (plus blocked/unknown checks), availability returns one row per platform with available/taken/unknown, and name_search generates handle candidates from a full name.
usernamesarrayoptionalHandles to check. Accepts plain handles, @handles and profile URLs. Required for lookup and availability. Maximum 50 per run (10 when extended coverage is active).
namesarrayoptionalFull names for name_search. The actor builds up to 10 handle candidates per name, checks them, and scores the matches. Maximum 50 per run.
coveragestringoptionalverified uses the 29 platforms that passed a known-handle plus random-handle gate. extended adds 400+ best-effort platforms at low confidence.
platformsarrayoptionalLimit the run to specific platforms. Leave empty to use all verified platforms, or all verified + extended platforms when coverage=extended. Extended-only platform names are rejected when coverage=verified.
maxConcurrencyintegeroptionalConcurrent checks. The default of 12 is the validated safe value for the verified set; per-host requests are limited further.
maxResultsintegeroptionalMaximum profile/check rows to emit. The summary row is always emitted and is not counted.
proxyConfigurationobjectoptionalThe actor works without a proxy. Supply one only if you want requests routed through your own Apify proxy configuration.

3. Start an Actor run

Set APIFY_TOKEN in your environment. Python 3.10 or newer is sufficient; this recipe uses no third-party packages.

Execution may incur charges. Review current pricing on Apify. The request asks for a 120-second timeout and a charge limit; these settings are subject to Apify’s pricing and do not guarantee an all-inclusive spending cap.

import json
import os
import urllib.request

# Save the schema-derived example as input.json; review and edit it first.
with open("input.json", encoding="utf-8") as stream:
    actor_input = json.load(stream)

token = os.environ["APIFY_TOKEN"]
request = urllib.request.Request(
    "https://api.apify.com/v2/acts/fRGi5lHU5z5ElXvT9/runs?timeout=120&maxTotalChargeUsd=0.50",
    data=json.dumps(actor_input).encode("utf-8"),
    headers={"Authorization": "Bearer " + token, "Content-Type": "application/json"},
    method="POST",
)
# This starts a potentially billable run. Do not automatically retry this POST.
with urllib.request.urlopen(request, timeout=40) as response:
    run = json.load(response)["data"]
print("Run ID:", run["id"])
print("Status:", run["status"])
# Inspect and download results in Apify Console once the run succeeds.

4. Inspect the actual results

Open the run in Apify Console and wait for a successful completion. Use the published output schema to locate results and the dataset schema to understand declared views. Missing or optional record fields must not be treated as guaranteed values.

One record per username/platform check with existence status, confidence, evidence, HTTP status and optional profile metadata, plus a run summary record.

Questions before you run

Which inputs are required?

The published required fields are mode

What does this guide verify?

The fields, prefills, and schema links are rendered from the published build. This is a usage recipe, not a paid live extraction test. Source availability and collection results can vary.

What if the run request times out?

Check Apify Console before retrying. The first request may already have created a run. Do not automatically repeat a run-creation POST.

Generated from source build dMVnzw4obP65tSF3V and its README and schemas. Source changes regenerate this guide; no third-party editorial claims are inferred.