Originators
Count originators matching filters
Return the exact number of originators matching the given filters. Accepts the same request body as listOriginators (pagination and sort are ignored). Use this when you only need a total; to get the matching originators themselves, send the same request body to listOriginators.
Authorization
Body application/json
advancedFiltersone ofShow child attributesHide child attributes
Option 1objectShow child attributesHide child attributes
childrenone of[]requiredArray of filter expressions (AND)
Same shape as its parent.
typeenumrequiredandOption 2objectShow child attributesHide child attributes
childrenone of[]requiredArray of filter expressions (OR)
Same shape as its parent.
typeenumrequiredorOption 3objectShow child attributesHide child attributes
childone ofrequiredSame shape as its parent.
typeenumrequirednotOption 4objectShow child attributesHide child attributes
fieldstringrequiredopenumrequiredComparison operator. exists means the field has a REAL value: on fields whose source records an unknown as an in-domain value (e.g. beds, squareFeet, lotSquareFeet, where an unrecorded measurement is stored as 0), those docs count as NOT existing. neq keeps docs with no value — it removes only what is known to equal the value, matching the reading of an exclusion.
eqneqgtgteltltebetweeninmatchgeoDistanceexiststypeenumrequiredfiltervaluenullComparison value
crmListobjectScope the result to the caller's CRM. Resolved against the caller's ACTIVE WORKSPACE at query time — list membership is read server-side, so the request never carries member ids. Only loan-officer members count; agents and manual (unlinked) records on the same list are ignored. mode: "in" with no matching members returns an empty page (not an unfiltered one). Errors: 400 crm_list_requires_workspace when the caller has no active workspace (API-key / OAuth callers must select an organization), 403 / 404 when a named list is not visible to the caller or does not exist, and 400 crm_list_too_large when the selected lists hold more than 50,000 loan officers in total — narrow the selection rather than get a silently partial answer.
Show child attributesHide child attributes
listsone ofrequiredWhich lists: "any" for every People list the caller can see, or an array of list ids. Membership is the UNION across the selected lists.
Show child attributesHide child attributes
Option 1enumEvery list in the caller's workspace that the caller can see (own, org-wide, or shared with them) and that holds this kind of record — People lists for originators and agents, Company lists for companies.
anyOption 2string[]Specific CRM list ids (1–50).
modeenumrequiredin — only originators who are a member of the selected list(s). notIn — exclude every originator who is a member of the selected list(s); everyone else passes, including originators on none of your lists.
innotInfiltersone ofShow child attributesHide child attributes
Option 1objectShow child attributesHide child attributes
childrenone of[]requiredArray of filter expressions (AND)
Same shape as its parent.
typeenumrequiredandOption 2objectShow child attributesHide child attributes
childrenone of[]requiredArray of filter expressions (OR)
Same shape as its parent.
typeenumrequiredorOption 3objectShow child attributesHide child attributes
childone ofrequiredSame shape as its parent.
typeenumrequirednotOption 4objectShow child attributesHide child attributes
fieldstringrequiredopenumrequiredComparison operator. exists means the field has a REAL value: on fields whose source records an unknown as an in-domain value (e.g. beds, squareFeet, lotSquareFeet, where an unrecorded measurement is stored as 0), those docs count as NOT existing. neq keeps docs with no value — it removes only what is known to equal the value, matching the reading of an exclusion.
eqneqgtgteltltebetweeninmatchgeoDistanceexiststypeenumrequiredfiltervaluenullComparison value
flatFiltersobjectShow child attributesHide child attributes
affordableHousingTractCountone of | nullNumber of the entity's loans in qualified affordable-housing tracts. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberaffordableHousingTractPctone of | nullShare of the entity's tract-resolved loans in qualified census tracts for affordable-housing programs, 0-100 ({gte:25} = 27,209 originators). Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgAsianPctone of | nullMean Asian (non-Hispanic) share of the population in the tracts the entity lent in, 0-100. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgBlackPctone of | nullMean Black (non-Hispanic) share of the population in the tracts the entity lent in, 0-100. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgDenialRateone of | nullMean share of mortgage applications denied in the tracts the entity lent in, 0-100. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgFamilyIncomeone of | nullMean median family income of the tracts the entity lent in, in whole dollars. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgHispanicPctone of | nullMean Hispanic or Latino share of the population in the tracts the entity lent in, 0-100. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgHomeValueone of | nullMean median home value across the tracts the entity lent in, in whole dollars. A neighborhood statistic — not the entity's average loan size, which is avgLoanAmount. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgHomeownershipRateone of | nullMean owner-occupied share of housing units in the tracts the entity lent in, 0-100. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgHouseholdIncomeone of | nullMean median household income of the tracts the entity lent in, in whole dollars (e.g. {lte:60000}). Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgIncomeVsMetroPctone of | nullMean tract income relative to its metro area, where 100 is parity — {lt:80} is the CRA low/moderate band, and values legitimately exceed 100 (observed up to 412). NOT a 0-100 share. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgLoanAmountone of | nullShow child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgLowModHouseholdPctone of | nullMean HUD block-group low/moderate-income HOUSEHOLD share across the tracts the entity lent in, 0-100. A finer-grained measure than lowModIncomeTractPct, which counts whole tracts — not a duplicate of it. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgMedianAgeone of | nullMean median age of the population in the tracts the entity lent in, in years. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgMilesToCollegeone of | nullMean straight-line distance to the nearest college, in miles. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgMilesToSchoolone of | nullMean straight-line distance from the properties the entity lent on to the nearest school, in miles. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgMilesToWorshipone of | nullMean straight-line distance to the nearest place of worship, in miles. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgMinorityPctone of | nullMean non-white share of the population in the tracts the entity lent in, 0-100 ({gte:50} = 63,370 originators). majorityMinorityTractPct is the per-tract-threshold form of the same question. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgPopulationone of | nullMean population of the tracts the entity lent in. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgPovertyRateone of | nullMean share of the population below the poverty line in the tracts the entity lent in, 0-100. Pass whole percents — {gte:0.2} means 0.2%. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgTractApplicationsone of | nullMean number of mortgage applications reported in the tracts the entity lent in, over the year. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgTractLoanVolumeone of | nullMean mortgage dollar volume reported in the tracts the entity lent in, over the year. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgTractOriginationsone of | nullMean number of mortgage originations reported in the tracts the entity lent in, over the year. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberavgWhiteNonHispanicPctone of | nullMean White (non-Hispanic) share of the population in the tracts the entity lent in, 0-100. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbercityone of | nullProduction city — matches originators who originated loans in this city during the selected period (NOT office/employer location). An LO can match this city while their row's displayed city/state is a different, higher-volume market.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredcompanyCategoryone of | nullEmployer category. BANK / CU / OTHER are the stored NMLS categories; BUILDER is a virtual category matching the mortgage arms of home builders (Lennar Mortgage, DHI Mortgage, Pulte Mortgage, …), which NMLS registers as OTHER. Pass an array to match any of several — ["BANK", "BUILDER"] is banks OR builder lenders. Rows never carry BUILDER back; read companyNmlsId instead.
Show child attributesHide child attributes
Option 1enumOne of (case-insensitive): BANK, CU, OTHER, BUILDER
BANKCUOTHERBUILDEROption 2enum[]Match any of these values
BANKCUOTHERBUILDEROption 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredcompanyNameone of | nullDEPRECATED — fuzzy name matching is unreliable (one name can match many different people; partial names can silently return 0). Resolve the company via instantSearch and filter by companyNmlsId (exact NMLS id) instead. Still functional for now.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredcompanyNamePrefixstringCurrent company name prefix search: each word starts a word of it ("guild mort"); not fuzzy. Digits = company NMLS id.
companyNmlsIdone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredcountyone of | nullAlias of countyFips, identical behavior — production county by 5-digit FIPS code (e.g. 06037 = Los Angeles, CA) or by county name (Riverside, optionally with a sibling state). Pass an array to match any of several counties.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredcountyCountone of | nullHow many distinct counties the originator produced in during the selected period.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbercountyFipsone of | nullProduction county. Accepts a 5-digit FIPS code (e.g. 04013 = Maricopa, AZ; 06037 = Los Angeles, CA) or a county name (Riverside, optionally with a sibling state) — names are resolved to a FIPS by the location dictionary. Matches originators who originated loans in this county during the selected period (NOT office/employer location). An ambiguous name returns candidates; an unrecognized one is a 400 naming instantSearch. Pass an array to match any of several counties.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequireddifficultDevelopmentAreaCountone of | nullNumber of the entity's loans in HUD-designated difficult development areas. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberdifficultDevelopmentAreaPctone of | nullShare of the entity's tract-resolved loans in HUD-designated difficult development areas, 0-100 ({gte:25} = 93,397 originators). Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberdistressedTractCountone of | nullNumber of the entity's loans in distressed-or-underserved tracts. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberdistressedTractPctone of | nullShare of the entity's tract-resolved loans in distressed-or-underserved nonmetropolitan middle-income tracts, 0-100 ({gte:25} = 11,773 originators). Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberfirstNameone of | nullDEPRECATED — fuzzy name matching is unreliable (one name can match many different people; partial names can silently return 0). Note: firstName maps to the FULL analyzed name field, not a dedicated first-name leaf, so it also matches middle names. Resolve the originator via instantSearch and filter by nmlsId (exact NMLS id) instead. Still functional for now.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredfloodHazardTractCountone of | nullNumber of the entity's loans in a FEMA special flood hazard area. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberfloodHazardTractPctone of | nullShare of the entity's tract-resolved loans in a FEMA special flood hazard area, 0-100 ({gte:25} = 5,212 originators). predominantFloodZone gives the specific zone code. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberhasEmailbooleanWhether the originator's profile carries at least one email address (101,566 do). Same true-is-a-guarantee / false-means-'none on the profile' caveat as hasPhone.
hasPhonebooleanWhether the originator's profile carries at least one phone number (250,077 do). true is a guarantee — those records have a number. false means 'none on the profile', not 'no number exists': the detail response also draws on a broader contact source, so a small share of false records still show a phone when fetched individually.
hasSocialbooleanWhether the originator's profile carries a social profile link — LinkedIn, Facebook or X/Twitter. Deliberately excludes a plain company website, which is tracked separately and is not a social presence.
isBranchManagerboolean | nullisBrokerboolean | nullisWorkingboolean | nulllastNameone of | nullDEPRECATED — fuzzy name matching is unreliable (one name can match many different people; partial names can silently return 0). Note: lastName maps to the FULL analyzed name field, not a dedicated last-name leaf, so it also matches middle names. Resolve the originator via instantSearch and filter by nmlsId (exact NMLS id) instead. Still functional for now.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredlastTransactionDateone of | nullDate of the originator's most recent loan INSIDE the selected period — the 'recently active' axis. {gte: "2026-07-01"} keeps originators who closed a loan on or after that day; under the default last12Months the period's newest loan is the originator's newest loan, so this reads as 'last active since'. Present on every producing record (100% of served rows), so a bound drops no one for lack of a date. Bounds accept YYYY, YYYY-MM, YYYY-MM-DD or an ISO datetime (see DateFilterValue). Sortable: sort: [{field: "lastTransactionDate", order: "desc"}] = most recently active first.
Show child attributesHide child attributes
Option 1stringExact date, or a whole period: YYYY-MM-DD (that day), YYYY-MM (the whole month — "2025-06" = 2025-06-01 through 2025-06-30) or YYYY (the whole year). YYYYMMDD, MM/DD/YYYY, an ISO-8601 datetime and epoch milliseconds are also accepted. An unparseable value is a 400.
Option 2objectDate range. Excludes null/missing-field docs by default; add includeNulls: true to keep them. Bounds accept YYYY, YYYY-MM, YYYY-MM-DD, YYYYMMDD, MM/DD/YYYY, a full ISO datetime or epoch milliseconds; an unparseable bound is a 400. A partial bound denotes the whole period and expands to the edge that preserves the operator: gte/lt take the period START, gt/lte take the period END — so {gte: "2024"} means on/after 2024-01-01 and {lte: "2024"} means through 2024-12-31.
Show child attributesHide child attributes
gtstringgtestringincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires a bound.
ltstringltestringlenderCountone of | nullHow many distinct lenders the originator sent loans to during the selected period. {lte:1} finds single-outlet producers.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberlicenseCountone of | nullShow child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberlicensedSinceDateone of | nullDate the originator's NMLS registration began — 'licensed since'. Lifetime, NOT scoped by period. {gte: "2025-10-01"} finds originators who entered the industry on or after that day (newly licensed); {lte: "2015-01-01"} finds ten-year veterans by registration rather than by yearsInIndustry. On file for 99.7% of producing originators (59% of the whole index, so pair with producersOnly: false cautiously — unregistered rows have no date and are dropped by any bound unless includeNulls: true). Bounds accept YYYY, YYYY-MM, YYYY-MM-DD or an ISO datetime. Sortable: desc = newest registrations first.
Show child attributesHide child attributes
Option 1stringExact date, or a whole period: YYYY-MM-DD (that day), YYYY-MM (the whole month — "2025-06" = 2025-06-01 through 2025-06-30) or YYYY (the whole year). YYYYMMDD, MM/DD/YYYY, an ISO-8601 datetime and epoch milliseconds are also accepted. An unparseable value is a 400.
Option 2objectDate range. Excludes null/missing-field docs by default; add includeNulls: true to keep them. Bounds accept YYYY, YYYY-MM, YYYY-MM-DD, YYYYMMDD, MM/DD/YYYY, a full ISO datetime or epoch milliseconds; an unparseable bound is a 400. A partial bound denotes the whole period and expands to the edge that preserves the operator: gte/lt take the period START, gt/lte take the period END — so {gte: "2024"} means on/after 2024-01-01 and {lte: "2024"} means through 2024-12-31.
Show child attributesHide child attributes
gtstringgtestringincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires a bound.
ltstringltestringloanTypeone of | nullShow child attributesHide child attributes
Option 1enumOne of (case-insensitive): conventional, fha, va, he, heloc, building, commercial, stand_alone_refi, closed_end, reverse, usda, stand_alone_second, aggregate, seller_take_back, sba_participation_trust_deed, balloon, opened_end, assumption, negative_amortization, land_contract, trade, modification, unknown
conventionalfhavahehelocbuildingcommercialstand_alone_reficlosed_endreverseusdastand_alone_secondaggregateseller_take_backsba_participation_trust_deedballoonopened_endassumptionnegative_amortizationland_contracttrademodificationunknownOption 2enum[]Match any of these values
conventionalfhavahehelocbuildingcommercialstand_alone_reficlosed_endreverseusdastand_alone_secondaggregateseller_take_backsba_participation_trust_deedballoonopened_endassumptionnegative_amortizationland_contracttrademodificationunknownOption 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredloansWithCommunityDataone of | nullHow many of the entity's loans in the selected period resolved to a neighborhood — the DENOMINATOR every Community Lending share is taken over. Pair it with a share filter ({gte:25}, 60,399 originators) so a 100% share off two loans does not read as a 100% share off two hundred. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberlowModIncomeTractCountone of | nullNumber of the entity's loans that landed in a low- or moderate-income tract, as a count rather than a share. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberlowModIncomeTractPctone of | nullShare of the entity's tract-resolved loans that landed in a low- or moderate-income tract under the Community Reinvestment Act, 0-100. {gte:50} = 'at least half their book is LMI' (36,977 originators, 655 companies, 648 branches). Pass whole percents — {gte:0.5} means half of one percent and matches nearly everyone. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbermajorityMinorityTractCountone of | nullNumber of the entity's loans in majority-minority tracts. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbermajorityMinorityTractPctone of | nullShare of the entity's tract-resolved loans in majority-minority tracts, 0-100 ({gte:50} = 65,654 originators). Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbermarketConcentrationobjectShare of the originator's period volume held by their SINGLE LARGEST city, as a 0–100 percent. {gte:50} = 'at least half their book is in one city'. LOWER BOUNDS ONLY (gte/gt): an upper bound on this reads as 'some market is small', which is true of almost everyone — to find diversified producers use marketCount instead.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumbermarketCountone of | nullHow many distinct CITIES the originator produced in during the selected period. {gte:10} = a broad, multi-market book; {lte:2} = concentrated. Counts markets, not loans.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbermodeenumandormsaone of | nullProduction METRO AREA (MSA / CBSA): originators who originated loans in ANY county of the metro during the selected period (not office). 5-digit CBSA code (12420) or metro name (Austin Metro); an array matches any. Member counties per the OMB July-2023 delineation (Connecticut's pre-2022 counties included; 41860 San Francisco Bay Area is the nine-county Bay Area). Unknown/ambiguous names are a 400 naming candidates.
Show child attributesHide child attributes
Option 1stringOption 2string[]nameone of | nullDEPRECATED — fuzzy name matching is unreliable (one name can match many different people; partial names can silently return 0). Resolve the originator via instantSearch and filter by nmlsId (exact NMLS id) instead. Still functional for now.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequirednamePrefixstringPrefix name search: every word must start a word of the name ("jen ro" → Jennifer Rodriguez). No fuzzy/nickname matching; relevance-ranked unless sort is set. Max 100 chars / 6 words (emails, URLs, phones ignored), else 400.
nmlsIdone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredofficeCityone of | nullOffice city — matches originators whose NMLS-registered office is in this city (NOT where they produced loans; that is city). Resolved through the location dictionary, so spelling variants match (Saint Louis = St. Louis); pair it with officeState to pick one of several same-named cities (a sibling production state does NOT disambiguate it), or pass a dictionary city id. An unrecognized city is a 400 naming instantSearch. Pass an array to match any of several.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredofficeCountyone of | nullOffice county — matches originators whose NMLS-registered office zip lies in this county. Accepts a county name (Orleans, with a sibling officeState when the name exists in several states), a 5-digit FIPS code (22071) or a dictionary county id. The office address carries no county of its own, so it is derived from the office zip: each zip is assigned to the ONE county holding most of its parcels, which makes the counties of a state partition its offices but attributes an office in a zip that straddles a county line to the zip's main county. An unrecognized county is a 400.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredofficeStateone of | nullOffice state — matches originators whose NMLS-registered office is in this state (NOT where they produced loans; that is state). A 2-letter code or full name (LA or Louisiana), any case; pass an array to match any of several. Period-independent. Originators with no office address on file never match.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredofficeZipone of | nullOffice zip code — matches originators whose NMLS-registered office is in this 5-digit zip (ZIP+4 office addresses match their 5-digit prefix). Pass an array to match any of several.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredopportunityZoneCountone of | nullNumber of the entity's loans in Opportunity Zone tracts. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberopportunityZonePctone of | nullShare of the entity's tract-resolved loans in federally designated Opportunity Zone tracts, 0-100 ({gte:10} = 33,520 originators — this is a small-share filter, a 50% floor finds almost nobody). Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberpeakMonthUnitsone of | nullThe originator's BEST single month of loan COUNT inside the selected period. {gte:20} = 'they closed 20+ loans in some month' (7,295 originators over the last 12 months). Same peak semantics as peakMonthVolume.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberpeakMonthVolumeone of | nullThe originator's BEST single month of volume inside the selected period. {gte:10000000} = 'they had at least one $10M month' (4,803 originators over the last 12 months); {lte:X} means no month exceeded X, so it is a true ceiling on their best month. There is no way to ask about a SPECIFIC month here — the per-month buckets are not individually addressable — so use POST /v1/originators/analytics/time-series (filtered to the originator) for a month-by-month series.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberpredominantFloodZoneone of | nullShow child attributesHide child attributes
Option 1enumOne of (case-insensitive): A, AE, AH, AO, A99, V, VE
AAEAHAOA99VVEOption 2enum[]Match any of these values
AAEAHAOA99VVEOption 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredpredominantIncomeLevelone of | nullShow child attributesHide child attributes
Option 1enumOne of (case-insensitive): low, moderate, middle, upper
lowmoderatemiddleupperOption 2enum[]Match any of these values
lowmoderatemiddleupperOption 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredproducersOnlyboolean | nullregionone of | nullProduction CENSUS REGION / DIVISION (<region>-division-<n>, Census numbering 1–9): originators who originated loans in ANY state of it during the selected period (not office). An array matches any.
Show child attributesHide child attributes
Option 1enumnortheastnortheast-division-1northeast-division-2midwestmidwest-division-3midwest-division-4southsouth-division-5south-division-6south-division-7westwest-division-8west-division-9Option 2enum[]northeastnortheast-division-1northeast-division-2midwestmidwest-division-3midwest-division-4southsouth-division-5south-division-6south-division-7westwest-division-8west-division-9regulatorsone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredruralGradientone of | nullMean remoteness of the tracts the entity lent in, on an ORDINAL 1-10 scale (1 = metropolitan core, 10 = most remote). This is a code, not a percent — {gte:7} selects the deepest-rural books (8,886 originators). Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberruralTractCountone of | nullNumber of the entity's loans in rural tracts. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberruralTractPctone of | nullShare of the entity's tract-resolved loans in rural tracts, 0-100 ({gte:50} = 24,006 originators). ruralGradient is the finer, ordinal form. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbersponsoredAvgLoanAmountone of | nullMean loan size on the originator's sponsored-employer production.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbersponsoredShareone of | nullShare of the originator's period volume originated under their SPONSORING employer, as a 0–100 percent. The retail counterpart of thirdPartyShare; same denominator, same exclusion of zero-volume records, and the two do not sum to 100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbersponsoredUnitsone of | nullLoan count the originator produced under their sponsoring employer during the selected period.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbersponsoredVolumeone of | nullDollar volume the originator produced under their sponsoring employer during the selected period.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberstateone of | nullProduction state — matches originators who originated loans in this state during the selected period (NOT office/employer location). Multi-state LOs match any state they produced in; each row's state shows only their primary (highest-volume) market.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredstateCountone of | nullHow many distinct states the originator produced in during the selected period. {gte:2} finds multi-state producers.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberthirdPartyAvgLoanAmountone of | nullMean loan size on the originator's third-party (broker) production.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberthirdPartyShareone of | nullShare of the originator's period volume submitted through a THIRD-PARTY (broker) relationship, as a 0–100 percent. {gte:50} = 'most of their book is wholesale' (52,507 originators over the last 12 months). Computed against their total period volume; an originator with no volume in the period has no share and is excluded rather than counted as zero. This and sponsoredShare do not sum to 100 — the remainder is retail.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberthirdPartyUnitsone of | nullLoan count the originator submitted through third-party (broker) relationships during the selected period.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberthirdPartyVolumeone of | nullDollar volume the originator submitted through third-party (broker) relationships during the selected period.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbertimeAtCompanyMonthsobject | nullWhole months at the CURRENT employer (tenureMonths on each row), from the NMLS registration record as of the last weekly refresh. {gte:24} = at their company two years or more; {lte:6} = recent movers. Only originators currently working at a company have a value. Not sortable — sort by yearsInIndustry or production instead. Applied after the rest of the request: the other filters are matched first, in the request's sort order, and each match is checked against the registration record, so it works at any result size up to 200,000 matches of the OTHER filters. Past that, total counts only the tenure matches among the first 200,000 scanned and the response carries totalIsLowerBound: true; a page beyond what was found answers 400 with code: "TIME_AT_COMPANY_SCOPE" — add a geography, production or company filter to narrow. Pages use an opaque offset cursor; pass cursor back unchanged. Flat filters only, and not inside mode: "or".
Show child attributesHide child attributes
gtintegergteintegerltintegerlteintegertotalLicensesone of | nullHow many licenses appear on the originator's record in total, including expired and superseded ones. Distinct from licenseCount, which is the CURRENT registration snapshot and runs lower (it is also only on file for about 60% of originators, where this is on all of them). Use totalLicenses for career breadth, licenseCount for who is licensed right now.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbertotalLoansone of | nullLifetime originated loan count across every period on record. Not scoped by period — use units for the selected period.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbertransactionTypeone of | nullShow child attributesHide child attributes
Option 1enumOne of (case-insensitive): purchase, refinance, construction, equity, UNKNOWN
purchaserefinanceconstructionequityUNKNOWNOption 2enum[]Match any of these values
purchaserefinanceconstructionequityUNKNOWNOption 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredunitsone of | nullShow child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberusdaEligibleTractCountone of | nullNumber of the entity's loans in USDA-eligible tracts. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberusdaEligibleTractPctone of | nullShare of the entity's tract-resolved loans in tracts eligible for USDA rural housing programs, 0-100 ({gte:50} = 90,392 originators). Broader than ruralTractPct — eligibility reaches well past what is classified rural. Values describe the U.S. Census tract (neighborhood) as a whole — tract-level aggregate statistics, never an individual, household or applicant attribute. Percentages are 0-100.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumbervolumeone of | nullShow child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberyearsInIndustryone of | nullYears of recorded industry tenure. Lifetime, NOT scoped by period. {gte:10} finds established originators (246,091 today); {lte:2} finds new entrants.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberzipone of | nullProduction zip code — matches originators who originated loans in this 5-digit zip during the selected period (NOT office/employer location). Pass an array to match any of several zips.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredzipCodeone of | nullAlias of zip — production zip code (5-digit). Identical behavior; kept for callers using the loans/sales spelling.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredzipCountone of | nullHow many distinct 5-digit zip codes the originator produced in during the selected period.
Show child attributesHide child attributes
Option 1numberOption 2number[]Match any value
Option 3objectNumeric range. Excludes null/missing-field docs by default; add includeNulls: true to keep them.
Show child attributesHide child attributes
gtnumbergtenumberincludeNullsbooleanAlso keep docs where the field is null/missing (a range filter drops them by default). Requires at least one of gte/lte/gt/lt.
ltnumberltenumberfootprintone ofScoped market filter(s). Each entry names ONE market (city / county / state / zip / lender) and the metric bounds that must hold INSIDE it — {city:'Orlando', state:'FL', volume:{gte:15000000}} means '$15M of production in Orlando', not '$15M somewhere and a loan in Orlando'. Several entries AND together.
Show child attributesHide child attributes
Option 1objectShow child attributesHide child attributes
avgLoanAmountobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumbercityone ofProduction city — a name (Orlando, best paired with state) or a location id from instantSearch / suggestLocations. An unrecognized name is a 400, never a silent zero.
Show child attributesHide child attributes
Option 1stringOption 2string[]countyone ofProduction county — a 5-digit FIPS code (06037) or a county name (Riverside, best paired with state).
Show child attributesHide child attributes
Option 1stringOption 2string[]dimensionenumWhich footprint to address. Normally inferred from the location key you pass; name it explicitly to ask the ANY-market question ({dimension:'city', volume:{gte:15000000}} = 'some single city where they did $15M').
zipcitycountystatelenderlenderone ofFunding lender, as an id from listLenders or instantSearch. Lender names are stored in a normalized dictionary form, so a typed name does not match — resolve it first.
Show child attributesHide child attributes
Option 1stringOption 2string[]notbooleanInvert the whole entry: match producers with NO market matching it (e.g. 'does not send loans to this lender').
productobjectCorrelate a product INSIDE this lender relationship — 'FHA business through this lender'.
Show child attributesHide child attributes
avgLoanAmountobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
keyone ofProduct key(s), lowercase — e.g. fha, conventional, va for loanType; purchase, refinance for transactionType.
mixenumWhich product breakdown inside the market — loan type (fha, conventional, va, …) or transaction type (purchase, refinance, …).
loanTypetransactionTypeshareOfUnitsobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
shareOfVolumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
unitsobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
volumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
shareOfVolumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumberstateone ofTwo-letter state code or full state name. Alongside city or county it DISAMBIGUATES that place rather than adding a second predicate; on its own it selects the state footprint.
Show child attributesHide child attributes
Option 1stringOption 2string[]unitsobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumbervolumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumberzipone ofProduction 5-digit zip code.
Show child attributesHide child attributes
Option 1stringOption 2string[]Option 2object[]Show child attributesHide child attributes
avgLoanAmountobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumbercityone ofProduction city — a name (Orlando, best paired with state) or a location id from instantSearch / suggestLocations. An unrecognized name is a 400, never a silent zero.
Show child attributesHide child attributes
Option 1stringOption 2string[]countyone ofProduction county — a 5-digit FIPS code (06037) or a county name (Riverside, best paired with state).
Show child attributesHide child attributes
Option 1stringOption 2string[]dimensionenumWhich footprint to address. Normally inferred from the location key you pass; name it explicitly to ask the ANY-market question ({dimension:'city', volume:{gte:15000000}} = 'some single city where they did $15M').
zipcitycountystatelenderlenderone ofFunding lender, as an id from listLenders or instantSearch. Lender names are stored in a normalized dictionary form, so a typed name does not match — resolve it first.
Show child attributesHide child attributes
Option 1stringOption 2string[]notbooleanInvert the whole entry: match producers with NO market matching it (e.g. 'does not send loans to this lender').
productobjectCorrelate a product INSIDE this lender relationship — 'FHA business through this lender'.
Show child attributesHide child attributes
avgLoanAmountobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
keyone ofProduct key(s), lowercase — e.g. fha, conventional, va for loanType; purchase, refinance for transactionType.
mixenumWhich product breakdown inside the market — loan type (fha, conventional, va, …) or transaction type (purchase, refinance, …).
loanTypetransactionTypeshareOfUnitsobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
shareOfVolumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
unitsobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
volumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
shareOfVolumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumberstateone ofTwo-letter state code or full state name. Alongside city or county it DISAMBIGUATES that place rather than adding a second predicate; on its own it selects the state footprint.
Show child attributesHide child attributes
Option 1stringOption 2string[]unitsobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumbervolumeobjectDollar volume of the agent's sales financed BY this lender during the selected period — evaluated inside that lender's own bucket, not against the agent's total.
Show child attributesHide child attributes
gtnumbergtenumberltnumberltenumberzipone ofProduction 5-digit zip code.
Show child attributesHide child attributes
Option 1stringOption 2string[]lenderFiltersobject[]Show child attributesHide child attributes
canonicalstringCanonical lender name (the value from lender autocomplete). Resolved to a lender id server-side; pass id instead when you have one.
displayNamestringrequiredLabel / typed search string
idstringLender-dictionary id — the id from instantSearch / listLenders (e.g. "mortgage_rocket" or "mortgage rocket"), and the same value the lender filter takes. PREFERRED: matched directly against the stored lender key with no name resolution. canonical is still accepted and resolved server-side.
modeenumincludeexcludepercentMinnumberMinimum percent_of_volume (0–100); 0/undefined = > 0%
typeenumcanonicalfreetextlenderMatchModeenumandorofficeGeoPointobjectOriginators whose NMLS-registered OFFICE is within radiusMiles of an anchor — the radius form of officeState / officeCity / officeZip, NOT production geography (that is state / city / county / zip / footprint). Anchor on a coordinate ({lat, lon, radiusMiles}) or on another originator's office ({nmlsId: "7206", radiusMiles: 25} — 'LOs near this LO'; that originator is excluded). Originators with no geocoded office never match. 400 when neither anchor form is complete or both are given; 404 office_geo_anchor_not_found for an unknown nmlsId; 400 office_geo_anchor_unlocated when that originator has no geocoded office.
Show child attributesHide child attributes
latnumberAnchor latitude; pair with lon.
lonnumberAnchor longitude; pair with lat.
nmlsIdstringAnchor on another originator's office instead: their NMLS id (resolved server-side; they are excluded from the result). Exclusive with lat/lon.
radiusMilesnumberrequiredRadius in miles, > 0 and ≤ 1000.
paginationobjectShow child attributesHide child attributes
cursorstringOpaque cursor from previous response for next page
sizeintegerPage size (1-100, default 25)
periodenumPre-aggregated period block. Rolling windows (last30Days, last60Days, last90Days, previousMonth, currentMonth) are NOT accepted here and return 400; they are supported on the loans, sales and market endpoints (list, count, breakdowns, analytics summary / time-series / chart) (see DatedPeriod).
2017201820192020202120222023202420252026last3Monthslast6Monthslast12Monthslast14Monthslast16Monthslast18Monthslast24MonthsyearToDateallTimeproductMixobject[]Whole-book product-share / volume bands for the selected period, ANDed: [{product: "fha", minShare: 30}, {product: "va", maxShare: 10}] = FHA ≥ 30% of period volume AND VA ≤ 10%; {product:"fha", volume:{gte:10000000}} = ≥ $10M of FHA. Shares are 0–100 percents of TOTAL period production across all markets (not geography-scoped), as the row's fhaPct / vaPct / conventionalPct. No bucket = 0% (fails minShare > 0, passes maxShare). Pair with units: {gte: N} so a 100% share off two loans is not a specialty.
Show child attributesHide child attributes
basisenumvolume (default) or units (loan count).
volumeunitsmaxSharenumberUpper bound, 0–100. No bucket = 0% (passes).
minSharenumberLower bound, 0–100 percent of the period book.
productenumLoan product (case-insensitive).
conventionalfhavahehelocbuildingcommercialstand_alone_reficlosed_endreverseusdastand_alone_secondaggregateseller_take_backsba_participation_trust_deedballoonopened_endassumptionnegative_amortizationland_contracttrademodificationunknownproductsenum[]Any-of instead of product: ["fha","va","usda"] = one of them on its own meets the bounds (shares never summed).
conventionalfhavahehelocbuildingcommercialstand_alone_reficlosed_endreverseusdastand_alone_secondaggregateseller_take_backsba_participation_trust_deedballoonopened_endassumptionnegative_amortizationland_contracttrademodificationunknownvolumeobjectDollar volume of this type in the period, {gte, lte}. Needs the bucket (no loans of the type fails).
Show child attributesHide child attributes
gtenumberltenumberproductionGeoPointobjectProduction RADIUS (statute miles, 0 < r ≤ 500): originators who originated loans within the radius of the point during the selected period — where they PRODUCE, not their office. COUNTY-LEVEL APPROXIMATION: counties whose Census centroid lies within the radius (always including the nearest) are in with all their loans; a large county whose centroid is outside is out even where its border is close. Coarser than a true radius, especially under ~25 mi. Pair with sort: [{ field: "scopedVolume" }] to rank by production inside those counties.
Show child attributesHide child attributes
latnumberrequiredlonnumberrequiredradiusMilesnumberrequiredsortobject[]Show child attributesHide child attributes
fieldenumrequirednmlsIdnamefirstNamelastNamevolumeunitsscopedVolumescopedUnitsavgLoanAmountcompanyNamecompanyNmlsIdcompanyCategorylicenseCounttotalLicensestotalLoansyearsInIndustryemployerCountsponsoredVolumesponsoredUnitssponsoredAvgLoanAmountthirdPartyVolumethirdPartyUnitsthirdPartyAvgLoanAmountofficeState+5 moreorderenumascdesctransactionMixobject[]Transaction-type bands, same rules as productMix: [{transactionType:"purchase", minShare:60}] = purchases ≥ 60% of period volume.
Show child attributesHide child attributes
basisenumvolume (default) or units (loan count).
volumeunitsmaxSharenumberUpper bound, 0–100. No bucket = 0% (passes).
minSharenumberLower bound, 0–100 percent of the period book.
transactionTypeenumrequiredpurchaserefinanceconstructionequityUNKNOWNvolumeobjectDollar volume of this type in the period, {gte, lte}. Needs the bucket (no loans of the type fails).
Show child attributesHide child attributes
gtenumberltenumberResponses
200objectExact count of matching originatorsShow attributesHide attributes
lenderNormalizationsobject[]How each lenderName value resolved against the lender dictionary. Present when a lenderName filter was supplied.
Show child attributesHide child attributes
aliasCountintegerrequiredStored lender-name variants this id expands to
displayNamestring | nullrequiredidstring | nullrequiredCanonical lender-dictionary id, or null
matchedViaenumrequiredid = the value already WAS a canonical key; alias = a stored lender name; name = matched the display/canonical name; unresolved = fell back to raw text match; degraded = the dictionary could not be consulted.
idaliasnameunresolveddegradedoriginalstringrequiredThe value the caller sent
totalDocumentsintegerrequiredLoans the dictionary attributes to this id. A small number next to a well-known lender name means the name matched a minor entry.
locationNormalizationsobject[]How each location filter value resolved. Present when a city/county/state/zip filter was supplied.
Show child attributesHide child attributes
candidatesstring[]Location ids matching an ambiguous name, ranked. Use instantSearch or suggestLocations to pick one.
confidenceenumrequired"exact" — matched a dictionary entry as written. "normalized" — resolved to a different spelling or merged several candidates. "fallback" — NOT resolved; the raw value was passed through, so a zero result means the name was not recognized rather than empty.
exactnormalizedfallbackdisplayNamestringrequiredfieldstringrequiredThe filter key this applies to
idstringResolved location id — pass this back for an exact filter
normalizedstringrequiredoriginalstringrequiredvariantsstring[]Spellings actually queried against the index
previousTotalintegerHow many of the originators in this result set also produced at least one loan in the 12 months BEFORE the last12Months window — i.e. months 13-24 back. With no filters, or identity-only filters (nmlsId, name, company), that is the full prior-year active originator population, and total against previousTotal is a true trailing year-over-year change in it. It is NOT countOriginators(last24Months) - countOriginators(last12Months): the 24-month window CONTAINS the 12-month one, so that subtraction returns only the originators who produced in the prior year and then stopped (46,525) rather than all who were active in it (220,836) — it drops everyone who produced in both years and understates by about 79%. There is no way to derive this figure from the published totals, which is why it is returned here. UNDER A PRODUCTION OR GEOGRAPHY FILTER IT IS A RETENTION COUNT, NOT A PRIOR-YEAR POPULATION. Every such filter (state, city, county, zip, volume, units, loanType, the market-count filters, footprint, …) is read from the CURRENT window in both passes: state: "CA" selects originators whose last-12-month production includes California, then counts how many of THOSE were also producing a year earlier (45,024 → 38,269). previousTotal is then a subset of total — it is never larger, total - previousTotal is the members of the current set who were not active a year ago, and total / previousTotal is a retention ratio, not the growth of the California market. An originator who produced in California a year ago but has since stopped or moved markets is not counted, because there is no per-market breakdown of the prior window to filter on. ABSENT rather than zero when it cannot be computed: on any period other than last12Months (no other window has a measured containing block), and when producersOnly: false is set (that opts the zero-production tail into total, so the two figures would no longer describe comparable populations).
totalintegerrequiredExact count of records matching the filters
totalIsLowerBoundenumPresent (always true) only under timeAtCompanyMonths when the other filters match more than 200,000 originators: total then counts the tenure matches among the first 200,000 of them (in sort order) and the true count may be higher. Absent means total is exact.
true400objectValidation error401objectUnauthorized403objectForbidden (authenticated, but missing required context — e.g. no active organization)404objectNot found413objectResponse payload too large — detail endpoint capped to fit Lambda response limits503objectSearch timed out or the cluster is overloaded — retry after `Retry-After` seconds.