Outricher / research / visa-talent-engine / the data object

One contact — the full data object.

Every row in every cohort on this site is the same deep object: identity, a dated career history, education with degree geography, evidence assets, verified contacts, and per-route scoring. Not a name-and-email pair — a case file that arrives before the consult. This page shows the object exactly as it ships: layer by layer, then a real (masked) example, then every field.

130+
fields per contact
3
data layers stitched into one object
5.6B
dated career positions in the graph
24–48h
to a first 10-profile sample

the object below is a real pull · identity masked for publication · MEASURED · Outricher data

3 layers stitched into every person
130+ fields on the shipped row
Verified-or-empty contact policy — no guessed emails
Why this object matters to an agency. Each row carries the career-structure signal a practice actually reads — a dated career arc with degree geography, titled evidence assets, and ranked propensity per route — so case triage, the evidence pack and a personalised first touch all start from the record itself. It is propensity for an attorney to qualify, evidence-tagged and documented — never an eligibility verdict.
Three layers · how the object is assembled
Layer 1 · graph base · instant

Who they are, where they've been

Read directly from the professional-profile graph — the structural layer every cohort is selected on.

full_name · headline
identity and the person's own one-line story
location_country_code
the person's country — the mandatory geo gate
experiences[]
every dated position: title, employer, geography
education[]
institutions, degrees, fields, years
current_company + registry
employer, size, founding year, registration country
total / us_experience_years
career depth, and how much of it is US-based
Layer 2 · enrichment · waterfall

How to reach them, what they've built

A multi-source waterfall adds contacts and evidence. Verified-or-empty — a blank field is a promise, not a failure.

db_personal_emails[]
verified personal email addresses
db_personal_numbers[]
phone numbers where they exist
api_publications[] · api_patents[]
titled, dated evidence entries
honorsAwards[] · certifications
awards and credentials, per profile
api_skills[] · languages
declared capabilities and languages
socials · code-hosting profile
public footprint beyond the résumé
Layer 3 · assembly & scoring · per cohort

What it means for a petition

The analytical layer our pipeline computes: archetypes, routes, criteria counts, ranks — the triage a practice starts from.

kept_as
the structural archetype that selected this person
visa_route
which paths the shape fits — route first, score second
criteria_met_count
how many argued criteria the record supports
lead_score · final_rank
position in the ranked cohort
foreign_universities[] · has_foreign_education
the education arc, computed
db_profile_updated_at · activity
freshness — the record is current, not archival
What a single contact looks like · a real pull, masked

One row from the shipped founders cohort — a cybersecurity founder on the classic F2 arc (foreign undergraduate degree → US graduate school → US company). Surname reduced to an initial, employers and contacts masked for publication; the delivery ships this object unmasked.

