@model-match/api 3.23.0 → 3.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { n as createClient, w as client } from "../src-B3FokmNR.mjs";
1
+ import { n as createClient, w as client } from "../src-BHuxdqI3.mjs";
2
2
  //#region src/slim/sdk.gen.ts
3
3
  /**
4
4
  * An LO's sponsorship / registration links (admin)
@@ -255,6 +255,48 @@ const getAgent = (options) => {
255
255
  });
256
256
  };
257
257
  /**
258
+ * Financing profile of the agent's deals, per side
259
+ * Scoped to the agent's FINANCED deals: recorded loans on which the agent is the buyer's agent or the listing / co-listing agent, matched through the agent's MLS ids. Cash deals carry no loan and are not counted. The date window is the loan's recording date. Returns, for each side at once (`any`, `buyer`, `listing` — duals on `buyer`): the financed deal count and loan volume, how many were brokered (third-party origination), and the loan-type mix. For the prior period, call again with that period.
260
+ */
261
+ const agentLoanMix = (options) => {
262
+ return (options.client ?? client).post({
263
+ security: [{
264
+ name: "x-api-key",
265
+ type: "apiKey"
266
+ }, {
267
+ scheme: "bearer",
268
+ type: "http"
269
+ }],
270
+ url: "/v1/agents/{id}/analytics/loan-mix",
271
+ ...options,
272
+ headers: {
273
+ "Content-Type": "application/json",
274
+ ...options?.headers
275
+ }
276
+ });
277
+ };
278
+ /**
279
+ * Home builders on the agent's deals (pre-aggregated)
280
+ * New-construction builders named on the agent's deals in the period, ranked by units. The pre-aggregated builder list carries a deal COUNT only, so every row's `volume` and `pctVolume` are 0 — rank and share by `units` / `pctUnits` (a share of ALL the agent's deals in the period, so the rows sum to the builder-sold share, not to 1). It carries no buyer/listing split either: `side` must be `any` (or omitted); `buyer`/`listing` return 400.
281
+ */
282
+ const agentBuilders = (options) => {
283
+ return (options.client ?? client).post({
284
+ security: [{
285
+ name: "x-api-key",
286
+ type: "apiKey"
287
+ }, {
288
+ scheme: "bearer",
289
+ type: "http"
290
+ }],
291
+ url: "/v1/agents/{id}/breakdowns/builders",
292
+ ...options,
293
+ headers: {
294
+ "Content-Type": "application/json",
295
+ ...options?.headers
296
+ }
297
+ });
298
+ };
299
+ /**
258
300
  * City volume breakdown across the agent's sales
259
301
  */
260
302
  const agentCities = (options) => {
@@ -395,6 +437,48 @@ const agentStates = (options) => {
395
437
  });
396
438
  };
397
439
  /**
440
+ * Title companies on the agent's financed deals (spellings merged)
441
+ * Scoped to the agent's FINANCED deals: recorded loans on which the agent is the buyer's agent or the listing / co-listing agent, matched through the agent's MLS ids. Cash deals carry no loan and are not counted. The date window is the loan's recording date. Ranks the title companies named on those loans. Spellings of one company are MERGED: `label` is its most-used spelling, `id` the normalized name every spelling was grouped under. "None available"-style placeholders and names shorter than 3 characters are excluded. `pctUnits` / `pctVolume` are shares of ALL the side's financed deals in the window, including those with no title company, so they do not sum to 1. `side` defaults to `any`; title company is usually picked on the buyer side, so `buyer` is the view that reads as "who this agent's buyers close with".
442
+ */
443
+ const agentTitleCompanies = (options) => {
444
+ return (options.client ?? client).post({
445
+ security: [{
446
+ name: "x-api-key",
447
+ type: "apiKey"
448
+ }, {
449
+ scheme: "bearer",
450
+ type: "http"
451
+ }],
452
+ url: "/v1/agents/{id}/breakdowns/title-companies",
453
+ ...options,
454
+ headers: {
455
+ "Content-Type": "application/json",
456
+ ...options?.headers
457
+ }
458
+ });
459
+ };
460
+ /**
461
+ * Title companies on the agent's financed deals, over time
462
+ * Scoped to the agent's FINANCED deals: recorded loans on which the agent is the buyer's agent or the listing / co-listing agent, matched through the agent's MLS ids. Cash deals carry no loan and are not counted. The date window is the loan's recording date. One bucket per `interval` (default monthly), each segmented by title company with spellings merged per bucket: `segments[].label` is the company's most-used spelling across the whole response and `segments[].id` the normalized name — match a company across buckets on `id`. `previous` is the same series for the prior window. `side` defaults to `any`.
463
+ */
464
+ const agentTitleCompaniesTimeSeries = (options) => {
465
+ return (options.client ?? client).post({
466
+ security: [{
467
+ name: "x-api-key",
468
+ type: "apiKey"
469
+ }, {
470
+ scheme: "bearer",
471
+ type: "http"
472
+ }],
473
+ url: "/v1/agents/{id}/breakdowns/title-companies/time-series",
474
+ ...options,
475
+ headers: {
476
+ "Content-Type": "application/json",
477
+ ...options?.headers
478
+ }
479
+ });
480
+ };
481
+ /**
398
482
  * Zip-code volume breakdown
399
483
  */
