@matech/thebigpos-sdk 3.18.0 → 3.19.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.
package/src/index.ts CHANGED
@@ -69,6 +69,8 @@ export type PendingInviteStatus =
69
69
  | "InviteExpired"
70
70
  | "NotInvited";
71
71
 
72
+ export type PartnerTier = "Lite" | "LitePlusPortal" | "Pending";
73
+
72
74
  export type OutboundFailureSeverity = "All" | "Failed" | "CompletedWithErrors";
73
75
 
74
76
  export type LosWebhookSigningKeySyncStatus = "Unknown" | "Synced";
@@ -380,6 +382,15 @@ export type LoanGiftAssetType = "Cash" | "Asset" | "Equity" | "Grant";
380
382
 
381
383
  export type LoanGenderType = "Male" | "Female";
382
384
 
385
+ export type LoanFieldDataType =
386
+ | "Text"
387
+ | "Number"
388
+ | "Boolean"
389
+ | "Date"
390
+ | "Enum"
391
+ | "Identifier"
392
+ | "Object";
393
+
383
394
  export type LoanDocumentType =
384
395
  | "W2"
385
396
  | "Paystub"
@@ -649,6 +660,11 @@ export type CanvasAudience = "Staff" | "Borrower" | "Partner";
649
660
 
650
661
  export type BulkLoanTaskOperationType = "SetStatus" | "Delete" | "SetDueDate";
651
662
 
663
+ export type BulkLoanFieldOperationType =
664
+ | "SetAccess"
665
+ | "SetAiEnabled"
666
+ | "ResetToDefaults";
667
+
652
668
  export type BranchType = "Mortgage" | "RealEstate";
653
669
 
654
670
  export type BorrowerType = "Borrower" | "CoBorrower" | "Unknown";
