Market
Community Lending mix of a market's originations
The aggregate Community Lending profile of the originations matching your filters: the share that landed in low- or moderate-income neighborhoods, the CRA-eligible share, the distribution across the four neighborhood income bands, and the majority-minority neighborhood 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. This is a MARKET-LEVEL view only — the underlying origination data carries no lender, loan officer or borrower identity, and no figure here is attributable to one. Every share is reported next to the count it is a share of, because the three designations have three different coverage levels; read the denominator before comparing markets.
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
comparebooleanAlso return previous (preceding equal-length window).
filtersone 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
amortizationTypeone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredappraisedValueone 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.
ltnumberltenumberborrowerGenerationone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredchannelone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredclosingDateone of | nullShow 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.
ltstringltestringcombinedLtvone 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.
ltnumberltenumbercommunityIncomeLevelone of | nullFFIEC income classification of the neighborhood the property sits in. A tract-level aggregate statistic describing the neighborhood, never an individual, household or applicant attribute. Carried on roughly a fifth of originations, so this filter narrows sharply.
Show 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
matchstringrequiredcountyone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredcountyCodeone of | null3-digit county code (the county segment of a FIPS, e.g. Philadelphia = "101"). Pair it with state — the code is not unique across states. county accepts a county NAME or 5-digit FIPS and resolves to this code for you.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredcraEligiblebooleanOnly CRA-eligible originations (a low- or moderate-income neighborhood OR a low- or moderate-income borrower). Determined on every origination.
creditScoreone 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.
ltnumberltenumbercurrentHomeOwnerboolean | nulldtione 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.
ltnumberltenumberdtifrontone 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.
ltnumberltenumberfirstTimeHomebuyerboolean | nullhmdaActionTakenone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredincomeone 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.
ltnumberltenumberloanAmountone 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.
ltnumberltenumberloanApplicationDateone of | nullShow 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.
ltstringltestringloanPurposeone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredloanStatusone of | nullHMDA action, else funding/denial/lock date evidence.
Show child attributesHide child attributes
Option 1enumOne of (case-insensitive): funded, purchased, not_funded, pending
fundedpurchasednot_fundedpendingOption 2enum[]Match any of these values
fundedpurchasednot_fundedpendingOption 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredloanTermone 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.
ltnumberltenumberloanTypeone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredlowModIncomeTractbooleanOnly originations in a low- or moderate-income neighborhood. This describes the U.S. Census tract (neighborhood) as a whole — a tract-level aggregate statistic, never an individual, household or applicant attribute. false also matches originations whose neighborhood carries no income classification; pair with communityIncomeLevel when you need the classified population only.
ltvone 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.
ltnumberltenumbermajorityMinorityTractbooleanOnly originations in a majority-minority neighborhood. This describes the U.S. Census tract (neighborhood) as a whole — a tract-level aggregate statistic, never an individual, household or applicant attribute. Carried on about half of originations.
metroone of | nullMetro area code (5-digit federal CBSA code, e.g. Los Angeles = "31084"). Roughly half of originations sit outside any metro area and carry no code, so a metro filter is a narrowing one.
Show child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredmiddleIncomeTractbooleanOnly originations in a middle-income neighborhood. Tract-level aggregate, never an individual attribute. Same caveat on false as lowModIncomeTract.
minorityTractPctone of | nullNon-white share (0-100) of the neighborhood's population. Tract-level aggregate, never an individual attribute.
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.
ltnumberltenumbermodeenumandornoteRateone 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.
ltnumberltenumberoccupancyTypeone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredpropertyTypeone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredpurchasePriceone 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.
ltnumberltenumberselfEmployedboolean | nullstateone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredtractIncomeVsMetroPctone of | nullNeighborhood median family income as a percent of its metro area's — 100 is parity, and it legitimately exceeds 100. Tract-level aggregate, never an individual attribute.
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.
ltnumberltenumberveteranIndicatorboolean | nullzipone of | nullShow child attributesHide child attributes
Option 1stringOption 2string[]Match any value
Option 3objectFuzzy text match
Show child attributesHide child attributes
matchstringrequiredintervalenumAlso return series: the mix per bucket.
monthlyquarterlyyearlylimitintegerMaximum buckets when slice is supplied (default 25, max 200).
periodenumDate window for loans / sales / market endpoints. Accepts every Period value plus rolling windows: last30Days / last60Days / last90Days (today minus 30 / 60 / 90 days through today), previousMonth (the last complete calendar month) and currentMonth (the 1st of this month through today). All windows are resolved in UTC with inclusive calendar-date bounds. Rolling windows are only accepted by the loans, sales and market endpoints (list, count, breakdowns, analytics summary / time-series / chart); originators / companies / branches / agents / offices endpoints return 400 for them.
2017201820192020202120222023202420252026last3Monthslast6Monthslast12Monthslast14Monthslast16Monthslast18Monthslast24MonthsyearToDateallTimelast30Dayslast60Dayslast90DayspreviousMonthcurrentMonthsliceenumBreak the mix down by a market dimension — metro for the metro (CBSA) grain, state / county / zip for geography, or any product dimension. Each bucket reports its OWN denominators, so bucket shares are comparable to each other and to the overall mix. Omit for the overall mix only.
statecountymetroziploanPurposeloanTypepropertyTypeoccupancyTypeamortizationTypechannelborrowerGenerationfirstTimeHomebuyerveteranIndicatorhmdaActionTakenselfEmployedcurrentHomeOwnerlenderTypelenderVolumeClassResponses
200objectCommunity Lending mix, optionally sliced by dimensionShow attributesHide attributes
overallobjectrequiredShow child attributesHide child attributes
affordableLoanOriginationsnumberrequiredaffordableLoanSharePctnumber | nullrequiredShare (0-100) of originations that are affordable loans.
avgMinorityTractPctnumber | nullrequiredAverage non-white share (0-100) of the neighborhood population across originations that carry 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.
avgTractIncomeVsMetroPctnumber | nullrequiredAverage neighborhood median family income as a percent of its metro area's — 100 is parity, and it legitimately exceeds 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.
craEligibleAndAffordableOriginationsnumberrequiredOriginations both CRA-eligible and affordable.
craEligibleCoveragenumberrequiredOriginations carrying a CRA-eligibility determination — the denominator of craEligibleSharePct. Effectively the whole population: the determination is loan-level and is present on every record.
craEligibleOriginationsnumberrequiredcraEligibleSharePctnumber | nullrequiredShare (0-100) of craEligibleCoverage that is CRA-eligible — a low- or moderate-income neighborhood OR a low- or moderate-income borrower. Null when nothing in scope carries the determination.
incomeBandCoveragenumberrequiredOriginations whose neighborhood carries an income band — the denominator of lowModIncomeTractSharePct, middleIncomeTractSharePct and every incomeBands[].sharePct. READ THIS FIRST: roughly a fifth of records carry a band, and a share taken over the full population instead is about 4.5x too low.
incomeBandsobject[]requiredShow child attributesHide child attributes
levelenumrequiredlowmoderatemiddleupperoriginationsnumberrequiredsharePctnumber | nullrequiredlowModIncomeTractOriginationsnumberrequiredlowModIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a low- or moderate-income neighborhood. 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.
majorityMinorityTractOriginationsnumberrequiredmajorityMinorityTractSharePctnumber | nullrequiredShare (0-100) of minorityTractCoverage originated in a majority-minority neighborhood. 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.
middleIncomeTractOriginationsnumberrequiredmiddleIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a middle-income neighborhood. 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.
minorityTractCoveragenumberrequiredOriginations whose neighborhood carries the majority-minority determination — the denominator of majorityMinorityTractSharePct and the population behind avgMinorityTractPct. About half of all records; it is a different denominator from incomeBandCoverage.
originationsnumberrequiredOriginations matched by the filters in this scope.
underservedMarketOriginationsnumberrequiredunderservedMarketSharePctnumber | nullrequiredShare (0-100) of originations in an underserved market.
previousobjectWith compare: true: the mix over the preceding window of equal length.
Show child attributesHide child attributes
affordableLoanOriginationsnumberrequiredaffordableLoanSharePctnumber | nullrequiredShare (0-100) of originations that are affordable loans.
avgMinorityTractPctnumber | nullrequiredAverage non-white share (0-100) of the neighborhood population across originations that carry 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.
avgTractIncomeVsMetroPctnumber | nullrequiredAverage neighborhood median family income as a percent of its metro area's — 100 is parity, and it legitimately exceeds 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.
craEligibleAndAffordableOriginationsnumberrequiredOriginations both CRA-eligible and affordable.
craEligibleCoveragenumberrequiredOriginations carrying a CRA-eligibility determination — the denominator of craEligibleSharePct. Effectively the whole population: the determination is loan-level and is present on every record.
craEligibleOriginationsnumberrequiredcraEligibleSharePctnumber | nullrequiredShare (0-100) of craEligibleCoverage that is CRA-eligible — a low- or moderate-income neighborhood OR a low- or moderate-income borrower. Null when nothing in scope carries the determination.
incomeBandCoveragenumberrequiredOriginations whose neighborhood carries an income band — the denominator of lowModIncomeTractSharePct, middleIncomeTractSharePct and every incomeBands[].sharePct. READ THIS FIRST: roughly a fifth of records carry a band, and a share taken over the full population instead is about 4.5x too low.
incomeBandsobject[]requiredShow child attributesHide child attributes
levelenumrequiredlowmoderatemiddleupperoriginationsnumberrequiredsharePctnumber | nullrequiredlowModIncomeTractOriginationsnumberrequiredlowModIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a low- or moderate-income neighborhood. 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.
majorityMinorityTractOriginationsnumberrequiredmajorityMinorityTractSharePctnumber | nullrequiredShare (0-100) of minorityTractCoverage originated in a majority-minority neighborhood. 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.
middleIncomeTractOriginationsnumberrequiredmiddleIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a middle-income neighborhood. 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.
minorityTractCoveragenumberrequiredOriginations whose neighborhood carries the majority-minority determination — the denominator of majorityMinorityTractSharePct and the population behind avgMinorityTractPct. About half of all records; it is a different denominator from incomeBandCoverage.
originationsnumberrequiredOriginations matched by the filters in this scope.
underservedMarketOriginationsnumberrequiredunderservedMarketSharePctnumber | nullrequiredShare (0-100) of originations in an underserved market.
seriesobject[]Show child attributesHide child attributes
affordableLoanOriginationsnumberrequiredaffordableLoanSharePctnumber | nullrequiredShare (0-100) of originations that are affordable loans.
avgMinorityTractPctnumber | nullrequiredAverage non-white share (0-100) of the neighborhood population across originations that carry 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.
avgTractIncomeVsMetroPctnumber | nullrequiredAverage neighborhood median family income as a percent of its metro area's — 100 is parity, and it legitimately exceeds 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.
craEligibleAndAffordableOriginationsnumberrequiredOriginations both CRA-eligible and affordable.
craEligibleCoveragenumberrequiredOriginations carrying a CRA-eligibility determination — the denominator of craEligibleSharePct. Effectively the whole population: the determination is loan-level and is present on every record.
craEligibleOriginationsnumberrequiredcraEligibleSharePctnumber | nullrequiredShare (0-100) of craEligibleCoverage that is CRA-eligible — a low- or moderate-income neighborhood OR a low- or moderate-income borrower. Null when nothing in scope carries the determination.
fromstringrequiredBucket start (inclusive), YYYY-MM-DD.
incomeBandCoveragenumberrequiredOriginations whose neighborhood carries an income band — the denominator of lowModIncomeTractSharePct, middleIncomeTractSharePct and every incomeBands[].sharePct. READ THIS FIRST: roughly a fifth of records carry a band, and a share taken over the full population instead is about 4.5x too low.
incomeBandsobject[]requiredShow child attributesHide child attributes
levelenumrequiredlowmoderatemiddleupperoriginationsnumberrequiredsharePctnumber | nullrequiredlowModIncomeTractOriginationsnumberrequiredlowModIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a low- or moderate-income neighborhood. 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.
majorityMinorityTractOriginationsnumberrequiredmajorityMinorityTractSharePctnumber | nullrequiredShare (0-100) of minorityTractCoverage originated in a majority-minority neighborhood. 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.
middleIncomeTractOriginationsnumberrequiredmiddleIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a middle-income neighborhood. 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.
minorityTractCoveragenumberrequiredOriginations whose neighborhood carries the majority-minority determination — the denominator of majorityMinorityTractSharePct and the population behind avgMinorityTractPct. About half of all records; it is a different denominator from incomeBandCoverage.
originationsnumberrequiredOriginations matched by the filters in this scope.
tostringrequiredBucket end (exclusive), YYYY-MM-DD.
underservedMarketOriginationsnumberrequiredunderservedMarketSharePctnumber | nullrequiredShare (0-100) of originations in an underserved market.
sliceobjectShow child attributesHide child attributes
bucketsobject[]requiredShow child attributesHide child attributes
affordableLoanOriginationsnumberrequiredaffordableLoanSharePctnumber | nullrequiredShare (0-100) of originations that are affordable loans.
avgMinorityTractPctnumber | nullrequiredAverage non-white share (0-100) of the neighborhood population across originations that carry 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.
avgTractIncomeVsMetroPctnumber | nullrequiredAverage neighborhood median family income as a percent of its metro area's — 100 is parity, and it legitimately exceeds 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.
craEligibleAndAffordableOriginationsnumberrequiredOriginations both CRA-eligible and affordable.
craEligibleCoveragenumberrequiredOriginations carrying a CRA-eligibility determination — the denominator of craEligibleSharePct. Effectively the whole population: the determination is loan-level and is present on every record.
craEligibleOriginationsnumberrequiredcraEligibleSharePctnumber | nullrequiredShare (0-100) of craEligibleCoverage that is CRA-eligible — a low- or moderate-income neighborhood OR a low- or moderate-income borrower. Null when nothing in scope carries the determination.
incomeBandCoveragenumberrequiredOriginations whose neighborhood carries an income band — the denominator of lowModIncomeTractSharePct, middleIncomeTractSharePct and every incomeBands[].sharePct. READ THIS FIRST: roughly a fifth of records carry a band, and a share taken over the full population instead is about 4.5x too low.
incomeBandsobject[]requiredkeystringrequiredThe dimension value this bucket covers — a metro (CBSA) code for metro, a state code for state, and so on.
lowModIncomeTractOriginationsnumberrequiredlowModIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a low- or moderate-income neighborhood. 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.
majorityMinorityTractOriginationsnumberrequiredmajorityMinorityTractSharePctnumber | nullrequiredShare (0-100) of minorityTractCoverage originated in a majority-minority neighborhood. 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.
middleIncomeTractOriginationsnumberrequiredmiddleIncomeTractSharePctnumber | nullrequiredShare (0-100) of incomeBandCoverage originated in a middle-income neighborhood. 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.
minorityTractCoveragenumberrequiredOriginations whose neighborhood carries the majority-minority determination — the denominator of majorityMinorityTractSharePct and the population behind avgMinorityTractPct. About half of all records; it is a different denominator from incomeBandCoverage.
originationsnumberrequiredOriginations matched by the filters in this scope.
underservedMarketOriginationsnumberrequiredunderservedMarketSharePctnumber | nullrequiredShare (0-100) of originations in an underserved market.
dimensionstringrequired400objectValidation 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.