400
484
  const agentZipCodes = (options) => {
@@ -474,6 +558,7 @@ const agentRelated = (options) => {
474
558
  };
475
559
  /**
476
560
  * Sales transactions where this agent was listing or selling side
561
+ * The agent's deals, newest first: every sale on which the agent is the buyer's agent or the listing / co-listing agent. `side` narrows to one half (`buyer` includes deals where the agent was on both sides; `listing` excludes them). Each row says which `side` the agent was on and carries the sale's recorded purchase `loan` — lender, loan officer, loan type, amount, title company — or `null` for a cash deal or a loan not yet on file. Pass `flatFilters.mlsStatus: "SLD"` for closed deals only.
477
562
  */
478
563
  const agentSales = (options) => {
479
564
  return (options.client ?? client).post({
@@ -5242,7 +5327,7 @@ const getOriginator = (options) => {
5242
5327
  };
5243
5328
  /**
5244
5329
  * Real-estate agents this LO co-closed with
5245
- * Ranks the real-estate agents on the selling side of this LO's loans, by volume. Buckets whose name is an MLS 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 LO's whole loan population, so they do not sum to 100 across the page.
5330
+ * Ranks the real-estate agents on this LO's loans, by volume — the buyer's agent by default, the listing agent with `side: "listing"`. Buckets whose name is an MLS placeholder for "no agent recorded" (`non member`, `non listed agent`, and ~140 board-specific spellings) are excluded rather than ranked as agents — they are not people. `id` is the agent id most often recorded under the name on these loans (pass it to `GET /v1/agents/{id}`); absent when none is recorded. Percentages are shares of the LO's whole loan population, so they do not sum to 100 across the page.
5246
5331
  */
5247
5332
  const originatorAgents = (options) => {
5248
5333
  return (options.client ?? client).post({
@@ -6098,4 +6183,4 @@ const getSearchToken = (options) => {
6098
6183
  });
6099
6184
  };
6100
6185
  //#endregion
6101
- export { client as _heyApiClient, actionCrmCallerId, addCrmContactMethod, addCrmListMember, addCrmListMembersBulk, addCrmNote, addCrmRecord, addCrmRecordsBulk, addWatchedAgent, addWatchedArea, addWatchedDocument, adminGetBulkJob, adminGetCadLinks, adminGetCadLoadTask, adminLaunchCadLoad, agentAnalyticsChart, agentAnalyticsSummary, agentAnalyticsTimeSeries, agentCities, agentCompanies, agentCounties, agentLenders, agentMarkets, agentOffices, agentOriginators, agentProperties, agentRelated, agentSales, agentStates, agentZipCodes, analyzeCrmCall, applyCrmEnrichment, applyCrmListTemplate, applyCrmMiUpdates, branchAnalyticsChart, branchAnalyticsSummary, branchAnalyticsTimeSeries, branchCities, branchCounties, branchLenders, branchLoans, branchOriginators, branchRoster, branchStates, branchTitleCompanies, cancelAgentsBulkDeliveryJob, cancelBranchesBulkDeliveryJob, cancelCompaniesBulkDeliveryJob, cancelEnrichBulkJob, cancelLoansBulkDeliveryJob, cancelOriginatorsBulkDeliveryJob, cancelPropertiesBulkDeliveryJob, companyAgents, companyAnalyticsChart, companyAnalyticsSummary, companyAnalyticsTimeSeries, companyBranches, companyBrokers, companyCities, companyCounties, companyEarlyExits, companyEmployeeStats, companyEmployment, companyHeadcount, companyLenders, companyMarkets, companyOffices, companyOriginators, companyRelated, companySponsoredIndividuals, companySponsorshipMovement, companyStates, companyTalentFlow, companyTitleCompanies, companyZipCodes, countAgents, countBranches, countCompanies, countLenders, countLoans, countOffices, countOriginators, countProperties, countSales, createAlertSubscription, createClient, createCrmList, createCrmListField, createCrmManualRecord, createCrmMeeting, createCrmObjectField, createCrmRecord, createCrmTask, createCrmTemplate, createMyAlertRecipe, createSavedFilter, crmLenderChannels, crmLoLoanMix, crmLoMomentum, crmLoSponsorLocation, crmSimilarOriginators, declineCrmMiUpdate, deleteAlertSubscription, deleteCrmCallerId, deleteCrmList, deleteCrmListField, deleteCrmMeeting, deleteCrmNote, deleteCrmObjectField, deleteCrmRecord, deleteCrmRecords, deleteCrmTask, deleteCrmTemplate, deleteMyAlertRecipe, deleteSavedFilter, describeCrmRecordsOnAdd, dismissCrmMiUpdates, editCrmLoggedActivity, editCrmNote, enrichPropertiesBatch, enrichPropertiesBulk, enrichProperty, filterCrmListMembers, findCrmRecordByNmls, generateCrmRecordDescription, getAgent, getAgentsBulkDeliveryJob, getAlertConditions, getAlertEmailTokens, getAlertUnreadCount, getBranch, getBranchesBulkDeliveryJob, getCompaniesBulkDeliveryJob, getCompany, getCrmActiveCall, getCrmActivityReport, getCrmCall, getCrmCallTranscript, getCrmCustomValues, getCrmImportJob, getCrmList, getCrmListMemberIds, getCrmListShares, getCrmMiUpdates, getCrmOutcomesReport, getCrmOverrides, getCrmProductionEnrichJob, getCrmRecordAccess, getCrmRecordAccessRequest, getCrmRecordConnections, getCrmRecordMemberIds, getCrmRecordProfile, getCrmTemplate, getCrmTemplateShares, getEnrichBulkJob, getHubspotPushStatus, getLender, getLoan, getLoansBulkDeliveryJob, getMe, getMeCredits, getMePlan, getOffice, getOriginator, getOriginatorsBulkDeliveryJob, getPropertiesBulkDeliveryJob, getProperty, getRealtimeConfig, getSale, getSavedFilter, getSearchToken, grantCrmListAccess, grantCrmRecordAccess, grantCrmRecordAccessRequest, hangupCrmCall, importCrmRecords, instantSearch, lenderCities, lenderCompanies, lenderCounties, lenderOriginators, lenderStates, linkCrmRecord, listAgents, listAlertDigests, listAlertLog, listAlertRecipes, listAlertSubscriptions, listBranches, listCompanies, listCrmActivity, listCrmCallerIds, listCrmCustomFields, listCrmListAssignees, listCrmListFields, listCrmListMemberships, listCrmListShareableMembers, listCrmLists, listCrmMeetings, listCrmMembers, listCrmOrgMembers, listCrmRecordShareableMembers, listCrmRecordShares, listCrmReferencedActivity, listCrmTasks, listCrmTemplates, listCrmWorkspaceMeetings, listCrmWorkspaceTasks, listEnrichments, listLenders, listLoans, listMarket, listMyAlertRecipes, listOffices, listOriginators, listProperties, listSales, listSavedFilters, listWatchedAgents, listWatchedAreas, listWatchedDocuments, loanRelated, loansAnalyticsChart, loansAnalyticsSummary, loansAnalyticsTimeSeries, logCrmActivity, lookupCompanies, markAlertDigestRead, markAlertRead, markAllAlertsRead, marketAnalyticsChart, marketAnalyticsSummary, marketAnalyticsTimeSeries, marketCommunityLending, marketMovementActivity, marketMovementByState, marketMovementCohortPayoff, marketMovementMostGained, marketMovementMostLost, marketMovementMovers, marketMovementRankings, marketMovementStats, marketMovementTransitions, officeAgents, originatorAgents, originatorAnalyticsChart, originatorAnalyticsSummary, originatorAnalyticsTimeSeries, originatorBranches, originatorBrokers, originatorCitiesBreakdown, originatorCompanies, originatorCountiesBreakdown, originatorLenders, originatorLoans, originatorMarkets, originatorOffices, originatorProperties, originatorRelated, originatorStatesBreakdown, originatorTitleCompanies, originatorZipCodes, placeCrmCall, previewAlertEmailTemplate, previewAlertRecipe, previewAlerts, previewMyAlertRecipe, propertiesAnalyticsChart, propertiesAnalyticsSummary, propertyRelated, pushToHubspot, reconcileCrmMeetings, refreshCrmRecordMirror, removeCrmContactMethod, removeCrmListMember, removeWatchedAgent, removeWatchedArea, removeWatchedDocument, requestCrmAccess, requestCrmRecordAccess, retrieveLocation, revokeCrmListAccess, revokeCrmRecordAccess, saleRelated, salesAnalyticsChart, salesAnalyticsSummary, salesAnalyticsTimeSeries, searchCrmEmailRecipients, searchCrmMatchCandidates, searchCrmMentionRecords, searchCrmRecords, searchProperties, sendCrmEmail, setCrmCallAnalysis, setCrmCustomValue, setCrmOverride, setCrmRecordOwner, setDefaultCrmCallerId, shareCrmTemplate, submitAgentsBulkDelivery, submitBranchesBulkDelivery, submitCompaniesBulkDelivery, submitLoansBulkDelivery, submitOriginatorsBulkDelivery, submitPropertiesBulkDelivery, subscribeAlertRecipe, suggestLocations, transcribeCrmCall, transferCrmListOwnership, unshareCrmTemplate, unsubscribeAlertRecipe, updateAlertConditions, updateCrmContactMethod, updateCrmList, updateCrmListField, updateCrmMeeting, updateCrmObjectField, updateCrmTask, updateCrmTemplate, updateMe, updateMyAlertRecipe, updateSavedFilter };
6186
+ export { client as _heyApiClient, actionCrmCallerId, addCrmContactMethod, addCrmListMember, addCrmListMembersBulk, addCrmNote, addCrmRecord, addCrmRecordsBulk, addWatchedAgent, addWatchedArea, addWatchedDocument, adminGetBulkJob, adminGetCadLinks, adminGetCadLoadTask, adminLaunchCadLoad, agentAnalyticsChart, agentAnalyticsSummary, agentAnalyticsTimeSeries, agentBuilders, agentCities, agentCompanies, agentCounties, agentLenders, agentLoanMix, agentMarkets, agentOffices, agentOriginators, agentProperties, agentRelated, agentSales, agentStates, agentTitleCompanies, agentTitleCompaniesTimeSeries, agentZipCodes, analyzeCrmCall, applyCrmEnrichment, applyCrmListTemplate, applyCrmMiUpdates, branchAnalyticsChart, branchAnalyticsSummary, branchAnalyticsTimeSeries, branchCities, branchCounties, branchLenders, branchLoans, branchOriginators, branchRoster, branchStates, branchTitleCompanies, cancelAgentsBulkDeliveryJob, cancelBranchesBulkDeliveryJob, cancelCompaniesBulkDeliveryJob, cancelEnrichBulkJob, cancelLoansBulkDeliveryJob, cancelOriginatorsBulkDeliveryJob, cancelPropertiesBulkDeliveryJob, companyAgents, companyAnalyticsChart, companyAnalyticsSummary, companyAnalyticsTimeSeries, companyBranches, companyBrokers, companyCities, companyCounties, companyEarlyExits, companyEmployeeStats, companyEmployment, companyHeadcount, companyLenders, companyMarkets, companyOffices, companyOriginators, companyRelated, companySponsoredIndividuals, companySponsorshipMovement, companyStates, companyTalentFlow, companyTitleCompanies, companyZipCodes, countAgents, countBranches, countCompanies, countLenders, countLoans, countOffices, countOriginators, countProperties, countSales, createAlertSubscription, createClient, createCrmList, createCrmListField, createCrmManualRecord, createCrmMeeting, createCrmObjectField, createCrmRecord, createCrmTask, createCrmTemplate, createMyAlertRecipe, createSavedFilter, crmLenderChannels, crmLoLoanMix, crmLoMomentum, crmLoSponsorLocation, crmSimilarOriginators, declineCrmMiUpdate, deleteAlertSubscription, deleteCrmCallerId, deleteCrmList, deleteCrmListField, deleteCrmMeeting, deleteCrmNote, deleteCrmObjectField, deleteCrmRecord, deleteCrmRecords, deleteCrmTask, deleteCrmTemplate, deleteMyAlertRecipe, deleteSavedFilter, describeCrmRecordsOnAdd, dismissCrmMiUpdates, editCrmLoggedActivity, editCrmNote, enrichPropertiesBatch, enrichPropertiesBulk, enrichProperty, filterCrmListMembers, findCrmRecordByNmls, generateCrmRecordDescription, getAgent, getAgentsBulkDeliveryJob, getAlertConditions, getAlertEmailTokens, getAlertUnreadCount, getBranch, getBranchesBulkDeliveryJob, getCompaniesBulkDeliveryJob, getCompany, getCrmActiveCall, getCrmActivityReport, getCrmCall, getCrmCallTranscript, getCrmCustomValues, getCrmImportJob, getCrmList, getCrmListMemberIds, getCrmListShares, getCrmMiUpdates, getCrmOutcomesReport, getCrmOverrides, getCrmProductionEnrichJob, getCrmRecordAccess, getCrmRecordAccessRequest, getCrmRecordConnections, getCrmRecordMemberIds, getCrmRecordProfile, getCrmTemplate, getCrmTemplateShares, getEnrichBulkJob, getHubspotPushStatus, getLender, getLoan, getLoansBulkDeliveryJob, getMe, getMeCredits, getMePlan, getOffice, getOriginator, getOriginatorsBulkDeliveryJob, getPropertiesBulkDeliveryJob, getProperty, getRealtimeConfig, getSale, getSavedFilter, getSearchToken, grantCrmListAccess, grantCrmRecordAccess, grantCrmRecordAccessRequest, hangupCrmCall, importCrmRecords, instantSearch, lenderCities, lenderCompanies, lenderCounties, lenderOriginators, lenderStates, linkCrmRecord, listAgents, listAlertDigests, listAlertLog, listAlertRecipes, listAlertSubscriptions, listBranches, listCompanies, listCrmActivity, listCrmCallerIds, listCrmCustomFields, listCrmListAssignees, listCrmListFields, listCrmListMemberships, listCrmListShareableMembers, listCrmLists, listCrmMeetings, listCrmMembers, listCrmOrgMembers, listCrmRecordShareableMembers, listCrmRecordShares, listCrmReferencedActivity, listCrmTasks, listCrmTemplates, listCrmWorkspaceMeetings, listCrmWorkspaceTasks, listEnrichments, listLenders, listLoans, listMarket, listMyAlertRecipes, listOffices, listOriginators, listProperties, listSales, listSavedFilters, listWatchedAgents, listWatchedAreas, listWatchedDocuments, loanRelated, loansAnalyticsChart, loansAnalyticsSummary, loansAnalyticsTimeSeries, logCrmActivity, lookupCompanies, markAlertDigestRead, markAlertRead, markAllAlertsRead, marketAnalyticsChart, marketAnalyticsSummary, marketAnalyticsTimeSeries, marketCommunityLending, marketMovementActivity, marketMovementByState, marketMovementCohortPayoff, marketMovementMostGained, marketMovementMostLost, marketMovementMovers, marketMovementRankings, marketMovementStats, marketMovementTransitions, officeAgents, originatorAgents, originatorAnalyticsChart, originatorAnalyticsSummary, originatorAnalyticsTimeSeries, originatorBranches, originatorBrokers, originatorCitiesBreakdown, originatorCompanies, originatorCountiesBreakdown, originatorLenders, originatorLoans, originatorMarkets, originatorOffices, originatorProperties, originatorRelated, originatorStatesBreakdown, originatorTitleCompanies, originatorZipCodes, placeCrmCall, previewAlertEmailTemplate, previewAlertRecipe, previewAlerts, previewMyAlertRecipe, propertiesAnalyticsChart, propertiesAnalyticsSummary, propertyRelated, pushToHubspot, reconcileCrmMeetings, refreshCrmRecordMirror, removeCrmContactMethod, removeCrmListMember, removeWatchedAgent, removeWatchedArea, removeWatchedDocument, requestCrmAccess, requestCrmRecordAccess, retrieveLocation, revokeCrmListAccess, revokeCrmRecordAccess, saleRelated, salesAnalyticsChart, salesAnalyticsSummary, salesAnalyticsTimeSeries, searchCrmEmailRecipients, searchCrmMatchCandidates, searchCrmMentionRecords, searchCrmRecords, searchProperties, sendCrmEmail, setCrmCallAnalysis, setCrmCustomValue, setCrmOverride, setCrmRecordOwner, setDefaultCrmCallerId, shareCrmTemplate, submitAgentsBulkDelivery, submitBranchesBulkDelivery, submitCompaniesBulkDelivery, submitLoansBulkDelivery, submitOriginatorsBulkDelivery, submitPropertiesBulkDelivery, subscribeAlertRecipe, suggestLocations, transcribeCrmCall, transferCrmListOwnership, unshareCrmTemplate, unsubscribeAlertRecipe, updateAlertConditions, updateCrmContactMethod, updateCrmList, updateCrmListField, updateCrmMeeting, updateCrmObjectField, updateCrmTask, updateCrmTemplate, updateMe, updateMyAlertRecipe, updateSavedFilter };
@@ -270,6 +270,48 @@ var Agents = class {
270
270
  });
271
271
  }
272
272
  /**
273
+ * Financing profile of the agent's deals, per side
274
+ * Scoped to the agent's FINANCED deals: recorded loans on which the agent is the buyer's agent or the listing / co-listing agent, matched through the agent's MLS ids. Cash deals carry no loan and are not counted. The date window is the loan's recording date. Returns, for each side at once (`any`, `buyer`, `listing` — duals on `buyer`): the financed deal count and loan volume, how many were brokered (third-party origination), and the loan-type mix. For the prior period, call again with that period.
275
+ */
276
+ static loanMix(options) {
277
+ return (options.client ?? client).post({
278
+ security: [{
279
+ name: "x-api-key",
280
+ type: "apiKey"
281
+ }, {
282
+ scheme: "bearer",
283
+ type: "http"
284
+ }],
285
+ url: "/v1/agents/{id}/analytics/loan-mix",
286
+ ...options,
287
+ headers: {
288
+ "Content-Type": "application/json",
289
+ ...options?.headers
290
+ }
291
+ });
292
+ }
293
+ /**
294
+ * Home builders on the agent's deals (pre-aggregated)
295
+ * New-construction builders named on the agent's deals in the period, ranked by units. The pre-aggregated builder list carries a deal COUNT only, so every row's `volume` and `pctVolume` are 0 — rank and share by `units` / `pctUnits` (a share of ALL the agent's deals in the period, so the rows sum to the builder-sold share, not to 1). It carries no buyer/listing split either: `side` must be `any` (or omitted); `buyer`/`listing` return 400.
296
+ */
297
+ static builders(options) {
298
+ return (options.client ?? client).post({
299
+ security: [{
300
+ name: "x-api-key",
301
+ type: "apiKey"
302
+ }, {
303
+ scheme: "bearer",
304
+ type: "http"
305
+ }],
306
+ url: "/v1/agents/{id}/breakdowns/builders",
307
+ ...options,
308
+ headers: {
309
+ "Content-Type": "application/json",
310
+ ...options?.headers
311
+ }
312
+ });
313
+ }
314
+ /**
273
315
  * City volume breakdown across the agent's sales
274
316
  */
275
317
  static cities(options) {
@@ -410,6 +452,48 @@ var Agents = class {
410
452
  });
411
453
  }
412
454
  /**
455
+ * Title companies on the agent's financed deals (spellings merged)
456
+ * Scoped to the agent's FINANCED deals: recorded loans on which the agent is the buyer's agent or the listing / co-listing agent, matched through the agent's MLS ids. Cash deals carry no loan and are not counted. The date window is the loan's recording date. Ranks the title companies named on those loans. Spellings of one company are MERGED: `label` is its most-used spelling, `id` the normalized name every spelling was grouped under. "None available"-style placeholders and names shorter than 3 characters are excluded. `pctUnits` / `pctVolume` are shares of ALL the side's financed deals in the window, including those with no title company, so they do not sum to 1. `side` defaults to `any`; title company is usually picked on the buyer side, so `buyer` is the view that reads as "who this agent's buyers close with".
457
+ */
458
+ static titleCompanies(options) {
459
+ return (options.client ?? client).post({
460
+ security: [{
461
+ name: "x-api-key",
462
+ type: "apiKey"
463
+ }, {
464
+ scheme: "bearer",
465
+ type: "http"
466
+ }],
467
+ url: "/v1/agents/{id}/breakdowns/title-companies",
468
+ ...options,
469
+ headers: {
470
+ "Content-Type": "application/json",
471
+ ...options?.headers
472
+ }
473
+ });
474
+ }
475
+ /**
476
+ * Title companies on the agent's financed deals, over time
477
+ * Scoped to the agent's FINANCED deals: recorded loans on which the agent is the buyer's agent or the listing / co-listing agent, matched through the agent's MLS ids. Cash deals carry no loan and are not counted. The date window is the loan's recording date. One bucket per `interval` (default monthly), each segmented by title company with spellings merged per bucket: `segments[].label` is the company's most-used spelling across the whole response and `segments[].id` the normalized name — match a company across buckets on `id`. `previous` is the same series for the prior window. `side` defaults to `any`.
478
+ */
479
+ static titleCompaniesTimeSeries(options) {
480
+ return (options.client ?? client).post({
481
+ security: [{
482
+ name: "x-api-key",
483
+ type: "apiKey"
484
+ }, {
485
+ scheme: "bearer",
486
+ type: "http"
487
+ }],
488
+ url: "/v1/agents/{id}/breakdowns/title-companies/time-series",
489
+ ...options,
490
+ headers: {
491
+ "Content-Type": "application/json",
492
+ ...options?.headers
493
+ }
494
+ });
495
+ }
496
+ /**
413
497
  * Zip-code volume breakdown
414
498
  */
415
499
  static zipCodes(options) {
@@ -472,6 +556,7 @@ var Agents = class {
472
556
  }
473
557
  /**
474
558
  * Sales transactions where this agent was listing or selling side
559
+ * The agent's deals, newest first: every sale on which the agent is the buyer's agent or the listing / co-listing agent. `side` narrows to one half (`buyer` includes deals where the agent was on both sides; `listing` excludes them). Each row says which `side` the agent was on and carries the sale's recorded purchase `loan` — lender, loan officer, loan type, amount, title company — or `null` for a cash deal or a loan not yet on file. Pass `flatFilters.mlsStatus: "SLD"` for closed deals only.
475
560
  */
476
561
  static sales(options) {
477
562
  return (options.client ?? client).post({
@@ -5336,7 +5421,7 @@ var Originators = class {
5336
5421
  }
5337
5422
  /**
5338
5423
  * Real-estate agents this LO co-closed with
5339
- * Ranks the real-estate agents on the selling side of this LO's loans, by volume. Buckets whose name is an MLS 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 LO's whole loan population, so they do not sum to 100 across the page.
5424
+ * Ranks the real-estate agents on this LO's loans, by volume — the buyer's agent by default, the listing agent with `side: "listing"`. Buckets whose name is an MLS placeholder for "no agent recorded" (`non member`, `non listed agent`, and ~140 board-specific spellings) are excluded rather than ranked as agents — they are not people. `id` is the agent id most often recorded under the name on these loans (pass it to `GET /v1/agents/{id}`); absent when none is recorded. Percentages are shares of the LO's whole loan population, so they do not sum to 100 across the page.
5340
5425
  */
5341
5426
  static agents(options) {
5342
5427
  return (options.client ?? client).post({