Submit a bulk-delivery job for branches
Queues an ECS task that dumps every matching branches document to S3 in the requested format. Returns 202 with a jobId; poll GET /v1/branches/bulk-delivery/{jobId} for status + the signed download URL.
Row limit. Deliveries of up to 1,000 rows need no entitlement. Above that, the org's bulk-delivery.branches entitlement is required and its scope (row ceiling, row filters, allowed fields) governs the delivery; without it the request is rejected with 403 entitlement_missing. Pass limit at or below the ceiling to deliver a capped subset of a broader query. Email support@modelmatch.com to request a limit increase.
Delivery is billed at 1 credit per 100 rows regardless of entitlement.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/branches/bulk-delivery" \ -H "Content-Type: application/json" \ -d '{ "format": "parquet" }'{
"entityType": "string",
"estimatedTotal": 0,
"format": "parquet",
"jobId": "string",
"maxRows": 1,
"status": "queued"
}{
"error": "string"
}{
"error": "string"
}{
"balance": 0,
"cost": 0,
"error": "payment_required",
"message": "string",
"reason": "out_of_credits"
}{
"entitlementKey": "string",
"error": "entitlement_missing",
"estimatedTotal": 0,
"maxRows": 1,
"message": "string"
}{
"error": "string"
}Search branches with filters POST
Search NMLS-registered mortgage company branch offices (not real estate offices — use listOffices for those). Returns branch name, address, parent company, managers, and NMLS ID. Each row carries branch-level production metrics for the selected period. If you only need how many branches match and not the records themselves, send the same request body to `countBranches`.
Real-estate agents who co-closed with this company's LOs POST
Ranks the real-estate agents on the selling side of this company's loans, by volume. Buckets whose name is an placeholder for "no selling agent recorded" (`non member`, `non listed agent`, and ~140 board-specific spellings) are excluded rather than ranked as agents — they are not people and cannot be resolved with `GET /v1/agents/{id}`. Percentages are shares of the company's whole loan population, so they do not sum to 100 across the page.