@model-match/api 3.6.1 → 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,670 @@ 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) {
525
1389
  return (options.client ?? client).post({
526
1390
  security: [{
527
1391
  name: "x-api-key",
@@ -530,15 +1394,19 @@ var Alerts = class {
530
1394
  scheme: "bearer",
531
1395
  type: "http"
532
1396
  }],
533
- url: "/v1/alerts/log/{id}/read",
534
- ...options
1397
+ url: "/v1/companies/{nmlsId}/breakdowns/lenders",
1398
+ ...options,
1399
+ headers: {
1400
+ "Content-Type": "application/json",
1401
+ ...options?.headers
1402
+ }
535
1403
  });
536
1404
  }
537
1405
  /**
538
- * Get your unread alert count
1406
+ * Broker offices this company originated through
539
1407
  */
540
- static getAlertUnreadCount(options) {
541
- return (options?.client ?? client).get({
1408
+ static offices(options) {
1409
+ return (options.client ?? client).post({
542
1410
  security: [{
543
1411
  name: "x-api-key",
544
1412
  type: "apiKey"
@@ -546,15 +1414,19 @@ var Alerts = class {
546
1414
  scheme: "bearer",
547
1415
  type: "http"
548
1416
  }],
549
- url: "/v1/alerts/unread-count",
550
- ...options
1417
+ url: "/v1/companies/{nmlsId}/breakdowns/offices",
1418
+ ...options,
1419
+ headers: {
1420
+ "Content-Type": "application/json",
1421
+ ...options?.headers
1422
+ }
551
1423
  });
552
1424
  }
553
1425
  /**
554
- * List your alert digests (newest first)
1426
+ * City volume breakdown across this company's loans
555
1427
  */
556
- static listAlertDigests(options) {
557
- return (options?.client ?? client).get({
1428
+ static cities(options) {
1429
+ return (options.client ?? client).post({
558
1430
  security: [{
559
1431
  name: "x-api-key",
560
1432
  type: "apiKey"
@@ -562,14 +1434,18 @@ var Alerts = class {
562
1434
  scheme: "bearer",
563
1435
  type: "http"
564
1436
  }],
565
- url: "/v1/alerts/digests",
566
- ...options
1437
+ url: "/v1/companies/{nmlsId}/breakdowns/cities",
1438
+ ...options,
1439
+ headers: {
1440
+ "Content-Type": "application/json",
1441
+ ...options?.headers
1442
+ }
567
1443
  });
568
1444
  }
569
1445
  /**
570
- * Mark one digest read
1446
+ * State volume breakdown across this company's loans
571
1447
  */
572
- static markAlertDigestRead(options) {
1448
+ static states(options) {
573
1449
  return (options.client ?? client).post({
574
1450
  security: [{
575
1451
  name: "x-api-key",
@@ -578,18 +1454,19 @@ var Alerts = class {
578
1454
  scheme: "bearer",
579
1455
  type: "http"
580
1456
  }],
581
- url: "/v1/alerts/digests/{id}/read",
582
- ...options
1457
+ url: "/v1/companies/{nmlsId}/breakdowns/states",
1458
+ ...options,
1459
+ headers: {
1460
+ "Content-Type": "application/json",
1461
+ ...options?.headers
1462
+ }
583
1463
  });
584
1464
  }
585
- };
586
- var Branches = class {
587
1465
  /**
588
- * Search branches with filters
589
- * 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.
1466
+ * County (FIPS) volume breakdown across this company's loans
590
1467
  */
591
- static list(options) {
592
- return (options?.client ?? client).post({
1468
+ static counties(options) {
1469
+ return (options.client ?? client).post({
593
1470
  security: [{
594
1471
  name: "x-api-key",
595
1472
  type: "apiKey"
@@ -597,7 +1474,7 @@ var Branches = class {
597
1474
  scheme: "bearer",
598
1475
  type: "http"
599
1476
  }],
600
- url: "/v1/branches",
1477
+ url: "/v1/companies/{nmlsId}/breakdowns/counties",
601
1478
  ...options,
602
1479
  headers: {
603
1480
  "Content-Type": "application/json",
@@ -606,11 +1483,10 @@ var Branches = class {
606
1483
  });
607
1484
  }
608
1485
  /**
609
- * Get branch by NMLS ID
610
- * Retrieve full details for a single NMLS mortgage branch including name, address, parent company, managers, trade names, and licensing.
1486
+ * Analyze LO arrivals and departures for a company
611
1487
  */
612
- static get(options) {
613
- return (options.client ?? client).get({
1488
+ static sponsorshipMovement(options) {
1489
+ return (options.client ?? client).post({
614
1490
  security: [{
615
1491
  name: "x-api-key",
616
1492
  type: "apiKey"
@@ -618,15 +1494,19 @@ var Branches = class {
618
1494
  scheme: "bearer",
619
1495
  type: "http"
620
1496
  }],
621
- url: "/v1/branches/{nmlsId}",
622
- ...options
1497
+ url: "/v1/companies/{nmlsId}/sponsorship-movement",
1498
+ ...options,
1499
+ headers: {
1500
+ "Content-Type": "application/json",
1501
+ ...options?.headers
1502
+ }
623
1503
  });
624
1504
  }
625
1505
  /**
626
- * Submit a bulk-delivery job for branches
627
- * 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.
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.
628
1508
  */
629
- static submitBranchesBulkDelivery(options) {
1509
+ static submitCompaniesBulkDelivery(options) {
630
1510
  return (options?.client ?? client).post({
631
1511
  security: [{
632
1512
  name: "x-api-key",
@@ -635,7 +1515,7 @@ var Branches = class {
635
1515
  scheme: "bearer",
636
1516
  type: "http"
637
1517
  }],
638
- url: "/v1/branches/bulk-delivery",
1518
+ url: "/v1/companies/bulk-delivery",
639
1519
  ...options,
640
1520
  headers: {
641
1521
  "Content-Type": "application/json",
@@ -644,9 +1524,9 @@ var Branches = class {
644
1524
  });
645
1525
  }
646
1526
  /**
647
- * Get bulk-delivery job status for branches
1527
+ * Get bulk-delivery job status for companies
648
1528
  */
649
- static getBranchesBulkDeliveryJob(options) {
1529
+ static getCompaniesBulkDeliveryJob(options) {
650
1530
  return (options.client ?? client).get({
651
1531
  security: [{
652
1532
  name: "x-api-key",
@@ -655,16 +1535,17 @@ var Branches = class {
655
1535
  scheme: "bearer",
656
1536
  type: "http"
657
1537
  }],
658
- url: "/v1/branches/bulk-delivery/{jobId}",
1538
+ url: "/v1/companies/bulk-delivery/{jobId}",
659
1539
  ...options
660
1540
  });
661
1541
  }
662
1542
  };
663
- var Companies = class {
1543
+ var Search = class {
664
1544
  /**
665
- * 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).
666
1547
  */
667
- static list(options) {
1548
+ static instant(options) {
668
1549
  return (options?.client ?? client).post({
669
1550
  security: [{
670
1551
  name: "x-api-key",
@@ -673,7 +1554,7 @@ var Companies = class {
673
1554
  scheme: "bearer",
674
1555
  type: "http"
675
1556
  }],
676
- url: "/v1/companies",
1557
+ url: "/v1/instant-search",
677
1558
  ...options,
678
1559
  headers: {
679
1560
  "Content-Type": "application/json",
@@ -682,10 +1563,11 @@ var Companies = class {
682
1563
  });
683
1564
  }
684
1565
  /**
685
- * 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).
686
1568
  */
687
- static get(options) {
688
- return (options.client ?? client).get({
1569
+ static getSearchToken(options) {
1570
+ return (options?.client ?? client).get({
689
1571
  security: [{
690
1572
  name: "x-api-key",
691
1573
  type: "apiKey"
@@ -693,14 +1575,17 @@ var Companies = class {
693
1575
  scheme: "bearer",
694
1576
  type: "http"
695
1577
  }],
696
- url: "/v1/companies/{nmlsId}",
1578
+ url: "/v1/search-token",
697
1579
  ...options
698
1580
  });
699
1581
  }
1582
+ };
1583
+ var Lenders = class {
700
1584
  /**
701
- * 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.
702
1587
  */
703
- static analyticsSummary(options) {
1588
+ static list(options) {
704
1589
  return (options?.client ?? client).post({
705
1590
  security: [{
706
1591
  name: "x-api-key",
@@ -709,7 +1594,7 @@ var Companies = class {
709
1594
  scheme: "bearer",
710
1595
  type: "http"
711
1596
  }],
712
- url: "/v1/companies/analytics/summary",
1597
+ url: "/v1/lenders",
713
1598
  ...options,
714
1599
  headers: {
715
1600
  "Content-Type": "application/json",
@@ -718,10 +1603,10 @@ var Companies = class {
718
1603
  });
719
1604
  }
720
1605
  /**
721
- * Company volume / units over time
1606
+ * Get lender by ID
722
1607
  */
723
- static analyticsTimeSeries(options) {
724
- return (options?.client ?? client).post({
1608
+ static get(options) {
1609
+ return (options.client ?? client).get({
725
1610
  security: [{
726
1611
  name: "x-api-key",
727
1612
  type: "apiKey"
@@ -729,18 +1614,17 @@ var Companies = class {
729
1614
  scheme: "bearer",
730
1615
  type: "http"
731
1616
  }],
732
- url: "/v1/companies/analytics/time-series",
733
- ...options,
734
- headers: {
735
- "Content-Type": "application/json",
736
- ...options?.headers
737
- }
1617
+ url: "/v1/lenders/{id}",
1618
+ ...options
738
1619
  });
739
1620
  }
1621
+ };
1622
+ var Loans = class {
740
1623
  /**
741
- * 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.)
742
1626
  */
743
- static analyticsChart(options) {
1627
+ static list(options) {
744
1628
  return (options?.client ?? client).post({
745
1629
  security: [{
746
1630
  name: "x-api-key",
@@ -749,7 +1633,7 @@ var Companies = class {
749
1633
  scheme: "bearer",
750
1634
  type: "http"
751
1635
  }],
752
- url: "/v1/companies/analytics/chart",
1636
+ url: "/v1/loans",
753
1637
  ...options,
754
1638
  headers: {
755
1639
  "Content-Type": "application/json",
@@ -758,10 +1642,10 @@ var Companies = class {
758
1642
  });
759
1643
  }
760
1644
  /**
761
- * Loan originators sponsored by this company
1645
+ * Get loan by ID
762
1646
  */
763
- static sponsoredIndividuals(options) {
764
- return (options.client ?? client).post({
1647
+ static get(options) {
1648
+ return (options.client ?? client).get({
765
1649
  security: [{
766
1650
  name: "x-api-key",
767
1651
  type: "apiKey"
@@ -769,19 +1653,15 @@ var Companies = class {
769
1653
  scheme: "bearer",
770
1654
  type: "http"
771
1655
  }],
772
- url: "/v1/companies/{nmlsId}/sponsored-individuals",
773
- ...options,
774
- headers: {
775
- "Content-Type": "application/json",
776
- ...options?.headers
777
- }
1656
+ url: "/v1/loans/{id}",
1657
+ ...options
778
1658
  });
779
1659
  }
780
1660
  /**
781
- * Branch locations for this company
1661
+ * Market summary with previous-period comparison
782
1662
  */
783
- static branches(options) {
784
- return (options.client ?? client).post({
1663
+ static analyticsSummary(options) {
1664
+ return (options?.client ?? client).post({
785
1665
  security: [{
786
1666
  name: "x-api-key",
787
1667
  type: "apiKey"
@@ -789,7 +1669,7 @@ var Companies = class {
789
1669
  scheme: "bearer",
790
1670
  type: "http"
791
1671
  }],
792
- url: "/v1/companies/{nmlsId}/branches",
1672
+ url: "/v1/loans/analytics/summary",
793
1673
  ...options,
794
1674
  headers: {
795
1675
  "Content-Type": "application/json",
@@ -798,10 +1678,10 @@ var Companies = class {
798
1678
  });
799
1679
  }
800
1680
  /**
801
- * Loan officers who originated through this company
1681
+ * Volume / units over time
802
1682
  */
803
- static originators(options) {
804
- return (options.client ?? client).post({
1683
+ static analyticsTimeSeries(options) {
1684
+ return (options?.client ?? client).post({
805
1685
  security: [{
806
1686
  name: "x-api-key",
807
1687
  type: "apiKey"
@@ -809,7 +1689,7 @@ var Companies = class {
809
1689
  scheme: "bearer",
810
1690
  type: "http"
811
1691
  }],
812
- url: "/v1/companies/{nmlsId}/breakdowns/originators",
1692
+ url: "/v1/loans/analytics/time-series",
813
1693
  ...options,
814
1694
  headers: {
815
1695
  "Content-Type": "application/json",
@@ -818,10 +1698,10 @@ var Companies = class {
818
1698
  });
819
1699
  }
820
1700
  /**
821
- * Lenders this company originated through
1701
+ * Configurable chart data (measure × slice)
822
1702
  */
823
- static lenders(options) {
824
- return (options.client ?? client).post({
1703
+ static analyticsChart(options) {
1704
+ return (options?.client ?? client).post({
825
1705
  security: [{
826
1706
  name: "x-api-key",
827
1707
  type: "apiKey"
@@ -829,7 +1709,7 @@ var Companies = class {
829
1709
  scheme: "bearer",
830
1710
  type: "http"
831
1711
  }],
832
- url: "/v1/companies/{nmlsId}/breakdowns/lenders",
1712
+ url: "/v1/loans/analytics/chart",
833
1713
  ...options,
834
1714
  headers: {
835
1715
  "Content-Type": "application/json",
@@ -838,10 +1718,11 @@ var Companies = class {
838
1718
  });
839
1719
  }
840
1720
  /**
841
- * 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.
842
1723
  */
843
- static offices(options) {
844
- return (options.client ?? client).post({
1724
+ static submitLoansBulkDelivery(options) {
1725
+ return (options?.client ?? client).post({
845
1726
  security: [{
846
1727
  name: "x-api-key",
847
1728
  type: "apiKey"
@@ -849,7 +1730,7 @@ var Companies = class {
849
1730
  scheme: "bearer",
850
1731
  type: "http"
851
1732
  }],
852
- url: "/v1/companies/{nmlsId}/breakdowns/offices",
1733
+ url: "/v1/loans/bulk-delivery",
853
1734
  ...options,
854
1735
  headers: {
855
1736
  "Content-Type": "application/json",
@@ -858,10 +1739,10 @@ var Companies = class {
858
1739
  });
859
1740
  }
860
1741
  /**
861
- * City volume breakdown across this company's loans
1742
+ * Get bulk-delivery job status for loans
862
1743
  */
863
- static cities(options) {
864
- return (options.client ?? client).post({
1744
+ static getLoansBulkDeliveryJob(options) {
1745
+ return (options.client ?? client).get({
865
1746
  security: [{
866
1747
  name: "x-api-key",
867
1748
  type: "apiKey"
@@ -869,19 +1750,18 @@ var Companies = class {
869
1750
  scheme: "bearer",
870
1751
  type: "http"
871
1752
  }],
872
- url: "/v1/companies/{nmlsId}/breakdowns/cities",
873
- ...options,
874
- headers: {
875
- "Content-Type": "application/json",
876
- ...options?.headers
877
- }
1753
+ url: "/v1/loans/bulk-delivery/{jobId}",
1754
+ ...options
878
1755
  });
879
1756
  }
1757
+ };
1758
+ var Locations = class {
880
1759
  /**
881
- * 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.
882
1762
  */
883
- static states(options) {
884
- return (options.client ?? client).post({
1763
+ static suggest(options) {
1764
+ return (options.client ?? client).get({
885
1765
  security: [{
886
1766
  name: "x-api-key",
887
1767
  type: "apiKey"
@@ -889,19 +1769,16 @@ var Companies = class {
889
1769
  scheme: "bearer",
890
1770
  type: "http"
891
1771
  }],
892
- url: "/v1/companies/{nmlsId}/breakdowns/states",
893
- ...options,
894
- headers: {
895
- "Content-Type": "application/json",
896
- ...options?.headers
897
- }
1772
+ url: "/v1/locations/suggest",
1773
+ ...options
898
1774
  });
899
1775
  }
900
1776
  /**
901
- * 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.
902
1779
  */
903
- static counties(options) {
904
- return (options.client ?? client).post({
1780
+ static retrieve(options) {
1781
+ return (options.client ?? client).get({
905
1782
  security: [{
906
1783
  name: "x-api-key",
907
1784
  type: "apiKey"
@@ -909,19 +1786,18 @@ var Companies = class {
909
1786
  scheme: "bearer",
910
1787
  type: "http"
911
1788
  }],
912
- url: "/v1/companies/{nmlsId}/breakdowns/counties",
913
- ...options,
914
- headers: {
915
- "Content-Type": "application/json",
916
- ...options?.headers
917
- }
1789
+ url: "/v1/locations/retrieve/{mapboxId}",
1790
+ ...options
918
1791
  });
919
1792
  }
1793
+ };
1794
+ var Market = class {
920
1795
  /**
921
- * 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.
922
1798
  */
923
- static sponsorshipMovement(options) {
924
- return (options.client ?? client).post({
1799
+ static list(options) {
1800
+ return (options?.client ?? client).post({
925
1801
  security: [{
926
1802
  name: "x-api-key",
927
1803
  type: "apiKey"
@@ -929,7 +1805,7 @@ var Companies = class {
929
1805
  scheme: "bearer",
930
1806
  type: "http"
931
1807
  }],
932
- url: "/v1/companies/{nmlsId}/sponsorship-movement",
1808
+ url: "/v1/market",
933
1809
  ...options,
934
1810
  headers: {
935
1811
  "Content-Type": "application/json",
@@ -938,10 +1814,9 @@ var Companies = class {
938
1814
  });
939
1815
  }
940
1816
  /**
941
- * Submit a bulk-delivery job for companies
942
- * 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
943
1818
  */
944
- static submitCompaniesBulkDelivery(options) {
1819
+ static analyticsSummary(options) {
945
1820
  return (options?.client ?? client).post({
946
1821
  security: [{
947
1822
  name: "x-api-key",
@@ -950,7 +1825,7 @@ var Companies = class {
950
1825
  scheme: "bearer",
951
1826
  type: "http"
952
1827
  }],
953
- url: "/v1/companies/bulk-delivery",
1828
+ url: "/v1/market/analytics/summary",
954
1829
  ...options,
955
1830
  headers: {
956
1831
  "Content-Type": "application/json",
@@ -959,10 +1834,10 @@ var Companies = class {
959
1834
  });
960
1835
  }
961
1836
  /**
962
- * Get bulk-delivery job status for companies
1837
+ * Market metrics over time
963
1838
  */
964
- static getCompaniesBulkDeliveryJob(options) {
965
- return (options.client ?? client).get({
1839
+ static analyticsTimeSeries(options) {
1840
+ return (options?.client ?? client).post({
966
1841
  security: [{
967
1842
  name: "x-api-key",
968
1843
  type: "apiKey"
@@ -970,17 +1845,18 @@ var Companies = class {
970
1845
  scheme: "bearer",
971
1846
  type: "http"
972
1847
  }],
973
- url: "/v1/companies/bulk-delivery/{jobId}",
974
- ...options
1848
+ url: "/v1/market/analytics/time-series",
1849
+ ...options,
1850
+ headers: {
1851
+ "Content-Type": "application/json",
1852
+ ...options?.headers
1853
+ }
975
1854
  });
976
1855
  }
977
- };
978
- var Search = class {
979
1856
  /**
980
- * Instant multi-entity typeahead search
981
- * 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
982
1858
  */
983
- static instant(options) {
1859
+ static analyticsChart(options) {
984
1860
  return (options?.client ?? client).post({
985
1861
  security: [{
986
1862
  name: "x-api-key",
@@ -989,7 +1865,7 @@ var Search = class {
989
1865
  scheme: "bearer",
990
1866
  type: "http"
991
1867
  }],
992
- url: "/v1/instant-search",
1868
+ url: "/v1/market/analytics/chart",
993
1869
  ...options,
994
1870
  headers: {
995
1871
  "Content-Type": "application/json",
@@ -997,12 +1873,13 @@ var Search = class {
997
1873
  }
998
1874
  });
999
1875
  }
1876
+ };
1877
+ var Offices = class {
1000
1878
  /**
1001
- * Mint a scoped search token
1002
- * 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
1003
1880
  */
1004
- static getSearchToken(options) {
1005
- return (options?.client ?? client).get({
1881
+ static agents(options) {
1882
+ return (options?.client ?? client).post({
1006
1883
  security: [{
1007
1884
  name: "x-api-key",
1008
1885
  type: "apiKey"
@@ -1010,14 +1887,17 @@ var Search = class {
1010
1887
  scheme: "bearer",
1011
1888
  type: "http"
1012
1889
  }],
1013
- url: "/v1/search-token",
1014
- ...options
1890
+ url: "/v1/offices/agents",
1891
+ ...options,
1892
+ headers: {
1893
+ "Content-Type": "application/json",
1894
+ ...options?.headers
1895
+ }
1015
1896
  });
1016
1897
  }
1017
- };
1018
- var Lenders = class {
1019
1898
  /**
1020
- * 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.
1021
1901
  */
1022
1902
  static list(options) {
1023
1903
  return (options?.client ?? client).post({
@@ -1028,7 +1908,7 @@ var Lenders = class {
1028
1908
  scheme: "bearer",
1029
1909
  type: "http"
1030
1910
  }],
1031
- url: "/v1/lenders",
1911
+ url: "/v1/offices",
1032
1912
  ...options,
1033
1913
  headers: {
1034
1914
  "Content-Type": "application/json",
@@ -1037,7 +1917,7 @@ var Lenders = class {
1037
1917
  });
1038
1918
  }
1039
1919
  /**
1040
- * Get lender by ID
1920
+ * Get office by key with office-level production
1041
1921
  */
1042
1922
  static get(options) {
1043
1923
  return (options.client ?? client).get({
@@ -1048,14 +1928,15 @@ var Lenders = class {
1048
1928
  scheme: "bearer",
1049
1929
  type: "http"
1050
1930
  }],
1051
- url: "/v1/lenders/{id}",
1931
+ url: "/v1/offices/{id}",
1052
1932
  ...options
1053
1933
  });
1054
1934
  }
1055
1935
  };
1056
- var Loans = class {
1936
+ var Originators = class {
1057
1937
  /**
1058
- * 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.)
1059
1940
  */
1060
1941
  static list(options) {
1061
1942
  return (options?.client ?? client).post({
@@ -1066,7 +1947,7 @@ var Loans = class {
1066
1947
  scheme: "bearer",
1067
1948
  type: "http"
1068
1949
  }],
1069
- url: "/v1/loans",
1950
+ url: "/v1/originators",
1070
1951
  ...options,
1071
1952
  headers: {
1072
1953
  "Content-Type": "application/json",
@@ -1075,7 +1956,7 @@ var Loans = class {
1075
1956
  });
1076
1957
  }
1077
1958
  /**
1078
- * Get loan by ID
1959
+ * Get originator by NMLS ID
1079
1960
  */
1080
1961
  static get(options) {
1081
1962
  return (options.client ?? client).get({
@@ -1086,12 +1967,12 @@ var Loans = class {
1086
1967
  scheme: "bearer",
1087
1968
  type: "http"
1088
1969
  }],
1089
- url: "/v1/loans/{id}",
1970
+ url: "/v1/originators/{nmlsId}",
1090
1971
  ...options
1091
1972
  });
1092
1973
  }
1093
1974
  /**
1094
- * Market summary with previous-period comparison
1975
+ * Production summary with previous-period comparison
1095
1976
  */
1096
1977
  static analyticsSummary(options) {
1097
1978
  return (options?.client ?? client).post({
@@ -1102,7 +1983,7 @@ var Loans = class {
1102
1983
  scheme: "bearer",
1103
1984
  type: "http"
1104
1985
  }],
1105
- url: "/v1/loans/analytics/summary",
1986
+ url: "/v1/originators/analytics/summary",
1106
1987
  ...options,
1107
1988
  headers: {
1108
1989
  "Content-Type": "application/json",
@@ -1111,7 +1992,7 @@ var Loans = class {
1111
1992
  });
1112
1993
  }
1113
1994
  /**
1114
- * Volume / units over time
1995
+ * Originator volume / units over time
1115
1996
  */
1116
1997
  static analyticsTimeSeries(options) {
1117
1998
  return (options?.client ?? client).post({
@@ -1122,7 +2003,7 @@ var Loans = class {
1122
2003
  scheme: "bearer",
1123
2004
  type: "http"
1124
2005
  }],
1125
- url: "/v1/loans/analytics/time-series",
2006
+ url: "/v1/originators/analytics/time-series",
1126
2007
  ...options,
1127
2008
  headers: {
1128
2009
  "Content-Type": "application/json",
@@ -1131,7 +2012,7 @@ var Loans = class {
1131
2012
  });
1132
2013
  }
1133
2014
  /**
1134
- * Configurable chart data (measure × slice)
2015
+ * Configurable chart (measure × slice) over one LO's loans
1135
2016
  */
1136
2017
  static analyticsChart(options) {
1137
2018
  return (options?.client ?? client).post({
@@ -1142,7 +2023,7 @@ var Loans = class {
1142
2023
  scheme: "bearer",
1143
2024
  type: "http"
1144
2025
  }],
1145
- url: "/v1/loans/analytics/chart",
2026
+ url: "/v1/originators/analytics/chart",
1146
2027
  ...options,
1147
2028
  headers: {
1148
2029
  "Content-Type": "application/json",
@@ -1151,11 +2032,10 @@ var Loans = class {
1151
2032
  });
1152
2033
  }
1153
2034
  /**
1154
- * Submit a bulk-delivery job for loans
1155
- * 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
1156
2036
  */
1157
- static submitLoansBulkDelivery(options) {
1158
- return (options?.client ?? client).post({
2037
+ static loans(options) {
2038
+ return (options.client ?? client).post({
1159
2039
  security: [{
1160
2040
  name: "x-api-key",
1161
2041
  type: "apiKey"
@@ -1163,7 +2043,7 @@ var Loans = class {
1163
2043
  scheme: "bearer",
1164
2044
  type: "http"
1165
2045
  }],
1166
- url: "/v1/loans/bulk-delivery",
2046
+ url: "/v1/originators/{nmlsId}/loans",
1167
2047
  ...options,
1168
2048
  headers: {
1169
2049
  "Content-Type": "application/json",
@@ -1172,10 +2052,10 @@ var Loans = class {
1172
2052
  });
1173
2053
  }
1174
2054
  /**
1175
- * Get bulk-delivery job status for loans
2055
+ * Real-estate agents this LO co-closed with
1176
2056
  */
1177
- static getLoansBulkDeliveryJob(options) {
1178
- return (options.client ?? client).get({
2057
+ static agents(options) {
2058
+ return (options.client ?? client).post({
1179
2059
  security: [{
1180
2060
  name: "x-api-key",
1181
2061
  type: "apiKey"
@@ -1183,18 +2063,19 @@ var Loans = class {
1183
2063
  scheme: "bearer",
1184
2064
  type: "http"
1185
2065
  }],
1186
- url: "/v1/loans/bulk-delivery/{jobId}",
1187
- ...options
2066
+ url: "/v1/originators/{nmlsId}/breakdowns/agents",
2067
+ ...options,
2068
+ headers: {
2069
+ "Content-Type": "application/json",
2070
+ ...options?.headers
2071
+ }
1188
2072
  });
1189
2073
  }
1190
- };
1191
- var Locations = class {
1192
2074
  /**
1193
- * Autocomplete location search
1194
- * 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
1195
2076
  */
1196
- static suggest(options) {
1197
- return (options.client ?? client).get({
2077
+ static companies(options) {
2078
+ return (options.client ?? client).post({
1198
2079
  security: [{
1199
2080
  name: "x-api-key",
1200
2081
  type: "apiKey"
@@ -1202,16 +2083,19 @@ var Locations = class {
1202
2083
  scheme: "bearer",
1203
2084
  type: "http"
1204
2085
  }],
1205
- url: "/v1/locations/suggest",
1206
- ...options
2086
+ url: "/v1/originators/{nmlsId}/breakdowns/companies",
2087
+ ...options,
2088
+ headers: {
2089
+ "Content-Type": "application/json",
2090
+ ...options?.headers
2091
+ }
1207
2092
  });
1208
2093
  }
1209
2094
  /**
1210
- * Retrieve normalized location details
1211
- * 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
1212
2096
  */
1213
- static retrieve(options) {
1214
- return (options.client ?? client).get({
2097
+ static lenders(options) {
2098
+ return (options.client ?? client).post({
1215
2099
  security: [{
1216
2100
  name: "x-api-key",
1217
2101
  type: "apiKey"
@@ -1219,18 +2103,19 @@ var Locations = class {
1219
2103
  scheme: "bearer",
1220
2104
  type: "http"
1221
2105
  }],
1222
- url: "/v1/locations/retrieve/{mapboxId}",
1223
- ...options
2106
+ url: "/v1/originators/{nmlsId}/breakdowns/lenders",
2107
+ ...options,
2108
+ headers: {
2109
+ "Content-Type": "application/json",
2110
+ ...options?.headers
2111
+ }
1224
2112
  });
1225
2113
  }
1226
- };
1227
- var Market = class {
1228
2114
  /**
1229
- * Search aggregated market data with filters
1230
- * 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
1231
2116
  */
1232
- static list(options) {
1233
- return (options?.client ?? client).post({
2117
+ static zipCodes(options) {
2118
+ return (options.client ?? client).post({
1234
2119
  security: [{
1235
2120
  name: "x-api-key",
1236
2121
  type: "apiKey"
@@ -1238,7 +2123,7 @@ var Market = class {
1238
2123
  scheme: "bearer",
1239
2124
  type: "http"
1240
2125
  }],
1241
- url: "/v1/market",
2126
+ url: "/v1/originators/{nmlsId}/breakdowns/zip-codes",
1242
2127
  ...options,
1243
2128
  headers: {
1244
2129
  "Content-Type": "application/json",
@@ -1247,10 +2132,10 @@ var Market = class {
1247
2132
  });
1248
2133
  }
1249
2134
  /**
1250
- * Market summary (volume, units, rate, loan amount, credit score, LTV, DTI, income, etc.) with previous-period comparison
2135
+ * Branch (broker) history for this LO
1251
2136
  */
1252
- static analyticsSummary(options) {
1253
- return (options?.client ?? client).post({
2137
+ static branches(options) {
2138
+ return (options.client ?? client).post({
1254
2139
  security: [{
1255
2140
  name: "x-api-key",
1256
2141
  type: "apiKey"
@@ -1258,7 +2143,7 @@ var Market = class {
1258
2143
  scheme: "bearer",
1259
2144
  type: "http"
1260
2145
  }],
1261
- url: "/v1/market/analytics/summary",
2146
+ url: "/v1/originators/{nmlsId}/breakdowns/branches",
1262
2147
  ...options,
1263
2148
  headers: {
1264
2149
  "Content-Type": "application/json",
@@ -1267,10 +2152,10 @@ var Market = class {
1267
2152
  });
1268
2153
  }
1269
2154
  /**
1270
- * Market metrics over time
2155
+ * Real-estate offices this LO closed through (with sponsoring company)
1271
2156
  */
1272
- static analyticsTimeSeries(options) {
1273
- return (options?.client ?? client).post({
2157
+ static offices(options) {
2158
+ return (options.client ?? client).post({
1274
2159
  security: [{
1275
2160
  name: "x-api-key",
1276
2161
  type: "apiKey"
@@ -1278,7 +2163,7 @@ var Market = class {
1278
2163
  scheme: "bearer",
1279
2164
  type: "http"
1280
2165
  }],
1281
- url: "/v1/market/analytics/time-series",
2166
+ url: "/v1/originators/{nmlsId}/breakdowns/offices",
1282
2167
  ...options,
1283
2168
  headers: {
1284
2169
  "Content-Type": "application/json",
@@ -1287,10 +2172,10 @@ var Market = class {
1287
2172
  });
1288
2173
  }
1289
2174
  /**
1290
- * Market measure by dimension breakdown
2175
+ * Per-city volume breakdown (pre-aggregated)
1291
2176
  */
1292
- static analyticsChart(options) {
1293
- return (options?.client ?? client).post({
2177
+ static citiesBreakdown(options) {
2178
+ return (options.client ?? client).post({
1294
2179
  security: [{
1295
2180
  name: "x-api-key",
1296
2181
  type: "apiKey"
@@ -1298,7 +2183,7 @@ var Market = class {
1298
2183
  scheme: "bearer",
1299
2184
  type: "http"
1300
2185
  }],
1301
- url: "/v1/market/analytics/chart",
2186
+ url: "/v1/originators/{nmlsId}/breakdowns/cities",
1302
2187
  ...options,
1303
2188
  headers: {
1304
2189
  "Content-Type": "application/json",
@@ -1306,13 +2191,11 @@ var Market = class {
1306
2191
  }
1307
2192
  });
1308
2193
  }
1309
- };
1310
- var Offices = class {
1311
2194
  /**
1312
- * Agents at an office
2195
+ * Per-county volume breakdown (pre-aggregated)
1313
2196
  */
1314
- static agents(options) {
1315
- return (options?.client ?? client).post({
2197
+ static countiesBreakdown(options) {
2198
+ return (options.client ?? client).post({
1316
2199
  security: [{
1317
2200
  name: "x-api-key",
1318
2201
  type: "apiKey"
@@ -1320,7 +2203,7 @@ var Offices = class {
1320
2203
  scheme: "bearer",
1321
2204
  type: "http"
1322
2205
  }],
1323
- url: "/v1/offices/agents",
2206
+ url: "/v1/originators/{nmlsId}/breakdowns/counties",
1324
2207
  ...options,
1325
2208
  headers: {
1326
2209
  "Content-Type": "application/json",
@@ -1329,10 +2212,30 @@ var Offices = class {
1329
2212
  });
1330
2213
  }
1331
2214
  /**
1332
- * Search real-estate offices with filters
1333
- * 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)
1334
2216
  */
1335
- 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) {
1336
2239
  return (options?.client ?? client).post({
1337
2240
  security: [{
1338
2241
  name: "x-api-key",
@@ -1341,7 +2244,7 @@ var Offices = class {
1341
2244
  scheme: "bearer",
1342
2245
  type: "http"
1343
2246
  }],
1344
- url: "/v1/offices",
2247
+ url: "/v1/originators/bulk-delivery",
1345
2248
  ...options,
1346
2249
  headers: {
1347
2250
  "Content-Type": "application/json",
@@ -1350,9 +2253,9 @@ var Offices = class {
1350
2253
  });
1351
2254
  }
1352
2255
  /**
1353
- * Get office by ID with best-effort production enrichment
2256
+ * Get bulk-delivery job status for originators
1354
2257
  */
1355
- static get(options) {
2258
+ static getOriginatorsBulkDeliveryJob(options) {
1356
2259
  return (options.client ?? client).get({
1357
2260
  security: [{
1358
2261
  name: "x-api-key",
@@ -1361,16 +2264,15 @@ var Offices = class {
1361
2264
  scheme: "bearer",
1362
2265
  type: "http"
1363
2266
  }],
1364
- url: "/v1/offices/{id}",
2267
+ url: "/v1/originators/bulk-delivery/{jobId}",
1365
2268
  ...options
1366
2269
  });
1367
2270
  }
1368
- };
1369
- var Originators = class {
1370
2271
  /**
1371
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.)
1372
2274
  */
1373
- static list(options) {
2275
+ static listOriginators2(options) {
1374
2276
  return (options?.client ?? client).post({
1375
2277
  security: [{
1376
2278
  name: "x-api-key",
@@ -1379,7 +2281,7 @@ var Originators = class {
1379
2281
  scheme: "bearer",
1380
2282
  type: "http"
1381
2283
  }],
1382
- url: "/v1/originators",
2284
+ url: "/originators",
1383
2285
  ...options,
1384
2286
  headers: {
1385
2287
  "Content-Type": "application/json",
@@ -1390,7 +2292,7 @@ var Originators = class {
1390
2292
  /**
1391
2293
  * Get originator by NMLS ID
1392
2294
  */
1393
- static get(options) {
2295
+ static getOriginator2(options) {
1394
2296
  return (options.client ?? client).get({
1395
2297
  security: [{
1396
2298
  name: "x-api-key",
@@ -1399,14 +2301,14 @@ var Originators = class {
1399
2301
  scheme: "bearer",
1400
2302
  type: "http"
1401
2303
  }],
1402
- url: "/v1/originators/{nmlsId}",
2304
+ url: "/originators/{nmlsId}",
1403
2305
  ...options
1404
2306
  });
1405
2307
  }
1406
2308
  /**
1407
2309
  * Production summary with previous-period comparison
1408
2310
  */
1409
- static analyticsSummary(options) {
2311
+ static analyticsSummary2(options) {
1410
2312
  return (options?.client ?? client).post({
1411
2313
  security: [{
1412
2314
  name: "x-api-key",
@@ -1415,7 +2317,7 @@ var Originators = class {
1415
2317
  scheme: "bearer",
1416
2318
  type: "http"
1417
2319
  }],
1418
- url: "/v1/originators/analytics/summary",
2320
+ url: "/originators/analytics/summary",
1419
2321
  ...options,
1420
2322
  headers: {
1421
2323
  "Content-Type": "application/json",
@@ -1426,7 +2328,7 @@ var Originators = class {
1426
2328
  /**
1427
2329
  * Originator volume / units over time
1428
2330
  */
1429
- static analyticsTimeSeries(options) {
2331
+ static analyticsTimeSeries2(options) {
1430
2332
  return (options?.client ?? client).post({
1431
2333
  security: [{
1432
2334
  name: "x-api-key",
@@ -1435,7 +2337,7 @@ var Originators = class {
1435
2337
  scheme: "bearer",
1436
2338
  type: "http"
1437
2339
  }],
1438
- url: "/v1/originators/analytics/time-series",
2340
+ url: "/originators/analytics/time-series",
1439
2341
  ...options,
1440
2342
  headers: {
1441
2343
  "Content-Type": "application/json",
@@ -1446,7 +2348,7 @@ var Originators = class {
1446
2348
  /**
1447
2349
  * Configurable chart (measure × slice) over one LO's loans
1448
2350
  */
1449
- static analyticsChart(options) {
2351
+ static analyticsChart2(options) {
1450
2352
  return (options?.client ?? client).post({
1451
2353
  security: [{
1452
2354
  name: "x-api-key",
@@ -1455,7 +2357,7 @@ var Originators = class {
1455
2357
  scheme: "bearer",
1456
2358
  type: "http"
1457
2359
  }],
1458
- url: "/v1/originators/analytics/chart",
2360
+ url: "/originators/analytics/chart",
1459
2361
  ...options,
1460
2362
  headers: {
1461
2363
  "Content-Type": "application/json",
@@ -1466,7 +2368,7 @@ var Originators = class {
1466
2368
  /**
1467
2369
  * Loans originated by this LO
1468
2370
  */
1469
- static loans(options) {
2371
+ static loans2(options) {
1470
2372
  return (options.client ?? client).post({
1471
2373
  security: [{
1472
2374
  name: "x-api-key",
@@ -1475,7 +2377,7 @@ var Originators = class {
1475
2377
  scheme: "bearer",
1476
2378
  type: "http"
1477
2379
  }],
1478
- url: "/v1/originators/{nmlsId}/loans",
2380
+ url: "/originators/{nmlsId}/loans",
1479
2381
  ...options,
1480
2382
  headers: {
1481
2383
  "Content-Type": "application/json",
@@ -1486,7 +2388,7 @@ var Originators = class {
1486
2388
  /**
1487
2389
  * Real-estate agents this LO co-closed with
1488
2390
  */
1489
- static agents(options) {
2391
+ static agents2(options) {
1490
2392
  return (options.client ?? client).post({
1491
2393
  security: [{
1492
2394
  name: "x-api-key",
@@ -1495,7 +2397,7 @@ var Originators = class {
1495
2397
  scheme: "bearer",
1496
2398
  type: "http"
1497
2399
  }],
1498
- url: "/v1/originators/{nmlsId}/breakdowns/agents",
2400
+ url: "/originators/{nmlsId}/breakdowns/agents",
1499
2401
  ...options,
1500
2402
  headers: {
1501
2403
  "Content-Type": "application/json",
@@ -1506,7 +2408,7 @@ var Originators = class {
1506
2408
  /**
1507
2409
  * Funding companies (employer history) for this LO
1508
2410
  */
1509
- static companies(options) {
2411
+ static companies2(options) {
1510
2412
  return (options.client ?? client).post({
1511
2413
  security: [{
1512
2414
  name: "x-api-key",
@@ -1515,7 +2417,7 @@ var Originators = class {
1515
2417
  scheme: "bearer",
1516
2418
  type: "http"
1517
2419
  }],
1518
- url: "/v1/originators/{nmlsId}/breakdowns/companies",
2420
+ url: "/originators/{nmlsId}/breakdowns/companies",
1519
2421
  ...options,
1520
2422
  headers: {
1521
2423
  "Content-Type": "application/json",
@@ -1526,7 +2428,7 @@ var Originators = class {
1526
2428
  /**
1527
2429
  * Lenders this LO has originated through
1528
2430
  */
1529
- static lenders(options) {
2431
+ static lenders2(options) {
1530
2432
  return (options.client ?? client).post({
1531
2433
  security: [{
1532
2434
  name: "x-api-key",
@@ -1535,7 +2437,7 @@ var Originators = class {
1535
2437
  scheme: "bearer",
1536
2438
  type: "http"
1537
2439
  }],
1538
- url: "/v1/originators/{nmlsId}/breakdowns/lenders",
2440
+ url: "/originators/{nmlsId}/breakdowns/lenders",
1539
2441
  ...options,
1540
2442
  headers: {
1541
2443
  "Content-Type": "application/json",
@@ -1546,7 +2448,7 @@ var Originators = class {
1546
2448
  /**
1547
2449
  * Zip-code volume breakdown
1548
2450
  */
1549
- static zipCodes(options) {
2451
+ static zipCodes2(options) {
1550
2452
  return (options.client ?? client).post({
1551
2453
  security: [{
1552
2454
  name: "x-api-key",
@@ -1555,7 +2457,7 @@ var Originators = class {
1555
2457
  scheme: "bearer",
1556
2458
  type: "http"
1557
2459
  }],
1558
- url: "/v1/originators/{nmlsId}/breakdowns/zip-codes",
2460
+ url: "/originators/{nmlsId}/breakdowns/zip-codes",
1559
2461
  ...options,
1560
2462
  headers: {
1561
2463
  "Content-Type": "application/json",
@@ -1566,7 +2468,7 @@ var Originators = class {
1566
2468
  /**
1567
2469
  * Branch (broker) history for this LO
1568
2470
  */
1569
- static branches(options) {
2471
+ static branches2(options) {
1570
2472
  return (options.client ?? client).post({
1571
2473
  security: [{
1572
2474
  name: "x-api-key",
@@ -1575,7 +2477,7 @@ var Originators = class {
1575
2477
  scheme: "bearer",
1576
2478
  type: "http"
1577
2479
  }],
1578
- url: "/v1/originators/{nmlsId}/breakdowns/branches",
2480
+ url: "/originators/{nmlsId}/breakdowns/branches",
1579
2481
  ...options,
1580
2482
  headers: {
1581
2483
  "Content-Type": "application/json",
@@ -1586,7 +2488,7 @@ var Originators = class {
1586
2488
  /**
1587
2489
  * Real-estate offices this LO closed through (with sponsoring company)
1588
2490
  */
1589
- static offices(options) {
2491
+ static offices2(options) {
1590
2492
  return (options.client ?? client).post({
1591
2493
  security: [{
1592
2494
  name: "x-api-key",
@@ -1595,7 +2497,7 @@ var Originators = class {
1595
2497
  scheme: "bearer",
1596
2498
  type: "http"
1597
2499
  }],
1598
- url: "/v1/originators/{nmlsId}/breakdowns/offices",
2500
+ url: "/originators/{nmlsId}/breakdowns/offices",
1599
2501
  ...options,
1600
2502
  headers: {
1601
2503
  "Content-Type": "application/json",
@@ -1606,7 +2508,7 @@ var Originators = class {
1606
2508
  /**
1607
2509
  * Per-city volume breakdown (pre-aggregated)
1608
2510
  */
1609
- static citiesBreakdown(options) {
2511
+ static citiesBreakdown2(options) {
1610
2512
  return (options.client ?? client).post({
1611
2513
  security: [{
1612
2514
  name: "x-api-key",
@@ -1615,7 +2517,7 @@ var Originators = class {
1615
2517
  scheme: "bearer",
1616
2518
  type: "http"
1617
2519
  }],
1618
- url: "/v1/originators/{nmlsId}/breakdowns/cities",
2520
+ url: "/originators/{nmlsId}/breakdowns/cities",
1619
2521
  ...options,
1620
2522
  headers: {
1621
2523
  "Content-Type": "application/json",
@@ -1626,7 +2528,7 @@ var Originators = class {
1626
2528
  /**
1627
2529
  * Per-county volume breakdown (pre-aggregated)
1628
2530
  */
1629
- static countiesBreakdown(options) {
2531
+ static countiesBreakdown2(options) {
1630
2532
  return (options.client ?? client).post({
1631
2533
  security: [{
1632
2534
  name: "x-api-key",
@@ -1635,7 +2537,7 @@ var Originators = class {
1635
2537
  scheme: "bearer",
1636
2538
  type: "http"
1637
2539
  }],
1638
- url: "/v1/originators/{nmlsId}/breakdowns/counties",
2540
+ url: "/originators/{nmlsId}/breakdowns/counties",
1639
2541
  ...options,
1640
2542
  headers: {
1641
2543
  "Content-Type": "application/json",
@@ -1646,7 +2548,7 @@ var Originators = class {
1646
2548
  /**
1647
2549
  * Per-state volume breakdown (pre-aggregated)
1648
2550
  */
1649
- static statesBreakdown(options) {
2551
+ static statesBreakdown2(options) {
1650
2552
  return (options.client ?? client).post({
1651
2553
  security: [{
1652
2554
  name: "x-api-key",
@@ -1655,7 +2557,7 @@ var Originators = class {
1655
2557
  scheme: "bearer",
1656
2558
  type: "http"
1657
2559
  }],
1658
- url: "/v1/originators/{nmlsId}/breakdowns/states",
2560
+ url: "/originators/{nmlsId}/breakdowns/states",
1659
2561
  ...options,
1660
2562
  headers: {
1661
2563
  "Content-Type": "application/json",
@@ -1667,7 +2569,7 @@ var Originators = class {
1667
2569
  * Submit a bulk-delivery job for originators
1668
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.
1669
2571
  */
1670
- static submitOriginatorsBulkDelivery(options) {
2572
+ static submitOriginatorsBulkDelivery2(options) {
1671
2573
  return (options?.client ?? client).post({
1672
2574
  security: [{
1673
2575
  name: "x-api-key",
@@ -1676,7 +2578,7 @@ var Originators = class {
1676
2578
  scheme: "bearer",
1677
2579
  type: "http"
1678
2580
  }],
1679
- url: "/v1/originators/bulk-delivery",
2581
+ url: "/originators/bulk-delivery",
1680
2582
  ...options,
1681
2583
  headers: {
1682
2584
  "Content-Type": "application/json",
@@ -1687,7 +2589,7 @@ var Originators = class {
1687
2589
  /**
1688
2590
  * Get bulk-delivery job status for originators
1689
2591
  */
1690
- static getOriginatorsBulkDeliveryJob(options) {
2592
+ static getOriginatorsBulkDeliveryJob2(options) {
1691
2593
  return (options.client ?? client).get({
1692
2594
  security: [{
1693
2595
  name: "x-api-key",
@@ -1696,7 +2598,7 @@ var Originators = class {
1696
2598
  scheme: "bearer",
1697
2599
  type: "http"
1698
2600
  }],
1699
- url: "/v1/originators/bulk-delivery/{jobId}",
2601
+ url: "/originators/bulk-delivery/{jobId}",
1700
2602
  ...options
1701
2603
  });
1702
2604
  }
@@ -1736,6 +2638,27 @@ var Properties = class {
1736
2638
  });
1737
2639
  }
1738
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
+ /**
1739
2662
  * Submit a bulk skip-trace job
1740
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.
1741
2664
  */
@@ -1774,6 +2697,7 @@ var Properties = class {
1774
2697
  }
1775
2698
  /**
1776
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.)
1777
2701
  */
1778
2702
  static list(options) {
1779
2703
  return (options?.client ?? client).post({
@@ -1908,6 +2832,7 @@ var Realtime = class {
1908
2832
  var Sales = class {
1909
2833
  /**
1910
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.
1911
2836
  */
1912
2837
  static list(options) {
1913
2838
  return (options?.client ?? client).post({
@@ -2041,4 +2966,4 @@ function createClient$1(config = {}) {
2041
2966
  };
2042
2967
  }
2043
2968
  //#endregion
2044
- export { client as _, Branches as a, Loans as c, Offices as d, Originators as f, Search as g, Sales as h, Alerts as i, Locations as l, Realtime 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 };