@model-match/api 3.6.1 → 3.8.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.
@@ -0,0 +1,4642 @@
1
+ import { createClient, createClient as createApiClient, createConfig } from "@hey-api/client-fetch";
2
+ //#region src/runtime-config.ts
3
+ const createClientConfig = (config) => ({
4
+ ...config,
5
+ throwOnError: true,
6
+ baseUrl: config?.baseUrl ?? (typeof process === "undefined" ? void 0 : process.env?.MMR_API_URL) ?? "http://localhost:3001"
7
+ });
8
+ //#endregion
9
+ //#region src/client.gen.ts
10
+ const client = createClient(createClientConfig(createConfig()));
11
+ //#endregion
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 Agents = class {
33
+ /**
34
+ * Search agents with filters
35
+ * 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.)
36
+ */
37
+ static list(options) {
38
+ return (options?.client ?? client).post({
39
+ security: [{
40
+ name: "x-api-key",
41
+ type: "apiKey"
42
+ }, {
43
+ scheme: "bearer",
44
+ type: "http"
45
+ }],
46
+ url: "/v1/agents",
47
+ ...options,
48
+ headers: {
49
+ "Content-Type": "application/json",
50
+ ...options?.headers
51
+ }
52
+ });
53
+ }
54
+ /**
55
+ * Get agent by ID
56
+ */
57
+ static get(options) {
58
+ return (options.client ?? client).get({
59
+ security: [{
60
+ name: "x-api-key",
61
+ type: "apiKey"
62
+ }, {
63
+ scheme: "bearer",
64
+ type: "http"
65
+ }],
66
+ url: "/v1/agents/{id}",
67
+ ...options
68
+ });
69
+ }
70
+ /**
71
+ * Production summary with buyer/seller/dual split + previous period
72
+ */
73
+ static analyticsSummary(options) {
74
+ return (options?.client ?? client).post({
75
+ security: [{
76
+ name: "x-api-key",
77
+ type: "apiKey"
78
+ }, {
79
+ scheme: "bearer",
80
+ type: "http"
81
+ }],
82
+ url: "/v1/agents/analytics/summary",
83
+ ...options,
84
+ headers: {
85
+ "Content-Type": "application/json",
86
+ ...options?.headers
87
+ }
88
+ });
89
+ }
90
+ /**
91
+ * Agent volume/units over time with buyer/seller/dual split
92
+ */
93
+ static analyticsTimeSeries(options) {
94
+ return (options?.client ?? client).post({
95
+ security: [{
96
+ name: "x-api-key",
97
+ type: "apiKey"
98
+ }, {
99
+ scheme: "bearer",
100
+ type: "http"
101
+ }],
102
+ url: "/v1/agents/analytics/time-series",
103
+ ...options,
104
+ headers: {
105
+ "Content-Type": "application/json",
106
+ ...options?.headers
107
+ }
108
+ });
109
+ }
110
+ /**
111
+ * Configurable chart (measure × slice) over the agent's sales
112
+ */
113
+ static analyticsChart(options) {
114
+ return (options?.client ?? client).post({
115
+ security: [{
116
+ name: "x-api-key",
117
+ type: "apiKey"
118
+ }, {
119
+ scheme: "bearer",
120
+ type: "http"
121
+ }],
122
+ url: "/v1/agents/analytics/chart",
123
+ ...options,
124
+ headers: {
125
+ "Content-Type": "application/json",
126
+ ...options?.headers
127
+ }
128
+ });
129
+ }
130
+ /**
131
+ * Sales transactions where this agent was listing or selling side
132
+ */
133
+ static sales(options) {
134
+ return (options.client ?? client).post({
135
+ security: [{
136
+ name: "x-api-key",
137
+ type: "apiKey"
138
+ }, {
139
+ scheme: "bearer",
140
+ type: "http"
141
+ }],
142
+ url: "/v1/agents/{id}/sales",
143
+ ...options,
144
+ headers: {
145
+ "Content-Type": "application/json",
146
+ ...options?.headers
147
+ }
148
+ });
149
+ }
150
+ /**
151
+ * Properties this agent has transacted on
152
+ */
153
+ static properties(options) {
154
+ return (options.client ?? client).post({
155
+ security: [{
156
+ name: "x-api-key",
157
+ type: "apiKey"
158
+ }, {
159
+ scheme: "bearer",
160
+ type: "http"
161
+ }],
162
+ url: "/v1/agents/{id}/properties",
163
+ ...options,
164
+ headers: {
165
+ "Content-Type": "application/json",
166
+ ...options?.headers
167
+ }
168
+ });
169
+ }
170
+ /**
171
+ * Listing offices the agent has closed through
172
+ */
173
+ static offices(options) {
174
+ return (options.client ?? client).post({
175
+ security: [{
176
+ name: "x-api-key",
177
+ type: "apiKey"
178
+ }, {
179
+ scheme: "bearer",
180
+ type: "http"
181
+ }],
182
+ url: "/v1/agents/{id}/breakdowns/offices",
183
+ ...options,
184
+ headers: {
185
+ "Content-Type": "application/json",
186
+ ...options?.headers
187
+ }
188
+ });
189
+ }
190
+ /**
191
+ * City volume breakdown across the agent's sales
192
+ */
193
+ static cities(options) {
194
+ return (options.client ?? client).post({
195
+ security: [{
196
+ name: "x-api-key",
197
+ type: "apiKey"
198
+ }, {
199
+ scheme: "bearer",
200
+ type: "http"
201
+ }],
202
+ url: "/v1/agents/{id}/breakdowns/cities",
203
+ ...options,
204
+ headers: {
205
+ "Content-Type": "application/json",
206
+ ...options?.headers
207
+ }
208
+ });
209
+ }
210
+ /**
211
+ * County (FIPS) volume breakdown
212
+ */
213
+ static counties(options) {
214
+ return (options.client ?? client).post({
215
+ security: [{
216
+ name: "x-api-key",
217
+ type: "apiKey"
218
+ }, {
219
+ scheme: "bearer",
220
+ type: "http"
221
+ }],
222
+ url: "/v1/agents/{id}/breakdowns/counties",
223
+ ...options,
224
+ headers: {
225
+ "Content-Type": "application/json",
226
+ ...options?.headers
227
+ }
228
+ });
229
+ }
230
+ /**
231
+ * State volume breakdown
232
+ */
233
+ static states(options) {
234
+ return (options.client ?? client).post({
235
+ security: [{
236
+ name: "x-api-key",
237
+ type: "apiKey"
238
+ }, {
239
+ scheme: "bearer",
240
+ type: "http"
241
+ }],
242
+ url: "/v1/agents/{id}/breakdowns/states",
243
+ ...options,
244
+ headers: {
245
+ "Content-Type": "application/json",
246
+ ...options?.headers
247
+ }
248
+ });
249
+ }
250
+ /**
251
+ * Zip-code volume breakdown
252
+ */
253
+ static zipCodes(options) {
254
+ return (options.client ?? client).post({
255
+ security: [{
256
+ name: "x-api-key",
257
+ type: "apiKey"
258
+ }, {
259
+ scheme: "bearer",
260
+ type: "http"
261
+ }],
262
+ url: "/v1/agents/{id}/breakdowns/zip-codes",
263
+ ...options,
264
+ headers: {
265
+ "Content-Type": "application/json",
266
+ ...options?.headers
267
+ }
268
+ });
269
+ }
270
+ /**
271
+ * Loan officers the agent worked with (pre-aggregated)
272
+ */
273
+ static originators(options) {
274
+ return (options.client ?? client).post({
275
+ security: [{
276
+ name: "x-api-key",
277
+ type: "apiKey"
278
+ }, {
279
+ scheme: "bearer",
280
+ type: "http"
281
+ }],
282
+ url: "/v1/agents/{id}/breakdowns/originators",
283
+ ...options,
284
+ headers: {
285
+ "Content-Type": "application/json",
286
+ ...options?.headers
287
+ }
288
+ });
289
+ }
290
+ /**
291
+ * Mortgage companies the agent dealt with (pre-aggregated)
292
+ */
293
+ static companies(options) {
294
+ return (options.client ?? client).post({
295
+ security: [{
296
+ name: "x-api-key",
297
+ type: "apiKey"
298
+ }, {
299
+ scheme: "bearer",
300
+ type: "http"
301
+ }],
302
+ url: "/v1/agents/{id}/breakdowns/companies",
303
+ ...options,
304
+ headers: {
305
+ "Content-Type": "application/json",
306
+ ...options?.headers
307
+ }
308
+ });
309
+ }
310
+ /**
311
+ * Raw-name lenders encountered (pre-aggregated)
312
+ */
313
+ static lenders(options) {
314
+ return (options.client ?? client).post({
315
+ security: [{
316
+ name: "x-api-key",
317
+ type: "apiKey"
318
+ }, {
319
+ scheme: "bearer",
320
+ type: "http"
321
+ }],
322
+ url: "/v1/agents/{id}/breakdowns/lenders",
323
+ ...options,
324
+ headers: {
325
+ "Content-Type": "application/json",
326
+ ...options?.headers
327
+ }
328
+ });
329
+ }
330
+ /**
331
+ * Submit a bulk-delivery job for agents
332
+ * 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.
333
+ */
334
+ static submitAgentsBulkDelivery(options) {
335
+ return (options?.client ?? client).post({
336
+ security: [{
337
+ name: "x-api-key",
338
+ type: "apiKey"
339
+ }, {
340
+ scheme: "bearer",
341
+ type: "http"
342
+ }],
343
+ url: "/v1/agents/bulk-delivery",
344
+ ...options,
345
+ headers: {
346
+ "Content-Type": "application/json",
347
+ ...options?.headers
348
+ }
349
+ });
350
+ }
351
+ /**
352
+ * Get bulk-delivery job status for agents
353
+ */
354
+ static getAgentsBulkDeliveryJob(options) {
355
+ return (options.client ?? client).get({
356
+ security: [{
357
+ name: "x-api-key",
358
+ type: "apiKey"
359
+ }, {
360
+ scheme: "bearer",
361
+ type: "http"
362
+ }],
363
+ url: "/v1/agents/bulk-delivery/{jobId}",
364
+ ...options
365
+ });
366
+ }
367
+ /**
368
+ * Search agents with filters
369
+ * 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.)
370
+ */
371
+ static listAgents2(options) {
372
+ return (options?.client ?? client).post({
373
+ security: [{
374
+ name: "x-api-key",
375
+ type: "apiKey"
376
+ }, {
377
+ scheme: "bearer",
378
+ type: "http"
379
+ }],
380
+ url: "/agents",
381
+ ...options,
382
+ headers: {
383
+ "Content-Type": "application/json",
384
+ ...options?.headers
385
+ }
386
+ });
387
+ }
388
+ /**
389
+ * Get agent by ID
390
+ */
391
+ static getAgent2(options) {
392
+ return (options.client ?? client).get({
393
+ security: [{
394
+ name: "x-api-key",
395
+ type: "apiKey"
396
+ }, {
397
+ scheme: "bearer",
398
+ type: "http"
399
+ }],
400
+ url: "/agents/{id}",
401
+ ...options
402
+ });
403
+ }
404
+ /**
405
+ * Production summary with buyer/seller/dual split + previous period
406
+ */
407
+ static analyticsSummary2(options) {
408
+ return (options?.client ?? client).post({
409
+ security: [{
410
+ name: "x-api-key",
411
+ type: "apiKey"
412
+ }, {
413
+ scheme: "bearer",
414
+ type: "http"
415
+ }],
416
+ url: "/agents/analytics/summary",
417
+ ...options,
418
+ headers: {
419
+ "Content-Type": "application/json",
420
+ ...options?.headers
421
+ }
422
+ });
423
+ }
424
+ /**
425
+ * Agent volume/units over time with buyer/seller/dual split
426
+ */
427
+ static analyticsTimeSeries2(options) {
428
+ return (options?.client ?? client).post({
429
+ security: [{
430
+ name: "x-api-key",
431
+ type: "apiKey"
432
+ }, {
433
+ scheme: "bearer",
434
+ type: "http"
435
+ }],
436
+ url: "/agents/analytics/time-series",
437
+ ...options,
438
+ headers: {
439
+ "Content-Type": "application/json",
440
+ ...options?.headers
441
+ }
442
+ });
443
+ }
444
+ /**
445
+ * Configurable chart (measure × slice) over the agent's sales
446
+ */
447
+ static analyticsChart2(options) {
448
+ return (options?.client ?? client).post({
449
+ security: [{
450
+ name: "x-api-key",
451
+ type: "apiKey"
452
+ }, {
453
+ scheme: "bearer",
454
+ type: "http"
455
+ }],
456
+ url: "/agents/analytics/chart",
457
+ ...options,
458
+ headers: {
459
+ "Content-Type": "application/json",
460
+ ...options?.headers
461
+ }
462
+ });
463
+ }
464
+ /**
465
+ * Sales transactions where this agent was listing or selling side
466
+ */
467
+ static sales2(options) {
468
+ return (options.client ?? client).post({
469
+ security: [{
470
+ name: "x-api-key",
471
+ type: "apiKey"
472
+ }, {
473
+ scheme: "bearer",
474
+ type: "http"
475
+ }],
476
+ url: "/agents/{id}/sales",
477
+ ...options,
478
+ headers: {
479
+ "Content-Type": "application/json",
480
+ ...options?.headers
481
+ }
482
+ });
483
+ }
484
+ /**
485
+ * Properties this agent has transacted on
486
+ */
487
+ static properties2(options) {
488
+ return (options.client ?? client).post({
489
+ security: [{
490
+ name: "x-api-key",
491
+ type: "apiKey"
492
+ }, {
493
+ scheme: "bearer",
494
+ type: "http"
495
+ }],
496
+ url: "/agents/{id}/properties",
497
+ ...options,
498
+ headers: {
499
+ "Content-Type": "application/json",
500
+ ...options?.headers
501
+ }
502
+ });
503
+ }
504
+ /**
505
+ * Listing offices the agent has closed through
506
+ */
507
+ static offices2(options) {
508
+ return (options.client ?? client).post({
509
+ security: [{
510
+ name: "x-api-key",
511
+ type: "apiKey"
512
+ }, {
513
+ scheme: "bearer",
514
+ type: "http"
515
+ }],
516
+ url: "/agents/{id}/breakdowns/offices",
517
+ ...options,
518
+ headers: {
519
+ "Content-Type": "application/json",
520
+ ...options?.headers
521
+ }
522
+ });
523
+ }
524
+ /**
525
+ * City volume breakdown across the agent's sales
526
+ */
527
+ static cities2(options) {
528
+ return (options.client ?? client).post({
529
+ security: [{
530
+ name: "x-api-key",
531
+ type: "apiKey"
532
+ }, {
533
+ scheme: "bearer",
534
+ type: "http"
535
+ }],
536
+ url: "/agents/{id}/breakdowns/cities",
537
+ ...options,
538
+ headers: {
539
+ "Content-Type": "application/json",
540
+ ...options?.headers
541
+ }
542
+ });
543
+ }
544
+ /**
545
+ * County (FIPS) volume breakdown
546
+ */
547
+ static counties2(options) {
548
+ return (options.client ?? client).post({
549
+ security: [{
550
+ name: "x-api-key",
551
+ type: "apiKey"
552
+ }, {
553
+ scheme: "bearer",
554
+ type: "http"
555
+ }],
556
+ url: "/agents/{id}/breakdowns/counties",
557
+ ...options,
558
+ headers: {
559
+ "Content-Type": "application/json",
560
+ ...options?.headers
561
+ }
562
+ });
563
+ }
564
+ /**
565
+ * State volume breakdown
566
+ */
567
+ static states2(options) {
568
+ return (options.client ?? client).post({
569
+ security: [{
570
+ name: "x-api-key",
571
+ type: "apiKey"
572
+ }, {
573
+ scheme: "bearer",
574
+ type: "http"
575
+ }],
576
+ url: "/agents/{id}/breakdowns/states",
577
+ ...options,
578
+ headers: {
579
+ "Content-Type": "application/json",
580
+ ...options?.headers
581
+ }
582
+ });
583
+ }
584
+ /**
585
+ * Zip-code volume breakdown
586
+ */
587
+ static zipCodes2(options) {
588
+ return (options.client ?? client).post({
589
+ security: [{
590
+ name: "x-api-key",
591
+ type: "apiKey"
592
+ }, {
593
+ scheme: "bearer",
594
+ type: "http"
595
+ }],
596
+ url: "/agents/{id}/breakdowns/zip-codes",
597
+ ...options,
598
+ headers: {
599
+ "Content-Type": "application/json",
600
+ ...options?.headers
601
+ }
602
+ });
603
+ }
604
+ /**
605
+ * Loan officers the agent worked with (pre-aggregated)
606
+ */
607
+ static originators2(options) {
608
+ return (options.client ?? client).post({
609
+ security: [{
610
+ name: "x-api-key",
611
+ type: "apiKey"
612
+ }, {
613
+ scheme: "bearer",
614
+ type: "http"
615
+ }],
616
+ url: "/agents/{id}/breakdowns/originators",
617
+ ...options,
618
+ headers: {
619
+ "Content-Type": "application/json",
620
+ ...options?.headers
621
+ }
622
+ });
623
+ }
624
+ /**
625
+ * Mortgage companies the agent dealt with (pre-aggregated)
626
+ */
627
+ static companies2(options) {
628
+ return (options.client ?? client).post({
629
+ security: [{
630
+ name: "x-api-key",
631
+ type: "apiKey"
632
+ }, {
633
+ scheme: "bearer",
634
+ type: "http"
635
+ }],
636
+ url: "/agents/{id}/breakdowns/companies",
637
+ ...options,
638
+ headers: {
639
+ "Content-Type": "application/json",
640
+ ...options?.headers
641
+ }
642
+ });
643
+ }
644
+ /**
645
+ * Raw-name lenders encountered (pre-aggregated)
646
+ */
647
+ static lenders2(options) {
648
+ return (options.client ?? client).post({
649
+ security: [{
650
+ name: "x-api-key",
651
+ type: "apiKey"
652
+ }, {
653
+ scheme: "bearer",
654
+ type: "http"
655
+ }],
656
+ url: "/agents/{id}/breakdowns/lenders",
657
+ ...options,
658
+ headers: {
659
+ "Content-Type": "application/json",
660
+ ...options?.headers
661
+ }
662
+ });
663
+ }
664
+ /**
665
+ * Submit a bulk-delivery job for agents
666
+ * 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.
667
+ */
668
+ static submitAgentsBulkDelivery2(options) {
669
+ return (options?.client ?? client).post({
670
+ security: [{
671
+ name: "x-api-key",
672
+ type: "apiKey"
673
+ }, {
674
+ scheme: "bearer",
675
+ type: "http"
676
+ }],
677
+ url: "/agents/bulk-delivery",
678
+ ...options,
679
+ headers: {
680
+ "Content-Type": "application/json",
681
+ ...options?.headers
682
+ }
683
+ });
684
+ }
685
+ /**
686
+ * Get bulk-delivery job status for agents
687
+ */
688
+ static getAgentsBulkDeliveryJob2(options) {
689
+ return (options.client ?? client).get({
690
+ security: [{
691
+ name: "x-api-key",
692
+ type: "apiKey"
693
+ }, {
694
+ scheme: "bearer",
695
+ type: "http"
696
+ }],
697
+ url: "/agents/bulk-delivery/{jobId}",
698
+ ...options
699
+ });
700
+ }
701
+ };
702
+ var Alerts = class {
703
+ /**
704
+ * Get your alert settings
705
+ */
706
+ static getAlertConditions(options) {
707
+ return (options?.client ?? client).get({
708
+ security: [{
709
+ name: "x-api-key",
710
+ type: "apiKey"
711
+ }, {
712
+ scheme: "bearer",
713
+ type: "http"
714
+ }],
715
+ url: "/v1/alerts/conditions",
716
+ ...options
717
+ });
718
+ }
719
+ /**
720
+ * Update your alert settings
721
+ */
722
+ static updateAlertConditions(options) {
723
+ return (options?.client ?? client).put({
724
+ security: [{
725
+ name: "x-api-key",
726
+ type: "apiKey"
727
+ }, {
728
+ scheme: "bearer",
729
+ type: "http"
730
+ }],
731
+ url: "/v1/alerts/conditions",
732
+ ...options,
733
+ headers: {
734
+ "Content-Type": "application/json",
735
+ ...options?.headers
736
+ }
737
+ });
738
+ }
739
+ /**
740
+ * List the agents you watch
741
+ */
742
+ static listWatchedAgents(options) {
743
+ return (options?.client ?? client).get({
744
+ security: [{
745
+ name: "x-api-key",
746
+ type: "apiKey"
747
+ }, {
748
+ scheme: "bearer",
749
+ type: "http"
750
+ }],
751
+ url: "/v1/alerts/watched-agents",
752
+ ...options
753
+ });
754
+ }
755
+ /**
756
+ * Watch an agent
757
+ */
758
+ static addWatchedAgent(options) {
759
+ return (options?.client ?? client).post({
760
+ security: [{
761
+ name: "x-api-key",
762
+ type: "apiKey"
763
+ }, {
764
+ scheme: "bearer",
765
+ type: "http"
766
+ }],
767
+ url: "/v1/alerts/watched-agents",
768
+ ...options,
769
+ headers: {
770
+ "Content-Type": "application/json",
771
+ ...options?.headers
772
+ }
773
+ });
774
+ }
775
+ /**
776
+ * Stop watching an agent
777
+ */
778
+ static removeWatchedAgent(options) {
779
+ return (options.client ?? client).delete({
780
+ security: [{
781
+ name: "x-api-key",
782
+ type: "apiKey"
783
+ }, {
784
+ scheme: "bearer",
785
+ type: "http"
786
+ }],
787
+ url: "/v1/alerts/watched-agents/{id}",
788
+ ...options
789
+ });
790
+ }
791
+ /**
792
+ * List the areas you watch
793
+ */
794
+ static listWatchedAreas(options) {
795
+ return (options?.client ?? client).get({
796
+ security: [{
797
+ name: "x-api-key",
798
+ type: "apiKey"
799
+ }, {
800
+ scheme: "bearer",
801
+ type: "http"
802
+ }],
803
+ url: "/v1/alerts/watched-areas",
804
+ ...options
805
+ });
806
+ }
807
+ /**
808
+ * Watch an area
809
+ */
810
+ static addWatchedArea(options) {
811
+ return (options?.client ?? client).post({
812
+ security: [{
813
+ name: "x-api-key",
814
+ type: "apiKey"
815
+ }, {
816
+ scheme: "bearer",
817
+ type: "http"
818
+ }],
819
+ url: "/v1/alerts/watched-areas",
820
+ ...options,
821
+ headers: {
822
+ "Content-Type": "application/json",
823
+ ...options?.headers
824
+ }
825
+ });
826
+ }
827
+ /**
828
+ * Stop watching an area
829
+ */
830
+ static removeWatchedArea(options) {
831
+ return (options.client ?? client).delete({
832
+ security: [{
833
+ name: "x-api-key",
834
+ type: "apiKey"
835
+ }, {
836
+ scheme: "bearer",
837
+ type: "http"
838
+ }],
839
+ url: "/v1/alerts/watched-areas/{id}",
840
+ ...options
841
+ });
842
+ }
843
+ /**
844
+ * List the documents you watch
845
+ */
846
+ static listWatchedDocuments(options) {
847
+ return (options?.client ?? client).get({
848
+ security: [{
849
+ name: "x-api-key",
850
+ type: "apiKey"
851
+ }, {
852
+ scheme: "bearer",
853
+ type: "http"
854
+ }],
855
+ url: "/v1/alerts/watched-documents",
856
+ ...options
857
+ });
858
+ }
859
+ /**
860
+ * Watch a document
861
+ */
862
+ static addWatchedDocument(options) {
863
+ return (options?.client ?? client).post({
864
+ security: [{
865
+ name: "x-api-key",
866
+ type: "apiKey"
867
+ }, {
868
+ scheme: "bearer",
869
+ type: "http"
870
+ }],
871
+ url: "/v1/alerts/watched-documents",
872
+ ...options,
873
+ headers: {
874
+ "Content-Type": "application/json",
875
+ ...options?.headers
876
+ }
877
+ });
878
+ }
879
+ /**
880
+ * Stop watching a document
881
+ */
882
+ static removeWatchedDocument(options) {
883
+ return (options.client ?? client).delete({
884
+ security: [{
885
+ name: "x-api-key",
886
+ type: "apiKey"
887
+ }, {
888
+ scheme: "bearer",
889
+ type: "http"
890
+ }],
891
+ url: "/v1/alerts/watched-documents/{documentType}/{documentId}",
892
+ ...options
893
+ });
894
+ }
895
+ /**
896
+ * List your alerts (newest first)
897
+ */
898
+ static listAlertLog(options) {
899
+ return (options?.client ?? client).get({
900
+ security: [{
901
+ name: "x-api-key",
902
+ type: "apiKey"
903
+ }, {
904
+ scheme: "bearer",
905
+ type: "http"
906
+ }],
907
+ url: "/v1/alerts/log",
908
+ ...options
909
+ });
910
+ }
911
+ /**
912
+ * Clear the unread badge
913
+ */
914
+ static markAllAlertsRead(options) {
915
+ return (options?.client ?? client).post({
916
+ security: [{
917
+ name: "x-api-key",
918
+ type: "apiKey"
919
+ }, {
920
+ scheme: "bearer",
921
+ type: "http"
922
+ }],
923
+ url: "/v1/alerts/log/mark-all-read",
924
+ ...options
925
+ });
926
+ }
927
+ /**
928
+ * Mark one alert read
929
+ */
930
+ static markAlertRead(options) {
931
+ return (options.client ?? client).post({
932
+ security: [{
933
+ name: "x-api-key",
934
+ type: "apiKey"
935
+ }, {
936
+ scheme: "bearer",
937
+ type: "http"
938
+ }],
939
+ url: "/v1/alerts/log/{id}/read",
940
+ ...options
941
+ });
942
+ }
943
+ /**
944
+ * Get your unread alert count
945
+ */
946
+ static getAlertUnreadCount(options) {
947
+ return (options?.client ?? client).get({
948
+ security: [{
949
+ name: "x-api-key",
950
+ type: "apiKey"
951
+ }, {
952
+ scheme: "bearer",
953
+ type: "http"
954
+ }],
955
+ url: "/v1/alerts/unread-count",
956
+ ...options
957
+ });
958
+ }
959
+ /**
960
+ * List your alert digests (newest first)
961
+ */
962
+ static listAlertDigests(options) {
963
+ return (options?.client ?? client).get({
964
+ security: [{
965
+ name: "x-api-key",
966
+ type: "apiKey"
967
+ }, {
968
+ scheme: "bearer",
969
+ type: "http"
970
+ }],
971
+ url: "/v1/alerts/digests",
972
+ ...options
973
+ });
974
+ }
975
+ /**
976
+ * Mark one digest read
977
+ */
978
+ static markAlertDigestRead(options) {
979
+ return (options.client ?? client).post({
980
+ security: [{
981
+ name: "x-api-key",
982
+ type: "apiKey"
983
+ }, {
984
+ scheme: "bearer",
985
+ type: "http"
986
+ }],
987
+ url: "/v1/alerts/digests/{id}/read",
988
+ ...options
989
+ });
990
+ }
991
+ /**
992
+ * Preview the alerts that would fire for you
993
+ * 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.
994
+ */
995
+ static preview(options) {
996
+ return (options?.client ?? client).post({
997
+ security: [{
998
+ name: "x-api-key",
999
+ type: "apiKey"
1000
+ }, {
1001
+ scheme: "bearer",
1002
+ type: "http"
1003
+ }],
1004
+ url: "/v1/alerts/preview",
1005
+ ...options,
1006
+ headers: {
1007
+ "Content-Type": "application/json",
1008
+ ...options?.headers
1009
+ }
1010
+ });
1011
+ }
1012
+ };
1013
+ var Branches = class {
1014
+ /**
1015
+ * Search branches with filters
1016
+ * 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.
1017
+ */
1018
+ static list(options) {
1019
+ return (options?.client ?? client).post({
1020
+ security: [{
1021
+ name: "x-api-key",
1022
+ type: "apiKey"
1023
+ }, {
1024
+ scheme: "bearer",
1025
+ type: "http"
1026
+ }],
1027
+ url: "/v1/branches",
1028
+ ...options,
1029
+ headers: {
1030
+ "Content-Type": "application/json",
1031
+ ...options?.headers
1032
+ }
1033
+ });
1034
+ }
1035
+ /**
1036
+ * Get branch by NMLS ID
1037
+ * 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.
1038
+ */
1039
+ static get(options) {
1040
+ return (options.client ?? client).get({
1041
+ security: [{
1042
+ name: "x-api-key",
1043
+ type: "apiKey"
1044
+ }, {
1045
+ scheme: "bearer",
1046
+ type: "http"
1047
+ }],
1048
+ url: "/v1/branches/{nmlsId}",
1049
+ ...options
1050
+ });
1051
+ }
1052
+ /**
1053
+ * Submit a bulk-delivery job for branches
1054
+ * 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.
1055
+ */
1056
+ static submitBranchesBulkDelivery(options) {
1057
+ return (options?.client ?? client).post({
1058
+ security: [{
1059
+ name: "x-api-key",
1060
+ type: "apiKey"
1061
+ }, {
1062
+ scheme: "bearer",
1063
+ type: "http"
1064
+ }],
1065
+ url: "/v1/branches/bulk-delivery",
1066
+ ...options,
1067
+ headers: {
1068
+ "Content-Type": "application/json",
1069
+ ...options?.headers
1070
+ }
1071
+ });
1072
+ }
1073
+ /**
1074
+ * Get bulk-delivery job status for branches
1075
+ */
1076
+ static getBranchesBulkDeliveryJob(options) {
1077
+ return (options.client ?? client).get({
1078
+ security: [{
1079
+ name: "x-api-key",
1080
+ type: "apiKey"
1081
+ }, {
1082
+ scheme: "bearer",
1083
+ type: "http"
1084
+ }],
1085
+ url: "/v1/branches/bulk-delivery/{jobId}",
1086
+ ...options
1087
+ });
1088
+ }
1089
+ };
1090
+ var Companies = class {
1091
+ /**
1092
+ * Search companies with filters
1093
+ * 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.)
1094
+ */
1095
+ static list(options) {
1096
+ return (options?.client ?? client).post({
1097
+ security: [{
1098
+ name: "x-api-key",
1099
+ type: "apiKey"
1100
+ }, {
1101
+ scheme: "bearer",
1102
+ type: "http"
1103
+ }],
1104
+ url: "/v1/companies",
1105
+ ...options,
1106
+ headers: {
1107
+ "Content-Type": "application/json",
1108
+ ...options?.headers
1109
+ }
1110
+ });
1111
+ }
1112
+ /**
1113
+ * Get company by NMLS ID
1114
+ */
1115
+ static get(options) {
1116
+ return (options.client ?? client).get({
1117
+ security: [{
1118
+ name: "x-api-key",
1119
+ type: "apiKey"
1120
+ }, {
1121
+ scheme: "bearer",
1122
+ type: "http"
1123
+ }],
1124
+ url: "/v1/companies/{nmlsId}",
1125
+ ...options
1126
+ });
1127
+ }
1128
+ /**
1129
+ * Production summary with previous-period comparison
1130
+ */
1131
+ static analyticsSummary(options) {
1132
+ return (options?.client ?? client).post({
1133
+ security: [{
1134
+ name: "x-api-key",
1135
+ type: "apiKey"
1136
+ }, {
1137
+ scheme: "bearer",
1138
+ type: "http"
1139
+ }],
1140
+ url: "/v1/companies/analytics/summary",
1141
+ ...options,
1142
+ headers: {
1143
+ "Content-Type": "application/json",
1144
+ ...options?.headers
1145
+ }
1146
+ });
1147
+ }
1148
+ /**
1149
+ * Company volume / units over time
1150
+ */
1151
+ static analyticsTimeSeries(options) {
1152
+ return (options?.client ?? client).post({
1153
+ security: [{
1154
+ name: "x-api-key",
1155
+ type: "apiKey"
1156
+ }, {
1157
+ scheme: "bearer",
1158
+ type: "http"
1159
+ }],
1160
+ url: "/v1/companies/analytics/time-series",
1161
+ ...options,
1162
+ headers: {
1163
+ "Content-Type": "application/json",
1164
+ ...options?.headers
1165
+ }
1166
+ });
1167
+ }
1168
+ /**
1169
+ * Configurable chart (measure × slice) over company's loans
1170
+ */
1171
+ static analyticsChart(options) {
1172
+ return (options?.client ?? client).post({
1173
+ security: [{
1174
+ name: "x-api-key",
1175
+ type: "apiKey"
1176
+ }, {
1177
+ scheme: "bearer",
1178
+ type: "http"
1179
+ }],
1180
+ url: "/v1/companies/analytics/chart",
1181
+ ...options,
1182
+ headers: {
1183
+ "Content-Type": "application/json",
1184
+ ...options?.headers
1185
+ }
1186
+ });
1187
+ }
1188
+ /**
1189
+ * Loan originators sponsored by this company
1190
+ */
1191
+ static sponsoredIndividuals(options) {
1192
+ return (options.client ?? client).post({
1193
+ security: [{
1194
+ name: "x-api-key",
1195
+ type: "apiKey"
1196
+ }, {
1197
+ scheme: "bearer",
1198
+ type: "http"
1199
+ }],
1200
+ url: "/v1/companies/{nmlsId}/sponsored-individuals",
1201
+ ...options,
1202
+ headers: {
1203
+ "Content-Type": "application/json",
1204
+ ...options?.headers
1205
+ }
1206
+ });
1207
+ }
1208
+ /**
1209
+ * Branch locations for this company
1210
+ */
1211
+ static branches(options) {
1212
+ return (options.client ?? client).post({
1213
+ security: [{
1214
+ name: "x-api-key",
1215
+ type: "apiKey"
1216
+ }, {
1217
+ scheme: "bearer",
1218
+ type: "http"
1219
+ }],
1220
+ url: "/v1/companies/{nmlsId}/branches",
1221
+ ...options,
1222
+ headers: {
1223
+ "Content-Type": "application/json",
1224
+ ...options?.headers
1225
+ }
1226
+ });
1227
+ }
1228
+ /**
1229
+ * Loan officers who originated through this company
1230
+ */
1231
+ static originators(options) {
1232
+ return (options.client ?? client).post({
1233
+ security: [{
1234
+ name: "x-api-key",
1235
+ type: "apiKey"
1236
+ }, {
1237
+ scheme: "bearer",
1238
+ type: "http"
1239
+ }],
1240
+ url: "/v1/companies/{nmlsId}/breakdowns/originators",
1241
+ ...options,
1242
+ headers: {
1243
+ "Content-Type": "application/json",
1244
+ ...options?.headers
1245
+ }
1246
+ });
1247
+ }
1248
+ /**
1249
+ * Lenders this company originated through
1250
+ */
1251
+ static lenders(options) {
1252
+ return (options.client ?? client).post({
1253
+ security: [{
1254
+ name: "x-api-key",
1255
+ type: "apiKey"
1256
+ }, {
1257
+ scheme: "bearer",
1258
+ type: "http"
1259
+ }],
1260
+ url: "/v1/companies/{nmlsId}/breakdowns/lenders",
1261
+ ...options,
1262
+ headers: {
1263
+ "Content-Type": "application/json",
1264
+ ...options?.headers
1265
+ }
1266
+ });
1267
+ }
1268
+ /**
1269
+ * Broker shops that originated loans funding through this company. For a wholesale/TPO lender this is its top broker partners.
1270
+ */
1271
+ static brokers(options) {
1272
+ return (options.client ?? client).post({
1273
+ security: [{
1274
+ name: "x-api-key",
1275
+ type: "apiKey"
1276
+ }, {
1277
+ scheme: "bearer",
1278
+ type: "http"
1279
+ }],
1280
+ url: "/v1/companies/{nmlsId}/breakdowns/brokers",
1281
+ ...options,
1282
+ headers: {
1283
+ "Content-Type": "application/json",
1284
+ ...options?.headers
1285
+ }
1286
+ });
1287
+ }
1288
+ /**
1289
+ * Broker offices this company originated through
1290
+ */
1291
+ static offices(options) {
1292
+ return (options.client ?? client).post({
1293
+ security: [{
1294
+ name: "x-api-key",
1295
+ type: "apiKey"
1296
+ }, {
1297
+ scheme: "bearer",
1298
+ type: "http"
1299
+ }],
1300
+ url: "/v1/companies/{nmlsId}/breakdowns/offices",
1301
+ ...options,
1302
+ headers: {
1303
+ "Content-Type": "application/json",
1304
+ ...options?.headers
1305
+ }
1306
+ });
1307
+ }
1308
+ /**
1309
+ * City volume breakdown across this company's loans
1310
+ */
1311
+ static cities(options) {
1312
+ return (options.client ?? client).post({
1313
+ security: [{
1314
+ name: "x-api-key",
1315
+ type: "apiKey"
1316
+ }, {
1317
+ scheme: "bearer",
1318
+ type: "http"
1319
+ }],
1320
+ url: "/v1/companies/{nmlsId}/breakdowns/cities",
1321
+ ...options,
1322
+ headers: {
1323
+ "Content-Type": "application/json",
1324
+ ...options?.headers
1325
+ }
1326
+ });
1327
+ }
1328
+ /**
1329
+ * State volume breakdown across this company's loans
1330
+ */
1331
+ static states(options) {
1332
+ return (options.client ?? client).post({
1333
+ security: [{
1334
+ name: "x-api-key",
1335
+ type: "apiKey"
1336
+ }, {
1337
+ scheme: "bearer",
1338
+ type: "http"
1339
+ }],
1340
+ url: "/v1/companies/{nmlsId}/breakdowns/states",
1341
+ ...options,
1342
+ headers: {
1343
+ "Content-Type": "application/json",
1344
+ ...options?.headers
1345
+ }
1346
+ });
1347
+ }
1348
+ /**
1349
+ * County (FIPS) volume breakdown across this company's loans
1350
+ */
1351
+ static counties(options) {
1352
+ return (options.client ?? client).post({
1353
+ security: [{
1354
+ name: "x-api-key",
1355
+ type: "apiKey"
1356
+ }, {
1357
+ scheme: "bearer",
1358
+ type: "http"
1359
+ }],
1360
+ url: "/v1/companies/{nmlsId}/breakdowns/counties",
1361
+ ...options,
1362
+ headers: {
1363
+ "Content-Type": "application/json",
1364
+ ...options?.headers
1365
+ }
1366
+ });
1367
+ }
1368
+ /**
1369
+ * Analyze LO arrivals and departures for a company
1370
+ */
1371
+ static sponsorshipMovement(options) {
1372
+ return (options.client ?? client).post({
1373
+ security: [{
1374
+ name: "x-api-key",
1375
+ type: "apiKey"
1376
+ }, {
1377
+ scheme: "bearer",
1378
+ type: "http"
1379
+ }],
1380
+ url: "/v1/companies/{nmlsId}/sponsorship-movement",
1381
+ ...options,
1382
+ headers: {
1383
+ "Content-Type": "application/json",
1384
+ ...options?.headers
1385
+ }
1386
+ });
1387
+ }
1388
+ /**
1389
+ * Submit a bulk-delivery job for companies
1390
+ * 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.
1391
+ */
1392
+ static submitCompaniesBulkDelivery(options) {
1393
+ return (options?.client ?? client).post({
1394
+ security: [{
1395
+ name: "x-api-key",
1396
+ type: "apiKey"
1397
+ }, {
1398
+ scheme: "bearer",
1399
+ type: "http"
1400
+ }],
1401
+ url: "/v1/companies/bulk-delivery",
1402
+ ...options,
1403
+ headers: {
1404
+ "Content-Type": "application/json",
1405
+ ...options?.headers
1406
+ }
1407
+ });
1408
+ }
1409
+ /**
1410
+ * Get bulk-delivery job status for companies
1411
+ */
1412
+ static getCompaniesBulkDeliveryJob(options) {
1413
+ return (options.client ?? client).get({
1414
+ security: [{
1415
+ name: "x-api-key",
1416
+ type: "apiKey"
1417
+ }, {
1418
+ scheme: "bearer",
1419
+ type: "http"
1420
+ }],
1421
+ url: "/v1/companies/bulk-delivery/{jobId}",
1422
+ ...options
1423
+ });
1424
+ }
1425
+ };
1426
+ var Crm = class {
1427
+ /**
1428
+ * Find an existing CRM record by NMLS id
1429
+ */
1430
+ static findCrmRecordByNmls(options) {
1431
+ return (options.client ?? client).get({
1432
+ security: [{
1433
+ name: "x-api-key",
1434
+ type: "apiKey"
1435
+ }, {
1436
+ scheme: "bearer",
1437
+ type: "http"
1438
+ }],
1439
+ url: "/v1/crm/records/by-nmls",
1440
+ ...options
1441
+ });
1442
+ }
1443
+ /**
1444
+ * Add a record to the CRM (and optionally a list)
1445
+ */
1446
+ static addCrmRecord(options) {
1447
+ return (options?.client ?? client).post({
1448
+ security: [{
1449
+ name: "x-api-key",
1450
+ type: "apiKey"
1451
+ }, {
1452
+ scheme: "bearer",
1453
+ type: "http"
1454
+ }],
1455
+ url: "/v1/crm/records/add",
1456
+ ...options,
1457
+ headers: {
1458
+ "Content-Type": "application/json",
1459
+ ...options?.headers
1460
+ }
1461
+ });
1462
+ }
1463
+ /**
1464
+ * Remove one or more records from the CRM
1465
+ */
1466
+ static deleteCrmRecords(options) {
1467
+ return (options?.client ?? client).post({
1468
+ security: [{
1469
+ name: "x-api-key",
1470
+ type: "apiKey"
1471
+ }, {
1472
+ scheme: "bearer",
1473
+ type: "http"
1474
+ }],
1475
+ url: "/v1/crm/records/delete",
1476
+ ...options,
1477
+ headers: {
1478
+ "Content-Type": "application/json",
1479
+ ...options?.headers
1480
+ }
1481
+ });
1482
+ }
1483
+ /**
1484
+ * Create a manual (unmatched) CRM record
1485
+ */
1486
+ static createCrmManualRecord(options) {
1487
+ return (options?.client ?? client).post({
1488
+ security: [{
1489
+ name: "x-api-key",
1490
+ type: "apiKey"
1491
+ }, {
1492
+ scheme: "bearer",
1493
+ type: "http"
1494
+ }],
1495
+ url: "/v1/crm/records/create",
1496
+ ...options,
1497
+ headers: {
1498
+ "Content-Type": "application/json",
1499
+ ...options?.headers
1500
+ }
1501
+ });
1502
+ }
1503
+ /**
1504
+ * Remove a record from the workspace CRM
1505
+ */
1506
+ static deleteCrmRecord(options) {
1507
+ return (options.client ?? client).delete({
1508
+ security: [{
1509
+ name: "x-api-key",
1510
+ type: "apiKey"
1511
+ }, {
1512
+ scheme: "bearer",
1513
+ type: "http"
1514
+ }],
1515
+ url: "/v1/crm/records",
1516
+ ...options
1517
+ });
1518
+ }
1519
+ /**
1520
+ * (Re)assign a record's working owner
1521
+ */
1522
+ static setCrmRecordOwner(options) {
1523
+ return (options?.client ?? client).patch({
1524
+ security: [{
1525
+ name: "x-api-key",
1526
+ type: "apiKey"
1527
+ }, {
1528
+ scheme: "bearer",
1529
+ type: "http"
1530
+ }],
1531
+ url: "/v1/crm/records",
1532
+ ...options,
1533
+ headers: {
1534
+ "Content-Type": "application/json",
1535
+ ...options?.headers
1536
+ }
1537
+ });
1538
+ }
1539
+ /**
1540
+ * Create (or refresh) a canonical record from a match
1541
+ */
1542
+ static createCrmRecord(options) {
1543
+ return (options?.client ?? client).post({
1544
+ security: [{
1545
+ name: "x-api-key",
1546
+ type: "apiKey"
1547
+ }, {
1548
+ scheme: "bearer",
1549
+ type: "http"
1550
+ }],
1551
+ url: "/v1/crm/records",
1552
+ ...options,
1553
+ headers: {
1554
+ "Content-Type": "application/json",
1555
+ ...options?.headers
1556
+ }
1557
+ });
1558
+ }
1559
+ /**
1560
+ * Free-text search over CRM records
1561
+ */
1562
+ static searchCrmRecords(options) {
1563
+ return (options?.client ?? client).post({
1564
+ security: [{
1565
+ name: "x-api-key",
1566
+ type: "apiKey"
1567
+ }, {
1568
+ scheme: "bearer",
1569
+ type: "http"
1570
+ }],
1571
+ url: "/v1/crm/records/search",
1572
+ ...options,
1573
+ headers: {
1574
+ "Content-Type": "application/json",
1575
+ ...options?.headers
1576
+ }
1577
+ });
1578
+ }
1579
+ /**
1580
+ * Bulk add records to the canonical CRM (listless)
1581
+ */
1582
+ static addCrmRecordsBulk(options) {
1583
+ return (options?.client ?? client).post({
1584
+ security: [{
1585
+ name: "x-api-key",
1586
+ type: "apiKey"
1587
+ }, {
1588
+ scheme: "bearer",
1589
+ type: "http"
1590
+ }],
1591
+ url: "/v1/crm/records/add/bulk",
1592
+ ...options,
1593
+ headers: {
1594
+ "Content-Type": "application/json",
1595
+ ...options?.headers
1596
+ }
1597
+ });
1598
+ }
1599
+ /**
1600
+ * Get an add-time production-enrich job's status
1601
+ */
1602
+ static getCrmProductionEnrichJob(options) {
1603
+ return (options.client ?? client).get({
1604
+ security: [{
1605
+ name: "x-api-key",
1606
+ type: "apiKey"
1607
+ }, {
1608
+ scheme: "bearer",
1609
+ type: "http"
1610
+ }],
1611
+ url: "/v1/crm/production-enrich/{jobId}",
1612
+ ...options
1613
+ });
1614
+ }
1615
+ /**
1616
+ * Relationship cross-reference for a record (in-CRM partners + colleagues)
1617
+ */
1618
+ static getCrmRecordConnections(options) {
1619
+ return (options?.client ?? client).post({
1620
+ security: [{
1621
+ name: "x-api-key",
1622
+ type: "apiKey"
1623
+ }, {
1624
+ scheme: "bearer",
1625
+ type: "http"
1626
+ }],
1627
+ url: "/v1/crm/records/connections",
1628
+ ...options,
1629
+ headers: {
1630
+ "Content-Type": "application/json",
1631
+ ...options?.headers
1632
+ }
1633
+ });
1634
+ }
1635
+ /**
1636
+ * Name-first search over visible CRM records for the mention picker
1637
+ */
1638
+ static searchCrmMentionRecords(options) {
1639
+ return (options?.client ?? client).post({
1640
+ security: [{
1641
+ name: "x-api-key",
1642
+ type: "apiKey"
1643
+ }, {
1644
+ scheme: "bearer",
1645
+ type: "http"
1646
+ }],
1647
+ url: "/v1/crm/records/mention-search",
1648
+ ...options,
1649
+ headers: {
1650
+ "Content-Type": "application/json",
1651
+ ...options?.headers
1652
+ }
1653
+ });
1654
+ }
1655
+ /**
1656
+ * Aggregate profile read for a CRM record
1657
+ */
1658
+ static getCrmRecordProfile(options) {
1659
+ return (options.client ?? client).get({
1660
+ security: [{
1661
+ name: "x-api-key",
1662
+ type: "apiKey"
1663
+ }, {
1664
+ scheme: "bearer",
1665
+ type: "http"
1666
+ }],
1667
+ url: "/v1/crm/profile",
1668
+ ...options
1669
+ });
1670
+ }
1671
+ /**
1672
+ * List curated CRM records of an object type
1673
+ */
1674
+ static listCrmMembers(options) {
1675
+ return (options.client ?? client).get({
1676
+ security: [{
1677
+ name: "x-api-key",
1678
+ type: "apiKey"
1679
+ }, {
1680
+ scheme: "bearer",
1681
+ type: "http"
1682
+ }],
1683
+ url: "/v1/crm/members",
1684
+ ...options
1685
+ });
1686
+ }
1687
+ /**
1688
+ * Batch-read record overrides
1689
+ */
1690
+ static getCrmOverrides(options) {
1691
+ return (options.client ?? client).get({
1692
+ security: [{
1693
+ name: "x-api-key",
1694
+ type: "apiKey"
1695
+ }, {
1696
+ scheme: "bearer",
1697
+ type: "http"
1698
+ }],
1699
+ url: "/v1/crm/overrides",
1700
+ ...options
1701
+ });
1702
+ }
1703
+ /**
1704
+ * Set a single override field on a record
1705
+ */
1706
+ static setCrmOverride(options) {
1707
+ return (options?.client ?? client).patch({
1708
+ security: [{
1709
+ name: "x-api-key",
1710
+ type: "apiKey"
1711
+ }, {
1712
+ scheme: "bearer",
1713
+ type: "http"
1714
+ }],
1715
+ url: "/v1/crm/overrides",
1716
+ ...options,
1717
+ headers: {
1718
+ "Content-Type": "application/json",
1719
+ ...options?.headers
1720
+ }
1721
+ });
1722
+ }
1723
+ /**
1724
+ * Auto-generate a record's description from the web
1725
+ */
1726
+ static generateCrmRecordDescription(options) {
1727
+ return (options?.client ?? client).post({
1728
+ security: [{
1729
+ name: "x-api-key",
1730
+ type: "apiKey"
1731
+ }, {
1732
+ scheme: "bearer",
1733
+ type: "http"
1734
+ }],
1735
+ url: "/v1/crm/records/generate-description",
1736
+ ...options,
1737
+ headers: {
1738
+ "Content-Type": "application/json",
1739
+ ...options?.headers
1740
+ }
1741
+ });
1742
+ }
1743
+ /**
1744
+ * List the caller's lists (picker mode with ?entityId adds hasMember)
1745
+ */
1746
+ static listCrmLists(options) {
1747
+ return (options?.client ?? client).get({
1748
+ security: [{
1749
+ name: "x-api-key",
1750
+ type: "apiKey"
1751
+ }, {
1752
+ scheme: "bearer",
1753
+ type: "http"
1754
+ }],
1755
+ url: "/v1/crm/lists",
1756
+ ...options
1757
+ });
1758
+ }
1759
+ /**
1760
+ * Create a list
1761
+ */
1762
+ static createCrmList(options) {
1763
+ return (options?.client ?? client).post({
1764
+ security: [{
1765
+ name: "x-api-key",
1766
+ type: "apiKey"
1767
+ }, {
1768
+ scheme: "bearer",
1769
+ type: "http"
1770
+ }],
1771
+ url: "/v1/crm/lists",
1772
+ ...options,
1773
+ headers: {
1774
+ "Content-Type": "application/json",
1775
+ ...options?.headers
1776
+ }
1777
+ });
1778
+ }
1779
+ /**
1780
+ * Delete a list
1781
+ */
1782
+ static deleteCrmList(options) {
1783
+ return (options.client ?? client).delete({
1784
+ security: [{
1785
+ name: "x-api-key",
1786
+ type: "apiKey"
1787
+ }, {
1788
+ scheme: "bearer",
1789
+ type: "http"
1790
+ }],
1791
+ url: "/v1/crm/lists/{id}",
1792
+ ...options
1793
+ });
1794
+ }
1795
+ /**
1796
+ * Get a list with its members
1797
+ */
1798
+ static getCrmList(options) {
1799
+ return (options.client ?? client).get({
1800
+ security: [{
1801
+ name: "x-api-key",
1802
+ type: "apiKey"
1803
+ }, {
1804
+ scheme: "bearer",
1805
+ type: "http"
1806
+ }],
1807
+ url: "/v1/crm/lists/{id}",
1808
+ ...options
1809
+ });
1810
+ }
1811
+ /**
1812
+ * Update a list's name, visibility, or whole-org role
1813
+ */
1814
+ static updateCrmList(options) {
1815
+ return (options.client ?? client).patch({
1816
+ security: [{
1817
+ name: "x-api-key",
1818
+ type: "apiKey"
1819
+ }, {
1820
+ scheme: "bearer",
1821
+ type: "http"
1822
+ }],
1823
+ url: "/v1/crm/lists/{id}",
1824
+ ...options,
1825
+ headers: {
1826
+ "Content-Type": "application/json",
1827
+ ...options?.headers
1828
+ }
1829
+ });
1830
+ }
1831
+ /**
1832
+ * Remove a member from a list
1833
+ */
1834
+ static removeCrmListMember(options) {
1835
+ return (options.client ?? client).delete({
1836
+ security: [{
1837
+ name: "x-api-key",
1838
+ type: "apiKey"
1839
+ }, {
1840
+ scheme: "bearer",
1841
+ type: "http"
1842
+ }],
1843
+ url: "/v1/crm/lists/{id}/members",
1844
+ ...options,
1845
+ headers: {
1846
+ "Content-Type": "application/json",
1847
+ ...options?.headers
1848
+ }
1849
+ });
1850
+ }
1851
+ /**
1852
+ * Add a member to a list
1853
+ */
1854
+ static addCrmListMember(options) {
1855
+ return (options.client ?? client).post({
1856
+ security: [{
1857
+ name: "x-api-key",
1858
+ type: "apiKey"
1859
+ }, {
1860
+ scheme: "bearer",
1861
+ type: "http"
1862
+ }],
1863
+ url: "/v1/crm/lists/{id}/members",
1864
+ ...options,
1865
+ headers: {
1866
+ "Content-Type": "application/json",
1867
+ ...options?.headers
1868
+ }
1869
+ });
1870
+ }
1871
+ /**
1872
+ * Filter a list's members by entity attributes (read)
1873
+ */
1874
+ static filterCrmListMembers(options) {
1875
+ return (options.client ?? client).post({
1876
+ security: [{
1877
+ name: "x-api-key",
1878
+ type: "apiKey"
1879
+ }, {
1880
+ scheme: "bearer",
1881
+ type: "http"
1882
+ }],
1883
+ url: "/v1/crm/lists/{id}/filter-members",
1884
+ ...options,
1885
+ headers: {
1886
+ "Content-Type": "application/json",
1887
+ ...options?.headers
1888
+ }
1889
+ });
1890
+ }
1891
+ /**
1892
+ * Add many members to a list
1893
+ */
1894
+ static addCrmListMembersBulk(options) {
1895
+ return (options.client ?? client).post({
1896
+ security: [{
1897
+ name: "x-api-key",
1898
+ type: "apiKey"
1899
+ }, {
1900
+ scheme: "bearer",
1901
+ type: "http"
1902
+ }],
1903
+ url: "/v1/crm/lists/{id}/members/bulk",
1904
+ ...options,
1905
+ headers: {
1906
+ "Content-Type": "application/json",
1907
+ ...options?.headers
1908
+ }
1909
+ });
1910
+ }
1911
+ /**
1912
+ * Revoke a member's access to a list
1913
+ */
1914
+ static revokeCrmListAccess(options) {
1915
+ return (options.client ?? client).delete({
1916
+ security: [{
1917
+ name: "x-api-key",
1918
+ type: "apiKey"
1919
+ }, {
1920
+ scheme: "bearer",
1921
+ type: "http"
1922
+ }],
1923
+ url: "/v1/crm/lists/{id}/shares",
1924
+ ...options,
1925
+ headers: {
1926
+ "Content-Type": "application/json",
1927
+ ...options?.headers
1928
+ }
1929
+ });
1930
+ }
1931
+ /**
1932
+ * Get a list's sharing state (+ owner display, canManageSharing)
1933
+ */
1934
+ static getCrmListShares(options) {
1935
+ return (options.client ?? client).get({
1936
+ security: [{
1937
+ name: "x-api-key",
1938
+ type: "apiKey"
1939
+ }, {
1940
+ scheme: "bearer",
1941
+ type: "http"
1942
+ }],
1943
+ url: "/v1/crm/lists/{id}/shares",
1944
+ ...options
1945
+ });
1946
+ }
1947
+ /**
1948
+ * Transfer a list's ownership to another member
1949
+ */
1950
+ static transferCrmListOwnership(options) {
1951
+ return (options.client ?? client).patch({
1952
+ security: [{
1953
+ name: "x-api-key",
1954
+ type: "apiKey"
1955
+ }, {
1956
+ scheme: "bearer",
1957
+ type: "http"
1958
+ }],
1959
+ url: "/v1/crm/lists/{id}/shares",
1960
+ ...options,
1961
+ headers: {
1962
+ "Content-Type": "application/json",
1963
+ ...options?.headers
1964
+ }
1965
+ });
1966
+ }
1967
+ /**
1968
+ * Grant a member access to a list
1969
+ */
1970
+ static grantCrmListAccess(options) {
1971
+ return (options.client ?? client).post({
1972
+ security: [{
1973
+ name: "x-api-key",
1974
+ type: "apiKey"
1975
+ }, {
1976
+ scheme: "bearer",
1977
+ type: "http"
1978
+ }],
1979
+ url: "/v1/crm/lists/{id}/shares",
1980
+ ...options,
1981
+ headers: {
1982
+ "Content-Type": "application/json",
1983
+ ...options?.headers
1984
+ }
1985
+ });
1986
+ }
1987
+ /**
1988
+ * Delete a custom field
1989
+ */
1990
+ static deleteCrmListField(options) {
1991
+ return (options.client ?? client).delete({
1992
+ security: [{
1993
+ name: "x-api-key",
1994
+ type: "apiKey"
1995
+ }, {
1996
+ scheme: "bearer",
1997
+ type: "http"
1998
+ }],
1999
+ url: "/v1/crm/lists/{id}/fields",
2000
+ ...options,
2001
+ headers: {
2002
+ "Content-Type": "application/json",
2003
+ ...options?.headers
2004
+ }
2005
+ });
2006
+ }
2007
+ /**
2008
+ * List the custom fields applicable to a list
2009
+ */
2010
+ static listCrmListFields(options) {
2011
+ return (options.client ?? client).get({
2012
+ security: [{
2013
+ name: "x-api-key",
2014
+ type: "apiKey"
2015
+ }, {
2016
+ scheme: "bearer",
2017
+ type: "http"
2018
+ }],
2019
+ url: "/v1/crm/lists/{id}/fields",
2020
+ ...options
2021
+ });
2022
+ }
2023
+ /**
2024
+ * Update a custom field's mutable props
2025
+ */
2026
+ static updateCrmListField(options) {
2027
+ return (options.client ?? client).patch({
2028
+ security: [{
2029
+ name: "x-api-key",
2030
+ type: "apiKey"
2031
+ }, {
2032
+ scheme: "bearer",
2033
+ type: "http"
2034
+ }],
2035
+ url: "/v1/crm/lists/{id}/fields",
2036
+ ...options,
2037
+ headers: {
2038
+ "Content-Type": "application/json",
2039
+ ...options?.headers
2040
+ }
2041
+ });
2042
+ }
2043
+ /**
2044
+ * Create a list-scoped custom field
2045
+ */
2046
+ static createCrmListField(options) {
2047
+ return (options.client ?? client).post({
2048
+ security: [{
2049
+ name: "x-api-key",
2050
+ type: "apiKey"
2051
+ }, {
2052
+ scheme: "bearer",
2053
+ type: "http"
2054
+ }],
2055
+ url: "/v1/crm/lists/{id}/fields",
2056
+ ...options,
2057
+ headers: {
2058
+ "Content-Type": "application/json",
2059
+ ...options?.headers
2060
+ }
2061
+ });
2062
+ }
2063
+ /**
2064
+ * Replay a template's fields onto a list
2065
+ */
2066
+ static applyCrmListTemplate(options) {
2067
+ return (options.client ?? client).post({
2068
+ security: [{
2069
+ name: "x-api-key",
2070
+ type: "apiKey"
2071
+ }, {
2072
+ scheme: "bearer",
2073
+ type: "http"
2074
+ }],
2075
+ url: "/v1/crm/lists/{id}/apply-template",
2076
+ ...options,
2077
+ headers: {
2078
+ "Content-Type": "application/json",
2079
+ ...options?.headers
2080
+ }
2081
+ });
2082
+ }
2083
+ /**
2084
+ * List the active org's members
2085
+ */
2086
+ static listCrmOrgMembers(options) {
2087
+ return (options?.client ?? client).get({
2088
+ security: [{
2089
+ name: "x-api-key",
2090
+ type: "apiKey"
2091
+ }, {
2092
+ scheme: "bearer",
2093
+ type: "http"
2094
+ }],
2095
+ url: "/v1/crm/org-members",
2096
+ ...options
2097
+ });
2098
+ }
2099
+ /**
2100
+ * List who can be assigned on a list (access-filtered by visibility)
2101
+ */
2102
+ static listCrmListAssignees(options) {
2103
+ return (options.client ?? client).get({
2104
+ security: [{
2105
+ name: "x-api-key",
2106
+ type: "apiKey"
2107
+ }, {
2108
+ scheme: "bearer",
2109
+ type: "http"
2110
+ }],
2111
+ url: "/v1/crm/lists/{id}/assignees",
2112
+ ...options
2113
+ });
2114
+ }
2115
+ /**
2116
+ * Soft-delete a note
2117
+ */
2118
+ static deleteCrmNote(options) {
2119
+ return (options?.client ?? client).delete({
2120
+ security: [{
2121
+ name: "x-api-key",
2122
+ type: "apiKey"
2123
+ }, {
2124
+ scheme: "bearer",
2125
+ type: "http"
2126
+ }],
2127
+ url: "/v1/crm/activity",
2128
+ ...options,
2129
+ headers: {
2130
+ "Content-Type": "application/json",
2131
+ ...options?.headers
2132
+ }
2133
+ });
2134
+ }
2135
+ /**
2136
+ * List a record's activity timeline (newest first)
2137
+ */
2138
+ static listCrmActivity(options) {
2139
+ return (options.client ?? client).get({
2140
+ security: [{
2141
+ name: "x-api-key",
2142
+ type: "apiKey"
2143
+ }, {
2144
+ scheme: "bearer",
2145
+ type: "http"
2146
+ }],
2147
+ url: "/v1/crm/activity",
2148
+ ...options
2149
+ });
2150
+ }
2151
+ /**
2152
+ * Edit a note's body
2153
+ */
2154
+ static editCrmNote(options) {
2155
+ return (options?.client ?? client).patch({
2156
+ security: [{
2157
+ name: "x-api-key",
2158
+ type: "apiKey"
2159
+ }, {
2160
+ scheme: "bearer",
2161
+ type: "http"
2162
+ }],
2163
+ url: "/v1/crm/activity",
2164
+ ...options,
2165
+ headers: {
2166
+ "Content-Type": "application/json",
2167
+ ...options?.headers
2168
+ }
2169
+ });
2170
+ }
2171
+ /**
2172
+ * Append a note to a record's timeline
2173
+ */
2174
+ static addCrmNote(options) {
2175
+ return (options?.client ?? client).post({
2176
+ security: [{
2177
+ name: "x-api-key",
2178
+ type: "apiKey"
2179
+ }, {
2180
+ scheme: "bearer",
2181
+ type: "http"
2182
+ }],
2183
+ url: "/v1/crm/activity",
2184
+ ...options,
2185
+ headers: {
2186
+ "Content-Type": "application/json",
2187
+ ...options?.headers
2188
+ }
2189
+ });
2190
+ }
2191
+ /**
2192
+ * Delete a task
2193
+ */
2194
+ static deleteCrmTask(options) {
2195
+ return (options?.client ?? client).delete({
2196
+ security: [{
2197
+ name: "x-api-key",
2198
+ type: "apiKey"
2199
+ }, {
2200
+ scheme: "bearer",
2201
+ type: "http"
2202
+ }],
2203
+ url: "/v1/crm/tasks",
2204
+ ...options,
2205
+ headers: {
2206
+ "Content-Type": "application/json",
2207
+ ...options?.headers
2208
+ }
2209
+ });
2210
+ }
2211
+ /**
2212
+ * List tasks for a record or for an assignee
2213
+ */
2214
+ static listCrmTasks(options) {
2215
+ return (options?.client ?? client).get({
2216
+ security: [{
2217
+ name: "x-api-key",
2218
+ type: "apiKey"
2219
+ }, {
2220
+ scheme: "bearer",
2221
+ type: "http"
2222
+ }],
2223
+ url: "/v1/crm/tasks",
2224
+ ...options
2225
+ });
2226
+ }
2227
+ /**
2228
+ * Edit a task, or transition it to completed/cancelled
2229
+ */
2230
+ static updateCrmTask(options) {
2231
+ return (options?.client ?? client).patch({
2232
+ security: [{
2233
+ name: "x-api-key",
2234
+ type: "apiKey"
2235
+ }, {
2236
+ scheme: "bearer",
2237
+ type: "http"
2238
+ }],
2239
+ url: "/v1/crm/tasks",
2240
+ ...options,
2241
+ headers: {
2242
+ "Content-Type": "application/json",
2243
+ ...options?.headers
2244
+ }
2245
+ });
2246
+ }
2247
+ /**
2248
+ * Create a task on a record
2249
+ */
2250
+ static createCrmTask(options) {
2251
+ return (options?.client ?? client).post({
2252
+ security: [{
2253
+ name: "x-api-key",
2254
+ type: "apiKey"
2255
+ }, {
2256
+ scheme: "bearer",
2257
+ type: "http"
2258
+ }],
2259
+ url: "/v1/crm/tasks",
2260
+ ...options,
2261
+ headers: {
2262
+ "Content-Type": "application/json",
2263
+ ...options?.headers
2264
+ }
2265
+ });
2266
+ }
2267
+ /**
2268
+ * Cross-record task inbox for the caller's visible records
2269
+ */
2270
+ static listCrmWorkspaceTasks(options) {
2271
+ return (options?.client ?? client).get({
2272
+ security: [{
2273
+ name: "x-api-key",
2274
+ type: "apiKey"
2275
+ }, {
2276
+ scheme: "bearer",
2277
+ type: "http"
2278
+ }],
2279
+ url: "/v1/crm/tasks/workspace",
2280
+ ...options
2281
+ });
2282
+ }
2283
+ /**
2284
+ * Pull calendar changes and apply them (one record, or user-wide)
2285
+ */
2286
+ static reconcileCrmMeetings(options) {
2287
+ return (options?.client ?? client).post({
2288
+ security: [{
2289
+ name: "x-api-key",
2290
+ type: "apiKey"
2291
+ }, {
2292
+ scheme: "bearer",
2293
+ type: "http"
2294
+ }],
2295
+ url: "/v1/crm/meetings/reconcile",
2296
+ ...options,
2297
+ headers: {
2298
+ "Content-Type": "application/json",
2299
+ ...options?.headers
2300
+ }
2301
+ });
2302
+ }
2303
+ /**
2304
+ * Delete a meeting (and its provider event)
2305
+ */
2306
+ static deleteCrmMeeting(options) {
2307
+ return (options.client ?? client).delete({
2308
+ security: [{
2309
+ name: "x-api-key",
2310
+ type: "apiKey"
2311
+ }, {
2312
+ scheme: "bearer",
2313
+ type: "http"
2314
+ }],
2315
+ url: "/v1/crm/meetings",
2316
+ ...options
2317
+ });
2318
+ }
2319
+ /**
2320
+ * List meetings for a record
2321
+ */
2322
+ static listCrmMeetings(options) {
2323
+ return (options.client ?? client).get({
2324
+ security: [{
2325
+ name: "x-api-key",
2326
+ type: "apiKey"
2327
+ }, {
2328
+ scheme: "bearer",
2329
+ type: "http"
2330
+ }],
2331
+ url: "/v1/crm/meetings",
2332
+ ...options
2333
+ });
2334
+ }
2335
+ /**
2336
+ * Update, cancel, complete, or re-sync a meeting
2337
+ */
2338
+ static updateCrmMeeting(options) {
2339
+ return (options?.client ?? client).patch({
2340
+ security: [{
2341
+ name: "x-api-key",
2342
+ type: "apiKey"
2343
+ }, {
2344
+ scheme: "bearer",
2345
+ type: "http"
2346
+ }],
2347
+ url: "/v1/crm/meetings",
2348
+ ...options,
2349
+ headers: {
2350
+ "Content-Type": "application/json",
2351
+ ...options?.headers
2352
+ }
2353
+ });
2354
+ }
2355
+ /**
2356
+ * Create a meeting (optionally syncing it to a calendar provider)
2357
+ */
2358
+ static createCrmMeeting(options) {
2359
+ return (options?.client ?? client).post({
2360
+ security: [{
2361
+ name: "x-api-key",
2362
+ type: "apiKey"
2363
+ }, {
2364
+ scheme: "bearer",
2365
+ type: "http"
2366
+ }],
2367
+ url: "/v1/crm/meetings",
2368
+ ...options,
2369
+ headers: {
2370
+ "Content-Type": "application/json",
2371
+ ...options?.headers
2372
+ }
2373
+ });
2374
+ }
2375
+ /**
2376
+ * Apply the Market-Insights updates the user accepted
2377
+ */
2378
+ static applyCrmMiUpdates(options) {
2379
+ return (options?.client ?? client).post({
2380
+ security: [{
2381
+ name: "x-api-key",
2382
+ type: "apiKey"
2383
+ }, {
2384
+ scheme: "bearer",
2385
+ type: "http"
2386
+ }],
2387
+ url: "/v1/crm/records/apply-mi-updates",
2388
+ ...options,
2389
+ headers: {
2390
+ "Content-Type": "application/json",
2391
+ ...options?.headers
2392
+ }
2393
+ });
2394
+ }
2395
+ /**
2396
+ * Dismiss surfaced MI updates (remember them in the seen-ledger)
2397
+ */
2398
+ static dismissCrmMiUpdates(options) {
2399
+ return (options?.client ?? client).post({
2400
+ security: [{
2401
+ name: "x-api-key",
2402
+ type: "apiKey"
2403
+ }, {
2404
+ scheme: "bearer",
2405
+ type: "http"
2406
+ }],
2407
+ url: "/v1/crm/records/dismiss-mi-updates",
2408
+ ...options,
2409
+ headers: {
2410
+ "Content-Type": "application/json",
2411
+ ...options?.headers
2412
+ }
2413
+ });
2414
+ }
2415
+ /**
2416
+ * Compute which Market-Insights fields differ from a record snapshot
2417
+ */
2418
+ static getCrmMiUpdates(options) {
2419
+ return (options?.client ?? client).post({
2420
+ security: [{
2421
+ name: "x-api-key",
2422
+ type: "apiKey"
2423
+ }, {
2424
+ scheme: "bearer",
2425
+ type: "http"
2426
+ }],
2427
+ url: "/v1/crm/records/mi-updates",
2428
+ ...options,
2429
+ headers: {
2430
+ "Content-Type": "application/json",
2431
+ ...options?.headers
2432
+ }
2433
+ });
2434
+ }
2435
+ /**
2436
+ * Ask the org owner(s) to enable the CRM (membership-gated)
2437
+ */
2438
+ static requestCrmAccess(options) {
2439
+ return (options?.client ?? client).post({
2440
+ security: [{
2441
+ name: "x-api-key",
2442
+ type: "apiKey"
2443
+ }, {
2444
+ scheme: "bearer",
2445
+ type: "http"
2446
+ }],
2447
+ url: "/v1/crm/request-access",
2448
+ ...options,
2449
+ headers: {
2450
+ "Content-Type": "application/json",
2451
+ ...options?.headers
2452
+ }
2453
+ });
2454
+ }
2455
+ /**
2456
+ * Remove a user-added contact method
2457
+ */
2458
+ static removeCrmContactMethod(options) {
2459
+ return (options?.client ?? client).delete({
2460
+ security: [{
2461
+ name: "x-api-key",
2462
+ type: "apiKey"
2463
+ }, {
2464
+ scheme: "bearer",
2465
+ type: "http"
2466
+ }],
2467
+ url: "/v1/crm/contacts",
2468
+ ...options,
2469
+ headers: {
2470
+ "Content-Type": "application/json",
2471
+ ...options?.headers
2472
+ }
2473
+ });
2474
+ }
2475
+ /**
2476
+ * Update or suppress a contact method
2477
+ */
2478
+ static updateCrmContactMethod(options) {
2479
+ return (options?.client ?? client).patch({
2480
+ security: [{
2481
+ name: "x-api-key",
2482
+ type: "apiKey"
2483
+ }, {
2484
+ scheme: "bearer",
2485
+ type: "http"
2486
+ }],
2487
+ url: "/v1/crm/contacts",
2488
+ ...options,
2489
+ headers: {
2490
+ "Content-Type": "application/json",
2491
+ ...options?.headers
2492
+ }
2493
+ });
2494
+ }
2495
+ /**
2496
+ * Add a contact method to a record
2497
+ */
2498
+ static addCrmContactMethod(options) {
2499
+ return (options?.client ?? client).post({
2500
+ security: [{
2501
+ name: "x-api-key",
2502
+ type: "apiKey"
2503
+ }, {
2504
+ scheme: "bearer",
2505
+ type: "http"
2506
+ }],
2507
+ url: "/v1/crm/contacts",
2508
+ ...options,
2509
+ headers: {
2510
+ "Content-Type": "application/json",
2511
+ ...options?.headers
2512
+ }
2513
+ });
2514
+ }
2515
+ /**
2516
+ * List custom fields applicable to a view
2517
+ */
2518
+ static listCrmCustomFields(options) {
2519
+ return (options.client ?? client).get({
2520
+ security: [{
2521
+ name: "x-api-key",
2522
+ type: "apiKey"
2523
+ }, {
2524
+ scheme: "bearer",
2525
+ type: "http"
2526
+ }],
2527
+ url: "/v1/crm/fields",
2528
+ ...options
2529
+ });
2530
+ }
2531
+ /**
2532
+ * Get custom-field values for one or many records
2533
+ */
2534
+ static getCrmCustomValues(options) {
2535
+ return (options?.client ?? client).get({
2536
+ security: [{
2537
+ name: "x-api-key",
2538
+ type: "apiKey"
2539
+ }, {
2540
+ scheme: "bearer",
2541
+ type: "http"
2542
+ }],
2543
+ url: "/v1/crm/custom-values",
2544
+ ...options
2545
+ });
2546
+ }
2547
+ /**
2548
+ * Set a record's value for one custom field
2549
+ */
2550
+ static setCrmCustomValue(options) {
2551
+ return (options?.client ?? client).patch({
2552
+ security: [{
2553
+ name: "x-api-key",
2554
+ type: "apiKey"
2555
+ }, {
2556
+ scheme: "bearer",
2557
+ type: "http"
2558
+ }],
2559
+ url: "/v1/crm/custom-values",
2560
+ ...options,
2561
+ headers: {
2562
+ "Content-Type": "application/json",
2563
+ ...options?.headers
2564
+ }
2565
+ });
2566
+ }
2567
+ /**
2568
+ * Send an outbound email via the user's connected Gmail or Outlook
2569
+ */
2570
+ static sendCrmEmail(options) {
2571
+ return (options?.client ?? client).post({
2572
+ security: [{
2573
+ name: "x-api-key",
2574
+ type: "apiKey"
2575
+ }, {
2576
+ scheme: "bearer",
2577
+ type: "http"
2578
+ }],
2579
+ url: "/v1/crm/email/send",
2580
+ ...options,
2581
+ headers: {
2582
+ "Content-Type": "application/json",
2583
+ ...options?.headers
2584
+ }
2585
+ });
2586
+ }
2587
+ /**
2588
+ * List attribute templates the caller can load
2589
+ */
2590
+ static listCrmTemplates(options) {
2591
+ return (options?.client ?? client).get({
2592
+ security: [{
2593
+ name: "x-api-key",
2594
+ type: "apiKey"
2595
+ }, {
2596
+ scheme: "bearer",
2597
+ type: "http"
2598
+ }],
2599
+ url: "/v1/crm/templates",
2600
+ ...options
2601
+ });
2602
+ }
2603
+ /**
2604
+ * Create a template (optionally captured from a list)
2605
+ */
2606
+ static createCrmTemplate(options) {
2607
+ return (options?.client ?? client).post({
2608
+ security: [{
2609
+ name: "x-api-key",
2610
+ type: "apiKey"
2611
+ }, {
2612
+ scheme: "bearer",
2613
+ type: "http"
2614
+ }],
2615
+ url: "/v1/crm/templates",
2616
+ ...options,
2617
+ headers: {
2618
+ "Content-Type": "application/json",
2619
+ ...options?.headers
2620
+ }
2621
+ });
2622
+ }
2623
+ /**
2624
+ * Delete a template (its fields + shares cascade)
2625
+ */
2626
+ static deleteCrmTemplate(options) {
2627
+ return (options.client ?? client).delete({
2628
+ security: [{
2629
+ name: "x-api-key",
2630
+ type: "apiKey"
2631
+ }, {
2632
+ scheme: "bearer",
2633
+ type: "http"
2634
+ }],
2635
+ url: "/v1/crm/templates/{id}",
2636
+ ...options
2637
+ });
2638
+ }
2639
+ /**
2640
+ * Load one template with its fields
2641
+ */
2642
+ static getCrmTemplate(options) {
2643
+ return (options.client ?? client).get({
2644
+ security: [{
2645
+ name: "x-api-key",
2646
+ type: "apiKey"
2647
+ }, {
2648
+ scheme: "bearer",
2649
+ type: "http"
2650
+ }],
2651
+ url: "/v1/crm/templates/{id}",
2652
+ ...options
2653
+ });
2654
+ }
2655
+ /**
2656
+ * Rename a template
2657
+ */
2658
+ static updateCrmTemplate(options) {
2659
+ return (options.client ?? client).patch({
2660
+ security: [{
2661
+ name: "x-api-key",
2662
+ type: "apiKey"
2663
+ }, {
2664
+ scheme: "bearer",
2665
+ type: "http"
2666
+ }],
2667
+ url: "/v1/crm/templates/{id}",
2668
+ ...options,
2669
+ headers: {
2670
+ "Content-Type": "application/json",
2671
+ ...options?.headers
2672
+ }
2673
+ });
2674
+ }
2675
+ /**
2676
+ * Revoke a teammate's template grant
2677
+ */
2678
+ static unshareCrmTemplate(options) {
2679
+ return (options.client ?? client).delete({
2680
+ security: [{
2681
+ name: "x-api-key",
2682
+ type: "apiKey"
2683
+ }, {
2684
+ scheme: "bearer",
2685
+ type: "http"
2686
+ }],
2687
+ url: "/v1/crm/templates/{id}/shares",
2688
+ ...options
2689
+ });
2690
+ }
2691
+ /**
2692
+ * A template's share panel (owner display, canManage, grantees)
2693
+ */
2694
+ static getCrmTemplateShares(options) {
2695
+ return (options.client ?? client).get({
2696
+ security: [{
2697
+ name: "x-api-key",
2698
+ type: "apiKey"
2699
+ }, {
2700
+ scheme: "bearer",
2701
+ type: "http"
2702
+ }],
2703
+ url: "/v1/crm/templates/{id}/shares",
2704
+ ...options
2705
+ });
2706
+ }
2707
+ /**
2708
+ * Grant a teammate load access to a template
2709
+ */
2710
+ static shareCrmTemplate(options) {
2711
+ return (options.client ?? client).post({
2712
+ security: [{
2713
+ name: "x-api-key",
2714
+ type: "apiKey"
2715
+ }, {
2716
+ scheme: "bearer",
2717
+ type: "http"
2718
+ }],
2719
+ url: "/v1/crm/templates/{id}/shares",
2720
+ ...options,
2721
+ headers: {
2722
+ "Content-Type": "application/json",
2723
+ ...options?.headers
2724
+ }
2725
+ });
2726
+ }
2727
+ /**
2728
+ * Revoke a user's access to a record
2729
+ */
2730
+ static revokeCrmRecordAccess(options) {
2731
+ return (options?.client ?? client).delete({
2732
+ security: [{
2733
+ name: "x-api-key",
2734
+ type: "apiKey"
2735
+ }, {
2736
+ scheme: "bearer",
2737
+ type: "http"
2738
+ }],
2739
+ url: "/v1/crm/record-shares",
2740
+ ...options,
2741
+ headers: {
2742
+ "Content-Type": "application/json",
2743
+ ...options?.headers
2744
+ }
2745
+ });
2746
+ }
2747
+ /**
2748
+ * List the direct shares on a record (+ display, canManageShares)
2749
+ */
2750
+ static listCrmRecordShares(options) {
2751
+ return (options.client ?? client).get({
2752
+ security: [{
2753
+ name: "x-api-key",
2754
+ type: "apiKey"
2755
+ }, {
2756
+ scheme: "bearer",
2757
+ type: "http"
2758
+ }],
2759
+ url: "/v1/crm/record-shares",
2760
+ ...options
2761
+ });
2762
+ }
2763
+ /**
2764
+ * Grant a user access to a record
2765
+ */
2766
+ static grantCrmRecordAccess(options) {
2767
+ return (options?.client ?? client).post({
2768
+ security: [{
2769
+ name: "x-api-key",
2770
+ type: "apiKey"
2771
+ }, {
2772
+ scheme: "bearer",
2773
+ type: "http"
2774
+ }],
2775
+ url: "/v1/crm/record-shares",
2776
+ ...options,
2777
+ headers: {
2778
+ "Content-Type": "application/json",
2779
+ ...options?.headers
2780
+ }
2781
+ });
2782
+ }
2783
+ /**
2784
+ * Who can access a record, and whether the caller may manage shares
2785
+ */
2786
+ static getCrmRecordAccess(options) {
2787
+ return (options.client ?? client).get({
2788
+ security: [{
2789
+ name: "x-api-key",
2790
+ type: "apiKey"
2791
+ }, {
2792
+ scheme: "bearer",
2793
+ type: "http"
2794
+ }],
2795
+ url: "/v1/crm/record-access",
2796
+ ...options
2797
+ });
2798
+ }
2799
+ /**
2800
+ * Typeahead search for email recipients the caller can see
2801
+ */
2802
+ static searchCrmEmailRecipients(options) {
2803
+ return (options.client ?? client).get({
2804
+ security: [{
2805
+ name: "x-api-key",
2806
+ type: "apiKey"
2807
+ }, {
2808
+ scheme: "bearer",
2809
+ type: "http"
2810
+ }],
2811
+ url: "/v1/crm/recipients",
2812
+ ...options
2813
+ });
2814
+ }
2815
+ /**
2816
+ * Bulk import records (create or update), optionally into a list
2817
+ */
2818
+ static importCrmRecords(options) {
2819
+ return (options?.client ?? client).post({
2820
+ security: [{
2821
+ name: "x-api-key",
2822
+ type: "apiKey"
2823
+ }, {
2824
+ scheme: "bearer",
2825
+ type: "http"
2826
+ }],
2827
+ url: "/v1/crm/import",
2828
+ ...options,
2829
+ headers: {
2830
+ "Content-Type": "application/json",
2831
+ ...options?.headers
2832
+ }
2833
+ });
2834
+ }
2835
+ /**
2836
+ * Apply a match to an imported record (link + seed contacts)
2837
+ */
2838
+ static applyCrmEnrichment(options) {
2839
+ return (options?.client ?? client).post({
2840
+ security: [{
2841
+ name: "x-api-key",
2842
+ type: "apiKey"
2843
+ }, {
2844
+ scheme: "bearer",
2845
+ type: "http"
2846
+ }],
2847
+ url: "/v1/crm/enrich/apply",
2848
+ ...options,
2849
+ headers: {
2850
+ "Content-Type": "application/json",
2851
+ ...options?.headers
2852
+ }
2853
+ });
2854
+ }
2855
+ /**
2856
+ * Link a record to a chosen candidate
2857
+ */
2858
+ static linkCrmRecord(options) {
2859
+ return (options?.client ?? client).patch({
2860
+ security: [{
2861
+ name: "x-api-key",
2862
+ type: "apiKey"
2863
+ }, {
2864
+ scheme: "bearer",
2865
+ type: "http"
2866
+ }],
2867
+ url: "/v1/crm/match",
2868
+ ...options,
2869
+ headers: {
2870
+ "Content-Type": "application/json",
2871
+ ...options?.headers
2872
+ }
2873
+ });
2874
+ }
2875
+ /**
2876
+ * Find candidate entities to link an unmatched record to
2877
+ */
2878
+ static searchCrmMatchCandidates(options) {
2879
+ return (options?.client ?? client).post({
2880
+ security: [{
2881
+ name: "x-api-key",
2882
+ type: "apiKey"
2883
+ }, {
2884
+ scheme: "bearer",
2885
+ type: "http"
2886
+ }],
2887
+ url: "/v1/crm/match",
2888
+ ...options,
2889
+ headers: {
2890
+ "Content-Type": "application/json",
2891
+ ...options?.headers
2892
+ }
2893
+ });
2894
+ }
2895
+ /**
2896
+ * Recent-vs-prior 3-month closed-loan units for a set of LOs (by NMLS)
2897
+ */
2898
+ static crmLoMomentum(options) {
2899
+ return (options?.client ?? client).post({
2900
+ security: [{
2901
+ name: "x-api-key",
2902
+ type: "apiKey"
2903
+ }, {
2904
+ scheme: "bearer",
2905
+ type: "http"
2906
+ }],
2907
+ url: "/v1/crm/lo-momentum",
2908
+ ...options,
2909
+ headers: {
2910
+ "Content-Type": "application/json",
2911
+ ...options?.headers
2912
+ }
2913
+ });
2914
+ }
2915
+ /**
2916
+ * Loan-type mix (percentage + top type) for a single LO (by NMLS)
2917
+ */
2918
+ static crmLoLoanMix(options) {
2919
+ return (options?.client ?? client).post({
2920
+ security: [{
2921
+ name: "x-api-key",
2922
+ type: "apiKey"
2923
+ }, {
2924
+ scheme: "bearer",
2925
+ type: "http"
2926
+ }],
2927
+ url: "/v1/crm/lo-loan-mix",
2928
+ ...options,
2929
+ headers: {
2930
+ "Content-Type": "application/json",
2931
+ ...options?.headers
2932
+ }
2933
+ });
2934
+ }
2935
+ /**
2936
+ * Rank an agent's LO partners by product-mix + size similarity to a viewing LO
2937
+ */
2938
+ static crmSimilarOriginators(options) {
2939
+ return (options?.client ?? client).post({
2940
+ security: [{
2941
+ name: "x-api-key",
2942
+ type: "apiKey"
2943
+ }, {
2944
+ scheme: "bearer",
2945
+ type: "http"
2946
+ }],
2947
+ url: "/v1/crm/similar-originators",
2948
+ ...options,
2949
+ headers: {
2950
+ "Content-Type": "application/json",
2951
+ ...options?.headers
2952
+ }
2953
+ });
2954
+ }
2955
+ /**
2956
+ * Current-sponsor office location + sponsored flag for a set of LOs
2957
+ */
2958
+ static crmLoSponsorLocation(options) {
2959
+ return (options?.client ?? client).post({
2960
+ security: [{
2961
+ name: "x-api-key",
2962
+ type: "apiKey"
2963
+ }, {
2964
+ scheme: "bearer",
2965
+ type: "http"
2966
+ }],
2967
+ url: "/v1/crm/lo-sponsor-location",
2968
+ ...options,
2969
+ headers: {
2970
+ "Content-Type": "application/json",
2971
+ ...options?.headers
2972
+ }
2973
+ });
2974
+ }
2975
+ /**
2976
+ * Bank / Credit Union / Broker / Retail channel per LO (by NMLS)
2977
+ */
2978
+ static crmLenderChannels(options) {
2979
+ return (options?.client ?? client).post({
2980
+ security: [{
2981
+ name: "x-api-key",
2982
+ type: "apiKey"
2983
+ }, {
2984
+ scheme: "bearer",
2985
+ type: "http"
2986
+ }],
2987
+ url: "/v1/crm/lender-channels",
2988
+ ...options,
2989
+ headers: {
2990
+ "Content-Type": "application/json",
2991
+ ...options?.headers
2992
+ }
2993
+ });
2994
+ }
2995
+ /**
2996
+ * The current user's still-live call (for reload resume)
2997
+ */
2998
+ static getCrmActiveCall(options) {
2999
+ return (options?.client ?? client).get({
3000
+ security: [{
3001
+ name: "x-api-key",
3002
+ type: "apiKey"
3003
+ }, {
3004
+ scheme: "bearer",
3005
+ type: "http"
3006
+ }],
3007
+ url: "/v1/crm/calls/active",
3008
+ ...options
3009
+ });
3010
+ }
3011
+ /**
3012
+ * Persist an AI analysis of a recorded call
3013
+ */
3014
+ static setCrmCallAnalysis(options) {
3015
+ return (options?.client ?? client).post({
3016
+ security: [{
3017
+ name: "x-api-key",
3018
+ type: "apiKey"
3019
+ }, {
3020
+ scheme: "bearer",
3021
+ type: "http"
3022
+ }],
3023
+ url: "/v1/crm/calls/analysis",
3024
+ ...options,
3025
+ headers: {
3026
+ "Content-Type": "application/json",
3027
+ ...options?.headers
3028
+ }
3029
+ });
3030
+ }
3031
+ /**
3032
+ * Poll a recorded call's transcript (advances the pipeline)
3033
+ */
3034
+ static getCrmCallTranscript(options) {
3035
+ return (options.client ?? client).get({
3036
+ security: [{
3037
+ name: "x-api-key",
3038
+ type: "apiKey"
3039
+ }, {
3040
+ scheme: "bearer",
3041
+ type: "http"
3042
+ }],
3043
+ url: "/v1/crm/calls/transcript",
3044
+ ...options
3045
+ });
3046
+ }
3047
+ /**
3048
+ * Remove a caller ID from the registry
3049
+ */
3050
+ static deleteCrmCallerId(options) {
3051
+ return (options.client ?? client).delete({
3052
+ security: [{
3053
+ name: "x-api-key",
3054
+ type: "apiKey"
3055
+ }, {
3056
+ scheme: "bearer",
3057
+ type: "http"
3058
+ }],
3059
+ url: "/v1/crm/caller-ids",
3060
+ ...options
3061
+ });
3062
+ }
3063
+ /**
3064
+ * List the current user's caller IDs
3065
+ */
3066
+ static listCrmCallerIds(options) {
3067
+ return (options?.client ?? client).get({
3068
+ security: [{
3069
+ name: "x-api-key",
3070
+ type: "apiKey"
3071
+ }, {
3072
+ scheme: "bearer",
3073
+ type: "http"
3074
+ }],
3075
+ url: "/v1/crm/caller-ids",
3076
+ ...options
3077
+ });
3078
+ }
3079
+ /**
3080
+ * Make a verified caller ID the default
3081
+ */
3082
+ static setDefaultCrmCallerId(options) {
3083
+ return (options?.client ?? client).patch({
3084
+ security: [{
3085
+ name: "x-api-key",
3086
+ type: "apiKey"
3087
+ }, {
3088
+ scheme: "bearer",
3089
+ type: "http"
3090
+ }],
3091
+ url: "/v1/crm/caller-ids",
3092
+ ...options,
3093
+ headers: {
3094
+ "Content-Type": "application/json",
3095
+ ...options?.headers
3096
+ }
3097
+ });
3098
+ }
3099
+ /**
3100
+ * Start caller-ID verification or re-check its outcome
3101
+ */
3102
+ static actionCrmCallerId(options) {
3103
+ return (options?.client ?? client).post({
3104
+ security: [{
3105
+ name: "x-api-key",
3106
+ type: "apiKey"
3107
+ }, {
3108
+ scheme: "bearer",
3109
+ type: "http"
3110
+ }],
3111
+ url: "/v1/crm/caller-ids",
3112
+ ...options,
3113
+ headers: {
3114
+ "Content-Type": "application/json",
3115
+ ...options?.headers
3116
+ }
3117
+ });
3118
+ }
3119
+ /**
3120
+ * Poll one call's status (syncs + finalizes on terminal)
3121
+ */
3122
+ static getCrmCall(options) {
3123
+ return (options.client ?? client).get({
3124
+ security: [{
3125
+ name: "x-api-key",
3126
+ type: "apiKey"
3127
+ }, {
3128
+ scheme: "bearer",
3129
+ type: "http"
3130
+ }],
3131
+ url: "/v1/crm/calls",
3132
+ ...options
3133
+ });
3134
+ }
3135
+ /**
3136
+ * Hang up an in-flight call
3137
+ */
3138
+ static hangupCrmCall(options) {
3139
+ return (options?.client ?? client).patch({
3140
+ security: [{
3141
+ name: "x-api-key",
3142
+ type: "apiKey"
3143
+ }, {
3144
+ scheme: "bearer",
3145
+ type: "http"
3146
+ }],
3147
+ url: "/v1/crm/calls",
3148
+ ...options,
3149
+ headers: {
3150
+ "Content-Type": "application/json",
3151
+ ...options?.headers
3152
+ }
3153
+ });
3154
+ }
3155
+ /**
3156
+ * Place an outbound bridge call
3157
+ */
3158
+ static placeCrmCall(options) {
3159
+ return (options?.client ?? client).post({
3160
+ security: [{
3161
+ name: "x-api-key",
3162
+ type: "apiKey"
3163
+ }, {
3164
+ scheme: "bearer",
3165
+ type: "http"
3166
+ }],
3167
+ url: "/v1/crm/calls",
3168
+ ...options,
3169
+ headers: {
3170
+ "Content-Type": "application/json",
3171
+ ...options?.headers
3172
+ }
3173
+ });
3174
+ }
3175
+ };
3176
+ var Search = class {
3177
+ /**
3178
+ * Instant multi-entity typeahead search
3179
+ * 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).
3180
+ */
3181
+ static instant(options) {
3182
+ return (options?.client ?? client).post({
3183
+ security: [{
3184
+ name: "x-api-key",
3185
+ type: "apiKey"
3186
+ }, {
3187
+ scheme: "bearer",
3188
+ type: "http"
3189
+ }],
3190
+ url: "/v1/instant-search",
3191
+ ...options,
3192
+ headers: {
3193
+ "Content-Type": "application/json",
3194
+ ...options?.headers
3195
+ }
3196
+ });
3197
+ }
3198
+ /**
3199
+ * Mint a scoped search token
3200
+ * 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).
3201
+ */
3202
+ static getSearchToken(options) {
3203
+ return (options?.client ?? client).get({
3204
+ security: [{
3205
+ name: "x-api-key",
3206
+ type: "apiKey"
3207
+ }, {
3208
+ scheme: "bearer",
3209
+ type: "http"
3210
+ }],
3211
+ url: "/v1/search-token",
3212
+ ...options
3213
+ });
3214
+ }
3215
+ };
3216
+ var Lenders = class {
3217
+ /**
3218
+ * Search lenders with filters
3219
+ * 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.
3220
+ */
3221
+ static list(options) {
3222
+ return (options?.client ?? client).post({
3223
+ security: [{
3224
+ name: "x-api-key",
3225
+ type: "apiKey"
3226
+ }, {
3227
+ scheme: "bearer",
3228
+ type: "http"
3229
+ }],
3230
+ url: "/v1/lenders",
3231
+ ...options,
3232
+ headers: {
3233
+ "Content-Type": "application/json",
3234
+ ...options?.headers
3235
+ }
3236
+ });
3237
+ }
3238
+ /**
3239
+ * Get lender by ID
3240
+ */
3241
+ static get(options) {
3242
+ return (options.client ?? client).get({
3243
+ security: [{
3244
+ name: "x-api-key",
3245
+ type: "apiKey"
3246
+ }, {
3247
+ scheme: "bearer",
3248
+ type: "http"
3249
+ }],
3250
+ url: "/v1/lenders/{id}",
3251
+ ...options
3252
+ });
3253
+ }
3254
+ };
3255
+ var Loans = class {
3256
+ /**
3257
+ * Search individual loan records with filters
3258
+ * 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.)
3259
+ */
3260
+ static list(options) {
3261
+ return (options?.client ?? client).post({
3262
+ security: [{
3263
+ name: "x-api-key",
3264
+ type: "apiKey"
3265
+ }, {
3266
+ scheme: "bearer",
3267
+ type: "http"
3268
+ }],
3269
+ url: "/v1/loans",
3270
+ ...options,
3271
+ headers: {
3272
+ "Content-Type": "application/json",
3273
+ ...options?.headers
3274
+ }
3275
+ });
3276
+ }
3277
+ /**
3278
+ * Get loan by ID
3279
+ */
3280
+ static get(options) {
3281
+ return (options.client ?? client).get({
3282
+ security: [{
3283
+ name: "x-api-key",
3284
+ type: "apiKey"
3285
+ }, {
3286
+ scheme: "bearer",
3287
+ type: "http"
3288
+ }],
3289
+ url: "/v1/loans/{id}",
3290
+ ...options
3291
+ });
3292
+ }
3293
+ /**
3294
+ * Market summary with previous-period comparison
3295
+ */
3296
+ static analyticsSummary(options) {
3297
+ return (options?.client ?? client).post({
3298
+ security: [{
3299
+ name: "x-api-key",
3300
+ type: "apiKey"
3301
+ }, {
3302
+ scheme: "bearer",
3303
+ type: "http"
3304
+ }],
3305
+ url: "/v1/loans/analytics/summary",
3306
+ ...options,
3307
+ headers: {
3308
+ "Content-Type": "application/json",
3309
+ ...options?.headers
3310
+ }
3311
+ });
3312
+ }
3313
+ /**
3314
+ * Volume / units over time
3315
+ */
3316
+ static analyticsTimeSeries(options) {
3317
+ return (options?.client ?? client).post({
3318
+ security: [{
3319
+ name: "x-api-key",
3320
+ type: "apiKey"
3321
+ }, {
3322
+ scheme: "bearer",
3323
+ type: "http"
3324
+ }],
3325
+ url: "/v1/loans/analytics/time-series",
3326
+ ...options,
3327
+ headers: {
3328
+ "Content-Type": "application/json",
3329
+ ...options?.headers
3330
+ }
3331
+ });
3332
+ }
3333
+ /**
3334
+ * Configurable chart data (measure × slice)
3335
+ */
3336
+ static analyticsChart(options) {
3337
+ return (options?.client ?? client).post({
3338
+ security: [{
3339
+ name: "x-api-key",
3340
+ type: "apiKey"
3341
+ }, {
3342
+ scheme: "bearer",
3343
+ type: "http"
3344
+ }],
3345
+ url: "/v1/loans/analytics/chart",
3346
+ ...options,
3347
+ headers: {
3348
+ "Content-Type": "application/json",
3349
+ ...options?.headers
3350
+ }
3351
+ });
3352
+ }
3353
+ /**
3354
+ * Submit a bulk-delivery job for loans
3355
+ * 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.
3356
+ */
3357
+ static submitLoansBulkDelivery(options) {
3358
+ return (options?.client ?? client).post({
3359
+ security: [{
3360
+ name: "x-api-key",
3361
+ type: "apiKey"
3362
+ }, {
3363
+ scheme: "bearer",
3364
+ type: "http"
3365
+ }],
3366
+ url: "/v1/loans/bulk-delivery",
3367
+ ...options,
3368
+ headers: {
3369
+ "Content-Type": "application/json",
3370
+ ...options?.headers
3371
+ }
3372
+ });
3373
+ }
3374
+ /**
3375
+ * Get bulk-delivery job status for loans
3376
+ */
3377
+ static getLoansBulkDeliveryJob(options) {
3378
+ return (options.client ?? client).get({
3379
+ security: [{
3380
+ name: "x-api-key",
3381
+ type: "apiKey"
3382
+ }, {
3383
+ scheme: "bearer",
3384
+ type: "http"
3385
+ }],
3386
+ url: "/v1/loans/bulk-delivery/{jobId}",
3387
+ ...options
3388
+ });
3389
+ }
3390
+ };
3391
+ var Locations = class {
3392
+ /**
3393
+ * Autocomplete location search
3394
+ * 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.
3395
+ */
3396
+ static suggest(options) {
3397
+ return (options.client ?? client).get({
3398
+ security: [{
3399
+ name: "x-api-key",
3400
+ type: "apiKey"
3401
+ }, {
3402
+ scheme: "bearer",
3403
+ type: "http"
3404
+ }],
3405
+ url: "/v1/locations/suggest",
3406
+ ...options
3407
+ });
3408
+ }
3409
+ /**
3410
+ * Retrieve normalized location details
3411
+ * 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.
3412
+ */
3413
+ static retrieve(options) {
3414
+ return (options.client ?? client).get({
3415
+ security: [{
3416
+ name: "x-api-key",
3417
+ type: "apiKey"
3418
+ }, {
3419
+ scheme: "bearer",
3420
+ type: "http"
3421
+ }],
3422
+ url: "/v1/locations/retrieve/{mapboxId}",
3423
+ ...options
3424
+ });
3425
+ }
3426
+ };
3427
+ var Market = class {
3428
+ /**
3429
+ * Search aggregated market data with filters
3430
+ * Search aggregated loan origination market data. Filterable dimensions cover geography (state, county, zip), product (loan purpose / type / amortization), borrower demographics, and loan numerics.
3431
+ */
3432
+ static list(options) {
3433
+ return (options?.client ?? client).post({
3434
+ security: [{
3435
+ name: "x-api-key",
3436
+ type: "apiKey"
3437
+ }, {
3438
+ scheme: "bearer",
3439
+ type: "http"
3440
+ }],
3441
+ url: "/v1/market",
3442
+ ...options,
3443
+ headers: {
3444
+ "Content-Type": "application/json",
3445
+ ...options?.headers
3446
+ }
3447
+ });
3448
+ }
3449
+ /**
3450
+ * Market summary (volume, units, rate, loan amount, credit score, LTV, DTI, income, etc.) with previous-period comparison
3451
+ */
3452
+ static analyticsSummary(options) {
3453
+ return (options?.client ?? client).post({
3454
+ security: [{
3455
+ name: "x-api-key",
3456
+ type: "apiKey"
3457
+ }, {
3458
+ scheme: "bearer",
3459
+ type: "http"
3460
+ }],
3461
+ url: "/v1/market/analytics/summary",
3462
+ ...options,
3463
+ headers: {
3464
+ "Content-Type": "application/json",
3465
+ ...options?.headers
3466
+ }
3467
+ });
3468
+ }
3469
+ /**
3470
+ * Market metrics over time
3471
+ */
3472
+ static analyticsTimeSeries(options) {
3473
+ return (options?.client ?? client).post({
3474
+ security: [{
3475
+ name: "x-api-key",
3476
+ type: "apiKey"
3477
+ }, {
3478
+ scheme: "bearer",
3479
+ type: "http"
3480
+ }],
3481
+ url: "/v1/market/analytics/time-series",
3482
+ ...options,
3483
+ headers: {
3484
+ "Content-Type": "application/json",
3485
+ ...options?.headers
3486
+ }
3487
+ });
3488
+ }
3489
+ /**
3490
+ * Market measure by dimension breakdown
3491
+ */
3492
+ static analyticsChart(options) {
3493
+ return (options?.client ?? client).post({
3494
+ security: [{
3495
+ name: "x-api-key",
3496
+ type: "apiKey"
3497
+ }, {
3498
+ scheme: "bearer",
3499
+ type: "http"
3500
+ }],
3501
+ url: "/v1/market/analytics/chart",
3502
+ ...options,
3503
+ headers: {
3504
+ "Content-Type": "application/json",
3505
+ ...options?.headers
3506
+ }
3507
+ });
3508
+ }
3509
+ };
3510
+ var Offices = class {
3511
+ /**
3512
+ * Agents at an office
3513
+ */
3514
+ static agents(options) {
3515
+ return (options?.client ?? client).post({
3516
+ security: [{
3517
+ name: "x-api-key",
3518
+ type: "apiKey"
3519
+ }, {
3520
+ scheme: "bearer",
3521
+ type: "http"
3522
+ }],
3523
+ url: "/v1/offices/agents",
3524
+ ...options,
3525
+ headers: {
3526
+ "Content-Type": "application/json",
3527
+ ...options?.headers
3528
+ }
3529
+ });
3530
+ }
3531
+ /**
3532
+ * Search real-estate offices with filters
3533
+ * 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.
3534
+ */
3535
+ static list(options) {
3536
+ return (options?.client ?? client).post({
3537
+ security: [{
3538
+ name: "x-api-key",
3539
+ type: "apiKey"
3540
+ }, {
3541
+ scheme: "bearer",
3542
+ type: "http"
3543
+ }],
3544
+ url: "/v1/offices",
3545
+ ...options,
3546
+ headers: {
3547
+ "Content-Type": "application/json",
3548
+ ...options?.headers
3549
+ }
3550
+ });
3551
+ }
3552
+ /**
3553
+ * Get office by key with office-level production
3554
+ */
3555
+ static get(options) {
3556
+ return (options.client ?? client).get({
3557
+ security: [{
3558
+ name: "x-api-key",
3559
+ type: "apiKey"
3560
+ }, {
3561
+ scheme: "bearer",
3562
+ type: "http"
3563
+ }],
3564
+ url: "/v1/offices/{id}",
3565
+ ...options
3566
+ });
3567
+ }
3568
+ };
3569
+ var Originators = class {
3570
+ /**
3571
+ * Search originators with filters
3572
+ * 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.)
3573
+ */
3574
+ static list(options) {
3575
+ return (options?.client ?? client).post({
3576
+ security: [{
3577
+ name: "x-api-key",
3578
+ type: "apiKey"
3579
+ }, {
3580
+ scheme: "bearer",
3581
+ type: "http"
3582
+ }],
3583
+ url: "/v1/originators",
3584
+ ...options,
3585
+ headers: {
3586
+ "Content-Type": "application/json",
3587
+ ...options?.headers
3588
+ }
3589
+ });
3590
+ }
3591
+ /**
3592
+ * Get originator by NMLS ID
3593
+ */
3594
+ static get(options) {
3595
+ return (options.client ?? client).get({
3596
+ security: [{
3597
+ name: "x-api-key",
3598
+ type: "apiKey"
3599
+ }, {
3600
+ scheme: "bearer",
3601
+ type: "http"
3602
+ }],
3603
+ url: "/v1/originators/{nmlsId}",
3604
+ ...options
3605
+ });
3606
+ }
3607
+ /**
3608
+ * Production summary with previous-period comparison
3609
+ */
3610
+ static analyticsSummary(options) {
3611
+ return (options?.client ?? client).post({
3612
+ security: [{
3613
+ name: "x-api-key",
3614
+ type: "apiKey"
3615
+ }, {
3616
+ scheme: "bearer",
3617
+ type: "http"
3618
+ }],
3619
+ url: "/v1/originators/analytics/summary",
3620
+ ...options,
3621
+ headers: {
3622
+ "Content-Type": "application/json",
3623
+ ...options?.headers
3624
+ }
3625
+ });
3626
+ }
3627
+ /**
3628
+ * Originator volume / units over time
3629
+ */
3630
+ static analyticsTimeSeries(options) {
3631
+ return (options?.client ?? client).post({
3632
+ security: [{
3633
+ name: "x-api-key",
3634
+ type: "apiKey"
3635
+ }, {
3636
+ scheme: "bearer",
3637
+ type: "http"
3638
+ }],
3639
+ url: "/v1/originators/analytics/time-series",
3640
+ ...options,
3641
+ headers: {
3642
+ "Content-Type": "application/json",
3643
+ ...options?.headers
3644
+ }
3645
+ });
3646
+ }
3647
+ /**
3648
+ * Configurable chart (measure × slice) over one LO's loans
3649
+ */
3650
+ static analyticsChart(options) {
3651
+ return (options?.client ?? client).post({
3652
+ security: [{
3653
+ name: "x-api-key",
3654
+ type: "apiKey"
3655
+ }, {
3656
+ scheme: "bearer",
3657
+ type: "http"
3658
+ }],
3659
+ url: "/v1/originators/analytics/chart",
3660
+ ...options,
3661
+ headers: {
3662
+ "Content-Type": "application/json",
3663
+ ...options?.headers
3664
+ }
3665
+ });
3666
+ }
3667
+ /**
3668
+ * Loans originated by this LO
3669
+ */
3670
+ static loans(options) {
3671
+ return (options.client ?? client).post({
3672
+ security: [{
3673
+ name: "x-api-key",
3674
+ type: "apiKey"
3675
+ }, {
3676
+ scheme: "bearer",
3677
+ type: "http"
3678
+ }],
3679
+ url: "/v1/originators/{nmlsId}/loans",
3680
+ ...options,
3681
+ headers: {
3682
+ "Content-Type": "application/json",
3683
+ ...options?.headers
3684
+ }
3685
+ });
3686
+ }
3687
+ /**
3688
+ * Real-estate agents this LO co-closed with
3689
+ */
3690
+ static agents(options) {
3691
+ return (options.client ?? client).post({
3692
+ security: [{
3693
+ name: "x-api-key",
3694
+ type: "apiKey"
3695
+ }, {
3696
+ scheme: "bearer",
3697
+ type: "http"
3698
+ }],
3699
+ url: "/v1/originators/{nmlsId}/breakdowns/agents",
3700
+ ...options,
3701
+ headers: {
3702
+ "Content-Type": "application/json",
3703
+ ...options?.headers
3704
+ }
3705
+ });
3706
+ }
3707
+ /**
3708
+ * Funding companies (employer history) for this LO
3709
+ */
3710
+ static companies(options) {
3711
+ return (options.client ?? client).post({
3712
+ security: [{
3713
+ name: "x-api-key",
3714
+ type: "apiKey"
3715
+ }, {
3716
+ scheme: "bearer",
3717
+ type: "http"
3718
+ }],
3719
+ url: "/v1/originators/{nmlsId}/breakdowns/companies",
3720
+ ...options,
3721
+ headers: {
3722
+ "Content-Type": "application/json",
3723
+ ...options?.headers
3724
+ }
3725
+ });
3726
+ }
3727
+ /**
3728
+ * Lenders this LO has originated through
3729
+ */
3730
+ static lenders(options) {
3731
+ return (options.client ?? client).post({
3732
+ security: [{
3733
+ name: "x-api-key",
3734
+ type: "apiKey"
3735
+ }, {
3736
+ scheme: "bearer",
3737
+ type: "http"
3738
+ }],
3739
+ url: "/v1/originators/{nmlsId}/breakdowns/lenders",
3740
+ ...options,
3741
+ headers: {
3742
+ "Content-Type": "application/json",
3743
+ ...options?.headers
3744
+ }
3745
+ });
3746
+ }
3747
+ /**
3748
+ * Zip-code volume breakdown
3749
+ */
3750
+ static zipCodes(options) {
3751
+ return (options.client ?? client).post({
3752
+ security: [{
3753
+ name: "x-api-key",
3754
+ type: "apiKey"
3755
+ }, {
3756
+ scheme: "bearer",
3757
+ type: "http"
3758
+ }],
3759
+ url: "/v1/originators/{nmlsId}/breakdowns/zip-codes",
3760
+ ...options,
3761
+ headers: {
3762
+ "Content-Type": "application/json",
3763
+ ...options?.headers
3764
+ }
3765
+ });
3766
+ }
3767
+ /**
3768
+ * Broker shops this LO originated loans through (name-resolved)
3769
+ */
3770
+ static brokers(options) {
3771
+ return (options.client ?? client).post({
3772
+ security: [{
3773
+ name: "x-api-key",
3774
+ type: "apiKey"
3775
+ }, {
3776
+ scheme: "bearer",
3777
+ type: "http"
3778
+ }],
3779
+ url: "/v1/originators/{nmlsId}/breakdowns/brokers",
3780
+ ...options,
3781
+ headers: {
3782
+ "Content-Type": "application/json",
3783
+ ...options?.headers
3784
+ }
3785
+ });
3786
+ }
3787
+ /**
3788
+ * Branch (broker) history for this LO
3789
+ */
3790
+ static branches(options) {
3791
+ return (options.client ?? client).post({
3792
+ security: [{
3793
+ name: "x-api-key",
3794
+ type: "apiKey"
3795
+ }, {
3796
+ scheme: "bearer",
3797
+ type: "http"
3798
+ }],
3799
+ url: "/v1/originators/{nmlsId}/breakdowns/branches",
3800
+ ...options,
3801
+ headers: {
3802
+ "Content-Type": "application/json",
3803
+ ...options?.headers
3804
+ }
3805
+ });
3806
+ }
3807
+ /**
3808
+ * City volume breakdown across this LO's loans
3809
+ */
3810
+ static citiesBreakdown(options) {
3811
+ return (options.client ?? client).post({
3812
+ security: [{
3813
+ name: "x-api-key",
3814
+ type: "apiKey"
3815
+ }, {
3816
+ scheme: "bearer",
3817
+ type: "http"
3818
+ }],
3819
+ url: "/v1/originators/{nmlsId}/breakdowns/cities",
3820
+ ...options,
3821
+ headers: {
3822
+ "Content-Type": "application/json",
3823
+ ...options?.headers
3824
+ }
3825
+ });
3826
+ }
3827
+ /**
3828
+ * State volume breakdown across this LO's loans
3829
+ */
3830
+ static statesBreakdown(options) {
3831
+ return (options.client ?? client).post({
3832
+ security: [{
3833
+ name: "x-api-key",
3834
+ type: "apiKey"
3835
+ }, {
3836
+ scheme: "bearer",
3837
+ type: "http"
3838
+ }],
3839
+ url: "/v1/originators/{nmlsId}/breakdowns/states",
3840
+ ...options,
3841
+ headers: {
3842
+ "Content-Type": "application/json",
3843
+ ...options?.headers
3844
+ }
3845
+ });
3846
+ }
3847
+ /**
3848
+ * County (FIPS) volume breakdown across this LO's loans
3849
+ */
3850
+ static countiesBreakdown(options) {
3851
+ return (options.client ?? client).post({
3852
+ security: [{
3853
+ name: "x-api-key",
3854
+ type: "apiKey"
3855
+ }, {
3856
+ scheme: "bearer",
3857
+ type: "http"
3858
+ }],
3859
+ url: "/v1/originators/{nmlsId}/breakdowns/counties",
3860
+ ...options,
3861
+ headers: {
3862
+ "Content-Type": "application/json",
3863
+ ...options?.headers
3864
+ }
3865
+ });
3866
+ }
3867
+ /**
3868
+ * Real-estate offices this LO closed through (with sponsoring company)
3869
+ */
3870
+ static offices(options) {
3871
+ return (options.client ?? client).post({
3872
+ security: [{
3873
+ name: "x-api-key",
3874
+ type: "apiKey"
3875
+ }, {
3876
+ scheme: "bearer",
3877
+ type: "http"
3878
+ }],
3879
+ url: "/v1/originators/{nmlsId}/breakdowns/offices",
3880
+ ...options,
3881
+ headers: {
3882
+ "Content-Type": "application/json",
3883
+ ...options?.headers
3884
+ }
3885
+ });
3886
+ }
3887
+ /**
3888
+ * Submit a bulk-delivery job for originators
3889
+ * 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.
3890
+ */
3891
+ static submitOriginatorsBulkDelivery(options) {
3892
+ return (options?.client ?? client).post({
3893
+ security: [{
3894
+ name: "x-api-key",
3895
+ type: "apiKey"
3896
+ }, {
3897
+ scheme: "bearer",
3898
+ type: "http"
3899
+ }],
3900
+ url: "/v1/originators/bulk-delivery",
3901
+ ...options,
3902
+ headers: {
3903
+ "Content-Type": "application/json",
3904
+ ...options?.headers
3905
+ }
3906
+ });
3907
+ }
3908
+ /**
3909
+ * Get bulk-delivery job status for originators
3910
+ */
3911
+ static getOriginatorsBulkDeliveryJob(options) {
3912
+ return (options.client ?? client).get({
3913
+ security: [{
3914
+ name: "x-api-key",
3915
+ type: "apiKey"
3916
+ }, {
3917
+ scheme: "bearer",
3918
+ type: "http"
3919
+ }],
3920
+ url: "/v1/originators/bulk-delivery/{jobId}",
3921
+ ...options
3922
+ });
3923
+ }
3924
+ /**
3925
+ * Search originators with filters
3926
+ * 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.)
3927
+ */
3928
+ static listOriginators2(options) {
3929
+ return (options?.client ?? client).post({
3930
+ security: [{
3931
+ name: "x-api-key",
3932
+ type: "apiKey"
3933
+ }, {
3934
+ scheme: "bearer",
3935
+ type: "http"
3936
+ }],
3937
+ url: "/originators",
3938
+ ...options,
3939
+ headers: {
3940
+ "Content-Type": "application/json",
3941
+ ...options?.headers
3942
+ }
3943
+ });
3944
+ }
3945
+ /**
3946
+ * Get originator by NMLS ID
3947
+ */
3948
+ static getOriginator2(options) {
3949
+ return (options.client ?? client).get({
3950
+ security: [{
3951
+ name: "x-api-key",
3952
+ type: "apiKey"
3953
+ }, {
3954
+ scheme: "bearer",
3955
+ type: "http"
3956
+ }],
3957
+ url: "/originators/{nmlsId}",
3958
+ ...options
3959
+ });
3960
+ }
3961
+ /**
3962
+ * Production summary with previous-period comparison
3963
+ */
3964
+ static analyticsSummary2(options) {
3965
+ return (options?.client ?? client).post({
3966
+ security: [{
3967
+ name: "x-api-key",
3968
+ type: "apiKey"
3969
+ }, {
3970
+ scheme: "bearer",
3971
+ type: "http"
3972
+ }],
3973
+ url: "/originators/analytics/summary",
3974
+ ...options,
3975
+ headers: {
3976
+ "Content-Type": "application/json",
3977
+ ...options?.headers
3978
+ }
3979
+ });
3980
+ }
3981
+ /**
3982
+ * Originator volume / units over time
3983
+ */
3984
+ static analyticsTimeSeries2(options) {
3985
+ return (options?.client ?? client).post({
3986
+ security: [{
3987
+ name: "x-api-key",
3988
+ type: "apiKey"
3989
+ }, {
3990
+ scheme: "bearer",
3991
+ type: "http"
3992
+ }],
3993
+ url: "/originators/analytics/time-series",
3994
+ ...options,
3995
+ headers: {
3996
+ "Content-Type": "application/json",
3997
+ ...options?.headers
3998
+ }
3999
+ });
4000
+ }
4001
+ /**
4002
+ * Configurable chart (measure × slice) over one LO's loans
4003
+ */
4004
+ static analyticsChart2(options) {
4005
+ return (options?.client ?? client).post({
4006
+ security: [{
4007
+ name: "x-api-key",
4008
+ type: "apiKey"
4009
+ }, {
4010
+ scheme: "bearer",
4011
+ type: "http"
4012
+ }],
4013
+ url: "/originators/analytics/chart",
4014
+ ...options,
4015
+ headers: {
4016
+ "Content-Type": "application/json",
4017
+ ...options?.headers
4018
+ }
4019
+ });
4020
+ }
4021
+ /**
4022
+ * Loans originated by this LO
4023
+ */
4024
+ static loans2(options) {
4025
+ return (options.client ?? client).post({
4026
+ security: [{
4027
+ name: "x-api-key",
4028
+ type: "apiKey"
4029
+ }, {
4030
+ scheme: "bearer",
4031
+ type: "http"
4032
+ }],
4033
+ url: "/originators/{nmlsId}/loans",
4034
+ ...options,
4035
+ headers: {
4036
+ "Content-Type": "application/json",
4037
+ ...options?.headers
4038
+ }
4039
+ });
4040
+ }
4041
+ /**
4042
+ * Real-estate agents this LO co-closed with
4043
+ */
4044
+ static agents2(options) {
4045
+ return (options.client ?? client).post({
4046
+ security: [{
4047
+ name: "x-api-key",
4048
+ type: "apiKey"
4049
+ }, {
4050
+ scheme: "bearer",
4051
+ type: "http"
4052
+ }],
4053
+ url: "/originators/{nmlsId}/breakdowns/agents",
4054
+ ...options,
4055
+ headers: {
4056
+ "Content-Type": "application/json",
4057
+ ...options?.headers
4058
+ }
4059
+ });
4060
+ }
4061
+ /**
4062
+ * Funding companies (employer history) for this LO
4063
+ */
4064
+ static companies2(options) {
4065
+ return (options.client ?? client).post({
4066
+ security: [{
4067
+ name: "x-api-key",
4068
+ type: "apiKey"
4069
+ }, {
4070
+ scheme: "bearer",
4071
+ type: "http"
4072
+ }],
4073
+ url: "/originators/{nmlsId}/breakdowns/companies",
4074
+ ...options,
4075
+ headers: {
4076
+ "Content-Type": "application/json",
4077
+ ...options?.headers
4078
+ }
4079
+ });
4080
+ }
4081
+ /**
4082
+ * Lenders this LO has originated through
4083
+ */
4084
+ static lenders2(options) {
4085
+ return (options.client ?? client).post({
4086
+ security: [{
4087
+ name: "x-api-key",
4088
+ type: "apiKey"
4089
+ }, {
4090
+ scheme: "bearer",
4091
+ type: "http"
4092
+ }],
4093
+ url: "/originators/{nmlsId}/breakdowns/lenders",
4094
+ ...options,
4095
+ headers: {
4096
+ "Content-Type": "application/json",
4097
+ ...options?.headers
4098
+ }
4099
+ });
4100
+ }
4101
+ /**
4102
+ * Zip-code volume breakdown
4103
+ */
4104
+ static zipCodes2(options) {
4105
+ return (options.client ?? client).post({
4106
+ security: [{
4107
+ name: "x-api-key",
4108
+ type: "apiKey"
4109
+ }, {
4110
+ scheme: "bearer",
4111
+ type: "http"
4112
+ }],
4113
+ url: "/originators/{nmlsId}/breakdowns/zip-codes",
4114
+ ...options,
4115
+ headers: {
4116
+ "Content-Type": "application/json",
4117
+ ...options?.headers
4118
+ }
4119
+ });
4120
+ }
4121
+ /**
4122
+ * Broker shops this LO originated loans through (name-resolved)
4123
+ */
4124
+ static brokers2(options) {
4125
+ return (options.client ?? client).post({
4126
+ security: [{
4127
+ name: "x-api-key",
4128
+ type: "apiKey"
4129
+ }, {
4130
+ scheme: "bearer",
4131
+ type: "http"
4132
+ }],
4133
+ url: "/originators/{nmlsId}/breakdowns/brokers",
4134
+ ...options,
4135
+ headers: {
4136
+ "Content-Type": "application/json",
4137
+ ...options?.headers
4138
+ }
4139
+ });
4140
+ }
4141
+ /**
4142
+ * Branch (broker) history for this LO
4143
+ */
4144
+ static branches2(options) {
4145
+ return (options.client ?? client).post({
4146
+ security: [{
4147
+ name: "x-api-key",
4148
+ type: "apiKey"
4149
+ }, {
4150
+ scheme: "bearer",
4151
+ type: "http"
4152
+ }],
4153
+ url: "/originators/{nmlsId}/breakdowns/branches",
4154
+ ...options,
4155
+ headers: {
4156
+ "Content-Type": "application/json",
4157
+ ...options?.headers
4158
+ }
4159
+ });
4160
+ }
4161
+ /**
4162
+ * City volume breakdown across this LO's loans
4163
+ */
4164
+ static citiesBreakdown2(options) {
4165
+ return (options.client ?? client).post({
4166
+ security: [{
4167
+ name: "x-api-key",
4168
+ type: "apiKey"
4169
+ }, {
4170
+ scheme: "bearer",
4171
+ type: "http"
4172
+ }],
4173
+ url: "/originators/{nmlsId}/breakdowns/cities",
4174
+ ...options,
4175
+ headers: {
4176
+ "Content-Type": "application/json",
4177
+ ...options?.headers
4178
+ }
4179
+ });
4180
+ }
4181
+ /**
4182
+ * State volume breakdown across this LO's loans
4183
+ */
4184
+ static statesBreakdown2(options) {
4185
+ return (options.client ?? client).post({
4186
+ security: [{
4187
+ name: "x-api-key",
4188
+ type: "apiKey"
4189
+ }, {
4190
+ scheme: "bearer",
4191
+ type: "http"
4192
+ }],
4193
+ url: "/originators/{nmlsId}/breakdowns/states",
4194
+ ...options,
4195
+ headers: {
4196
+ "Content-Type": "application/json",
4197
+ ...options?.headers
4198
+ }
4199
+ });
4200
+ }
4201
+ /**
4202
+ * County (FIPS) volume breakdown across this LO's loans
4203
+ */
4204
+ static countiesBreakdown2(options) {
4205
+ return (options.client ?? client).post({
4206
+ security: [{
4207
+ name: "x-api-key",
4208
+ type: "apiKey"
4209
+ }, {
4210
+ scheme: "bearer",
4211
+ type: "http"
4212
+ }],
4213
+ url: "/originators/{nmlsId}/breakdowns/counties",
4214
+ ...options,
4215
+ headers: {
4216
+ "Content-Type": "application/json",
4217
+ ...options?.headers
4218
+ }
4219
+ });
4220
+ }
4221
+ /**
4222
+ * Real-estate offices this LO closed through (with sponsoring company)
4223
+ */
4224
+ static offices2(options) {
4225
+ return (options.client ?? client).post({
4226
+ security: [{
4227
+ name: "x-api-key",
4228
+ type: "apiKey"
4229
+ }, {
4230
+ scheme: "bearer",
4231
+ type: "http"
4232
+ }],
4233
+ url: "/originators/{nmlsId}/breakdowns/offices",
4234
+ ...options,
4235
+ headers: {
4236
+ "Content-Type": "application/json",
4237
+ ...options?.headers
4238
+ }
4239
+ });
4240
+ }
4241
+ /**
4242
+ * Submit a bulk-delivery job for originators
4243
+ * 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.
4244
+ */
4245
+ static submitOriginatorsBulkDelivery2(options) {
4246
+ return (options?.client ?? client).post({
4247
+ security: [{
4248
+ name: "x-api-key",
4249
+ type: "apiKey"
4250
+ }, {
4251
+ scheme: "bearer",
4252
+ type: "http"
4253
+ }],
4254
+ url: "/originators/bulk-delivery",
4255
+ ...options,
4256
+ headers: {
4257
+ "Content-Type": "application/json",
4258
+ ...options?.headers
4259
+ }
4260
+ });
4261
+ }
4262
+ /**
4263
+ * Get bulk-delivery job status for originators
4264
+ */
4265
+ static getOriginatorsBulkDeliveryJob2(options) {
4266
+ return (options.client ?? client).get({
4267
+ security: [{
4268
+ name: "x-api-key",
4269
+ type: "apiKey"
4270
+ }, {
4271
+ scheme: "bearer",
4272
+ type: "http"
4273
+ }],
4274
+ url: "/originators/bulk-delivery/{jobId}",
4275
+ ...options
4276
+ });
4277
+ }
4278
+ };
4279
+ var Properties = class {
4280
+ /**
4281
+ * List enriched properties for the current user
4282
+ */
4283
+ static listEnrichments(options) {
4284
+ return (options?.client ?? client).get({
4285
+ security: [{
4286
+ name: "x-api-key",
4287
+ type: "apiKey"
4288
+ }, {
4289
+ scheme: "bearer",
4290
+ type: "http"
4291
+ }],
4292
+ url: "/v1/properties/enrichments",
4293
+ ...options
4294
+ });
4295
+ }
4296
+ /**
4297
+ * Enrich a property with owner contact info
4298
+ * Looks up owner contact information via skip-trace. Uses the canonical address first; falls back to an associated loan or sale record address if the canonical is missing.
4299
+ */
4300
+ static enrich(options) {
4301
+ return (options.client ?? client).post({
4302
+ security: [{
4303
+ name: "x-api-key",
4304
+ type: "apiKey"
4305
+ }, {
4306
+ scheme: "bearer",
4307
+ type: "http"
4308
+ }],
4309
+ url: "/v1/properties/{id}/enrich",
4310
+ ...options
4311
+ });
4312
+ }
4313
+ /**
4314
+ * Enrich several properties with owner contact info in one request
4315
+ * 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.
4316
+ */
4317
+ static enrichPropertiesBatch(options) {
4318
+ return (options?.client ?? client).post({
4319
+ security: [{
4320
+ name: "x-api-key",
4321
+ type: "apiKey"
4322
+ }, {
4323
+ scheme: "bearer",
4324
+ type: "http"
4325
+ }],
4326
+ url: "/v1/properties/enrich",
4327
+ ...options,
4328
+ headers: {
4329
+ "Content-Type": "application/json",
4330
+ ...options?.headers
4331
+ }
4332
+ });
4333
+ }
4334
+ /**
4335
+ * Submit a bulk skip-trace job
4336
+ * 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.
4337
+ */
4338
+ static enrichPropertiesBulk(options) {
4339
+ return (options?.client ?? client).post({
4340
+ security: [{
4341
+ name: "x-api-key",
4342
+ type: "apiKey"
4343
+ }, {
4344
+ scheme: "bearer",
4345
+ type: "http"
4346
+ }],
4347
+ url: "/v1/properties/enrich-bulk",
4348
+ ...options,
4349
+ headers: {
4350
+ "Content-Type": "application/json",
4351
+ ...options?.headers
4352
+ }
4353
+ });
4354
+ }
4355
+ /**
4356
+ * Get bulk enrichment job status
4357
+ */
4358
+ static getEnrichBulkJob(options) {
4359
+ return (options.client ?? client).get({
4360
+ security: [{
4361
+ name: "x-api-key",
4362
+ type: "apiKey"
4363
+ }, {
4364
+ scheme: "bearer",
4365
+ type: "http"
4366
+ }],
4367
+ url: "/v1/properties/enrich-bulk/{jobId}",
4368
+ ...options
4369
+ });
4370
+ }
4371
+ /**
4372
+ * Search properties with filters
4373
+ * 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.)
4374
+ */
4375
+ static list(options) {
4376
+ return (options?.client ?? client).post({
4377
+ security: [{
4378
+ name: "x-api-key",
4379
+ type: "apiKey"
4380
+ }, {
4381
+ scheme: "bearer",
4382
+ type: "http"
4383
+ }],
4384
+ url: "/v1/properties",
4385
+ ...options,
4386
+ headers: {
4387
+ "Content-Type": "application/json",
4388
+ ...options?.headers
4389
+ }
4390
+ });
4391
+ }
4392
+ /**
4393
+ * Get property by ID (with mm_property_id fallback)
4394
+ */
4395
+ static get(options) {
4396
+ return (options.client ?? client).get({
4397
+ security: [{
4398
+ name: "x-api-key",
4399
+ type: "apiKey"
4400
+ }, {
4401
+ scheme: "bearer",
4402
+ type: "http"
4403
+ }],
4404
+ url: "/v1/properties/{id}",
4405
+ ...options
4406
+ });
4407
+ }
4408
+ /**
4409
+ * Property count and average AVM
4410
+ */
4411
+ static analyticsSummary(options) {
4412
+ return (options?.client ?? client).post({
4413
+ security: [{
4414
+ name: "x-api-key",
4415
+ type: "apiKey"
4416
+ }, {
4417
+ scheme: "bearer",
4418
+ type: "http"
4419
+ }],
4420
+ url: "/v1/properties/analytics/summary",
4421
+ ...options,
4422
+ headers: {
4423
+ "Content-Type": "application/json",
4424
+ ...options?.headers
4425
+ }
4426
+ });
4427
+ }
4428
+ /**
4429
+ * Configurable chart data (measure × slice)
4430
+ */
4431
+ static analyticsChart(options) {
4432
+ return (options?.client ?? client).post({
4433
+ security: [{
4434
+ name: "x-api-key",
4435
+ type: "apiKey"
4436
+ }, {
4437
+ scheme: "bearer",
4438
+ type: "http"
4439
+ }],
4440
+ url: "/v1/properties/analytics/chart",
4441
+ ...options,
4442
+ headers: {
4443
+ "Content-Type": "application/json",
4444
+ ...options?.headers
4445
+ }
4446
+ });
4447
+ }
4448
+ /**
4449
+ * Submit a bulk-delivery job for properties
4450
+ * Queues an ECS task that dumps every matching properties document (subject to the org's `bulk-delivery.properties` entitlement scope) to S3 in the requested format. Returns 202 with a jobId; poll `GET /properties/bulk-delivery/{jobId}` for status + the signed download URL.
4451
+ */
4452
+ static submitPropertiesBulkDelivery(options) {
4453
+ return (options?.client ?? client).post({
4454
+ security: [{
4455
+ name: "x-api-key",
4456
+ type: "apiKey"
4457
+ }, {
4458
+ scheme: "bearer",
4459
+ type: "http"
4460
+ }],
4461
+ url: "/v1/properties/bulk-delivery",
4462
+ ...options,
4463
+ headers: {
4464
+ "Content-Type": "application/json",
4465
+ ...options?.headers
4466
+ }
4467
+ });
4468
+ }
4469
+ /**
4470
+ * Get bulk-delivery job status for properties
4471
+ */
4472
+ static getPropertiesBulkDeliveryJob(options) {
4473
+ return (options.client ?? client).get({
4474
+ security: [{
4475
+ name: "x-api-key",
4476
+ type: "apiKey"
4477
+ }, {
4478
+ scheme: "bearer",
4479
+ type: "http"
4480
+ }],
4481
+ url: "/v1/properties/bulk-delivery/{jobId}",
4482
+ ...options
4483
+ });
4484
+ }
4485
+ };
4486
+ var Realtime = class {
4487
+ /**
4488
+ * Get realtime connection config
4489
+ * 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.
4490
+ */
4491
+ static getRealtimeConfig(options) {
4492
+ return (options?.client ?? client).get({
4493
+ security: [{
4494
+ name: "x-api-key",
4495
+ type: "apiKey"
4496
+ }, {
4497
+ scheme: "bearer",
4498
+ type: "http"
4499
+ }],
4500
+ url: "/v1/realtime/config",
4501
+ ...options
4502
+ });
4503
+ }
4504
+ };
4505
+ var Sales = class {
4506
+ /**
4507
+ * Search sales with filters
4508
+ * 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.
4509
+ */
4510
+ static list(options) {
4511
+ return (options?.client ?? client).post({
4512
+ security: [{
4513
+ name: "x-api-key",
4514
+ type: "apiKey"
4515
+ }, {
4516
+ scheme: "bearer",
4517
+ type: "http"
4518
+ }],
4519
+ url: "/v1/sales",
4520
+ ...options,
4521
+ headers: {
4522
+ "Content-Type": "application/json",
4523
+ ...options?.headers
4524
+ }
4525
+ });
4526
+ }
4527
+ /**
4528
+ * Get sale by ID
4529
+ */
4530
+ static get(options) {
4531
+ return (options.client ?? client).get({
4532
+ security: [{
4533
+ name: "x-api-key",
4534
+ type: "apiKey"
4535
+ }, {
4536
+ scheme: "bearer",
4537
+ type: "http"
4538
+ }],
4539
+ url: "/v1/sales/{id}",
4540
+ ...options
4541
+ });
4542
+ }
4543
+ /**
4544
+ * Market summary with buyer/seller/dual split + previous period
4545
+ */
4546
+ static analyticsSummary(options) {
4547
+ return (options?.client ?? client).post({
4548
+ security: [{
4549
+ name: "x-api-key",
4550
+ type: "apiKey"
4551
+ }, {
4552
+ scheme: "bearer",
4553
+ type: "http"
4554
+ }],
4555
+ url: "/v1/sales/analytics/summary",
4556
+ ...options,
4557
+ headers: {
4558
+ "Content-Type": "application/json",
4559
+ ...options?.headers
4560
+ }
4561
+ });
4562
+ }
4563
+ /**
4564
+ * Volume/units over time with buyer/seller/dual split
4565
+ */
4566
+ static analyticsTimeSeries(options) {
4567
+ return (options?.client ?? client).post({
4568
+ security: [{
4569
+ name: "x-api-key",
4570
+ type: "apiKey"
4571
+ }, {
4572
+ scheme: "bearer",
4573
+ type: "http"
4574
+ }],
4575
+ url: "/v1/sales/analytics/time-series",
4576
+ ...options,
4577
+ headers: {
4578
+ "Content-Type": "application/json",
4579
+ ...options?.headers
4580
+ }
4581
+ });
4582
+ }
4583
+ /**
4584
+ * Configurable chart (measure × slice) over the market
4585
+ */
4586
+ static analyticsChart(options) {
4587
+ return (options?.client ?? client).post({
4588
+ security: [{
4589
+ name: "x-api-key",
4590
+ type: "apiKey"
4591
+ }, {
4592
+ scheme: "bearer",
4593
+ type: "http"
4594
+ }],
4595
+ url: "/v1/sales/analytics/chart",
4596
+ ...options,
4597
+ headers: {
4598
+ "Content-Type": "application/json",
4599
+ ...options?.headers
4600
+ }
4601
+ });
4602
+ }
4603
+ };
4604
+ //#endregion
4605
+ //#region src/index.ts
4606
+ /**
4607
+ * Configures the singleton hey-api fetch client and returns a namespace-grouped
4608
+ * facade. The static service classes share the global client, so a process
4609
+ * should call `createClient()` once at startup. For multi-tenant scenarios,
4610
+ * pass a custom `client` per call via the per-method `Options.client` field.
4611
+ */
4612
+ function createClient$1(config = {}) {
4613
+ if (config.baseUrl || config.headers || config.token) client.setConfig({
4614
+ ...config.baseUrl ? { baseUrl: config.baseUrl } : {},
4615
+ ...config.headers ? { headers: config.headers } : {},
4616
+ ...config.token ? { auth: config.token } : {}
4617
+ });
4618
+ if (config.apiKey) {
4619
+ const apiKey = config.apiKey;
4620
+ client.interceptors.request.use((req) => {
4621
+ req.headers.set("x-api-key", apiKey);
4622
+ return req;
4623
+ });
4624
+ }
4625
+ return {
4626
+ agents: Agents,
4627
+ alerts: Alerts,
4628
+ branches: Branches,
4629
+ companies: Companies,
4630
+ lenders: Lenders,
4631
+ loans: Loans,
4632
+ locations: Locations,
4633
+ market: Market,
4634
+ offices: Offices,
4635
+ originators: Originators,
4636
+ properties: Properties,
4637
+ sales: Sales,
4638
+ search: Search
4639
+ };
4640
+ }
4641
+ //#endregion
4642
+ export { Sales as _, Alerts as a, Crm as c, Locations as d, Market as f, Realtime as g, Properties as h, Agents as i, Lenders as l, Originators as m, createClient$1 as n, Branches as o, Offices as p, AdminJobs as r, Companies as s, createApiClient as t, Loans as u, Search as v, client as y };