@@ -882,6 +898,7 @@ export interface Account {
882
898
  updatedAt?: string | null;
883
899
  /** @format int32 */
884
900
  allowedLoginsWithoutMFA: number;
901
+ isPartnerPortalEnabled: boolean;
885
902
  losSettings: LOSSettings;
886
903
  asoSettings?: ASOSettings | null;
887
904
  settings: AccountSettings;
@@ -912,12 +929,14 @@ export interface AccountSettings {
912
929
  smsNumber?: string | null;
913
930
  ssoHostOverride?: string | null;
914
931
  isEarlyAdopter: boolean;
932
+ allowLoanOfficerPartnerInvites: boolean;
915
933
  }
916
934
 
917
935
  export interface AccountSettingsRequest {
918
936
  isSmsEnabled: boolean;
919
937
  smsNumber?: string | null;
920
938
  isEarlyAdopter: boolean;
939
+ allowLoanOfficerPartnerInvites?: boolean | null;
921
940
  }
922
941
 
923
942
  export interface Address {
@@ -1939,6 +1958,24 @@ export interface BranchUserPaginated {
1939
1958
  count: number;
1940
1959
  }
1941
1960
 
1961
+ export interface BulkLoanFieldOperation {
1962
+ applied: string[];
1963
+ skipped: BulkLoanFieldSkip[];
1964
+ }
1965
+
1966
+ export interface BulkLoanFieldOperationRequest {
1967
+ fieldKeys: string[];
1968
+ operation?: BulkLoanFieldOperationType | null;
1969
+ role?: UserRole | null;
1970
+ accessLevel?: CustomFieldAccessLevel | null;
1971
+ enabled?: boolean | null;
1972
+ }
1973
+
1974
+ export interface BulkLoanFieldSkip {
1975
+ fieldKey: string;
1976
+ reason: string;
1977
+ }
1978
+
1942
1979
  export interface BulkLoanTaskFailure {
1943
1980
  /** @format uuid */
1944
1981
  userLoanTaskID: string;
@@ -2448,6 +2485,7 @@ export interface CreateAccountRequest {
2448
2485
  domain: string;
2449
2486
  eConsentBucket?: string | null;
2450
2487
  ignoreCoBorrowerRelationship: boolean;
2488
+ isPartnerPortalEnabled: boolean;
2451
2489
  user: AdminUser;
2452
2490
  companyAddress: CompanyAddress;
2453
2491
  contactInfo: ContactInfo;
@@ -2981,6 +3019,7 @@ export interface DraftRequest {
2981
3019
  applicationPayload: any;
2982
3020
  customData?: any | null;
2983
3021
  isCoBorrower: boolean;
3022
+ partnerId?: string | null;
2984
3023
  }
2985
3024
 
2986
3025
  export interface EconsentPendingSummary {
@@ -4010,6 +4049,7 @@ export interface LoanApplicationRequest {
4010
4049
  nonOwningBorrowers: LoanNonOwningBorrowerRequest[];
4011
4050
  /** @format uuid */
4012
4051
  draftId?: string | null;
4052
+ partnerId?: string | null;
4013
4053
  additionalFields?: Record<string, any> | null;
4014
4054
  /** @format uuid */
4015
4055
  existingLoanId?: string | null;
@@ -5013,6 +5053,8 @@ export interface LoanDocumentFolderPermissionRequest {
5013
5053
  export interface LoanDocumentFolderSearchCriteria {
5014
5054
  searchText?: string | null;
5015
5055
  isActive?: boolean | null;
5056
+ isSystemDefault?: boolean | null;
5057
+ role?: LoanRole | null;
5016
5058
  }
5017
5059
 
5018
5060
  export interface LoanDocumentFolderSummary {
@@ -5113,6 +5155,20 @@ export interface LoanFieldAccess {
5113
5155
  export interface LoanFieldAccessItem {
5114
5156
  fieldKey: string;
5115
5157
  access: LoanFieldAccessItemAccessEnum;
5158
+ patchPath?: string | null;
5159
+ }
5160
+
5161
+ export interface LoanFieldMappings {
5162
+ encompassFieldIds: string[];
5163
+ templateToken: string;
5164
+ }
5165
+
5166
+ export interface LoanFieldPermissionsRequest {
5167
+ permissions: CustomFieldPermissionRequest[];
5168
+ }
5169
+
5170
+ export interface LoanFieldSettingsRequest {
5171
+ isAiEnabled?: boolean | null;
5116
5172
  }
5117
5173
 
5118
5174
  export interface LoanFinancial {
@@ -5255,6 +5311,7 @@ export interface LoanList {
5255
5311
  buyerAgentContact?: LoanContactList | null;
5256
5312
  sellerAgentContact?: LoanContactList | null;
5257
5313
  userLoans: UserLoan[];
5314
+ myLoanRoles: LoanRole[];
5258
5315
  contacts: LoanContact[];
5259
5316
  borrowers: LoanListBorrower[];
5260
5317
  taskCounts: LoanTaskCounts;
@@ -6219,6 +6276,20 @@ export type MonthlyPaymentWidgetConfig = UtilRequiredKeys<
6219
6276
  type: MonthlyPaymentWidgetConfigTypeEnum;
6220
6277
  };
6221
6278
 
6279
+ export interface MyPartner {
6280
+ /** @format uuid */
6281
+ partnerID?: string | null;
6282
+ /** @format uuid */
6283
+ inviteID?: string | null;
6284
+ firstName: string;
6285
+ lastName: string;
6286
+ email: string;
6287
+ phone?: string | null;
6288
+ tier: MyPartnerTierEnum;
6289
+ /** @format date-time */
6290
+ createdAt: string;
6291
+ }
6292
+
6222
6293
  export type MyTasksWidgetConfig = UtilRequiredKeys<
6223
6294
  BaseCanvasWidgetConfig,
6224
6295
  "type"
@@ -6417,6 +6488,26 @@ export interface Pagination {
6417
6488
  pageSize: number;
6418
6489
  }
6419
6490
 
6491
+ export interface PartnerFormLink {
6492
+ /** @format int32 */
6493
+ formType: number;
6494
+ name: string;
6495
+ url: string;
6496
+ }
6497
+
6498
+ export interface PartnerLinks {
6499
+ slug: string;
6500
+ loanOfficers: PartnerLoanOfficerLinks[];
6501
+ }
6502
+
6503
+ export interface PartnerLoanOfficerLinks {
6504
+ /** @format uuid */
6505
+ loanOfficerId: string;
6506
+ name: string;
6507
+ siteUrl: string;
6508
+ links: PartnerFormLink[];
6509
+ }
6510
+
6420
6511
  export interface PartnerSearchCriteria {
6421
6512
  searchText?: string | null;
6422
6513
  isActive?: boolean | null;
@@ -6424,6 +6515,10 @@ export interface PartnerSearchCriteria {
6424
6515
  roles?: UserRole[] | null;
6425
6516
  }
6426
6517
 
6518
+ export interface PartnerSlug {
6519
+ slug: string;
6520
+ }
6521
+
6427
6522
  export interface PendingInvite {
6428
6523
  status: PendingInviteStatusEnum;
6429
6524
  /** @format uuid */
@@ -7046,6 +7141,7 @@ export interface SiteConfiguration {
7046
7141
  user?: UserPublic | null;
7047
7142
  asoSettings?: ASOSettings | null;
7048
7143
  accountSettings: AccountSettings;
7144
+ isPartnerPortalEnabled: boolean;
7049
7145
  autoTaskReminderIntervalsInDays?: number[] | null;
7050
7146
  mobileSettings?: MobileSettings | null;
7051
7147
  losSettings?: LOSSettings | null;
@@ -7241,6 +7337,7 @@ export interface SiteConfigurationByUrl {
7241
7337
  user?: UserPublic | null;
7242
7338
  asoSettings?: ASOSettings | null;
7243
7339
  accountSettings: AccountSettings;
7340
+ isPartnerPortalEnabled: boolean;
7244
7341
  autoTaskReminderIntervalsInDays?: number[] | null;
7245
7342
  mobileSettings?: MobileSettings | null;
7246
7343
  losSettings?: LOSSettings | null;
@@ -7609,6 +7706,20 @@ export interface SocialSurveyRecord {
7609
7706
  reviewCompletedTimeStamp?: string | null;
7610
7707
  }
7611
7708
 
7709
+ export interface StandardLoanField {
7710
+ fieldKey: string;
7711
+ displayName: string;
7712
+ category: string;
7713
+ dataType: StandardLoanFieldDataTypeEnum;
7714
+ isPii: boolean;
7715
+ isWritable: boolean;
7716
+ patchPath?: string | null;
7717
+ mappings: LoanFieldMappings;
7718
+ access: Record<string, CustomFieldAccessLevel>;
7719
+ isCustomized: boolean;
7720
+ isAiEnabled?: boolean | null;
7721
+ }
7722
+
7612
7723
  export interface SupportedModel {
7613
7724
  modelId: string;
7614
7725
  displayName: string;
@@ -8047,6 +8158,14 @@ export interface UpdateMobilePhoneRequest {
8047
8158
  phone: string;
8048
8159
  }
8049
8160
 
8161
+ export interface UpdatePartnerPortalRequest {
8162
+ isEnabled?: boolean | null;
8163
+ }
8164
+
8165
+ export interface UpdatePartnerSlugRequest {
8166
+ slug: string;
8167
+ }
8168
+
8050
8169
  export interface UpdateUserGroupRequest {
8051
8170
  name: string;
8052
8171
  description?: string | null;
@@ -9500,6 +9619,8 @@ export type ManualDocumentClassificationRequestDocumentTypeEnum =
9500
9619
 
9501
9620
  export type MonthlyPaymentWidgetConfigTypeEnum = "MonthlyPayment";
9502
9621
 
9622
+ export type MyPartnerTierEnum = "Lite" | "LitePlusPortal" | "Pending";
9623
+
9503
9624
  export type MyTasksWidgetConfigTypeEnum = "MyTasks";
9504
9625
 
9505
9626
  export type OpenTasksWidgetConfigTypeEnum = "OpenTasks";
@@ -9582,6 +9703,15 @@ export type SiteTileRequestLinkTargetEnum = "Self" | "Blank";
9582
9703
 
9583
9704
  export type SiteTileViewLinkTargetEnum = "Self" | "Blank";
9584
9705
 
9706
+ export type StandardLoanFieldDataTypeEnum =
9707
+ | "Text"
9708
+ | "Number"
9709
+ | "Boolean"
9710
+ | "Date"
9711
+ | "Enum"
9712
+ | "Identifier"
9713
+ | "Object";
9714
+
9585
9715
  export type TextBlockWidgetConfigTypeEnum = "TextBlock";
9586
9716
 
9587
9717
  export type UnregisteredBorrowerRoleEnum =
@@ -9966,7 +10096,7 @@ export class HttpClient<SecurityDataType = unknown> {
9966
10096
 
9967
10097
  /**
9968
10098
  * @title The Big POS API
9969
- * @version v3.18.0
10099
+ * @version v3.19.0
9970
10100
  * @termsOfService https://www.thebigpos.com/terms-of-use/
9971
10101
  * @contact Mortgage Automation Technologies <support@thebigpos.com> (https://www.thebigpos.com/terms-of-use/)
9972
10102
  */
@@ -10215,6 +10345,33 @@ export class Api<
10215
10345
  ...params,
10216
10346
  }),
10217
10347
 
10348
+ /**
10349
+ * @description Turns the account's partner portal on or off. While Partner-lite is on for the account, off refuses its realtors' leads and listings and the creation of partner sites.
10350
+ *
10351
+ * @tags Accounts
10352
+ * @name UpdateAccountPartnerPortal
10353
+ * @summary Update partner portal switch
10354
+ * @request PUT:/api/accounts/{id}/partner-portal
10355
+ * @secure
10356
+ * @response `200` `Account` OK
10357
+ * @response `404` `ProblemDetails` Not Found
10358
+ * @response `422` `ProblemDetails` Unprocessable Content
10359
+ */
10360
+ updateAccountPartnerPortal: (
10361
+ id: string,
10362
+ data: UpdatePartnerPortalRequest,
10363
+ params: RequestParams = {},
10364
+ ) =>
10365
+ this.request<Account, ProblemDetails>({
10366
+ path: `/api/accounts/${id}/partner-portal`,
10367
+ method: "PUT",
10368
+ body: data,
10369
+ secure: true,
10370
+ type: "application/json",
10371
+ format: "json",
10372
+ ...params,
10373
+ }),
10374
+
10218
10375
  /**
10219
10376
  * No description
10220
10377
  *
@@ -14974,13 +15131,14 @@ export class Api<
14974
15131
  * @request DELETE:/api/form-submissions/{formSubmissionId}/files/{formSubmissionFileId}
14975
15132
  * @secure
14976
15133
  * @response `204` `void` No Content
15134
+ * @response `403` `HttpError` Forbidden
14977
15135
  */
14978
15136
  deleteFormSubmissionFile: (
14979
15137
  formSubmissionFileId: string,
14980
15138
  formSubmissionId: string,
14981
15139
  params: RequestParams = {},
14982
15140
  ) =>
14983
- this.request<void, any>({
15141
+ this.request<void, HttpError>({
14984
15142
  path: `/api/form-submissions/${formSubmissionId}/files/${formSubmissionFileId}`,
14985
15143
  method: "DELETE",
14986
15144
  secure: true,
@@ -14996,6 +15154,7 @@ export class Api<
14996
15154
  * @request GET:/api/form-submissions/{formSubmissionId}/files/{formSubmissionFileId}/download
14997
15155
  * @secure
14998
15156
  * @response `200` `FileWithBytes` OK
15157
+ * @response `403` `HttpError` Forbidden
14999
15158
  */
15000
15159
  downloadFormSubmissionFile: (
15001
15160
  formSubmissionFileId: string,
@@ -15006,7 +15165,7 @@ export class Api<
15006
15165
  },
15007
15166
  params: RequestParams = {},
15008
15167
  ) =>
15009
- this.request<FileWithBytes, any>({
15168
+ this.request<FileWithBytes, HttpError>({
15010
15169
  path: `/api/form-submissions/${formSubmissionId}/files/${formSubmissionFileId}/download`,
15011
15170
  method: "GET",
15012
15171
  query: query,
@@ -15024,6 +15183,7 @@ export class Api<
15024
15183
  * @request GET:/api/form-submissions
15025
15184
  * @secure
15026
15185
  * @response `200` `FormSubmissionPaginated` OK
15186
+ * @response `403` `HttpError` Forbidden
15027
15187
  */
15028
15188
  getFormSubmissions: (
15029
15189
  query?: {
@@ -15036,7 +15196,7 @@ export class Api<
15036
15196
  },
15037
15197
  params: RequestParams = {},
15038
15198
  ) =>
15039
- this.request<FormSubmissionPaginated, any>({
15199
+ this.request<FormSubmissionPaginated, HttpError>({
15040
15200
  path: `/api/form-submissions`,
15041
15201
  method: "GET",
15042
15202
  query: query,
@@ -15082,9 +15242,10 @@ export class Api<
15082
15242
  * @request GET:/api/form-submissions/{id}
15083
15243
  * @secure
15084
15244
  * @response `200` `FormSubmission` OK
15245
+ * @response `403` `HttpError` Forbidden
15085
15246
  */
15086
15247
  getFormSubmission: (id: string, params: RequestParams = {}) =>
15087
- this.request<FormSubmission, any>({
15248
+ this.request<FormSubmission, HttpError>({
15088
15249
  path: `/api/form-submissions/${id}`,
15089
15250
  method: "GET",
15090
15251
  secure: true,
@@ -15101,13 +15262,14 @@ export class Api<
15101
15262
  * @request PUT:/api/form-submissions/{id}
15102
15263
  * @secure
15103
15264
  * @response `200` `FormSubmission` OK
15265
+ * @response `403` `HttpError` Forbidden
15104
15266
  */
15105
15267
  replaceFormSubmission: (
15106
15268
  id: string,
15107
15269
  data: FormSubmissionRequest,
15108
15270
  params: RequestParams = {},
15109
15271
  ) =>
15110
- this.request<FormSubmission, any>({
15272
+ this.request<FormSubmission, HttpError>({
15111
15273
  path: `/api/form-submissions/${id}`,
15112
15274
  method: "PUT",
15113
15275
  body: data,
@@ -15126,9 +15288,10 @@ export class Api<
15126
15288
  * @request DELETE:/api/form-submissions/{id}
15127
15289
  * @secure
15128
15290
  * @response `204` `void` No Content
15291
+ * @response `403` `HttpError` Forbidden
15129
15292
  */
15130
15293
  deleteFormSubmission: (id: string, params: RequestParams = {}) =>
15131
- this.request<void, any>({
15294
+ this.request<void, HttpError>({
15132
15295
  path: `/api/form-submissions/${id}`,
15133
15296
  method: "DELETE",
15134
15297
  secure: true,
@@ -15144,6 +15307,7 @@ export class Api<
15144
15307
  * @request POST:/api/form-submissions/search
15145
15308
  * @secure
15146
15309
  * @response `200` `FormSubmissionPaginated` OK
15310
+ * @response `403` `HttpError` Forbidden
15147
15311
  */
15148
15312
  searchFormSubmissions: (
15149
15313
  data: FormSubmissionSearchCriteria,
@@ -15157,7 +15321,7 @@ export class Api<
15157
15321
  },
15158
15322
  params: RequestParams = {},
15159
15323
  ) =>
15160
- this.request<FormSubmissionPaginated, any>({
15324
+ this.request<FormSubmissionPaginated, HttpError>({
15161
15325
  path: `/api/form-submissions/search`,
15162
15326
  method: "POST",
15163
15327
  query: query,
@@ -15649,6 +15813,7 @@ export class Api<
15649
15813
  * @request POST:/api/listings/{listingId}/files
15650
15814
  * @secure
15651
15815
  * @response `200` `ListingFile` OK
15816
+ * @response `403` `HttpError` Forbidden
15652
15817
  */
15653
15818
  addListingFile: (
15654
15819
  listingId: string,
@@ -15660,7 +15825,7 @@ export class Api<
15660
15825
  },
15661
15826
  params: RequestParams = {},
15662
15827
  ) =>
15663
- this.request<ListingFile, any>({
15828
+ this.request<ListingFile, HttpError>({
15664
15829
  path: `/api/listings/${listingId}/files`,
15665
15830
  method: "POST",
15666
15831
  body: data,
@@ -15679,13 +15844,14 @@ export class Api<
15679
15844
  * @request PATCH:/api/listings/{listingId}/files
15680
15845
  * @secure
15681
15846
  * @response `200` `ListingFile` OK
15847
+ * @response `403` `HttpError` Forbidden
15682
15848
  */
15683
15849
  updateListingFiles: (
15684
15850
  listingId: string,
15685
15851
  data: JsonPatchDocument,
15686
15852
  params: RequestParams = {},
15687
15853
  ) =>
15688
- this.request<ListingFile, any>({
15854
+ this.request<ListingFile, HttpError>({
15689
15855
  path: `/api/listings/${listingId}/files`,
15690
15856
  method: "PATCH",
15691
15857
  body: data,
@@ -15704,13 +15870,14 @@ export class Api<
15704
15870
  * @request DELETE:/api/listings/{listingId}/files/{id}
15705
15871
  * @secure
15706
15872
  * @response `204` `Listing` No Content
15873
+ * @response `403` `HttpError` Forbidden
15707
15874
  */
15708
15875
  removeListingFile: (
15709
15876
  listingId: string,
15710
15877
  id: string,
15711
15878
  params: RequestParams = {},
15712
15879
  ) =>
15713
- this.request<Listing, any>({
15880
+ this.request<Listing, HttpError>({
15714
15881
  path: `/api/listings/${listingId}/files/${id}`,
15715
15882
  method: "DELETE",
15716
15883
  secure: true,
@@ -15727,6 +15894,7 @@ export class Api<
15727
15894
  * @request POST:/api/listings/{listingId}/photos
15728
15895
  * @secure
15729
15896
  * @response `200` `ListingPhoto` OK
15897
+ * @response `403` `HttpError` Forbidden
15730
15898
  */
15731
15899
  addListingPhoto: (
15732
15900
  listingId: string,
@@ -15740,7 +15908,7 @@ export class Api<
15740
15908
  },
15741
15909
  params: RequestParams = {},
15742
15910
  ) =>
15743
- this.request<ListingPhoto, any>({
15911
+ this.request<ListingPhoto, HttpError>({
15744
15912
  path: `/api/listings/${listingId}/photos`,
15745
15913
  method: "POST",
15746
15914
  body: data,
@@ -15759,13 +15927,14 @@ export class Api<
15759
15927
  * @request PATCH:/api/listings/{listingId}/photos
15760
15928
  * @secure
15761
15929
  * @response `200` `(ListingPhoto)[]` OK
15930
+ * @response `403` `HttpError` Forbidden
15762
15931
  */
15763
15932
  updateListingPhotos: (
15764
15933
  listingId: string,
15765
15934
  data: JsonPatchDocument,
15766
15935
  params: RequestParams = {},
15767
15936
  ) =>
15768
- this.request<ListingPhoto[], any>({
15937
+ this.request<ListingPhoto[], HttpError>({
15769
15938
  path: `/api/listings/${listingId}/photos`,
15770
15939
  method: "PATCH",
15771
15940
  body: data,
@@ -15784,13 +15953,14 @@ export class Api<
15784
15953
  * @request DELETE:/api/listings/{listingId}/photos/{id}
15785
15954
  * @secure
15786
15955
  * @response `204` `Listing` No Content
15956
+ * @response `403` `HttpError` Forbidden
15787
15957
  */
15788
15958
  removeListingPhoto: (
15789
15959
  listingId: string,
15790
15960
  id: string,
15791
15961
  params: RequestParams = {},
15792
15962
  ) =>
15793
- this.request<Listing, any>({
15963
+ this.request<Listing, HttpError>({
15794
15964
  path: `/api/listings/${listingId}/photos/${id}`,
15795
15965
  method: "DELETE",
15796
15966
  secure: true,
@@ -15925,9 +16095,10 @@ export class Api<
15925
16095
  * @request DELETE:/api/listings/{id}
15926
16096
  * @secure
15927
16097
  * @response `204` `void` No Content
16098
+ * @response `403` `HttpError` Forbidden
15928
16099
  */
15929
16100
  deleteListing: (id: string, params: RequestParams = {}) =>
15930
- this.request<void, any>({
16101
+ this.request<void, HttpError>({
15931
16102
  path: `/api/listings/${id}`,
15932
16103
  method: "DELETE",
15933
16104
  secure: true,
@@ -15976,6 +16147,7 @@ export class Api<
15976
16147
  * @request PUT:/api/listings/{id}/background-image
15977
16148
  * @secure
15978
16149
  * @response `200` `File` OK
16150
+ * @response `403` `HttpError` Forbidden
15979
16151
  */
15980
16152
  updateListingBackgroundImage: (
15981
16153
  id: string,
@@ -15985,7 +16157,7 @@ export class Api<
15985
16157
  },
15986
16158
  params: RequestParams = {},
15987
16159
  ) =>
15988
- this.request<File, any>({
16160
+ this.request<File, HttpError>({
15989
16161
  path: `/api/listings/${id}/background-image`,
15990
16162
  method: "PUT",
15991
16163
  body: data,
@@ -16004,9 +16176,10 @@ export class Api<
16004
16176
  * @request DELETE:/api/listings/{id}/background-image
16005
16177
  * @secure
16006
16178
  * @response `204` `void` No Content
16179
+ * @response `403` `HttpError` Forbidden
16007
16180
  */
16008
16181
  deleteListingBackgroundImage: (id: string, params: RequestParams = {}) =>
16009
- this.request<void, any>({
16182
+ this.request<void, HttpError>({
16010
16183
  path: `/api/listings/${id}/background-image`,
16011
16184
  method: "DELETE",
16012
16185
  secure: true,
@@ -16600,7 +16773,7 @@ export class Api<
16600
16773
  }),
16601
16774
 
16602
16775
  /**
16603
- * @description Returns the folders the caller can access that are relevant to this loan — every active system-default folder, plus any folder holding a document the caller can read or bound to one of the loan's tasks, even when empty — with the caller's effective accessLevel and the count of documents they can read in each. Upload destinations are the active entries with accessLevel at least Write. Documents that are not assigned to a folder are returned as a synthetic 'Unassigned' folder (ID = empty GUID, isUnassigned = true); filter to its documents with searchLoanDocuments folderScope 'Unassigned' rather than by echoing that ID.
16776
+ * @description Returns the folders the caller can access that are relevant to this loan — every active system-default folder, plus any folder holding a document the caller can read or bound to one of the loan's tasks, even when empty as long as it is active — with the caller's effective accessLevel and the count of documents they can read in each. Upload destinations are the active entries with accessLevel at least Write. Documents that are not assigned to a folder are returned as a synthetic 'Unassigned' folder (ID = empty GUID, isUnassigned = true); filter to its documents with searchLoanDocuments folderScope 'Unassigned' rather than by echoing that ID.
16604
16777
  *
16605
16778
  * @tags LoanDocumentFoldersForSingleLoan
16606
16779
  * @name ListLoanDocumentFolders
@@ -17149,6 +17322,133 @@ export class Api<
17149
17322
  ...params,
17150
17323
  }),
17151
17324
 
17325
+ /**
17326
+ * No description
17327
+ *
17328
+ * @tags LoanFields
17329
+ * @name GetStandardLoanFields
17330
+ * @summary List standard loan fields with effective access and settings
17331
+ * @request GET:/api/loan-fields/standard
17332
+ * @secure
17333
+ * @response `200` `(StandardLoanField)[]` OK
17334
+ * @response `401` `ProblemDetails` Unauthorized
17335
+ * @response `403` `ProblemDetails` Forbidden
17336
+ */
17337
+ getStandardLoanFields: (params: RequestParams = {}) =>
17338
+ this.request<StandardLoanField[], ProblemDetails>({
17339
+ path: `/api/loan-fields/standard`,
17340
+ method: "GET",
17341
+ secure: true,
17342
+ format: "json",
17343
+ ...params,
17344
+ }),
17345
+
17346
+ /**
17347
+ * No description
17348
+ *
17349
+ * @tags LoanFields
17350
+ * @name SetLoanFieldPermissions
17351
+ * @summary Set role access levels on one loan field
17352
+ * @request PUT:/api/loan-fields/{fieldKey}/permissions
17353
+ * @secure
17354
+ * @response `204` `void` No Content
17355
+ * @response `401` `ProblemDetails` Unauthorized
17356
+ * @response `403` `ProblemDetails` Forbidden
17357
+ * @response `404` `ProblemDetails` Not Found
17358
+ */
17359
+ setLoanFieldPermissions: (
17360
+ fieldKey: string,
17361
+ data: LoanFieldPermissionsRequest,
17362
+ params: RequestParams = {},
17363
+ ) =>
17364
+ this.request<void, ProblemDetails>({
17365
+ path: `/api/loan-fields/${fieldKey}/permissions`,
17366
+ method: "PUT",
17367
+ body: data,
17368
+ secure: true,
17369
+ type: "application/json",
17370
+ ...params,
17371
+ }),
17372
+
17373
+ /**
17374
+ * No description
17375
+ *
17376
+ * @tags LoanFields
17377
+ * @name SetLoanFieldSettings
17378
+ * @summary Set the AI setting on one loan field
17379
+ * @request PUT:/api/loan-fields/{fieldKey}/settings
17380
+ * @secure
17381
+ * @response `204` `void` No Content
17382
+ * @response `401` `ProblemDetails` Unauthorized
17383
+ * @response `403` `ProblemDetails` Forbidden
17384
+ * @response `404` `ProblemDetails` Not Found
17385
+ */
17386
+ setLoanFieldSettings: (
17387
+ fieldKey: string,
17388
+ data: LoanFieldSettingsRequest,
17389
+ params: RequestParams = {},
17390
+ ) =>
17391
+ this.request<void, ProblemDetails>({
17392
+ path: `/api/loan-fields/${fieldKey}/settings`,
17393
+ method: "PUT",
17394
+ body: data,
17395
+ secure: true,
17396
+ type: "application/json",
17397
+ ...params,
17398
+ }),
17399
+
17400
+ /**
17401
+ * No description
17402
+ *
17403
+ * @tags LoanFields
17404
+ * @name ResetLoanFieldOverrides
17405
+ * @summary Reset one standard loan field to its seeded defaults
17406
+ * @request DELETE:/api/loan-fields/{fieldKey}/overrides
17407
+ * @secure
17408
+ * @response `204` `void` No Content
17409
+ * @response `401` `ProblemDetails` Unauthorized
17410
+ * @response `403` `ProblemDetails` Forbidden
17411
+ * @response `404` `ProblemDetails` Not Found
17412
+ */
17413
+ resetLoanFieldOverrides: (fieldKey: string, params: RequestParams = {}) =>
17414
+ this.request<void, ProblemDetails>({
17415
+ path: `/api/loan-fields/${fieldKey}/overrides`,
17416
+ method: "DELETE",
17417
+ secure: true,
17418
+ ...params,
17419
+ }),
17420
+
17421
+ /**
17422
+ * No description
17423
+ *
17424
+ * @tags LoanFields
17425
+ * @name BulkLoanFieldOperation
17426
+ * @summary Apply one operation to many loan fields
17427
+ * @request POST:/api/loan-fields/bulk
17428
+ * @secure
17429
+ * @response `200` `BulkLoanFieldOperation` OK
17430
+ * @response `401` `ProblemDetails` Unauthorized
17431
+ * @response `403` `ProblemDetails` Forbidden
17432
+ * @response `404` `ProblemDetails` Not Found
17433
+ * @response `422` `UnprocessableEntity` Unprocessable Content
17434
+ */
17435
+ bulkLoanFieldOperation: (
17436
+ data: BulkLoanFieldOperationRequest,
17437
+ params: RequestParams = {},
17438
+ ) =>
17439
+ this.request<
17440
+ BulkLoanFieldOperation,
17441
+ ProblemDetails | UnprocessableEntity
17442
+ >({
17443
+ path: `/api/loan-fields/bulk`,
17444
+ method: "POST",
17445
+ body: data,
17446
+ secure: true,
17447
+ type: "application/json",
17448
+ format: "json",
17449
+ ...params,
17450
+ }),
17451
+
17152
17452
  /**
17153
17453
  * No description
17154
17454
  *
@@ -19759,6 +20059,35 @@ export class Api<
19759
20059
  ...params,
19760
20060
  }),
19761
20061
 
20062
+ /**
20063
+ * @description Changes the short name a realtor's partner links carry. Links shared with the previous name stop working.
20064
+ *
20065
+ * @tags Partners
20066
+ * @name UpdatePartnerLinkSlug
20067
+ * @summary Update Partner Link Slug
20068
+ * @request PUT:/api/partners/{realtorId}/link-slug
20069
+ * @secure
20070
+ * @response `200` `PartnerSlug` OK
20071
+ * @response `403` `ProblemDetails` Forbidden
20072
+ * @response `404` `ProblemDetails` Not Found
20073
+ * @response `409` `ProblemDetails` Conflict
20074
+ * @response `422` `UnprocessableEntity` Unprocessable Content
20075
+ */
20076
+ updatePartnerLinkSlug: (
20077
+ realtorId: string,
20078
+ data: UpdatePartnerSlugRequest,
20079
+ params: RequestParams = {},
20080
+ ) =>
20081
+ this.request<PartnerSlug, ProblemDetails | UnprocessableEntity>({
20082
+ path: `/api/partners/${realtorId}/link-slug`,
20083
+ method: "PUT",
20084
+ body: data,
20085
+ secure: true,
20086
+ type: "application/json",
20087
+ format: "json",
20088
+ ...params,
20089
+ }),
20090
+
19762
20091
  /**
19763
20092
  * No description
19764
20093
  *
@@ -22656,6 +22985,115 @@ export class Api<
22656
22985
  ...params,
22657
22986
  }),
22658
22987
 
22988
+ /**
22989
+ * @description The partners on the loan officer's list and the loan officer's portal relations, plus the open partner invites the loan officer sent
22990
+ *
22991
+ * @tags UsersMe
22992
+ * @name GetMyPartners
22993
+ * @summary Get My Partners
22994
+ * @request GET:/api/users/me/partners
22995
+ * @secure
22996
+ * @response `200` `(MyPartner)[]` OK
22997
+ * @response `403` `ProblemDetails` Forbidden
22998
+ */
22999
+ getMyPartners: (params: RequestParams = {}) =>
23000
+ this.request<MyPartner[], ProblemDetails>({
23001
+ path: `/api/users/me/partners`,
23002
+ method: "GET",
23003
+ secure: true,
23004
+ format: "json",
23005
+ ...params,
23006
+ }),
23007
+
23008
+ /**
23009
+ * No description
23010
+ *
23011
+ * @tags UsersMe
23012
+ * @name AddMyPartner
23013
+ * @summary Add My Partner
23014
+ * @request POST:/api/users/me/partners/{partnerId}
23015
+ * @secure
23016
+ * @response `204` `void` No Content
23017
+ * @response `403` `ProblemDetails` Forbidden
23018
+ * @response `404` `ProblemDetails` Not Found
23019
+ */
23020
+ addMyPartner: (partnerId: string, params: RequestParams = {}) =>
23021
+ this.request<void, ProblemDetails>({
23022
+ path: `/api/users/me/partners/${partnerId}`,
23023
+ method: "POST",
23024
+ secure: true,
23025
+ ...params,
23026
+ }),
23027
+
23028
+ /**
23029
+ * No description
23030
+ *
23031
+ * @tags UsersMe
23032
+ * @name RemoveMyPartner
23033
+ * @summary Remove My Partner
23034
+ * @request DELETE:/api/users/me/partners/{partnerId}
23035
+ * @secure
23036
+ * @response `204` `void` No Content
23037
+ * @response `403` `ProblemDetails` Forbidden
23038
+ * @response `404` `ProblemDetails` Not Found
23039
+ */
23040
+ removeMyPartner: (partnerId: string, params: RequestParams = {}) =>
23041
+ this.request<void, ProblemDetails>({
23042
+ path: `/api/users/me/partners/${partnerId}`,
23043
+ method: "DELETE",
23044
+ secure: true,
23045
+ ...params,
23046
+ }),
23047
+
23048
+ /**
23049
+ * @description The links that attribute an application to the partner, on the site of each loan officer the partner works with
23050
+ *
23051
+ * @tags UsersMe
23052
+ * @name GetMyPartnerLinks
23053
+ * @summary Get My Partner Links
23054
+ * @request GET:/api/users/me/partner-links
23055
+ * @secure
23056
+ * @response `200` `PartnerLinks` OK
23057
+ * @response `403` `ProblemDetails` Forbidden
23058
+ * @response `404` `ProblemDetails` Not Found
23059
+ */
23060
+ getMyPartnerLinks: (params: RequestParams = {}) =>
23061
+ this.request<PartnerLinks, ProblemDetails>({
23062
+ path: `/api/users/me/partner-links`,
23063
+ method: "GET",
23064
+ secure: true,
23065
+ format: "json",
23066
+ ...params,
23067
+ }),
23068
+
23069
+ /**
23070
+ * @description Changes the short name the partner's links carry and returns the links rebuilt with it. Links shared with the previous name stop working.
23071
+ *
23072
+ * @tags UsersMe
23073
+ * @name UpdateMyPartnerLinkSlug
23074
+ * @summary Update My Partner Link Slug
23075
+ * @request PUT:/api/users/me/partner-links/slug
23076
+ * @secure
23077
+ * @response `200` `PartnerLinks` OK
23078
+ * @response `403` `ProblemDetails` Forbidden
23079
+ * @response `404` `ProblemDetails` Not Found
23080
+ * @response `409` `ProblemDetails` Conflict
23081
+ * @response `422` `UnprocessableEntity` Unprocessable Content
23082
+ */
23083
+ updateMyPartnerLinkSlug: (
23084
+ data: UpdatePartnerSlugRequest,
23085
+ params: RequestParams = {},
23086
+ ) =>
23087
+ this.request<PartnerLinks, ProblemDetails | UnprocessableEntity>({
23088
+ path: `/api/users/me/partner-links/slug`,
23089
+ method: "PUT",
23090
+ body: data,
23091
+ secure: true,
23092
+ type: "application/json",
23093
+ format: "json",
23094
+ ...params,
23095
+ }),
23096
+
22659
23097
  /**
22660
23098
  * No description
22661
23099
  *