Market

Company-to-company loan officer flows

GET
/v1/market/movement/transitions

The largest company-to-company flows in the window: how many loan officers moved from each previous employer to each new one. Filter to one company (either side) with companyNmlsId. A move is dated by the loan officer's FIRST record at the new company; a loan officer licensed in several states counts once per company. Location filters use the loan officer's CURRENT NMLS location. Results refresh weekly. A response not ready within 25 s answers 202 (MovementComputing): repeat the same request after retryAfterMs.

Authorization

x-api-key<token>

In: header

Query Parameters

dateRange?string

Reporting window. last_N_months = the N most recent COMPLETED calendar months (the current month is excluded); year_to_date = Jan 1 through the end of last month; YYYY (or fy_YYYY) = that calendar year; all_time. Default last_12_months.

Match^(?:last_\d{1,3}_months|year_to_date|all_time|(?:fy_|fiscal_)?\d{4})$
state?string

Two-letter state. Matches the loan officer's CURRENT NMLS location, not where they were when they moved.

Match^[A-Za-z]{2}$
states?string

Comma-separated two-letter states (e.g. a region). ORed; combined with state when both are sent.

Match^[A-Za-z]{2}(?:,[A-Za-z]{2})*$
city?string

Exact city name of the loan officer's current NMLS location. Pair with state.

Length1 <= length <= 100
companyCategory?string

Comma-separated company categories (BANK, CU, OTHER) applied to the company whose roster changed — the destination for arrivals, the company left for departures.

Match^(?:BANK|CU|OTHER)(?:,(?:BANK|CU|OTHER))*$
companyNmlsId?string

Only flows into or out of this company.

limit?integer

Rows to return (default 25, max 200).

Range1 <= value <= 200

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/market/movement/transitions"
{
  "data": [
    {
      "fromCompanyName": "string",
      "fromCompanyNmlsId": "string",
      "los": 0,
      "toCompanyName": "string",
      "toCompanyNmlsId": "string"
    }
  ],
  "truncated": true,
  "window": {
    "endDate": "string",
    "months": 0,
    "startDate": "string"
  }
}
{
  "retryAfterMs": 5000,
  "status": "computing"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string",
  "limit": 0,
  "size": 0
}