Early access. The API serves every early-access route and tool to every key at 0 credits during the beta.
Investorlift can restrict them later. Investorlift aims to give 30 days of email notice before it restricts them
(Developer Agreement 12.3), and the changelog records the change.
meta.coverage[].lenders.as_of. It covers the counties in
meta.coverage[].lenders.counties. The recorded history captures about one open loan in five, so a history count is
a floor.
Who lends to flippers in 85032
n (its
loans there), share (of every lender’s loans there), n_first_lien, volume and last_recorded_on. rank is the
position in this list. Without hard_money=true the banks and mortgage companies lead the same list. The list hides
persons and government lenders unless you ask for them. A ZIP outside the counties the registry covers answers
422 outside_coverage and names the covered counties, never an empty page.
The recorded example of this route ranks the hard-money lenders of the whole market, 2 rows. The same row shape
answers for one ZIP:
period= picks the window: 12m, all, a year such as 2025, or a month such as 2026-05, beside the
default 24m. So the same call with period=2026-05 is the ZIP’s ranking for one month, and twelve such calls are
its monthly series. A point with radius_miles in place of the ZIP ranks the lenders around it. The row’s
in_geometry says how many hex cells the circle became.
Which ZIPs does this lender lead
GET /v1/lenders/{id}/rankings (since 0.19.0) is the ZIP list seen
from the lender’s side. It returns one bucket per ZIP where the
lender recorded 10 or more loans over the window, most loans first. Each bucket carries the lender’s n and volume
there. It also carries its rank and share among every lender of the market in that ZIP, persons and government
included. The buckets with rank: 1 are the ZIPs the profile’s n_zips_ranked_first_24m counts.
The recorded answer: the two ZIPs where Kiavi recorded 10 or more loans in the window.
group_by=city and group_by=county do the same by place. group_by=cell&res=8 does it by hex cell, for the
profile’s map, and GET /v1/lenders/{id}/cells gives the counts alone.
group_by=month&period=all is the lender’s 36-month series against the whole market, every month present, the last
partial. A registry built before the place rankings answers
422 lenders_unavailable here and serves the three ranked-first
counts as null.
Where to go next
When a call fails
The five failures a developer meets first: the body, the recovery and what to send to support.
GET /v1/lenders
Every place form, the window, the filters and every field of a ranking row, generated from the code.