@model-match/api 3.6.0 → 3.7.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.
@@ -10,9 +10,218 @@ const createClientConfig = (config) => ({
10
10
  const client = createClient(createClientConfig(createConfig()));
11
11
  //#endregion
12
12
  //#region src/sdk.gen.ts
13
+ var AdminJobs = class {
14
+ /**
15
+ * Get a bulk job and a signed download URL (admin)
16
+ * Returns any org's bulk job (delivery or enrichment) with a freshly signed download URL for its result file. Cross-org: signs against the job's own stored org. `resultsUrl` is null until the job is completed.
17
+ */
18
+ static adminGetBulkJob(options) {
19
+ return (options.client ?? client).get({
20
+ security: [{
21
+ name: "x-api-key",
22
+ type: "apiKey"
23
+ }, {
24
+ scheme: "bearer",
25
+ type: "http"
26
+ }],
27
+ url: "/v1/admin/jobs/{jobId}",
28
+ ...options
29
+ });
30
+ }
31
+ };
32
+ var AdminObservability = class {
33
+ /**
34
+ * List recent task runs (admin)
35
+ * Recent run traces across the background tasks, newest first, with status and duration. Filter by service, status, and time window.
36
+ */
37
+ static adminListObservabilityRuns(options) {
38
+ return (options?.client ?? client).get({
39
+ security: [{
40
+ name: "x-api-key",
41
+ type: "apiKey"
42
+ }, {
43
+ scheme: "bearer",
44
+ type: "http"
45
+ }],
46
+ url: "/v1/admin/observability/runs",
47
+ ...options
48
+ });
49
+ }
50
+ /**
51
+ * Get the span waterfall for one run (admin)
52
+ * All spans for a run, paired into start/end with durations and the parent links needed to render the waterfall.
53
+ */
54
+ static adminGetObservabilityTrace(options) {
55
+ return (options.client ?? client).get({
56
+ security: [{
57
+ name: "x-api-key",
58
+ type: "apiKey"
59
+ }, {
60
+ scheme: "bearer",
61
+ type: "http"
62
+ }],
63
+ url: "/v1/admin/observability/runs/{runId}/trace",
64
+ ...options
65
+ });
66
+ }
67
+ /**
68
+ * Get the full cross-platform trace for any anchor (admin)
69
+ * One stitched waterfall across MCP → API → job, entered from any id (an API request id, an MCP tool-call id, or a job/run id). The same view backs a run's, a request's, and an MCP call's Traces tab. 404 when the id matches nothing.
70
+ */
71
+ static adminGetUnifiedTrace(options) {
72
+ return (options.client ?? client).get({
73
+ security: [{
74
+ name: "x-api-key",
75
+ type: "apiKey"
76
+ }, {
77
+ scheme: "bearer",
78
+ type: "http"
79
+ }],
80
+ url: "/v1/admin/observability/trace/{anchorId}",
81
+ ...options
82
+ });
83
+ }
84
+ /**
85
+ * List recent API requests (admin)
86
+ * Recent per-request telemetry, newest first. Filter by route, method, status, actor kind, and time window.
87
+ */
88
+ static adminListApiRequests(options) {
89
+ return (options?.client ?? client).get({
90
+ security: [{
91
+ name: "x-api-key",
92
+ type: "apiKey"
93
+ }, {
94
+ scheme: "bearer",
95
+ type: "http"
96
+ }],
97
+ url: "/v1/admin/observability/requests",
98
+ ...options
99
+ });
100
+ }
101
+ /**
102
+ * API request trends and performance (admin)
103
+ * Volume, error rate, and latency percentiles over a time window — overall, per route, and bucketed over time.
104
+ */
105
+ static adminGetApiRequestStats(options) {
106
+ return (options?.client ?? client).get({
107
+ security: [{
108
+ name: "x-api-key",
109
+ type: "apiKey"
110
+ }, {
111
+ scheme: "bearer",
112
+ type: "http"
113
+ }],
114
+ url: "/v1/admin/observability/requests/stats",
115
+ ...options
116
+ });
117
+ }
118
+ /**
119
+ * Get one API request (admin)
120
+ * One request's full row, enriched with the MCP tool call that produced it when the request was MCP-originated.
121
+ */
122
+ static adminGetApiRequest(options) {
123
+ return (options.client ?? client).get({
124
+ security: [{
125
+ name: "x-api-key",
126
+ type: "apiKey"
127
+ }, {
128
+ scheme: "bearer",
129
+ type: "http"
130
+ }],
131
+ url: "/v1/admin/observability/requests/{requestId}",
132
+ ...options
133
+ });
134
+ }
135
+ /**
136
+ * Get the span waterfall for one request (admin)
137
+ * Spans a request emitted (e.g. a search: filters → build query → fetch → shape). 404 when the request emitted no spans.
138
+ */
139
+ static adminGetApiRequestTrace(options) {
140
+ return (options.client ?? client).get({
141
+ security: [{
142
+ name: "x-api-key",
143
+ type: "apiKey"
144
+ }, {
145
+ scheme: "bearer",
146
+ type: "http"
147
+ }],
148
+ url: "/v1/admin/observability/requests/{requestId}/trace",
149
+ ...options
150
+ });
151
+ }
152
+ /**
153
+ * MCP tool usage and performance (admin)
154
+ * Per-tool call counts, error rate, latency percentiles, and last-used time over a time window.
155
+ */
156
+ static adminGetMcpToolStats(options) {
157
+ return (options?.client ?? client).get({
158
+ security: [{
159
+ name: "x-api-key",
160
+ type: "apiKey"
161
+ }, {
162
+ scheme: "bearer",
163
+ type: "http"
164
+ }],
165
+ url: "/v1/admin/observability/mcp/tools",
166
+ ...options
167
+ });
168
+ }
169
+ /**
170
+ * List recent individual MCP tool calls (admin)
171
+ * Recent per-call MCP telemetry, newest first — the clickable feed behind the per-tool aggregates. Filter by tool, status, and time window.
172
+ */
173
+ static adminListMcpCalls(options) {
174
+ return (options?.client ?? client).get({
175
+ security: [{
176
+ name: "x-api-key",
177
+ type: "apiKey"
178
+ }, {
179
+ scheme: "bearer",
180
+ type: "http"
181
+ }],
182
+ url: "/v1/admin/observability/mcp/calls",
183
+ ...options
184
+ });
185
+ }
186
+ /**
187
+ * Alert decision counts by type and outcome (admin)
188
+ * Decision counts grouped by alert type and outcome (written / deduped / dry_run_match), over a window or scoped to one run via correlationId.
189
+ */
190
+ static adminGetAlertDecisionStats(options) {
191
+ return (options?.client ?? client).get({
192
+ security: [{
193
+ name: "x-api-key",
194
+ type: "apiKey"
195
+ }, {
196
+ scheme: "bearer",
197
+ type: "http"
198
+ }],
199
+ url: "/v1/admin/observability/alerts/stats",
200
+ ...options
201
+ });
202
+ }
203
+ /**
204
+ * List every evaluated alert decision (admin)
205
+ * The global alert feed across all users, newest first. Each row's outcome traces to its run via correlationId: a fire (written), a suppressed dupe (deduped), a dry-run preview (dry_run_match), or a configured user who got nothing — no_match (watched items scanned, none matched) / no_subjects (enabled but nothing to scan). Filter by type, outcome, user, workspace, run, or window.
206
+ */
207
+ static adminListAlertDecisions(options) {
208
+ return (options?.client ?? client).get({
209
+ security: [{
210
+ name: "x-api-key",
211
+ type: "apiKey"
212
+ }, {
213
+ scheme: "bearer",
214
+ type: "http"
215
+ }],
216
+ url: "/v1/admin/observability/alerts",
217
+ ...options
218
+ });
219
+ }
220
+ };
13
221
  var Agents = class {
14
222
  /**
15
223
  * Search agents with filters
224
+ * Search and list individual real-estate agents with filters — one row per agent. Filter by name, location (state, city, zip), brokerage/office, and production metrics (sales volume, transaction units, price range), with sorting and cursor pagination. LOCATION SEMANTICS: the state/city/zip filters match ANY of an agent's location signals — their listed city/state, their office address(es), AND the markets where they actually closed transactions (production) — combined with OR. So an agent matches a searched location if their office OR their production is there. A search for city "Long Beach" can therefore return agents whose office or displayed primary market is in a different city/state, because they transacted in Long Beach. The `state`/`city` returned on each row reflect the agent's primary market and may differ from the searched location. (Use the `office` filter to match by brokerage/office name, and the per-agent city/county/state breakdown endpoints to rank an agent's volume within a specific market.) This is the per-agent record search: use it to find specific real-estate agents or build a filtered agent list. (For a single agent by ID use the agent detail endpoint.)
16
225
  */
17
226
  static list(options) {
18
227
  return (options?.client ?? client).post({
@@ -344,29 +553,12 @@ var Agents = class {
344
553
  ...options
345
554
  });
346
555
  }
347
- };
348
- var Alerts = class {
349
- /**
350
- * Get your alert settings
351
- */
352
- static getAlertConditions(options) {
353
- return (options?.client ?? client).get({
354
- security: [{
355
- name: "x-api-key",
356
- type: "apiKey"
357
- }, {
358
- scheme: "bearer",
359
- type: "http"
360
- }],
361
- url: "/v1/alerts/conditions",
362
- ...options
363
- });
364
- }
365
556
  /**
366
- * Update your alert settings
557
+ * Search agents with filters
558
+ * Search and list individual real-estate agents with filters — one row per agent. Filter by name, location (state, city, zip), brokerage/office, and production metrics (sales volume, transaction units, price range), with sorting and cursor pagination. LOCATION SEMANTICS: the state/city/zip filters match ANY of an agent's location signals — their listed city/state, their office address(es), AND the markets where they actually closed transactions (production) — combined with OR. So an agent matches a searched location if their office OR their production is there. A search for city "Long Beach" can therefore return agents whose office or displayed primary market is in a different city/state, because they transacted in Long Beach. The `state`/`city` returned on each row reflect the agent's primary market and may differ from the searched location. (Use the `office` filter to match by brokerage/office name, and the per-agent city/county/state breakdown endpoints to rank an agent's volume within a specific market.) This is the per-agent record search: use it to find specific real-estate agents or build a filtered agent list. (For a single agent by ID use the agent detail endpoint.)
367
559
  */
368
- static updateAlertConditions(options) {
369
- return (options?.client ?? client).put({
560
+ static listAgents2(options) {
561
+ return (options?.client ?? client).post({
370
562
  security: [{
371
563
  name: "x-api-key",
372
564
  type: "apiKey"
@@ -374,7 +566,7 @@ var Alerts = class {
374
566
  scheme: "bearer",
375
567
  type: "http"
376
568
  }],
377
- url: "/v1/alerts/conditions",
569
+ url: "/agents",
378
570
  ...options,
379
571
  headers: {
380
572
  "Content-Type": "application/json",
@@ -383,10 +575,10 @@ var Alerts = class {
383
575
  });
384
576
  }
385
577
  /**
386
- * List the agents you watch
578
+ * Get agent by ID (with legacy_mma_ids fallback)
387
579
  */
388
- static listWatchedAgents(options) {
389
- return (options?.client ?? client).get({
580
+ static getAgent2(options) {
581
+ return (options.client ?? client).get({
390
582
  security: [{
391
583
  name: "x-api-key",
392
584
  type: "apiKey"
@@ -394,14 +586,14 @@ var Alerts = class {
394
586
  scheme: "bearer",
395
587
  type: "http"
396
588
  }],
397
- url: "/v1/alerts/watched-agents",
589
+ url: "/agents/{id}",
398
590
  ...options
399
591
  });
400
592
  }
401
593
  /**
402
- * Watch an agent
594
+ * Production summary with buyer/seller/dual split + previous period
403
595
  */
404
- static addWatchedAgent(options) {
596
+ static analyticsSummary2(options) {
405
597
  return (options?.client ?? client).post({
406
598
  security: [{
407
599
  name: "x-api-key",
@@ -410,7 +602,7 @@ var Alerts = class {
410
602
  scheme: "bearer",
411
603
  type: "http"
412
604
  }],
413
- url: "/v1/alerts/watched-agents",
605
+ url: "/agents/analytics/summary",
414
606
  ...options,
415
607
  headers: {
416
608
  "Content-Type": "application/json",
@@ -419,10 +611,10 @@ var Alerts = class {
419
611
  });
420
612
  }
421
613
  /**
422
- * Stop watching an agent
614
+ * Agent volume/units over time with buyer/seller/dual split
423
615
  */
424
- static removeWatchedAgent(options) {
425
- return (options.client ?? client).delete({
616
+ static analyticsTimeSeries2(options) {
617
+ return (options?.client ?? client).post({
426
618
  security: [{
427
619
  name: "x-api-key",
428
620
  type: "apiKey"
@@ -430,15 +622,19 @@ var Alerts = class {
430
622
  scheme: "bearer",
431
623
  type: "http"
432
624
  }],
433
- url: "/v1/alerts/watched-agents/{id}",
434
- ...options
625
+ url: "/agents/analytics/time-series",
626
+ ...options,
627
+ headers: {
628
+ "Content-Type": "application/json",
629
+ ...options?.headers
630
+ }
435
631
  });
436
632
  }
437
633
  /**
438
- * List the areas you watch
634
+ * Configurable chart (measure × slice) over the agent's sales
439
635
  */
440
- static listWatchedAreas(options) {
441
- return (options?.client ?? client).get({
636
+ static analyticsChart2(options) {
637
+ return (options?.client ?? client).post({
442
638
  security: [{
443
639
  name: "x-api-key",
444
640
  type: "apiKey"
@@ -446,15 +642,19 @@ var Alerts = class {
446
642
  scheme: "bearer",
447
643
  type: "http"
448
644
  }],
449
- url: "/v1/alerts/watched-areas",
450
- ...options
645
+ url: "/agents/analytics/chart",
646
+ ...options,
647
+ headers: {
648
+ "Content-Type": "application/json",
649
+ ...options?.headers
650
+ }
451
651
  });
452
652
  }
453
653
  /**
454
- * Watch an area
654
+ * Sales transactions where this agent was listing or selling side
455
655
  */
456
- static addWatchedArea(options) {
457
- return (options?.client ?? client).post({
656
+ static sales2(options) {
657
+ return (options.client ?? client).post({
458
658
  security: [{
459
659
  name: "x-api-key",
460
660
  type: "apiKey"
@@ -462,7 +662,7 @@ var Alerts = class {
462
662
  scheme: "bearer",
463
663
  type: "http"
464
664
  }],
465
- url: "/v1/alerts/watched-areas",
665
+ url: "/agents/{id}/sales",
466
666
  ...options,
467
667
  headers: {
468
668
  "Content-Type": "application/json",
@@ -471,10 +671,10 @@ var Alerts = class {
471
671
  });
472
672
  }
473
673
  /**
474
- * Stop watching an area
674
+ * Properties this agent has transacted on
475
675
  */
476
- static removeWatchedArea(options) {
477
- return (options.client ?? client).delete({
676
+ static properties2(options) {
677
+ return (options.client ?? client).post({
478
678
  security: [{
479
679
  name: "x-api-key",
480
680
  type: "apiKey"
@@ -482,15 +682,19 @@ var Alerts = class {
482
682
  scheme: "bearer",
483
683
  type: "http"
484
684
  }],
485
- url: "/v1/alerts/watched-areas/{id}",
486
- ...options
685
+ url: "/agents/{id}/properties",
686
+ ...options,
687
+ headers: {
688
+ "Content-Type": "application/json",
689
+ ...options?.headers
690
+ }
487
691
  });
488
692
  }
489
693
  /**
490
- * List your alerts (newest first)
694
+ * Listing offices the agent has closed through
491
695
  */
492
- static listAlertLog(options) {
493
- return (options?.client ?? client).get({
696
+ static offices2(options) {
697
+ return (options.client ?? client).post({
494
698
  security: [{
495
699
  name: "x-api-key",
496
700
  type: "apiKey"
@@ -498,15 +702,19 @@ var Alerts = class {
498
702
  scheme: "bearer",
499
703
  type: "http"
500
704
  }],
501
- url: "/v1/alerts/log",
502
- ...options
705
+ url: "/agents/{id}/breakdowns/offices",
706
+ ...options,
707
+ headers: {
708
+ "Content-Type": "application/json",
709
+ ...options?.headers
710
+ }
503
711
  });
504
712
  }
505
713
  /**
506
- * Clear the unread badge
714
+ * City volume breakdown across the agent's sales
507
715
  */
508
- static markAllAlertsRead(options) {
509
- return (options?.client ?? client).post({
716
+ static cities2(options) {
717
+ return (options.client ?? client).post({
510
718
  security: [{
511
719
  name: "x-api-key",
512
720
  type: "apiKey"
@@ -514,14 +722,690 @@ var Alerts = class {
514
722
  scheme: "bearer",
515
723
  type: "http"
516
724
  }],
517
- url: "/v1/alerts/log/mark-all-read",
518
- ...options
519
- });
520
- }
521
- /**
725
+ url: "/agents/{id}/breakdowns/cities",
726
+ ...options,
727
+ headers: {
728
+ "Content-Type": "application/json",
729
+ ...options?.headers
730
+ }
731
+ });
732
+ }
733
+ /**
734
+ * County (FIPS) volume breakdown
735
+ */
736
+ static counties2(options) {
737
+ return (options.client ?? client).post({
738
+ security: [{
739
+ name: "x-api-key",
740
+ type: "apiKey"
741
+ }, {
742
+ scheme: "bearer",
743
+ type: "http"
744
+ }],
745
+ url: "/agents/{id}/breakdowns/counties",
746
+ ...options,
747
+ headers: {
748
+ "Content-Type": "application/json",
749
+ ...options?.headers
750
+ }
751
+ });
752
+ }
753
+ /**
754
+ * State volume breakdown
755
+ */
756
+ static states2(options) {
757
+ return (options.client ?? client).post({
758
+ security: [{
759
+ name: "x-api-key",
760
+ type: "apiKey"
761
+ }, {
762
+ scheme: "bearer",
763
+ type: "http"
764
+ }],
765
+ url: "/agents/{id}/breakdowns/states",
766
+ ...options,
767
+ headers: {
768
+ "Content-Type": "application/json",
769
+ ...options?.headers
770
+ }
771
+ });
772
+ }
773
+ /**
774
+ * Zip-code volume breakdown
775
+ */
776
+ static zipCodes2(options) {
777
+ return (options.client ?? client).post({
778
+ security: [{
779
+ name: "x-api-key",
780
+ type: "apiKey"
781
+ }, {
782
+ scheme: "bearer",
783
+ type: "http"
784
+ }],
785
+ url: "/agents/{id}/breakdowns/zip-codes",
786
+ ...options,
787
+ headers: {
788
+ "Content-Type": "application/json",
789
+ ...options?.headers
790
+ }
791
+ });
792
+ }
793
+ /**
794
+ * Loan officers the agent worked with (pre-aggregated)
795
+ */
796
+ static originators2(options) {
797
+ return (options.client ?? client).post({
798
+ security: [{
799
+ name: "x-api-key",
800
+ type: "apiKey"
801
+ }, {
802
+ scheme: "bearer",
803
+ type: "http"
804
+ }],
805
+ url: "/agents/{id}/breakdowns/originators",
806
+ ...options,
807
+ headers: {
808
+ "Content-Type": "application/json",
809
+ ...options?.headers
810
+ }
811
+ });
812
+ }
813
+ /**
814
+ * Mortgage companies the agent dealt with (pre-aggregated)
815
+ */
816
+ static companies2(options) {
817
+ return (options.client ?? client).post({
818
+ security: [{
819
+ name: "x-api-key",
820
+ type: "apiKey"
821
+ }, {
822
+ scheme: "bearer",
823
+ type: "http"
824
+ }],
825
+ url: "/agents/{id}/breakdowns/companies",
826
+ ...options,
827
+ headers: {
828
+ "Content-Type": "application/json",
829
+ ...options?.headers
830
+ }
831
+ });
832
+ }
833
+ /**
834
+ * Raw-name lenders encountered (pre-aggregated)
835
+ */
836
+ static lenders2(options) {
837
+ return (options.client ?? client).post({
838
+ security: [{
839
+ name: "x-api-key",
840
+ type: "apiKey"
841
+ }, {
842
+ scheme: "bearer",
843
+ type: "http"
844
+ }],
845
+ url: "/agents/{id}/breakdowns/lenders",
846
+ ...options,
847
+ headers: {
848
+ "Content-Type": "application/json",
849
+ ...options?.headers
850
+ }
851
+ });
852
+ }
853
+ /**
854
+ * Submit a bulk-delivery job for agents
855
+ * Queues an ECS task that dumps every matching agents document (subject to the org's `bulk-delivery.agents` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /agents/bulk-delivery/{jobId}` for status + the signed download URL.
856
+ */
857
+ static submitAgentsBulkDelivery2(options) {
858
+ return (options?.client ?? client).post({
859
+ security: [{
860
+ name: "x-api-key",
861
+ type: "apiKey"
862
+ }, {
863
+ scheme: "bearer",
864
+ type: "http"
865
+ }],
866
+ url: "/agents/bulk-delivery",
867
+ ...options,
868
+ headers: {
869
+ "Content-Type": "application/json",
870
+ ...options?.headers
871
+ }
872
+ });
873
+ }
874
+ /**
875
+ * Get bulk-delivery job status for agents
876
+ */
877
+ static getAgentsBulkDeliveryJob2(options) {
878
+ return (options.client ?? client).get({
879
+ security: [{
880
+ name: "x-api-key",
881
+ type: "apiKey"
882
+ }, {
883
+ scheme: "bearer",
884
+ type: "http"
885
+ }],
886
+ url: "/agents/bulk-delivery/{jobId}",
887
+ ...options
888
+ });
889
+ }
890
+ };
891
+ var Alerts = class {
892
+ /**
893
+ * Get your alert settings
894
+ */
895
+ static getAlertConditions(options) {
896
+ return (options?.client ?? client).get({
897
+ security: [{
898
+ name: "x-api-key",
899
+ type: "apiKey"
900
+ }, {
901
+ scheme: "bearer",
902
+ type: "http"
903
+ }],
904
+ url: "/v1/alerts/conditions",
905
+ ...options
906
+ });
907
+ }
908
+ /**
909
+ * Update your alert settings
910
+ */
911
+ static updateAlertConditions(options) {
912
+ return (options?.client ?? client).put({
913
+ security: [{
914
+ name: "x-api-key",
915
+ type: "apiKey"
916
+ }, {
917
+ scheme: "bearer",
918
+ type: "http"
919
+ }],
920
+ url: "/v1/alerts/conditions",
921
+ ...options,
922
+ headers: {
923
+ "Content-Type": "application/json",
924
+ ...options?.headers
925
+ }
926
+ });
927
+ }
928
+ /**
929
+ * List the agents you watch
930
+ */
931
+ static listWatchedAgents(options) {
932
+ return (options?.client ?? client).get({
933
+ security: [{
934
+ name: "x-api-key",
935
+ type: "apiKey"
936
+ }, {
937
+ scheme: "bearer",
938
+ type: "http"
939
+ }],
940
+ url: "/v1/alerts/watched-agents",
941
+ ...options
942
+ });
943
+ }
944
+ /**
945
+ * Watch an agent
946
+ */
947
+ static addWatchedAgent(options) {
948
+ return (options?.client ?? client).post({
949
+ security: [{
950
+ name: "x-api-key",
951
+ type: "apiKey"
952
+ }, {
953
+ scheme: "bearer",
954
+ type: "http"
955
+ }],
956
+ url: "/v1/alerts/watched-agents",
957
+ ...options,
958
+ headers: {
959
+ "Content-Type": "application/json",
960
+ ...options?.headers
961
+ }
962
+ });
963
+ }
964
+ /**
965
+ * Stop watching an agent
966
+ */
967
+ static removeWatchedAgent(options) {
968
+ return (options.client ?? client).delete({
969
+ security: [{
970
+ name: "x-api-key",
971
+ type: "apiKey"
972
+ }, {
973
+ scheme: "bearer",
974
+ type: "http"
975
+ }],
976
+ url: "/v1/alerts/watched-agents/{id}",
977
+ ...options
978
+ });
979
+ }
980
+ /**
981
+ * List the areas you watch
982
+ */
983
+ static listWatchedAreas(options) {
984
+ return (options?.client ?? client).get({
985
+ security: [{
986
+ name: "x-api-key",
987
+ type: "apiKey"
988
+ }, {
989
+ scheme: "bearer",
990
+ type: "http"
991
+ }],
992
+ url: "/v1/alerts/watched-areas",
993
+ ...options
994
+ });
995
+ }
996
+ /**
997
+ * Watch an area
998
+ */
999
+ static addWatchedArea(options) {
1000
+ return (options?.client ?? client).post({
1001
+ security: [{
1002
+ name: "x-api-key",
1003
+ type: "apiKey"
1004
+ }, {
1005
+ scheme: "bearer",
1006
+ type: "http"
1007
+ }],
1008
+ url: "/v1/alerts/watched-areas",
1009
+ ...options,
1010
+ headers: {
1011
+ "Content-Type": "application/json",
1012
+ ...options?.headers
1013
+ }
1014
+ });
1015
+ }
1016
+ /**
1017
+ * Stop watching an area
1018
+ */
1019
+ static removeWatchedArea(options) {
1020
+ return (options.client ?? client).delete({
1021
+ security: [{
1022
+ name: "x-api-key",
1023
+ type: "apiKey"
1024
+ }, {
1025
+ scheme: "bearer",
1026
+ type: "http"
1027
+ }],
1028
+ url: "/v1/alerts/watched-areas/{id}",
1029
+ ...options
1030
+ });
1031
+ }
1032
+ /**
1033
+ * List your alerts (newest first)
1034
+ */
1035
+ static listAlertLog(options) {
1036
+ return (options?.client ?? client).get({
1037
+ security: [{
1038
+ name: "x-api-key",
1039
+ type: "apiKey"
1040
+ }, {
1041
+ scheme: "bearer",
1042
+ type: "http"
1043
+ }],
1044
+ url: "/v1/alerts/log",
1045
+ ...options
1046
+ });
1047
+ }
1048
+ /**
1049
+ * Clear the unread badge
1050
+ */
1051
+ static markAllAlertsRead(options) {
1052
+ return (options?.client ?? client).post({
1053
+ security: [{
1054
+ name: "x-api-key",
1055
+ type: "apiKey"
1056
+ }, {
1057
+ scheme: "bearer",
1058
+ type: "http"
1059
+ }],
1060
+ url: "/v1/alerts/log/mark-all-read",
1061
+ ...options
1062
+ });
1063
+ }
1064
+ /**
522
1065
  * Mark one alert read
523
1066
  */
524
- static markAlertRead(options) {
1067
+ static markAlertRead(options) {
1068
+ return (options.client ?? client).post({
1069
+ security: [{
1070
+ name: "x-api-key",
1071
+ type: "apiKey"
1072
+ }, {
1073
+ scheme: "bearer",
1074
+ type: "http"
1075
+ }],
1076
+ url: "/v1/alerts/log/{id}/read",
1077
+ ...options
1078
+ });
1079
+ }
1080
+ /**
1081
+ * Get your unread alert count
1082
+ */
1083
+ static getAlertUnreadCount(options) {
1084
+ return (options?.client ?? client).get({
1085
+ security: [{
1086
+ name: "x-api-key",
1087
+ type: "apiKey"
1088
+ }, {
1089
+ scheme: "bearer",
1090
+ type: "http"
1091
+ }],
1092
+ url: "/v1/alerts/unread-count",
1093
+ ...options
1094
+ });
1095
+ }
1096
+ /**
1097
+ * List your alert digests (newest first)
1098
+ */
1099
+ static listAlertDigests(options) {
1100
+ return (options?.client ?? client).get({
1101
+ security: [{
1102
+ name: "x-api-key",
1103
+ type: "apiKey"
1104
+ }, {
1105
+ scheme: "bearer",
1106
+ type: "http"
1107
+ }],
1108
+ url: "/v1/alerts/digests",
1109
+ ...options
1110
+ });
1111
+ }
1112
+ /**
1113
+ * Mark one digest read
1114
+ */
1115
+ static markAlertDigestRead(options) {
1116
+ return (options.client ?? client).post({
1117
+ security: [{
1118
+ name: "x-api-key",
1119
+ type: "apiKey"
1120
+ }, {
1121
+ scheme: "bearer",
1122
+ type: "http"
1123
+ }],
1124
+ url: "/v1/alerts/digests/{id}/read",
1125
+ ...options
1126
+ });
1127
+ }
1128
+ /**
1129
+ * Preview the alerts that would fire for you
1130
+ * Runs all six detectors scoped to your own token, in-process and synchronously, as a dry-run: returns the alerts that WOULD fire (per detector, with the decision payloads) without writing the feed, publishing events, or sending email.
1131
+ */
1132
+ static preview(options) {
1133
+ return (options?.client ?? client).post({
1134
+ security: [{
1135
+ name: "x-api-key",
1136
+ type: "apiKey"
1137
+ }, {
1138
+ scheme: "bearer",
1139
+ type: "http"
1140
+ }],
1141
+ url: "/v1/alerts/preview",
1142
+ ...options,
1143
+ headers: {
1144
+ "Content-Type": "application/json",
1145
+ ...options?.headers
1146
+ }
1147
+ });
1148
+ }
1149
+ };
1150
+ var Branches = class {
1151
+ /**
1152
+ * Search branches with filters
1153
+ * Search NMLS-registered mortgage company branch offices (not MLS 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.
1154
+ */
1155
+ static list(options) {
1156
+ return (options?.client ?? client).post({
1157
+ security: [{
1158
+ name: "x-api-key",
1159
+ type: "apiKey"
1160
+ }, {
1161
+ scheme: "bearer",
1162
+ type: "http"
1163
+ }],
1164
+ url: "/v1/branches",
1165
+ ...options,
1166
+ headers: {
1167
+ "Content-Type": "application/json",
1168
+ ...options?.headers
1169
+ }
1170
+ });
1171
+ }
1172
+ /**
1173
+ * Get branch by NMLS ID
1174
+ * Retrieve full details for a single NMLS mortgage branch including name, address, parent company, managers, trade names, licensing, and branch-level production for the selected period.
1175
+ */
1176
+ static get(options) {
1177
+ return (options.client ?? client).get({
1178
+ security: [{
1179
+ name: "x-api-key",
1180
+ type: "apiKey"
1181
+ }, {
1182
+ scheme: "bearer",
1183
+ type: "http"
1184
+ }],
1185
+ url: "/v1/branches/{nmlsId}",
1186
+ ...options
1187
+ });
1188
+ }
1189
+ /**
1190
+ * Submit a bulk-delivery job for branches
1191
+ * Queues an ECS task that dumps every matching branches document (subject to the org's `bulk-delivery.branches` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /branches/bulk-delivery/{jobId}` for status + the signed download URL.
1192
+ */
1193
+ static submitBranchesBulkDelivery(options) {
1194
+ return (options?.client ?? client).post({
1195
+ security: [{
1196
+ name: "x-api-key",
1197
+ type: "apiKey"
1198
+ }, {
1199
+ scheme: "bearer",
1200
+ type: "http"
1201
+ }],
1202
+ url: "/v1/branches/bulk-delivery",
1203
+ ...options,
1204
+ headers: {
1205
+ "Content-Type": "application/json",
1206
+ ...options?.headers
1207
+ }
1208
+ });
1209
+ }
1210
+ /**
1211
+ * Get bulk-delivery job status for branches
1212
+ */
1213
+ static getBranchesBulkDeliveryJob(options) {
1214
+ return (options.client ?? client).get({
1215
+ security: [{
1216
+ name: "x-api-key",
1217
+ type: "apiKey"
1218
+ }, {
1219
+ scheme: "bearer",
1220
+ type: "http"
1221
+ }],
1222
+ url: "/v1/branches/bulk-delivery/{jobId}",
1223
+ ...options
1224
+ });
1225
+ }
1226
+ };
1227
+ var Companies = class {
1228
+ /**
1229
+ * Search companies with filters
1230
+ * Search and list individual mortgage companies with filters — one row per company. Filter by name, NMLS ID, location (state, county, city, zip), and production metrics (loan volume, units, market share) by period and geography, with sorting and cursor pagination. This is the per-company record search: use it to find specific mortgage lenders/companies or build a filtered company list. (For a single company by ID use the company detail endpoint.)
1231
+ */
1232
+ static list(options) {
1233
+ return (options?.client ?? client).post({
1234
+ security: [{
1235
+ name: "x-api-key",
1236
+ type: "apiKey"
1237
+ }, {
1238
+ scheme: "bearer",
1239
+ type: "http"
1240
+ }],
1241
+ url: "/v1/companies",
1242
+ ...options,
1243
+ headers: {
1244
+ "Content-Type": "application/json",
1245
+ ...options?.headers
1246
+ }
1247
+ });
1248
+ }
1249
+ /**
1250
+ * Get company by NMLS ID
1251
+ */
1252
+ static get(options) {
1253
+ return (options.client ?? client).get({
1254
+ security: [{
1255
+ name: "x-api-key",
1256
+ type: "apiKey"
1257
+ }, {
1258
+ scheme: "bearer",
1259
+ type: "http"
1260
+ }],
1261
+ url: "/v1/companies/{nmlsId}",
1262
+ ...options
1263
+ });
1264
+ }
1265
+ /**
1266
+ * Production summary with previous-period comparison
1267
+ */
1268
+ static analyticsSummary(options) {
1269
+ return (options?.client ?? client).post({
1270
+ security: [{
1271
+ name: "x-api-key",
1272
+ type: "apiKey"
1273
+ }, {
1274
+ scheme: "bearer",
1275
+ type: "http"
1276
+ }],
1277
+ url: "/v1/companies/analytics/summary",
1278
+ ...options,
1279
+ headers: {
1280
+ "Content-Type": "application/json",
1281
+ ...options?.headers
1282
+ }
1283
+ });
1284
+ }
1285
+ /**
1286
+ * Company volume / units over time
1287
+ */
1288
+ static analyticsTimeSeries(options) {
1289
+ return (options?.client ?? client).post({
1290
+ security: [{
1291
+ name: "x-api-key",
1292
+ type: "apiKey"
1293
+ }, {
1294
+ scheme: "bearer",
1295
+ type: "http"
1296
+ }],
1297
+ url: "/v1/companies/analytics/time-series",
1298
+ ...options,
1299
+ headers: {
1300
+ "Content-Type": "application/json",
1301
+ ...options?.headers
1302
+ }
1303
+ });
1304
+ }
1305
+ /**
1306
+ * Configurable chart (measure × slice) over company's loans
1307
+ */
1308
+ static analyticsChart(options) {
1309
+ return (options?.client ?? client).post({
1310
+ security: [{
1311
+ name: "x-api-key",
1312
+ type: "apiKey"
1313
+ }, {
1314
+ scheme: "bearer",
1315
+ type: "http"
1316
+ }],
1317
+ url: "/v1/companies/analytics/chart",
1318
+ ...options,
1319
+ headers: {
1320
+ "Content-Type": "application/json",
1321
+ ...options?.headers
1322
+ }
1323
+ });
1324
+ }
1325
+ /**
1326
+ * Loan originators sponsored by this company
1327
+ */
1328
+ static sponsoredIndividuals(options) {
1329
+ return (options.client ?? client).post({
1330
+ security: [{
1331
+ name: "x-api-key",
1332
+ type: "apiKey"
1333
+ }, {
1334
+ scheme: "bearer",
1335
+ type: "http"
1336
+ }],
1337
+ url: "/v1/companies/{nmlsId}/sponsored-individuals",
1338
+ ...options,
1339
+ headers: {
1340
+ "Content-Type": "application/json",
1341
+ ...options?.headers
1342
+ }
1343
+ });
1344
+ }
1345
+ /**
1346
+ * Branch locations for this company
1347
+ */
1348
+ static branches(options) {
1349
+ return (options.client ?? client).post({
1350
+ security: [{
1351
+ name: "x-api-key",
1352
+ type: "apiKey"
1353
+ }, {
1354
+ scheme: "bearer",
1355
+ type: "http"
1356
+ }],
1357
+ url: "/v1/companies/{nmlsId}/branches",
1358
+ ...options,
1359
+ headers: {
1360
+ "Content-Type": "application/json",
1361
+ ...options?.headers
1362
+ }
1363
+ });
1364
+ }
1365
+ /**
1366
+ * Loan officers who originated through this company
1367
+ */
1368
+ static originators(options) {
1369
+ return (options.client ?? client).post({
1370
+ security: [{
1371
+ name: "x-api-key",
1372
+ type: "apiKey"
1373
+ }, {
1374
+ scheme: "bearer",
1375
+ type: "http"
1376
+ }],
1377
+ url: "/v1/companies/{nmlsId}/breakdowns/originators",
1378
+ ...options,
1379
+ headers: {
1380
+ "Content-Type": "application/json",
1381
+ ...options?.headers
1382
+ }
1383
+ });
1384
+ }
1385
+ /**
1386
+ * Lenders this company originated through
1387
+ */
1388
+ static lenders(options) {
1389
+ return (options.client ?? client).post({
1390
+ security: [{
1391
+ name: "x-api-key",
1392
+ type: "apiKey"
1393
+ }, {
1394
+ scheme: "bearer",
1395
+ type: "http"
1396
+ }],
1397
+ url: "/v1/companies/{nmlsId}/breakdowns/lenders",
1398
+ ...options,
1399
+ headers: {
1400
+ "Content-Type": "application/json",
1401
+ ...options?.headers
1402
+ }
1403
+ });
1404
+ }
1405
+ /**
1406
+ * Broker offices this company originated through
1407
+ */
1408
+ static offices(options) {
525
1409
  return (options.client ?? client).post({
526
1410
  security: [{
527
1411
  name: "x-api-key",
@@ -530,15 +1414,19 @@ var Alerts = class {
530
1414
  scheme: "bearer",
531
1415
  type: "http"
532
1416
  }],
533
- url: "/v1/alerts/log/{id}/read",
534
- ...options
1417
+ url: "/v1/companies/{nmlsId}/breakdowns/offices",
1418
+ ...options,
1419
+ headers: {
1420
+ "Content-Type": "application/json",
1421
+ ...options?.headers
1422
+ }
535
1423
  });
536
1424
  }
537
1425
  /**
538
- * Get your unread alert count
1426
+ * City volume breakdown across this company's loans
539
1427
  */
540
- static getAlertUnreadCount(options) {
541
- return (options?.client ?? client).get({
1428
+ static cities(options) {
1429
+ return (options.client ?? client).post({
542
1430
  security: [{
543
1431
  name: "x-api-key",
544
1432
  type: "apiKey"
@@ -546,18 +1434,19 @@ var Alerts = class {
546
1434
  scheme: "bearer",
547
1435
  type: "http"
548
1436
  }],
549
- url: "/v1/alerts/unread-count",
550
- ...options
1437
+ url: "/v1/companies/{nmlsId}/breakdowns/cities",
1438
+ ...options,
1439
+ headers: {
1440
+ "Content-Type": "application/json",
1441
+ ...options?.headers
1442
+ }
551
1443
  });
552
1444
  }
553
- };
554
- var Branches = class {
555
1445
  /**
556
- * Search branches with filters
557
- * Search NMLS-registered mortgage company branch offices (not MLS real estate offices — use listOffices for those). Returns branch name, address, parent company, managers, and NMLS ID. Each row is enriched with the parent company's period production metrics.
1446
+ * State volume breakdown across this company's loans
558
1447
  */
559
- static list(options) {
560
- return (options?.client ?? client).post({
1448
+ static states(options) {
1449
+ return (options.client ?? client).post({
561
1450
  security: [{
562
1451
  name: "x-api-key",
563
1452
  type: "apiKey"
@@ -565,7 +1454,7 @@ var Branches = class {
565
1454
  scheme: "bearer",
566
1455
  type: "http"
567
1456
  }],
568
- url: "/v1/branches",
1457
+ url: "/v1/companies/{nmlsId}/breakdowns/states",
569
1458
  ...options,
570
1459
  headers: {
571
1460
  "Content-Type": "application/json",
@@ -574,11 +1463,10 @@ var Branches = class {
574
1463
  });
575
1464
  }
576
1465
  /**
577
- * Get branch by NMLS ID
578
- * Retrieve full details for a single NMLS mortgage branch including name, address, parent company, managers, trade names, and licensing.
1466
+ * County (FIPS) volume breakdown across this company's loans
579
1467
  */
580
- static get(options) {
581
- return (options.client ?? client).get({
1468
+ static counties(options) {
1469
+ return (options.client ?? client).post({
582
1470
  security: [{
583
1471
  name: "x-api-key",
584
1472
  type: "apiKey"
@@ -586,15 +1474,39 @@ var Branches = class {
586
1474
  scheme: "bearer",
587
1475
  type: "http"
588
1476
  }],
589
- url: "/v1/branches/{nmlsId}",
590
- ...options
1477
+ url: "/v1/companies/{nmlsId}/breakdowns/counties",
1478
+ ...options,
1479
+ headers: {
1480
+ "Content-Type": "application/json",
1481
+ ...options?.headers
1482
+ }
591
1483
  });
592
1484
  }
593
1485
  /**
594
- * Submit a bulk-delivery job for branches
595
- * Queues an ECS task that dumps every matching branches document (subject to the org's `bulk-delivery.branches` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /branches/bulk-delivery/{jobId}` for status + the signed download URL.
1486
+ * Analyze LO arrivals and departures for a company
596
1487
  */
597
- static submitBranchesBulkDelivery(options) {
1488
+ static sponsorshipMovement(options) {
1489
+ return (options.client ?? client).post({
1490
+ security: [{
1491
+ name: "x-api-key",
1492
+ type: "apiKey"
1493
+ }, {
1494
+ scheme: "bearer",
1495
+ type: "http"
1496
+ }],
1497
+ url: "/v1/companies/{nmlsId}/sponsorship-movement",
1498
+ ...options,
1499
+ headers: {
1500
+ "Content-Type": "application/json",
1501
+ ...options?.headers
1502
+ }
1503
+ });
1504
+ }
1505
+ /**
1506
+ * Submit a bulk-delivery job for companies
1507
+ * Queues an ECS task that dumps every matching companies document (subject to the org's `bulk-delivery.companies` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /companies/bulk-delivery/{jobId}` for status + the signed download URL.
1508
+ */
1509
+ static submitCompaniesBulkDelivery(options) {
598
1510
  return (options?.client ?? client).post({
599
1511
  security: [{
600
1512
  name: "x-api-key",
@@ -603,7 +1515,7 @@ var Branches = class {
603
1515
  scheme: "bearer",
604
1516
  type: "http"
605
1517
  }],
606
- url: "/v1/branches/bulk-delivery",
1518
+ url: "/v1/companies/bulk-delivery",
607
1519
  ...options,
608
1520
  headers: {
609
1521
  "Content-Type": "application/json",
@@ -612,9 +1524,9 @@ var Branches = class {
612
1524
  });
613
1525
  }
614
1526
  /**
615
- * Get bulk-delivery job status for branches
1527
+ * Get bulk-delivery job status for companies
616
1528
  */
617
- static getBranchesBulkDeliveryJob(options) {
1529
+ static getCompaniesBulkDeliveryJob(options) {
618
1530
  return (options.client ?? client).get({
619
1531
  security: [{
620
1532
  name: "x-api-key",
@@ -623,16 +1535,17 @@ var Branches = class {
623
1535
  scheme: "bearer",
624
1536
  type: "http"
625
1537
  }],
626
- url: "/v1/branches/bulk-delivery/{jobId}",
1538
+ url: "/v1/companies/bulk-delivery/{jobId}",
627
1539
  ...options
628
1540
  });
629
1541
  }
630
1542
  };
631
- var Companies = class {
1543
+ var Search = class {
632
1544
  /**
633
- * Search companies with filters
1545
+ * Instant multi-entity typeahead search
1546
+ * Fast typeahead/autocomplete search across agents, originators, companies, and offices. Returns top matches per entity type. Use this for quick name lookups, not for filtered searches (use the entity-specific list endpoints for those).
634
1547
  */
635
- static list(options) {
1548
+ static instant(options) {
636
1549
  return (options?.client ?? client).post({
637
1550
  security: [{
638
1551
  name: "x-api-key",
@@ -641,7 +1554,7 @@ var Companies = class {
641
1554
  scheme: "bearer",
642
1555
  type: "http"
643
1556
  }],
644
- url: "/v1/companies",
1557
+ url: "/v1/instant-search",
645
1558
  ...options,
646
1559
  headers: {
647
1560
  "Content-Type": "application/json",
@@ -650,10 +1563,11 @@ var Companies = class {
650
1563
  });
651
1564
  }
652
1565
  /**
653
- * Get company by NMLS ID
1566
+ * Mint a scoped search token
1567
+ * Returns a short-lived scoped search token plus the host to query, so a trusted client can search the entity indexes directly with per-query controls (e.g. attributesToSearchOn for name-only matching).
654
1568
  */
655
- static get(options) {
656
- return (options.client ?? client).get({
1569
+ static getSearchToken(options) {
1570
+ return (options?.client ?? client).get({
657
1571
  security: [{
658
1572
  name: "x-api-key",
659
1573
  type: "apiKey"
@@ -661,14 +1575,17 @@ var Companies = class {
661
1575
  scheme: "bearer",
662
1576
  type: "http"
663
1577
  }],
664
- url: "/v1/companies/{nmlsId}",
1578
+ url: "/v1/search-token",
665
1579
  ...options
666
1580
  });
667
1581
  }
1582
+ };
1583
+ var Lenders = class {
668
1584
  /**
669
- * Production summary with previous-period comparison
1585
+ * Search lenders with filters
1586
+ * Search and list normalized lender names/identities with filters — resolves raw or variant lender names to canonical lender records. Use it to look up a lender by name or reconcile lender-name variants to a single canonical entity.
670
1587
  */
671
- static analyticsSummary(options) {
1588
+ static list(options) {
672
1589
  return (options?.client ?? client).post({
673
1590
  security: [{
674
1591
  name: "x-api-key",
@@ -677,7 +1594,7 @@ var Companies = class {
677
1594
  scheme: "bearer",
678
1595
  type: "http"
679
1596
  }],
680
- url: "/v1/companies/analytics/summary",
1597
+ url: "/v1/lenders",
681
1598
  ...options,
682
1599
  headers: {
683
1600
  "Content-Type": "application/json",
@@ -686,10 +1603,10 @@ var Companies = class {
686
1603
  });
687
1604
  }
688
1605
  /**
689
- * Company volume / units over time
1606
+ * Get lender by ID
690
1607
  */
691
- static analyticsTimeSeries(options) {
692
- return (options?.client ?? client).post({
1608
+ static get(options) {
1609
+ return (options.client ?? client).get({
693
1610
  security: [{
694
1611
  name: "x-api-key",
695
1612
  type: "apiKey"
@@ -697,18 +1614,17 @@ var Companies = class {
697
1614
  scheme: "bearer",
698
1615
  type: "http"
699
1616
  }],
700
- url: "/v1/companies/analytics/time-series",
701
- ...options,
702
- headers: {
703
- "Content-Type": "application/json",
704
- ...options?.headers
705
- }
1617
+ url: "/v1/lenders/{id}",
1618
+ ...options
706
1619
  });
707
1620
  }
1621
+ };
1622
+ var Loans = class {
708
1623
  /**
709
- * Configurable chart (measure × slice) over company's loans
1624
+ * Search individual loan records with filters
1625
+ * Search and list individual public-record mortgage and deed loan records — one row per loan (purchase, refinance, origination). Filter by geography (state, county, city, zip), lender, originator, loan amount, interest rate, loan type/purpose, and recording date, with sorting and cursor pagination. This is the discrete per-loan record search: use it to find specific loans or build a filtered loan list. (For aggregate market rates and volumes use the market search; for one loan by its ID use the loan detail endpoint.)
710
1626
  */
711
- static analyticsChart(options) {
1627
+ static list(options) {
712
1628
  return (options?.client ?? client).post({
713
1629
  security: [{
714
1630
  name: "x-api-key",
@@ -717,7 +1633,7 @@ var Companies = class {
717
1633
  scheme: "bearer",
718
1634
  type: "http"
719
1635
  }],
720
- url: "/v1/companies/analytics/chart",
1636
+ url: "/v1/loans",
721
1637
  ...options,
722
1638
  headers: {
723
1639
  "Content-Type": "application/json",
@@ -726,10 +1642,10 @@ var Companies = class {
726
1642
  });
727
1643
  }
728
1644
  /**
729
- * Loan originators sponsored by this company
1645
+ * Get loan by ID
730
1646
  */
731
- static sponsoredIndividuals(options) {
732
- return (options.client ?? client).post({
1647
+ static get(options) {
1648
+ return (options.client ?? client).get({
733
1649
  security: [{
734
1650
  name: "x-api-key",
735
1651
  type: "apiKey"
@@ -737,19 +1653,15 @@ var Companies = class {
737
1653
  scheme: "bearer",
738
1654
  type: "http"
739
1655
  }],
740
- url: "/v1/companies/{nmlsId}/sponsored-individuals",
741
- ...options,
742
- headers: {
743
- "Content-Type": "application/json",
744
- ...options?.headers
745
- }
1656
+ url: "/v1/loans/{id}",
1657
+ ...options
746
1658
  });
747
1659
  }
748
1660
  /**
749
- * Branch locations for this company
1661
+ * Market summary with previous-period comparison
750
1662
  */
751
- static branches(options) {
752
- return (options.client ?? client).post({
1663
+ static analyticsSummary(options) {
1664
+ return (options?.client ?? client).post({
753
1665
  security: [{
754
1666
  name: "x-api-key",
755
1667
  type: "apiKey"
@@ -757,7 +1669,7 @@ var Companies = class {
757
1669
  scheme: "bearer",
758
1670
  type: "http"
759
1671
  }],
760
- url: "/v1/companies/{nmlsId}/branches",
1672
+ url: "/v1/loans/analytics/summary",
761
1673
  ...options,
762
1674
  headers: {
763
1675
  "Content-Type": "application/json",
@@ -766,10 +1678,10 @@ var Companies = class {
766
1678
  });
767
1679
  }
768
1680
  /**
769
- * Loan officers who originated through this company
1681
+ * Volume / units over time
770
1682
  */
771
- static originators(options) {
772
- return (options.client ?? client).post({
1683
+ static analyticsTimeSeries(options) {
1684
+ return (options?.client ?? client).post({
773
1685
  security: [{
774
1686
  name: "x-api-key",
775
1687
  type: "apiKey"
@@ -777,7 +1689,7 @@ var Companies = class {
777
1689
  scheme: "bearer",
778
1690
  type: "http"
779
1691
  }],
780
- url: "/v1/companies/{nmlsId}/breakdowns/originators",
1692
+ url: "/v1/loans/analytics/time-series",
781
1693
  ...options,
782
1694
  headers: {
783
1695
  "Content-Type": "application/json",
@@ -786,10 +1698,10 @@ var Companies = class {
786
1698
  });
787
1699
  }
788
1700
  /**
789
- * Lenders this company originated through
1701
+ * Configurable chart data (measure × slice)
790
1702
  */
791
- static lenders(options) {
792
- return (options.client ?? client).post({
1703
+ static analyticsChart(options) {
1704
+ return (options?.client ?? client).post({
793
1705
  security: [{
794
1706
  name: "x-api-key",
795
1707
  type: "apiKey"
@@ -797,7 +1709,7 @@ var Companies = class {
797
1709
  scheme: "bearer",
798
1710
  type: "http"
799
1711
  }],
800
- url: "/v1/companies/{nmlsId}/breakdowns/lenders",
1712
+ url: "/v1/loans/analytics/chart",
801
1713
  ...options,
802
1714
  headers: {
803
1715
  "Content-Type": "application/json",
@@ -806,10 +1718,11 @@ var Companies = class {
806
1718
  });
807
1719
  }
808
1720
  /**
809
- * Broker offices this company originated through
1721
+ * Submit a bulk-delivery job for loans
1722
+ * Queues an ECS task that dumps every matching loans document (subject to the org's `bulk-delivery.loans` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /loans/bulk-delivery/{jobId}` for status + the signed download URL.
810
1723
  */
811
- static offices(options) {
812
- return (options.client ?? client).post({
1724
+ static submitLoansBulkDelivery(options) {
1725
+ return (options?.client ?? client).post({
813
1726
  security: [{
814
1727
  name: "x-api-key",
815
1728
  type: "apiKey"
@@ -817,7 +1730,7 @@ var Companies = class {
817
1730
  scheme: "bearer",
818
1731
  type: "http"
819
1732
  }],
820
- url: "/v1/companies/{nmlsId}/breakdowns/offices",
1733
+ url: "/v1/loans/bulk-delivery",
821
1734
  ...options,
822
1735
  headers: {
823
1736
  "Content-Type": "application/json",
@@ -826,10 +1739,10 @@ var Companies = class {
826
1739
  });
827
1740
  }
828
1741
  /**
829
- * City volume breakdown across this company's loans
1742
+ * Get bulk-delivery job status for loans
830
1743
  */
831
- static cities(options) {
832
- return (options.client ?? client).post({
1744
+ static getLoansBulkDeliveryJob(options) {
1745
+ return (options.client ?? client).get({
833
1746
  security: [{
834
1747
  name: "x-api-key",
835
1748
  type: "apiKey"
@@ -837,19 +1750,18 @@ var Companies = class {
837
1750
  scheme: "bearer",
838
1751
  type: "http"
839
1752
  }],
840
- url: "/v1/companies/{nmlsId}/breakdowns/cities",
841
- ...options,
842
- headers: {
843
- "Content-Type": "application/json",
844
- ...options?.headers
845
- }
1753
+ url: "/v1/loans/bulk-delivery/{jobId}",
1754
+ ...options
846
1755
  });
847
1756
  }
1757
+ };
1758
+ var Locations = class {
848
1759
  /**
849
- * State volume breakdown across this company's loans
1760
+ * Autocomplete location search
1761
+ * Autocomplete location search powered by Mapbox. Returns location suggestions (cities, states, counties, zip codes, addresses) for a query string. Use the `mapbox_id` from a suggestion with `retrieveLocation` to get normalized geographic details for filtering.
850
1762
  */
851
- static states(options) {
852
- return (options.client ?? client).post({
1763
+ static suggest(options) {
1764
+ return (options.client ?? client).get({
853
1765
  security: [{
854
1766
  name: "x-api-key",
855
1767
  type: "apiKey"
@@ -857,19 +1769,16 @@ var Companies = class {
857
1769
  scheme: "bearer",
858
1770
  type: "http"
859
1771
  }],
860
- url: "/v1/companies/{nmlsId}/breakdowns/states",
861
- ...options,
862
- headers: {
863
- "Content-Type": "application/json",
864
- ...options?.headers
865
- }
1772
+ url: "/v1/locations/suggest",
1773
+ ...options
866
1774
  });
867
1775
  }
868
1776
  /**
869
- * County (FIPS) volume breakdown across this company's loans
1777
+ * Retrieve normalized location details
1778
+ * Retrieve normalized location details (city, state, county, zip, coordinates) for a Mapbox suggestion ID. Use this after `suggestLocations` to get structured geographic data for filtering other endpoints.
870
1779
  */
871
- static counties(options) {
872
- return (options.client ?? client).post({
1780
+ static retrieve(options) {
1781
+ return (options.client ?? client).get({
873
1782
  security: [{
874
1783
  name: "x-api-key",
875
1784
  type: "apiKey"
@@ -877,19 +1786,18 @@ var Companies = class {
877
1786
  scheme: "bearer",
878
1787
  type: "http"
879
1788
  }],
880
- url: "/v1/companies/{nmlsId}/breakdowns/counties",
881
- ...options,
882
- headers: {
883
- "Content-Type": "application/json",
884
- ...options?.headers
885
- }
1789
+ url: "/v1/locations/retrieve/{mapboxId}",
1790
+ ...options
886
1791
  });
887
1792
  }
1793
+ };
1794
+ var Market = class {
888
1795
  /**
889
- * Analyze LO arrivals and departures for a company
1796
+ * Search aggregated market data with filters
1797
+ * Search aggregated loan origination market data. Filterable dimensions cover geography (state, county, zip), product (loan purpose / type / amortization), borrower demographics, and loan numerics.
890
1798
  */
891
- static sponsorshipMovement(options) {
892
- return (options.client ?? client).post({
1799
+ static list(options) {
1800
+ return (options?.client ?? client).post({
893
1801
  security: [{
894
1802
  name: "x-api-key",
895
1803
  type: "apiKey"
@@ -897,7 +1805,7 @@ var Companies = class {
897
1805
  scheme: "bearer",
898
1806
  type: "http"
899
1807
  }],
900
- url: "/v1/companies/{nmlsId}/sponsorship-movement",
1808
+ url: "/v1/market",
901
1809
  ...options,
902
1810
  headers: {
903
1811
  "Content-Type": "application/json",
@@ -906,10 +1814,9 @@ var Companies = class {
906
1814
  });
907
1815
  }
908
1816
  /**
909
- * Submit a bulk-delivery job for companies
910
- * Queues an ECS task that dumps every matching companies document (subject to the org's `bulk-delivery.companies` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /companies/bulk-delivery/{jobId}` for status + the signed download URL.
1817
+ * Market summary (volume, units, rate, loan amount, credit score, LTV, DTI, income, etc.) with previous-period comparison
911
1818
  */
912
- static submitCompaniesBulkDelivery(options) {
1819
+ static analyticsSummary(options) {
913
1820
  return (options?.client ?? client).post({
914
1821
  security: [{
915
1822
  name: "x-api-key",
@@ -918,7 +1825,7 @@ var Companies = class {
918
1825
  scheme: "bearer",
919
1826
  type: "http"
920
1827
  }],
921
- url: "/v1/companies/bulk-delivery",
1828
+ url: "/v1/market/analytics/summary",
922
1829
  ...options,
923
1830
  headers: {
924
1831
  "Content-Type": "application/json",
@@ -927,10 +1834,10 @@ var Companies = class {
927
1834
  });
928
1835
  }
929
1836
  /**
930
- * Get bulk-delivery job status for companies
1837
+ * Market metrics over time
931
1838
  */
932
- static getCompaniesBulkDeliveryJob(options) {
933
- return (options.client ?? client).get({
1839
+ static analyticsTimeSeries(options) {
1840
+ return (options?.client ?? client).post({
934
1841
  security: [{
935
1842
  name: "x-api-key",
936
1843
  type: "apiKey"
@@ -938,17 +1845,18 @@ var Companies = class {
938
1845
  scheme: "bearer",
939
1846
  type: "http"
940
1847
  }],
941
- url: "/v1/companies/bulk-delivery/{jobId}",
942
- ...options
1848
+ url: "/v1/market/analytics/time-series",
1849
+ ...options,
1850
+ headers: {
1851
+ "Content-Type": "application/json",
1852
+ ...options?.headers
1853
+ }
943
1854
  });
944
1855
  }
945
- };
946
- var Search = class {
947
1856
  /**
948
- * Instant multi-entity typeahead search
949
- * Fast typeahead/autocomplete search across agents, originators, companies, and offices. Returns top matches per entity type. Use this for quick name lookups, not for filtered searches (use the entity-specific list endpoints for those).
1857
+ * Market measure by dimension breakdown
950
1858
  */
951
- static instant(options) {
1859
+ static analyticsChart(options) {
952
1860
  return (options?.client ?? client).post({
953
1861
  security: [{
954
1862
  name: "x-api-key",
@@ -957,7 +1865,7 @@ var Search = class {
957
1865
  scheme: "bearer",
958
1866
  type: "http"
959
1867
  }],
960
- url: "/v1/instant-search",
1868
+ url: "/v1/market/analytics/chart",
961
1869
  ...options,
962
1870
  headers: {
963
1871
  "Content-Type": "application/json",
@@ -965,12 +1873,13 @@ var Search = class {
965
1873
  }
966
1874
  });
967
1875
  }
1876
+ };
1877
+ var Offices = class {
968
1878
  /**
969
- * Mint a scoped search token
970
- * Returns a short-lived scoped search token plus the host to query, so a trusted client can search the entity indexes directly with per-query controls (e.g. attributesToSearchOn for name-only matching).
1879
+ * Agents at an office
971
1880
  */
972
- static getSearchToken(options) {
973
- return (options?.client ?? client).get({
1881
+ static agents(options) {
1882
+ return (options?.client ?? client).post({
974
1883
  security: [{
975
1884
  name: "x-api-key",
976
1885
  type: "apiKey"
@@ -978,14 +1887,17 @@ var Search = class {
978
1887
  scheme: "bearer",
979
1888
  type: "http"
980
1889
  }],
981
- url: "/v1/search-token",
982
- ...options
1890
+ url: "/v1/offices/agents",
1891
+ ...options,
1892
+ headers: {
1893
+ "Content-Type": "application/json",
1894
+ ...options?.headers
1895
+ }
983
1896
  });
984
1897
  }
985
- };
986
- var Lenders = class {
987
1898
  /**
988
- * Search lenders with filters
1899
+ * Search real-estate offices with filters
1900
+ * NOT NMLS mortgage branches — use `/branches` for those. Returns office name, address, agent count, coordinates, and office-level production for the selected period. Default sort is by agent count descending.
989
1901
  */
990
1902
  static list(options) {
991
1903
  return (options?.client ?? client).post({
@@ -996,7 +1908,7 @@ var Lenders = class {
996
1908
  scheme: "bearer",
997
1909
  type: "http"
998
1910
  }],
999
- url: "/v1/lenders",
1911
+ url: "/v1/offices",
1000
1912
  ...options,
1001
1913
  headers: {
1002
1914
  "Content-Type": "application/json",
@@ -1005,7 +1917,7 @@ var Lenders = class {
1005
1917
  });
1006
1918
  }
1007
1919
  /**
1008
- * Get lender by ID
1920
+ * Get office by key with office-level production
1009
1921
  */
1010
1922
  static get(options) {
1011
1923
  return (options.client ?? client).get({
@@ -1016,14 +1928,15 @@ var Lenders = class {
1016
1928
  scheme: "bearer",
1017
1929
  type: "http"
1018
1930
  }],
1019
- url: "/v1/lenders/{id}",
1931
+ url: "/v1/offices/{id}",
1020
1932
  ...options
1021
1933
  });
1022
1934
  }
1023
1935
  };
1024
- var Loans = class {
1936
+ var Originators = class {
1025
1937
  /**
1026
- * Search loans with filters
1938
+ * Search originators with filters
1939
+ * Search and list individual loan originators (LOs — NMLS-registered mortgage loan officers) with filters — one row per originator. Filter by name, NMLS ID, location (state, city), employer/company, and production metrics (loan volume, units, product mix), with sorting and cursor pagination. LOCATION SEMANTICS: the state/city filters match an originator's PRODUCTION GEOGRAPHY — the markets where they actually originated loans in the selected period — not where their office or employer sits. An LO who lends across several markets matches a filter for ANY of those markets, while the `state`/`city` returned on each row reflect only their PRIMARY (highest-volume) market. So a search for city "Long Beach" can return an LO whose displayed location is a different city/state (e.g. their top market is in Arizona) — they still originated loans in Long Beach, it just isn't their #1 market. To rank originators by their volume within a specific market, sort by volume after filtering, or use the per-originator city/county/state breakdown endpoints. This is the per-originator record search: use it to find specific loan officers or build a filtered LO list. (For a single originator by NMLS ID use the originator detail endpoint.)
1027
1940
  */
1028
1941
  static list(options) {
1029
1942
  return (options?.client ?? client).post({
@@ -1034,7 +1947,7 @@ var Loans = class {
1034
1947
  scheme: "bearer",
1035
1948
  type: "http"
1036
1949
  }],
1037
- url: "/v1/loans",
1950
+ url: "/v1/originators",
1038
1951
  ...options,
1039
1952
  headers: {
1040
1953
  "Content-Type": "application/json",
@@ -1043,7 +1956,7 @@ var Loans = class {
1043
1956
  });
1044
1957
  }
1045
1958
  /**
1046
- * Get loan by ID
1959
+ * Get originator by NMLS ID
1047
1960
  */
1048
1961
  static get(options) {
1049
1962
  return (options.client ?? client).get({
@@ -1054,12 +1967,12 @@ var Loans = class {
1054
1967
  scheme: "bearer",
1055
1968
  type: "http"
1056
1969
  }],
1057
- url: "/v1/loans/{id}",
1970
+ url: "/v1/originators/{nmlsId}",
1058
1971
  ...options
1059
1972
  });
1060
1973
  }
1061
1974
  /**
1062
- * Market summary with previous-period comparison
1975
+ * Production summary with previous-period comparison
1063
1976
  */
1064
1977
  static analyticsSummary(options) {
1065
1978
  return (options?.client ?? client).post({
@@ -1070,7 +1983,7 @@ var Loans = class {
1070
1983
  scheme: "bearer",
1071
1984
  type: "http"
1072
1985
  }],
1073
- url: "/v1/loans/analytics/summary",
1986
+ url: "/v1/originators/analytics/summary",
1074
1987
  ...options,
1075
1988
  headers: {
1076
1989
  "Content-Type": "application/json",
@@ -1079,7 +1992,7 @@ var Loans = class {
1079
1992
  });
1080
1993
  }
1081
1994
  /**
1082
- * Volume / units over time
1995
+ * Originator volume / units over time
1083
1996
  */
1084
1997
  static analyticsTimeSeries(options) {
1085
1998
  return (options?.client ?? client).post({
@@ -1090,7 +2003,7 @@ var Loans = class {
1090
2003
  scheme: "bearer",
1091
2004
  type: "http"
1092
2005
  }],
1093
- url: "/v1/loans/analytics/time-series",
2006
+ url: "/v1/originators/analytics/time-series",
1094
2007
  ...options,
1095
2008
  headers: {
1096
2009
  "Content-Type": "application/json",
@@ -1099,7 +2012,7 @@ var Loans = class {
1099
2012
  });
1100
2013
  }
1101
2014
  /**
1102
- * Configurable chart data (measure × slice)
2015
+ * Configurable chart (measure × slice) over one LO's loans
1103
2016
  */
1104
2017
  static analyticsChart(options) {
1105
2018
  return (options?.client ?? client).post({
@@ -1110,7 +2023,7 @@ var Loans = class {
1110
2023
  scheme: "bearer",
1111
2024
  type: "http"
1112
2025
  }],
1113
- url: "/v1/loans/analytics/chart",
2026
+ url: "/v1/originators/analytics/chart",
1114
2027
  ...options,
1115
2028
  headers: {
1116
2029
  "Content-Type": "application/json",
@@ -1119,11 +2032,10 @@ var Loans = class {
1119
2032
  });
1120
2033
  }
1121
2034
  /**
1122
- * Submit a bulk-delivery job for loans
1123
- * Queues an ECS task that dumps every matching loans document (subject to the org's `bulk-delivery.loans` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /loans/bulk-delivery/{jobId}` for status + the signed download URL.
2035
+ * Loans originated by this LO
1124
2036
  */
1125
- static submitLoansBulkDelivery(options) {
1126
- return (options?.client ?? client).post({
2037
+ static loans(options) {
2038
+ return (options.client ?? client).post({
1127
2039
  security: [{
1128
2040
  name: "x-api-key",
1129
2041
  type: "apiKey"
@@ -1131,7 +2043,7 @@ var Loans = class {
1131
2043
  scheme: "bearer",
1132
2044
  type: "http"
1133
2045
  }],
1134
- url: "/v1/loans/bulk-delivery",
2046
+ url: "/v1/originators/{nmlsId}/loans",
1135
2047
  ...options,
1136
2048
  headers: {
1137
2049
  "Content-Type": "application/json",
@@ -1140,10 +2052,10 @@ var Loans = class {
1140
2052
  });
1141
2053
  }
1142
2054
  /**
1143
- * Get bulk-delivery job status for loans
2055
+ * Real-estate agents this LO co-closed with
1144
2056
  */
1145
- static getLoansBulkDeliveryJob(options) {
1146
- return (options.client ?? client).get({
2057
+ static agents(options) {
2058
+ return (options.client ?? client).post({
1147
2059
  security: [{
1148
2060
  name: "x-api-key",
1149
2061
  type: "apiKey"
@@ -1151,18 +2063,19 @@ var Loans = class {
1151
2063
  scheme: "bearer",
1152
2064
  type: "http"
1153
2065
  }],
1154
- url: "/v1/loans/bulk-delivery/{jobId}",
1155
- ...options
2066
+ url: "/v1/originators/{nmlsId}/breakdowns/agents",
2067
+ ...options,
2068
+ headers: {
2069
+ "Content-Type": "application/json",
2070
+ ...options?.headers
2071
+ }
1156
2072
  });
1157
2073
  }
1158
- };
1159
- var Locations = class {
1160
2074
  /**
1161
- * Autocomplete location search
1162
- * Autocomplete location search powered by Mapbox. Returns location suggestions (cities, states, counties, zip codes, addresses) for a query string. Use the `mapbox_id` from a suggestion with `retrieveLocation` to get normalized geographic details for filtering.
2075
+ * Funding companies (employer history) for this LO
1163
2076
  */
1164
- static suggest(options) {
1165
- return (options.client ?? client).get({
2077
+ static companies(options) {
2078
+ return (options.client ?? client).post({
1166
2079
  security: [{
1167
2080
  name: "x-api-key",
1168
2081
  type: "apiKey"
@@ -1170,16 +2083,19 @@ var Locations = class {
1170
2083
  scheme: "bearer",
1171
2084
  type: "http"
1172
2085
  }],
1173
- url: "/v1/locations/suggest",
1174
- ...options
2086
+ url: "/v1/originators/{nmlsId}/breakdowns/companies",
2087
+ ...options,
2088
+ headers: {
2089
+ "Content-Type": "application/json",
2090
+ ...options?.headers
2091
+ }
1175
2092
  });
1176
2093
  }
1177
2094
  /**
1178
- * Retrieve normalized location details
1179
- * Retrieve normalized location details (city, state, county, zip, coordinates) for a Mapbox suggestion ID. Use this after `suggestLocations` to get structured geographic data for filtering other endpoints.
2095
+ * Lenders this LO has originated through
1180
2096
  */
1181
- static retrieve(options) {
1182
- return (options.client ?? client).get({
2097
+ static lenders(options) {
2098
+ return (options.client ?? client).post({
1183
2099
  security: [{
1184
2100
  name: "x-api-key",
1185
2101
  type: "apiKey"
@@ -1187,18 +2103,19 @@ var Locations = class {
1187
2103
  scheme: "bearer",
1188
2104
  type: "http"
1189
2105
  }],
1190
- url: "/v1/locations/retrieve/{mapboxId}",
1191
- ...options
2106
+ url: "/v1/originators/{nmlsId}/breakdowns/lenders",
2107
+ ...options,
2108
+ headers: {
2109
+ "Content-Type": "application/json",
2110
+ ...options?.headers
2111
+ }
1192
2112
  });
1193
2113
  }
1194
- };
1195
- var Market = class {
1196
2114
  /**
1197
- * Search aggregated market data with filters
1198
- * Search aggregated loan origination market data. Filterable dimensions cover geography (state, county, zip), product (loan purpose / type / amortization), borrower demographics, and loan numerics.
2115
+ * Zip-code volume breakdown
1199
2116
  */
1200
- static list(options) {
1201
- return (options?.client ?? client).post({
2117
+ static zipCodes(options) {
2118
+ return (options.client ?? client).post({
1202
2119
  security: [{
1203
2120
  name: "x-api-key",
1204
2121
  type: "apiKey"
@@ -1206,7 +2123,7 @@ var Market = class {
1206
2123
  scheme: "bearer",
1207
2124
  type: "http"
1208
2125
  }],
1209
- url: "/v1/market",
2126
+ url: "/v1/originators/{nmlsId}/breakdowns/zip-codes",
1210
2127
  ...options,
1211
2128
  headers: {
1212
2129
  "Content-Type": "application/json",
@@ -1215,10 +2132,10 @@ var Market = class {
1215
2132
  });
1216
2133
  }
1217
2134
  /**
1218
- * Market summary (volume, units, rate, loan amount, credit score, LTV, DTI, income, etc.) with previous-period comparison
2135
+ * Branch (broker) history for this LO
1219
2136
  */
1220
- static analyticsSummary(options) {
1221
- return (options?.client ?? client).post({
2137
+ static branches(options) {
2138
+ return (options.client ?? client).post({
1222
2139
  security: [{
1223
2140
  name: "x-api-key",
1224
2141
  type: "apiKey"
@@ -1226,7 +2143,7 @@ var Market = class {
1226
2143
  scheme: "bearer",
1227
2144
  type: "http"
1228
2145
  }],
1229
- url: "/v1/market/analytics/summary",
2146
+ url: "/v1/originators/{nmlsId}/breakdowns/branches",
1230
2147
  ...options,
1231
2148
  headers: {
1232
2149
  "Content-Type": "application/json",
@@ -1235,10 +2152,10 @@ var Market = class {
1235
2152
  });
1236
2153
  }
1237
2154
  /**
1238
- * Market metrics over time
2155
+ * Real-estate offices this LO closed through (with sponsoring company)
1239
2156
  */
1240
- static analyticsTimeSeries(options) {
1241
- return (options?.client ?? client).post({
2157
+ static offices(options) {
2158
+ return (options.client ?? client).post({
1242
2159
  security: [{
1243
2160
  name: "x-api-key",
1244
2161
  type: "apiKey"
@@ -1246,7 +2163,7 @@ var Market = class {
1246
2163
  scheme: "bearer",
1247
2164
  type: "http"
1248
2165
  }],
1249
- url: "/v1/market/analytics/time-series",
2166
+ url: "/v1/originators/{nmlsId}/breakdowns/offices",
1250
2167
  ...options,
1251
2168
  headers: {
1252
2169
  "Content-Type": "application/json",
@@ -1255,10 +2172,10 @@ var Market = class {
1255
2172
  });
1256
2173
  }
1257
2174
  /**
1258
- * Market measure by dimension breakdown
2175
+ * Per-city volume breakdown (pre-aggregated)
1259
2176
  */
1260
- static analyticsChart(options) {
1261
- return (options?.client ?? client).post({
2177
+ static citiesBreakdown(options) {
2178
+ return (options.client ?? client).post({
1262
2179
  security: [{
1263
2180
  name: "x-api-key",
1264
2181
  type: "apiKey"
@@ -1266,7 +2183,7 @@ var Market = class {
1266
2183
  scheme: "bearer",
1267
2184
  type: "http"
1268
2185
  }],
1269
- url: "/v1/market/analytics/chart",
2186
+ url: "/v1/originators/{nmlsId}/breakdowns/cities",
1270
2187
  ...options,
1271
2188
  headers: {
1272
2189
  "Content-Type": "application/json",
@@ -1274,13 +2191,11 @@ var Market = class {
1274
2191
  }
1275
2192
  });
1276
2193
  }
1277
- };
1278
- var Offices = class {
1279
2194
  /**
1280
- * Agents at an office
2195
+ * Per-county volume breakdown (pre-aggregated)
1281
2196
  */
1282
- static agents(options) {
1283
- return (options?.client ?? client).post({
2197
+ static countiesBreakdown(options) {
2198
+ return (options.client ?? client).post({
1284
2199
  security: [{
1285
2200
  name: "x-api-key",
1286
2201
  type: "apiKey"
@@ -1288,7 +2203,7 @@ var Offices = class {
1288
2203
  scheme: "bearer",
1289
2204
  type: "http"
1290
2205
  }],
1291
- url: "/v1/offices/agents",
2206
+ url: "/v1/originators/{nmlsId}/breakdowns/counties",
1292
2207
  ...options,
1293
2208
  headers: {
1294
2209
  "Content-Type": "application/json",
@@ -1297,10 +2212,30 @@ var Offices = class {
1297
2212
  });
1298
2213
  }
1299
2214
  /**
1300
- * Search real-estate offices with filters
1301
- * NOT NMLS mortgage branches — use `/branches` for those. Returns office company, address, agent count, and coordinates. Default sort is by agent count descending.
2215
+ * Per-state volume breakdown (pre-aggregated)
1302
2216
  */
1303
- static list(options) {
2217
+ static statesBreakdown(options) {
2218
+ return (options.client ?? client).post({
2219
+ security: [{
2220
+ name: "x-api-key",
2221
+ type: "apiKey"
2222
+ }, {
2223
+ scheme: "bearer",
2224
+ type: "http"
2225
+ }],
2226
+ url: "/v1/originators/{nmlsId}/breakdowns/states",
2227
+ ...options,
2228
+ headers: {
2229
+ "Content-Type": "application/json",
2230
+ ...options?.headers
2231
+ }
2232
+ });
2233
+ }
2234
+ /**
2235
+ * Submit a bulk-delivery job for originators
2236
+ * Queues an ECS task that dumps every matching originators document (subject to the org's `bulk-delivery.originators` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /originators/bulk-delivery/{jobId}` for status + the signed download URL.
2237
+ */
2238
+ static submitOriginatorsBulkDelivery(options) {
1304
2239
  return (options?.client ?? client).post({
1305
2240
  security: [{
1306
2241
  name: "x-api-key",
@@ -1309,7 +2244,7 @@ var Offices = class {
1309
2244
  scheme: "bearer",
1310
2245
  type: "http"
1311
2246
  }],
1312
- url: "/v1/offices",
2247
+ url: "/v1/originators/bulk-delivery",
1313
2248
  ...options,
1314
2249
  headers: {
1315
2250
  "Content-Type": "application/json",
@@ -1318,9 +2253,9 @@ var Offices = class {
1318
2253
  });
1319
2254
  }
1320
2255
  /**
1321
- * Get office by ID with best-effort production enrichment
2256
+ * Get bulk-delivery job status for originators
1322
2257
  */
1323
- static get(options) {
2258
+ static getOriginatorsBulkDeliveryJob(options) {
1324
2259
  return (options.client ?? client).get({
1325
2260
  security: [{
1326
2261
  name: "x-api-key",
@@ -1329,16 +2264,15 @@ var Offices = class {
1329
2264
  scheme: "bearer",
1330
2265
  type: "http"
1331
2266
  }],
1332
- url: "/v1/offices/{id}",
2267
+ url: "/v1/originators/bulk-delivery/{jobId}",
1333
2268
  ...options
1334
2269
  });
1335
2270
  }
1336
- };
1337
- var Originators = class {
1338
2271
  /**
1339
2272
  * Search originators with filters
2273
+ * Search and list individual loan originators (LOs — NMLS-registered mortgage loan officers) with filters — one row per originator. Filter by name, NMLS ID, location (state, city), employer/company, and production metrics (loan volume, units, product mix), with sorting and cursor pagination. LOCATION SEMANTICS: the state/city filters match an originator's PRODUCTION GEOGRAPHY — the markets where they actually originated loans in the selected period — not where their office or employer sits. An LO who lends across several markets matches a filter for ANY of those markets, while the `state`/`city` returned on each row reflect only their PRIMARY (highest-volume) market. So a search for city "Long Beach" can return an LO whose displayed location is a different city/state (e.g. their top market is in Arizona) — they still originated loans in Long Beach, it just isn't their #1 market. To rank originators by their volume within a specific market, sort by volume after filtering, or use the per-originator city/county/state breakdown endpoints. This is the per-originator record search: use it to find specific loan officers or build a filtered LO list. (For a single originator by NMLS ID use the originator detail endpoint.)
1340
2274
  */
1341
- static list(options) {
2275
+ static listOriginators2(options) {
1342
2276
  return (options?.client ?? client).post({
1343
2277
  security: [{
1344
2278
  name: "x-api-key",
@@ -1347,7 +2281,7 @@ var Originators = class {
1347
2281
  scheme: "bearer",
1348
2282
  type: "http"
1349
2283
  }],
1350
- url: "/v1/originators",
2284
+ url: "/originators",
1351
2285
  ...options,
1352
2286
  headers: {
1353
2287
  "Content-Type": "application/json",
@@ -1358,7 +2292,7 @@ var Originators = class {
1358
2292
  /**
1359
2293
  * Get originator by NMLS ID
1360
2294
  */
1361
- static get(options) {
2295
+ static getOriginator2(options) {
1362
2296
  return (options.client ?? client).get({
1363
2297
  security: [{
1364
2298
  name: "x-api-key",
@@ -1367,14 +2301,14 @@ var Originators = class {
1367
2301
  scheme: "bearer",
1368
2302
  type: "http"
1369
2303
  }],
1370
- url: "/v1/originators/{nmlsId}",
2304
+ url: "/originators/{nmlsId}",
1371
2305
  ...options
1372
2306
  });
1373
2307
  }
1374
2308
  /**
1375
2309
  * Production summary with previous-period comparison
1376
2310
  */
1377
- static analyticsSummary(options) {
2311
+ static analyticsSummary2(options) {
1378
2312
  return (options?.client ?? client).post({
1379
2313
  security: [{
1380
2314
  name: "x-api-key",
@@ -1383,7 +2317,7 @@ var Originators = class {
1383
2317
  scheme: "bearer",
1384
2318
  type: "http"
1385
2319
  }],
1386
- url: "/v1/originators/analytics/summary",
2320
+ url: "/originators/analytics/summary",
1387
2321
  ...options,
1388
2322
  headers: {
1389
2323
  "Content-Type": "application/json",
@@ -1394,7 +2328,7 @@ var Originators = class {
1394
2328
  /**
1395
2329
  * Originator volume / units over time
1396
2330
  */
1397
- static analyticsTimeSeries(options) {
2331
+ static analyticsTimeSeries2(options) {
1398
2332
  return (options?.client ?? client).post({
1399
2333
  security: [{
1400
2334
  name: "x-api-key",
@@ -1403,7 +2337,7 @@ var Originators = class {
1403
2337
  scheme: "bearer",
1404
2338
  type: "http"
1405
2339
  }],
1406
- url: "/v1/originators/analytics/time-series",
2340
+ url: "/originators/analytics/time-series",
1407
2341
  ...options,
1408
2342
  headers: {
1409
2343
  "Content-Type": "application/json",
@@ -1414,7 +2348,7 @@ var Originators = class {
1414
2348
  /**
1415
2349
  * Configurable chart (measure × slice) over one LO's loans
1416
2350
  */
1417
- static analyticsChart(options) {
2351
+ static analyticsChart2(options) {
1418
2352
  return (options?.client ?? client).post({
1419
2353
  security: [{
1420
2354
  name: "x-api-key",
@@ -1423,7 +2357,7 @@ var Originators = class {
1423
2357
  scheme: "bearer",
1424
2358
  type: "http"
1425
2359
  }],
1426
- url: "/v1/originators/analytics/chart",
2360
+ url: "/originators/analytics/chart",
1427
2361
  ...options,
1428
2362
  headers: {
1429
2363
  "Content-Type": "application/json",
@@ -1434,7 +2368,7 @@ var Originators = class {
1434
2368
  /**
1435
2369
  * Loans originated by this LO
1436
2370
  */
1437
- static loans(options) {
2371
+ static loans2(options) {
1438
2372
  return (options.client ?? client).post({
1439
2373
  security: [{
1440
2374
  name: "x-api-key",
@@ -1443,7 +2377,7 @@ var Originators = class {
1443
2377
  scheme: "bearer",
1444
2378
  type: "http"
1445
2379
  }],
1446
- url: "/v1/originators/{nmlsId}/loans",
2380
+ url: "/originators/{nmlsId}/loans",
1447
2381
  ...options,
1448
2382
  headers: {
1449
2383
  "Content-Type": "application/json",
@@ -1454,7 +2388,7 @@ var Originators = class {
1454
2388
  /**
1455
2389
  * Real-estate agents this LO co-closed with
1456
2390
  */
1457
- static agents(options) {
2391
+ static agents2(options) {
1458
2392
  return (options.client ?? client).post({
1459
2393
  security: [{
1460
2394
  name: "x-api-key",
@@ -1463,7 +2397,7 @@ var Originators = class {
1463
2397
  scheme: "bearer",
1464
2398
  type: "http"
1465
2399
  }],
1466
- url: "/v1/originators/{nmlsId}/breakdowns/agents",
2400
+ url: "/originators/{nmlsId}/breakdowns/agents",
1467
2401
  ...options,
1468
2402
  headers: {
1469
2403
  "Content-Type": "application/json",
@@ -1474,7 +2408,7 @@ var Originators = class {
1474
2408
  /**
1475
2409
  * Funding companies (employer history) for this LO
1476
2410
  */
1477
- static companies(options) {
2411
+ static companies2(options) {
1478
2412
  return (options.client ?? client).post({
1479
2413
  security: [{
1480
2414
  name: "x-api-key",
@@ -1483,7 +2417,7 @@ var Originators = class {
1483
2417
  scheme: "bearer",
1484
2418
  type: "http"
1485
2419
  }],
1486
- url: "/v1/originators/{nmlsId}/breakdowns/companies",
2420
+ url: "/originators/{nmlsId}/breakdowns/companies",
1487
2421
  ...options,
1488
2422
  headers: {
1489
2423
  "Content-Type": "application/json",
@@ -1494,7 +2428,7 @@ var Originators = class {
1494
2428
  /**
1495
2429
  * Lenders this LO has originated through
1496
2430
  */
1497
- static lenders(options) {
2431
+ static lenders2(options) {
1498
2432
  return (options.client ?? client).post({
1499
2433
  security: [{
1500
2434
  name: "x-api-key",
@@ -1503,7 +2437,7 @@ var Originators = class {
1503
2437
  scheme: "bearer",
1504
2438
  type: "http"
1505
2439
  }],
1506
- url: "/v1/originators/{nmlsId}/breakdowns/lenders",
2440
+ url: "/originators/{nmlsId}/breakdowns/lenders",
1507
2441
  ...options,
1508
2442
  headers: {
1509
2443
  "Content-Type": "application/json",
@@ -1514,7 +2448,7 @@ var Originators = class {
1514
2448
  /**
1515
2449
  * Zip-code volume breakdown
1516
2450
  */
1517
- static zipCodes(options) {
2451
+ static zipCodes2(options) {
1518
2452
  return (options.client ?? client).post({
1519
2453
  security: [{
1520
2454
  name: "x-api-key",
@@ -1523,7 +2457,7 @@ var Originators = class {
1523
2457
  scheme: "bearer",
1524
2458
  type: "http"
1525
2459
  }],
1526
- url: "/v1/originators/{nmlsId}/breakdowns/zip-codes",
2460
+ url: "/originators/{nmlsId}/breakdowns/zip-codes",
1527
2461
  ...options,
1528
2462
  headers: {
1529
2463
  "Content-Type": "application/json",
@@ -1534,7 +2468,7 @@ var Originators = class {
1534
2468
  /**
1535
2469
  * Branch (broker) history for this LO
1536
2470
  */
1537
- static branches(options) {
2471
+ static branches2(options) {
1538
2472
  return (options.client ?? client).post({
1539
2473
  security: [{
1540
2474
  name: "x-api-key",
@@ -1543,7 +2477,7 @@ var Originators = class {
1543
2477
  scheme: "bearer",
1544
2478
  type: "http"
1545
2479
  }],
1546
- url: "/v1/originators/{nmlsId}/breakdowns/branches",
2480
+ url: "/originators/{nmlsId}/breakdowns/branches",
1547
2481
  ...options,
1548
2482
  headers: {
1549
2483
  "Content-Type": "application/json",
@@ -1554,7 +2488,7 @@ var Originators = class {
1554
2488
  /**
1555
2489
  * Real-estate offices this LO closed through (with sponsoring company)
1556
2490
  */
1557
- static offices(options) {
2491
+ static offices2(options) {
1558
2492
  return (options.client ?? client).post({
1559
2493
  security: [{
1560
2494
  name: "x-api-key",
@@ -1563,7 +2497,7 @@ var Originators = class {
1563
2497
  scheme: "bearer",
1564
2498
  type: "http"
1565
2499
  }],
1566
- url: "/v1/originators/{nmlsId}/breakdowns/offices",
2500
+ url: "/originators/{nmlsId}/breakdowns/offices",
1567
2501
  ...options,
1568
2502
  headers: {
1569
2503
  "Content-Type": "application/json",
@@ -1574,7 +2508,7 @@ var Originators = class {
1574
2508
  /**
1575
2509
  * Per-city volume breakdown (pre-aggregated)
1576
2510
  */
1577
- static citiesBreakdown(options) {
2511
+ static citiesBreakdown2(options) {
1578
2512
  return (options.client ?? client).post({
1579
2513
  security: [{
1580
2514
  name: "x-api-key",
@@ -1583,7 +2517,7 @@ var Originators = class {
1583
2517
  scheme: "bearer",
1584
2518
  type: "http"
1585
2519
  }],
1586
- url: "/v1/originators/{nmlsId}/breakdowns/cities",
2520
+ url: "/originators/{nmlsId}/breakdowns/cities",
1587
2521
  ...options,
1588
2522
  headers: {
1589
2523
  "Content-Type": "application/json",
@@ -1594,7 +2528,7 @@ var Originators = class {
1594
2528
  /**
1595
2529
  * Per-county volume breakdown (pre-aggregated)
1596
2530
  */
1597
- static countiesBreakdown(options) {
2531
+ static countiesBreakdown2(options) {
1598
2532
  return (options.client ?? client).post({
1599
2533
  security: [{
1600
2534
  name: "x-api-key",
@@ -1603,7 +2537,7 @@ var Originators = class {
1603
2537
  scheme: "bearer",
1604
2538
  type: "http"
1605
2539
  }],
1606
- url: "/v1/originators/{nmlsId}/breakdowns/counties",
2540
+ url: "/originators/{nmlsId}/breakdowns/counties",
1607
2541
  ...options,
1608
2542
  headers: {
1609
2543
  "Content-Type": "application/json",
@@ -1614,7 +2548,7 @@ var Originators = class {
1614
2548
  /**
1615
2549
  * Per-state volume breakdown (pre-aggregated)
1616
2550
  */
1617
- static statesBreakdown(options) {
2551
+ static statesBreakdown2(options) {
1618
2552
  return (options.client ?? client).post({
1619
2553
  security: [{
1620
2554
  name: "x-api-key",
@@ -1623,7 +2557,7 @@ var Originators = class {
1623
2557
  scheme: "bearer",
1624
2558
  type: "http"
1625
2559
  }],
1626
- url: "/v1/originators/{nmlsId}/breakdowns/states",
2560
+ url: "/originators/{nmlsId}/breakdowns/states",
1627
2561
  ...options,
1628
2562
  headers: {
1629
2563
  "Content-Type": "application/json",
@@ -1635,7 +2569,7 @@ var Originators = class {
1635
2569
  * Submit a bulk-delivery job for originators
1636
2570
  * Queues an ECS task that dumps every matching originators document (subject to the org's `bulk-delivery.originators` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /originators/bulk-delivery/{jobId}` for status + the signed download URL.
1637
2571
  */
1638
- static submitOriginatorsBulkDelivery(options) {
2572
+ static submitOriginatorsBulkDelivery2(options) {
1639
2573
  return (options?.client ?? client).post({
1640
2574
  security: [{
1641
2575
  name: "x-api-key",
@@ -1644,7 +2578,7 @@ var Originators = class {
1644
2578
  scheme: "bearer",
1645
2579
  type: "http"
1646
2580
  }],
1647
- url: "/v1/originators/bulk-delivery",
2581
+ url: "/originators/bulk-delivery",
1648
2582
  ...options,
1649
2583
  headers: {
1650
2584
  "Content-Type": "application/json",
@@ -1655,7 +2589,7 @@ var Originators = class {
1655
2589
  /**
1656
2590
  * Get bulk-delivery job status for originators
1657
2591
  */
1658
- static getOriginatorsBulkDeliveryJob(options) {
2592
+ static getOriginatorsBulkDeliveryJob2(options) {
1659
2593
  return (options.client ?? client).get({
1660
2594
  security: [{
1661
2595
  name: "x-api-key",
@@ -1664,7 +2598,7 @@ var Originators = class {
1664
2598
  scheme: "bearer",
1665
2599
  type: "http"
1666
2600
  }],
1667
- url: "/v1/originators/bulk-delivery/{jobId}",
2601
+ url: "/originators/bulk-delivery/{jobId}",
1668
2602
  ...options
1669
2603
  });
1670
2604
  }
@@ -1704,6 +2638,27 @@ var Properties = class {
1704
2638
  });
1705
2639
  }
1706
2640
  /**
2641
+ * Enrich several properties with owner contact info in one request
2642
+ * Looks up owner contact information for up to 50 properties in a single synchronous request. Each id is resolved independently and returned in the `results` array with its own status — a bad id never fails the batch. Each match debits one credit; cache hits and no-matches are free. For larger sets use the asynchronous bulk job.
2643
+ */
2644
+ static enrichPropertiesBatch(options) {
2645
+ return (options?.client ?? client).post({
2646
+ security: [{
2647
+ name: "x-api-key",
2648
+ type: "apiKey"
2649
+ }, {
2650
+ scheme: "bearer",
2651
+ type: "http"
2652
+ }],
2653
+ url: "/v1/properties/enrich",
2654
+ ...options,
2655
+ headers: {
2656
+ "Content-Type": "application/json",
2657
+ ...options?.headers
2658
+ }
2659
+ });
2660
+ }
2661
+ /**
1707
2662
  * Submit a bulk skip-trace job
1708
2663
  * Queues an ECS task that enriches up to 50000 properties. Returns 202 with a jobId; poll `GET /enrich-bulk/{jobId}` or subscribe to the `enrichment.bulk.*` EventBridge / webhook events for completion.
1709
2664
  */
@@ -1742,6 +2697,7 @@ var Properties = class {
1742
2697
  }
1743
2698
  /**
1744
2699
  * Search properties with filters
2700
+ * Search and list individual properties/parcels with filters — one row per parcel. Filter by location (state, county, city, zip, address), owner name, property characteristics (beds, baths, square footage, year built, property type), value, and ownership or transaction history, with sorting and cursor pagination. This is the discrete per-property record search: use it to find specific properties or build a filtered property list. (For a single property by its ID use the property detail endpoint.)
1745
2701
  */
1746
2702
  static list(options) {
1747
2703
  return (options?.client ?? client).post({
@@ -1854,9 +2810,29 @@ var Properties = class {
1854
2810
  });
1855
2811
  }
1856
2812
  };
2813
+ var Realtime = class {
2814
+ /**
2815
+ * Get realtime connection config
2816
+ * Returns the realtime/notifications connection info (endpoint, authorizer, app, stage) merged with the caller's userId, so a trusted client can connect to its per-user IoT MQTT topic.
2817
+ */
2818
+ static getRealtimeConfig(options) {
2819
+ return (options?.client ?? client).get({
2820
+ security: [{
2821
+ name: "x-api-key",
2822
+ type: "apiKey"
2823
+ }, {
2824
+ scheme: "bearer",
2825
+ type: "http"
2826
+ }],
2827
+ url: "/v1/realtime/config",
2828
+ ...options
2829
+ });
2830
+ }
2831
+ };
1857
2832
  var Sales = class {
1858
2833
  /**
1859
2834
  * Search sales with filters
2835
+ * Search and list individual real-estate sale transactions and active listings with filters — one row per sale/listing. Filter by location (state, county, city, zip), sale price, sale or listing date, property characteristics (beds, baths, square footage, property type), and listing status, with sorting and cursor pagination. This is the discrete per-transaction sales-record search: use it to find specific sales or build a filtered list of sold/active listings.
1860
2836
  */
1861
2837
  static list(options) {
1862
2838
  return (options?.client ?? client).post({
@@ -1990,4 +2966,4 @@ function createClient$1(config = {}) {
1990
2966
  };
1991
2967
  }
1992
2968
  //#endregion
1993
- export { Branches as a, Loans as c, Offices as d, Originators as f, client as g, Search as h, Alerts as i, Locations as l, Sales as m, createClient$1 as n, Companies as o, Properties as p, Agents as r, Lenders as s, createApiClient as t, Market as u };
2969
+ export { Sales as _, Agents as a, Companies as c, Locations as d, Market as f, Realtime as g, Properties as h, AdminObservability as i, Lenders as l, Originators as m, createClient$1 as n, Alerts as o, Offices as p, AdminJobs as r, Branches as s, createApiClient as t, Loans as u, Search as v, client as y };