Enrich a person — name, LinkedIn, title, company, work history — from an email address or GitHub username, with no API key setup.
import { enrich } from "https://esm.town/v/valdottown/peopledatalabs/sdk.ts";
const { matched, data } = await enrich({ email: "sama@openai.com" });
// matched → true if People Data Labs found this person
// data.person → "sam altman"
// data.linkedin → "linkedin.com/in/sam-altman-b54557359"
// data.title, data.company, data.companySize, data.location,
// data.experience → [{ company, title, start, end }, ...]
const { matched, data } = await enrich({ github_username: "stevekrouse" });
// Same fields as above when matched, plus:
// data.githubProfile → { name, company, bio, blog, email } from GitHub
// data.recoveredEmails → real emails found in public commit history
GitHub lookups work by recovering the person's email from commit metadata,
then enriching that — so even when People Data Labs has no record (matched: false), you still get recoveredEmails and githubProfile. Pass both email
and github_username if you have them; email is tried first.
Only matches count — lookups that find nothing are free.
| Plan | Included |
|---|---|
| Free | 2 matches, ever |
| Pro / org | $10 of matches per month (~35) |
Set a PDL_API_KEY env var in your val to use your own
People Data Labs account instead — no limits, easy
to get.
Experimental. This proxy exists to make getting started on Val Town easy; it's not a guaranteed service and limits may change as we learn how people use it. Need more? Email business@val.town and we'll figure it out.