contact.jsonreal pull · masked · scroll ↓
{
  "profile_id": "10########",
  "full_name": "S. G. ⟨masked for publication⟩",
  "headline": "Founder and CEO, ⟨company⟩ | Cybersecurity Aficionado | Speaker",
  "location_name": "Washington DC metro area",
  "location_country_code": "US",
  "current_title": "Founder and Chief Executive Officer",
  "current_company": "⟨cybersecurity firm — 215 employees, DC metro⟩",
  "connections": 500,
  // the archetype the pipeline routed this person into
  "kept_as": "F2_foreign_ed",
  "visa_route": "EB1A_NIW_selfpetition",
  "criteria_met_count": 5,
  "lead_score": 210,
  "final_rank": 210,
  "has_foreign_education": true,
  "foreign_universities": [
    "Indian Institute of Technology, Kharagpur"
  ],
  "background_has_prestige": true,
  "prestige_source": "known_company",
  "total_experience_years": 34,
  "us_experience_years": 31,
  "positions_count": 17,
  "experiences": [
    {
      "title": "Founder and Chief Executive Officer",
      "company": "⟨cybersecurity firm — 215 employees, DC metro⟩",
      "location": "Reston, VA",
      "start_year": 2001,
      "end_year": null,
      "is_current": true
    },
    {
      "title": "VP Sponsorship",
      "company": "⟨earlier employer⟩",
      "location": null,
      "start_year": 2010,
      "end_year": 2011,
      "is_current": false
    },
    {
      "title": "Executive Vice President",
      "company": "⟨earlier employer⟩",
      "location": null,
      "start_year": 2000,
      "end_year": 2001,
      "is_current": false
    },
    {
      "title": null,
      "company": "⟨earlier employer⟩",
      "location": null,
      "start_year": 2000,
      "end_year": 2001,
      "is_current": false
    },
    {
      "title": "Vice President",
      "company": "⟨earlier employer⟩",
      "location": null,
      "start_year": 1998,
      "end_year": 2000,
      "is_current": false
    }
  ],
  // the F2 arc on record: foreign undergrad → US graduate school
  "education": [
    {
      "school": "University of Maryland",
      "degree": "MS",
      "field_of_study": "Electrical Engg - Specialization: Computer Engineering",
      "start_year": null,
      "end_year": null
    },
    {
      "school": "Indian Institute of Technology, Kharagpur",
      "degree": "B.Tech.",
      "field_of_study": "Electronics & Communication Engg",
      "start_year": null,
      "end_year": null
    },
    {
      "school": "University of Maryland",
      "degree": "PhD",
      "field_of_study": "Electrical Engg - Focus on Computer and Data Security",
      "start_year": null,
      "end_year": null
    }
  ],
  // verified-or-empty — masked here, full in the delivery
  "db_personal_emails": [
    "s***@***.com",
    "s***@***.com"
  ],
  "db_personal_numbers": [],
  "db_profile_updated_at": "2026-06-10",
  "db_profile_activity_at": "2026-02-27",
  "api__source": "enrichment",
  "api_followersCount": 4306,
  "api_about": "Responsible for establishing corporate strategy and vision, shaping corporate culture and cultivating business relationships to enable ⟨company⟩ to thrive. Extensive back…",
  "api_location": {
    "city": "⟨DC metro⟩",
    "state": "VA",
    "country": null
  },
  "api_skills": [
    "Security",
    "Information Security",
    "Information Assurance",
    "PKI",
    "Computer Security",
    "Integration",
    "Encryption",
    "Identity Management"
  ],
  "api_industry": "Computer and Network Security",
  "api_seniority": {
    "totalExperienceYears": 33,
    "currentTenureYears": 25,
    "averageTenureYears": 6.4
  },
  "api_publications_count": 24,
  "api_patents_count": 4,
  "languages_count": 0,
  "certifications_count": 3,
  "skills_count": 50,
  "outreach_ready": true
}
Which fields matter to a practice · four ways to read one object
Case triage15 seconds per row

kept_as + visa_route + criteria_met_count + the evidence arrays answer the first question — which attorney should even look at this — before anyone opens a résumé. A ranked cohort is a pre-sorted intake queue.

Evidence packthe exhibit-list head start

api_publications[], api_patents[], honorsAwards[], plus the education arc (foreign_universities[] → US graduate school) arrive titled and dated — the raw material of an exhibit list, assembled before the first call.

Outreachthe first touch that lands

db_personal_emails[] (verified-or-empty), db_profile_activity_at (is the person actually active), and the self-written headline — enough to write a first line that references their real work, not a template.

Intake & conflictsbefore the engagement letter

experiences[] with employers and geographies, current_company registry data, and career timelines support conflict checks and jurisdiction questions from the record itself, not from what a prospect remembers to mention.

The honest boundary · what the object is and is not

✓ What we deliver

  • Career-graph facts: dated positions, employers, geographies
  • Education records with degree geography — the arc, computed
  • Titled, dated evidence entries: publications, patents, awards
  • Verified-or-empty contacts — never guessed, never patterned
  • Ranked propensity per visa route, with the logic documented
  • Freshness stamps on every profile

✗ What we never claim

  • Citizenship, nationality or current visa status — not observable
  • Petition or filing history — not observable
  • Citation counts, patent grant status, press coverage
  • Eligibility verdicts — the attorney qualifies, always
  • Salaries or ownership stakes
  • Anything absent from the record — absent means absent, not inferred
The full object · every field group

The complete field inventory, grouped the way the delivery README documents it. Related keys are bundled into one row where they travel together.

Identity & headlinecore identity
FieldTypeWhat it is
profile_id · public_identifieridStable identifiers for dedup and re-order ledgers
full_name · first_name · last_namestringIdentity as publicly stated
headlinestringThe person's own one-line self-description — outreach gold
summary · api_abouttextLong-form self-description where present
connections · api_followersCountnumberNetwork scale — a soft prominence signal
api_profileImageUrlurlProfile imagery for outreach personalisation
Locationthe geo gate
FieldTypeWhat it is
location_country_codestringThe person's country (ISO) — the mandatory person-level geo filter
location_namestringCity / metro as text
api_locationobjectStructured city · state · country from enrichment
Career historythe structural spine
FieldTypeWhat it is
experiences[]arrayEvery recorded position: title, employer, employer size, geography, start/end years, is_current
current_titlestringCurrent role as stated
positions_countnumberTotal recorded positions — career graph depth
total_experience_yearsnumberCareer length, computed from dated positions
us_experience_yearsnumberYears physically in US roles — the arc quantified
api_seniorityobjectTenure analytics: current-role tenure, average tenure
background_has_prestige · prestige_sourcebool · stringRecognized-employer marker with its reason
Education & the arcdegree geography
FieldTypeWhat it is
education[]arrayInstitutions, degrees, fields of study, years
has_foreign_educationboolNon-US institution present on the record
foreign_universities[]arrayThe non-US institutions, named
foreign_education_reasonstringWhy the arc classifier fired — auditable, not a black box
Current companythe entity side
FieldTypeWhat it is
current_company_name · _id · _domainstringEmployer identity
current_company_countrystringRegistration geography — the F1 signal lives here
current_company_employee_count · _size_codenumberHeadcount — separates operators from shells
current_company_foundednumberCompany age
current_company_industry · db_company_descriptionstringWhat the company does
db_company_website · _follower_count · _parent_idmixedWeb presence, audience, corporate-family link
Evidence assetspetition raw material
FieldTypeWhat it is
api_publications[]arrayTitled publications with publisher and date
api_patents[]arrayPatent entries with numbers where stated
api_accomplishments.honorsAwards[]arrayAwards with issuer and date
patents_count · publications_count · awards_countnumberPer-class tallies used by ranking
api_certifications[]arrayCredentials with authority and dates
projects · organizationsarrayNamed projects and memberships
Skills & languagesdeclared capability
FieldTypeWhat it is
api_skills[] · skills_countarrayDeclared skills
languages_count · api_accomplishments.languagesarrayLanguages with proficiency where stated
api_industrystringPerson-level industry classification
Contacts & socialsverified-or-empty
FieldTypeWhat it is
db_personal_emails[]arrayVerified personal emails from the multi-source waterfall
db_personal_numbers[]arrayPhone numbers where they exist
db_twitter_url · db_facebook_url · db_github_urlurlPublic social and code-hosting profiles
api_contactInformationobjectEnrichment-side contact block, merged never collapsed
outreach_readyboolDelivery gate: contactable now
Freshness & provenanceis it current
FieldTypeWhat it is
db_profile_updated_atdateWhen the profile record last changed
db_profile_activity_atdateMost recent observed public activity
api__enriched_at · api__sourcedate · stringWhen and how the enrichment layer was fetched
_db_augmented · has_api_enrichmentboolWhich layers this row carries — stated, not hidden
Scoring & routingthe analytical layer
FieldTypeWhat it is
kept_asstringThe structural archetype that selected this person
visa_routestringRoute mapping — O-1A / E-2 / L-1 vs EB-1A / NIW vs declared
criteria_met_countnumberHow many argued criteria the record supports
lead_score · final_rank · intent_scorenumberRanking within the cohort, with components documented
score_details[]arrayWhich score components fired — the formula is inspectable
golden_kw[] · soft_kw[] · intent flagsarrayDeclared-intent markers, used to re-rank only
corrupt_name · merger_shell flagsboolQuality-control flags from the audit pass

The never-trim rule

The object ships whole. Graph fields, enrichment fields and computed fields are independent layers — we never collapse one into another, and we never delete a field to make a file smaller. What the pipeline saw is what you receive, and the README documents every field group above.

See ten of these — matched to your practice, free.

Describe your routes and geographies in two sentences; we answer with a 10-profile sample of full objects (contacts masked) drawn from the cohort that fits your practice best. AI outreach agents can draft the first touch straight from these fields — referenced to each person's actual career, so the mail lands with a real person, not a template.

Or just write — a consultation is free: we will map this cohort to your practice.

Outricher · Visa Talent Engine · the example object is a real masked pull · MEASURED · Outricher data