@justins-home/api-services 1.0.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,311 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const admin = {
6
+
7
+ new: (payload: ApiRequest<'newAdmin'>) => {
8
+ return api.post('newAdmin', "/api/v1/portal/admin/create-admin", payload);
9
+ }
10
+ ,
11
+
12
+ getSubmittedListing: () => {
13
+ return api.get('getSubmittedListing', "/api/v1/portal/admin/listing/review");
14
+ }
15
+ ,
16
+
17
+ approveListing: (params: ApiPathParams<'approveListing'>) => {
18
+ return api.post('approveListing', `/api/v1/portal/admin/listing/${params.listing_uid}/approve`);
19
+ }
20
+ ,
21
+
22
+ rejectListing: (params: ApiPathParams<'rejectListing'>, payload: ApiRequest<'rejectListing'>) => {
23
+ return api.post('rejectListing', `/api/v1/portal/admin/listing/${params.listing_uid}/reject`, payload);
24
+ }
25
+ ,
26
+
27
+ unpublishListing: (params: ApiPathParams<'unpublishListing'>) => {
28
+ return api.post('unpublishListing', `/api/v1/portal/admin/listing/${params.listing_uid}/unpublish`);
29
+ }
30
+ ,
31
+
32
+ republishListing: (params: ApiPathParams<'republishListing'>) => {
33
+ return api.post('republishListing', `/api/v1/portal/admin/listing/${params.listing_uid}/republish`);
34
+ }
35
+ ,
36
+
37
+ getFeatures: () => {
38
+ return api.post('getFeaturesAdmin', "/api/v1/portal/admin/feature/fetch-all");
39
+ }
40
+ ,
41
+
42
+ createFeature: (payload: ApiRequest<'createFeature'>) => {
43
+ return api.post('createFeature', "/api/v1/portal/admin/feature/create", payload);
44
+ }
45
+ ,
46
+
47
+ updateFeature: (params: ApiPathParams<'updateFeature'>, payload: ApiRequest<'updateFeature'>) => {
48
+ return api.post('updateFeature', `/api/v1/portal/admin/feature/${params.feature_id}/update`, payload);
49
+ }
50
+ ,
51
+
52
+ toggleFeature: (params: ApiPathParams<'toggleFeature'>) => {
53
+ return api.post('toggleFeature', `/api/v1/portal/admin/feature/${params.feature_id}/toggle`);
54
+ }
55
+ ,
56
+
57
+ getFeatureCategories: () => {
58
+ return api.get('getFeatureCategories', "/api/v1/portal/admin/feature/category/fetch-all");
59
+ }
60
+ ,
61
+
62
+ createFeatureCategory: (payload: ApiRequest<'createFeatureCategory'>) => {
63
+ return api.post('createFeatureCategory', "/api/v1/portal/admin/feature/category/create", payload);
64
+ }
65
+ ,
66
+
67
+ updateFeatureCategory: (params: ApiPathParams<'updateFeatureCategory'>, payload: ApiRequest<'updateFeatureCategory'>) => {
68
+ return api.post('updateFeatureCategory', `/api/v1/portal/admin/feature/category/${params.category_id}/update`, payload);
69
+ }
70
+ ,
71
+
72
+ toggleFeatureCategory: (params: ApiPathParams<'toggleFeatureCategory'>) => {
73
+ return api.post('toggleFeatureCategory', `/api/v1/portal/admin/feature/category/${params.category_id}/toggle`);
74
+ }
75
+ ,
76
+
77
+ getVerificationLayers: () => {
78
+ return api.get('getVerificationLayers', "/api/v1/portal/admin/verification/layers/fetch-all");
79
+ }
80
+ ,
81
+
82
+ createVerificationLayer: (payload: ApiRequest<'createVerificationLayer'>) => {
83
+ return api.post('createVerificationLayer', "/api/v1/portal/admin/verification/layers/create", payload);
84
+ }
85
+ ,
86
+
87
+ updateVerificationLayer: (params: ApiPathParams<'updateVerificationLayer'>, payload: ApiRequest<'updateVerificationLayer'>) => {
88
+ return api.post('updateVerificationLayer', `/api/v1/portal/admin/verification/layers/update/${params.verificationLayer_id}`, payload);
89
+ }
90
+ ,
91
+
92
+ getVerificationFlows: () => {
93
+ return api.get('getVerificationFlows', "/api/v1/portal/admin/verification/flows/fetch-all");
94
+ }
95
+ ,
96
+
97
+ createVerificationFlow: (payload: ApiRequest<'createVerificationFlow'>) => {
98
+ return api.post('createVerificationFlow', "/api/v1/portal/admin/verification/flows/create", payload);
99
+ }
100
+ ,
101
+
102
+ reorderVerificationFlow: (payload: ApiRequest<'reorderVerificationFlow'>) => {
103
+ return api.post('reorderVerificationFlow', "/api/v1/portal/admin/verification/flows/reorder", payload);
104
+ }
105
+ ,
106
+
107
+ getUserVerifications: (query?: Expand<ApiRequest<'getUserVerifications'>>) => {
108
+ return api.get('getUserVerifications', "/api/v1/portal/admin/verification/fetch-all", query);
109
+ }
110
+ ,
111
+
112
+ getUserVerificationHistory: (params: ApiPathParams<'getUserVerificationHistory'>) => {
113
+ return api.get('getUserVerificationHistory', `/api/v1/portal/admin/verification/user/${params.userId}`);
114
+ }
115
+ ,
116
+
117
+ reviewUserVerification: (params: ApiPathParams<'reviewUserVerification'>, payload: ApiRequest<'reviewUserVerification'>) => {
118
+ return api.post('reviewUserVerification', `/api/v1/portal/admin/verification/reviews/${params.userVerificationId}`, payload);
119
+ }
120
+ ,
121
+
122
+ resetUserVerification: (params: ApiPathParams<'resetUserVerification'>, payload: ApiRequest<'resetUserVerification'>) => {
123
+ return api.post('resetUserVerification', `/api/v1/portal/admin/verification/reset/${params.userVerificationId}`, payload);
124
+ }
125
+ ,
126
+
127
+ getListingComplianceSubmissions: () => {
128
+ return api.get('getListingComplianceSubmissions', "/api/v1/portal/admin/verification/fetch-compliances");
129
+ }
130
+ ,
131
+
132
+ getTenancyComplianceSubmissions: () => {
133
+ return api.get('getTenancyComplianceSubmissions', "/api/v1/portal/admin/verification/fetch-tenancy-compliances");
134
+ }
135
+ ,
136
+
137
+ reviewListingComplianceSubmission: (params: ApiPathParams<'reviewListingComplianceSubmission'>, payload: ApiRequest<'reviewListingComplianceSubmission'>) => {
138
+ return api.post('reviewListingComplianceSubmission', `/api/v1/portal/admin/verification/review-compliance/${params.submissionId}`, payload);
139
+ }
140
+ ,
141
+
142
+ reviewTenancyComplianceSubmission: (params: ApiPathParams<'reviewTenancyComplianceSubmission'>, payload: ApiRequest<'reviewTenancyComplianceSubmission'>) => {
143
+ return api.post('reviewTenancyComplianceSubmission', `/api/v1/portal/admin/verification/review-tenancy-compliance/${params.submissionId}`, payload);
144
+ }
145
+ ,
146
+
147
+ getPlans: () => {
148
+ return api.get('getPlans', "/api/v1/portal/admin/plans/fetch-all");
149
+ }
150
+ ,
151
+
152
+ createPlan: (payload: ApiRequest<'createPlan'>) => {
153
+ return api.post('createPlan', "/api/v1/portal/admin/plans/create", payload);
154
+ }
155
+ ,
156
+
157
+ updatePlan: (params: ApiPathParams<'updatePlan'>, payload: ApiRequest<'updatePlan'>) => {
158
+ return api.post('updatePlan', `/api/v1/portal/admin/plans/update/${params.plan_id}`, payload);
159
+ }
160
+ ,
161
+
162
+ assignPlanToUser: (params: ApiPathParams<'assignPlanToUser'>, payload: ApiRequest<'assignPlanToUser'>) => {
163
+ return api.post('assignPlanToUser', `/api/v1/portal/admin/plans/assign-to-user/${params.user_id}`, payload);
164
+ }
165
+ ,
166
+
167
+ deactivateUserPlan: (params: ApiPathParams<'deactivateUserPlan'>, payload: ApiRequest<'deactivateUserPlan'>) => {
168
+ return api.post('deactivateUserPlan', `/api/v1/portal/admin/plans/deactivate-from-user/${params.user_id}`, payload);
169
+ }
170
+ ,
171
+
172
+ attachPlanVerificationRequirements: (params: ApiPathParams<'attachPlanVerificationRequirements'>, payload: ApiRequest<'attachPlanVerificationRequirements'>) => {
173
+ return api.post('attachPlanVerificationRequirements', `/api/v1/portal/admin/plans/${params.plan_id}/requirements`, payload);
174
+ }
175
+ ,
176
+
177
+ attachPlanCapabilities: (params: ApiPathParams<'attachPlanCapabilities'>, payload: ApiRequest<'attachPlanCapabilities'>) => {
178
+ return api.post('attachPlanCapabilities', `/api/v1/portal/admin/plans/${params.plan_id}/capabilities`, payload);
179
+ }
180
+ ,
181
+
182
+ getPlanEntitlements: () => {
183
+ return api.get('getPlanEntitlements', "/api/v1/portal/admin/plans/entitlements/fetch-all");
184
+ }
185
+ ,
186
+
187
+ createPlanEntitlement: (payload: ApiRequest<'createPlanEntitlement'>) => {
188
+ return api.post('createPlanEntitlement', "/api/v1/portal/admin/plans/entitlements/create", payload);
189
+ }
190
+ ,
191
+
192
+ updatePlanEntitlement: (params: ApiPathParams<'updatePlanEntitlement'>, payload: ApiRequest<'updatePlanEntitlement'>) => {
193
+ return api.post('updatePlanEntitlement', `/api/v1/portal/admin/plans/entitlements/update/${params.entitlement_key}`, payload);
194
+ }
195
+ ,
196
+
197
+ syncPlanEntitlements: (params: ApiPathParams<'syncPlanEntitlements'>, payload: ApiRequest<'syncPlanEntitlements'>) => {
198
+ return api.post('syncPlanEntitlements', `/api/v1/portal/admin/plans/entitlements/sync/${params.plan_id}`, payload);
199
+ }
200
+ ,
201
+
202
+ getCapabilities: () => {
203
+ return api.get('getCapabilities', "/api/v1/portal/admin/capability/fetch-all");
204
+ }
205
+ ,
206
+
207
+ createCapability: (payload: ApiRequest<'createCapability'>) => {
208
+ return api.post('createCapability', "/api/v1/portal/admin/capability/create", payload);
209
+ }
210
+ ,
211
+
212
+ updateCapability: (params: ApiPathParams<'updateCapability'>, payload: ApiRequest<'updateCapability'>) => {
213
+ return api.post('updateCapability', `/api/v1/portal/admin/capability/update/${params.capability_id}`, payload);
214
+ }
215
+ ,
216
+
217
+ getComplianceDefinitions: () => {
218
+ return api.get('getComplianceDefinitions', "/api/v1/portal/admin/compliances/fetch-all");
219
+ }
220
+ ,
221
+
222
+ createComplianceDefinition: (payload: ApiRequest<'createComplianceDefinition'>) => {
223
+ return api.post('createComplianceDefinition', "/api/v1/portal/admin/compliances/create", payload);
224
+ }
225
+ ,
226
+
227
+ updateComplianceDefinition: (params: ApiPathParams<'updateComplianceDefinition'>, payload: ApiRequest<'updateComplianceDefinition'>) => {
228
+ return api.post('updateComplianceDefinition', `/api/v1/portal/admin/compliances/update/${params.compliance_id}`, payload);
229
+ }
230
+ ,
231
+
232
+ syncComplianceRequirements: (params: ApiPathParams<'syncComplianceRequirements'>, payload: ApiRequest<'syncComplianceRequirements'>) => {
233
+ return api.post('syncComplianceRequirements', `/api/v1/portal/admin/compliances/${params.compliance_id}/sync-requirements`, payload);
234
+ }
235
+ ,
236
+
237
+ assignGlobalCompliance: (params: ApiPathParams<'assignGlobalCompliance'>) => {
238
+ return api.post('assignGlobalCompliance', `/api/v1/portal/admin/compliances/${params.compliance_id}/assign-global`);
239
+ }
240
+ ,
241
+
242
+ assignComplianceToCategory: (params: ApiPathParams<'assignComplianceToCategory'>) => {
243
+ return api.post('assignComplianceToCategory', `/api/v1/portal/admin/compliances/${params.compliance_id}/assign-category/${params.categoryId}`);
244
+ }
245
+ ,
246
+
247
+ assignComplianceToListing: (params: ApiPathParams<'assignComplianceToListing'>) => {
248
+ return api.post('assignComplianceToListing', `/api/v1/portal/admin/compliances/${params.compliance_id}/assign-to-listing/${params.listingId}`);
249
+ }
250
+ ,
251
+
252
+ assignComplianceToTenancy: (params: ApiPathParams<'assignComplianceToTenancy'>) => {
253
+ return api.post('assignComplianceToTenancy', `/api/v1/portal/admin/compliances/${params.compliance_id}/assign-to-tenancy/${params.tenancy_id}`);
254
+ }
255
+ ,
256
+
257
+ listingHistoryInspection: (params: ApiPathParams<'listingHistoryInspectionAdmin'>) => {
258
+ return api.get('listingHistoryInspectionAdmin', `/api/v1/portal/admin/inspections/fetch-history/${params.listing_uid}`);
259
+ }
260
+ ,
261
+
262
+ scheduleInspection: (payload: ApiRequest<'scheduleInspection'>) => {
263
+ return api.post('scheduleInspection', "/api/v1/portal/admin/inspections/schedule", payload);
264
+ }
265
+ ,
266
+
267
+ completeInspection: (params: ApiPathParams<'completeInspection'>, payload: ApiRequest<'completeInspection'>) => {
268
+ return api.post('completeInspection', `/api/v1/portal/admin/inspections/${params.uid}/complete`, payload);
269
+ }
270
+ ,
271
+
272
+ rescheduleInspection: (params: ApiPathParams<'rescheduleInspection'>, payload: ApiRequest<'rescheduleInspection'>) => {
273
+ return api.post('rescheduleInspection', `/api/v1/portal/admin/inspections/${params.uid}/reschedule`, payload);
274
+ }
275
+ ,
276
+
277
+ cancelInspection: (params: ApiPathParams<'cancelInspection'>, payload: ApiRequest<'cancelInspection'>) => {
278
+ return api.post('cancelInspection', `/api/v1/portal/admin/inspections/${params.uid}/cancel`, payload);
279
+ }
280
+ ,
281
+
282
+ assignMaintenanceTechnician: (params: ApiPathParams<'assignMaintenanceTechnician'>, payload: ApiRequest<'assignMaintenanceTechnician'>) => {
283
+ return api.post('assignMaintenanceTechnician', `/api/v1/portal/admin/maintenance/${params.uid}/assign`, payload);
284
+ }
285
+ ,
286
+
287
+ startMaintenanceRepair: (params: ApiPathParams<'startMaintenanceRepair'>, payload: ApiRequest<'startMaintenanceRepair'>) => {
288
+ return api.post('startMaintenanceRepair', `/api/v1/portal/admin/maintenance/${params.uid}/start`, payload);
289
+ }
290
+ ,
291
+
292
+ completeMaintenanceRepair: (params: ApiPathParams<'completeMaintenanceRepair'>, payload: ApiRequest<'completeMaintenanceRepair'>) => {
293
+ return api.post('completeMaintenanceRepair', `/api/v1/portal/admin/maintenance/${params.uid}/complete`, payload);
294
+ }
295
+ ,
296
+
297
+ cancelMaintenanceRequest: (params: ApiPathParams<'cancelMaintenanceRequest'>, payload: ApiRequest<'cancelMaintenanceRequest'>) => {
298
+ return api.post('cancelMaintenanceRequest', `/api/v1/portal/admin/maintenance/${params.uid}/cancel`, payload);
299
+ }
300
+ ,
301
+
302
+ assignComplianceToListingVertical: (params: ApiPathParams<'assignComplianceToListingVertical'>, payload: ApiRequest<'assignComplianceToListingVertical'>) => {
303
+ return api.post('assignComplianceToListingVertical', `/api/v1/portal/admin/compliances/${params.compliance_id}/assign-to-listing-vertical`, payload);
304
+ }
305
+ ,
306
+
307
+ assignComplianceToListingType: (params: ApiPathParams<'assignComplianceToListingType'>, payload: ApiRequest<'assignComplianceToListingType'>) => {
308
+ return api.post('assignComplianceToListingType', `/api/v1/portal/admin/compliances/${params.compliance_id}/assign-to-listing-type`, payload);
309
+ }
310
+
311
+ };
@@ -0,0 +1,11 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const agent = {
6
+
7
+ getApiV1PortalAgentTest: () => {
8
+ return api.get('getApiV1PortalAgentTest', "/api/v1/portal/agent/test");
9
+ }
10
+
11
+ };
@@ -0,0 +1,36 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const appointment = {
6
+
7
+ create: (payload: ApiRequest<'createAppointment'>) => {
8
+ return api.post('createAppointment', "/api/v1/public/appointment/create", payload);
9
+ }
10
+ ,
11
+
12
+ fetchOne: (params: ApiPathParams<'fetchOneAppointment'>) => {
13
+ return api.get('fetchOneAppointment', `/api/v1/public/appointment/fetch-one/${params.appointment_id}`);
14
+ }
15
+ ,
16
+
17
+ fetchAll: () => {
18
+ return api.get('fetchAllAppointment', "/api/v1/public/appointment/fetch-all");
19
+ }
20
+ ,
21
+
22
+ reschedule: (params: ApiPathParams<'rescheduleAppointment'>, payload: ApiRequest<'rescheduleAppointment'>) => {
23
+ return api.post('rescheduleAppointment', `/api/v1/public/appointment/${params.appointment_id}/reschedule`, payload);
24
+ }
25
+ ,
26
+
27
+ cancel: (params: ApiPathParams<'cancelAppointment'>) => {
28
+ return api.post('cancelAppointment', `/api/v1/public/appointment/${params.appointment_id}/confirm`);
29
+ }
30
+ ,
31
+
32
+ confirm: (params: ApiPathParams<'confirmAppointment'>) => {
33
+ return api.post('confirmAppointment', `/api/v1/public/appointment/${params.appointment_id}/cancel`);
34
+ }
35
+
36
+ };
@@ -0,0 +1,26 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const auth = {
6
+
7
+ loginUser: (payload: ApiRequest<'loginUser'>) => {
8
+ return api.post('loginUser', "/api/v1/public/auth/basic-login", payload);
9
+ }
10
+ ,
11
+
12
+ logoutUser: () => {
13
+ return api.post('logoutUser', "/api/v1/public/auth/logout");
14
+ }
15
+ ,
16
+
17
+ generateOTP: (payload: ApiRequest<'generateOTP'>) => {
18
+ return api.post('generateOTP', "/api/v1/public/auth/send-otp", payload);
19
+ }
20
+ ,
21
+
22
+ verifyOTP: (payload: ApiRequest<'verifyOTP'>) => {
23
+ return api.post('verifyOTP', "/api/v1/public/auth/verify-otp", payload);
24
+ }
25
+
26
+ };
@@ -0,0 +1,31 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const conversations = {
6
+
7
+ createConversation: (payload: ApiRequest<'createConversation'>) => {
8
+ return api.post('createConversation', "/api/v1/public/conversations/create", payload);
9
+ }
10
+ ,
11
+
12
+ list: () => {
13
+ return api.get('listConversations', "/api/v1/public/conversations/fetch-all");
14
+ }
15
+ ,
16
+
17
+ listConversationMessages: (params: ApiPathParams<'listConversationMessages'>) => {
18
+ return api.get('listConversationMessages', `/api/v1/public/conversations/${params.conversation_id}/messages`);
19
+ }
20
+ ,
21
+
22
+ sendConversationMessage: (payload: ApiRequest<'sendConversationMessage'>) => {
23
+ return api.post('sendConversationMessage', "/api/v1/public/conversations/send-message", payload);
24
+ }
25
+ ,
26
+
27
+ markConversationAsRead: (params: ApiPathParams<'markConversationAsRead'>) => {
28
+ return api.post('markConversationAsRead', `/api/v1/public/conversations/${params.conversation_id}/read-message`);
29
+ }
30
+
31
+ };
@@ -0,0 +1,31 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const customer = {
6
+
7
+ getApiV1PortalCustomerTest: () => {
8
+ return api.get('getApiV1PortalCustomerTest', "/api/v1/portal/customer/test");
9
+ }
10
+ ,
11
+
12
+ postApiV1PortalCustomerCreate: (payload: ApiRequest<'postApiV1PortalCustomerCreate'>) => {
13
+ return api.post('postApiV1PortalCustomerCreate', "/api/v1/portal/customer/create", payload);
14
+ }
15
+ ,
16
+
17
+ postApiV1PortalCustomerCreateWithGithub: () => {
18
+ return api.post('postApiV1PortalCustomerCreateWithGithub', "/api/v1/portal/customer/create-with-github");
19
+ }
20
+ ,
21
+
22
+ postApiV1PortalCustomerSendOtp: () => {
23
+ return api.post('postApiV1PortalCustomerSendOtp', "/api/v1/portal/customer/send-otp");
24
+ }
25
+ ,
26
+
27
+ postApiV1PortalCustomerVerifyOtp: (payload: ApiRequest<'postApiV1PortalCustomerVerifyOtp'>) => {
28
+ return api.post('postApiV1PortalCustomerVerifyOtp', "/api/v1/portal/customer/verify-otp", payload);
29
+ }
30
+
31
+ };
@@ -0,0 +1,11 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const feature = {
6
+
7
+ getFeatures: (query?: Expand<ApiRequest<'getFeatures'>>) => {
8
+ return api.get('getFeatures', "/api/v1/public/feature/fetch-all", query);
9
+ }
10
+
11
+ };
@@ -0,0 +1,16 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const github = {
6
+
7
+ getApiV1SocialAuthGithubRedirect: () => {
8
+ return api.get('getApiV1SocialAuthGithubRedirect', "/api/v1/social-auth/github/redirect");
9
+ }
10
+ ,
11
+
12
+ getApiV1SocialAuthGithubCallback: () => {
13
+ return api.get('getApiV1SocialAuthGithubCallback', "/api/v1/social-auth/github/callback");
14
+ }
15
+
16
+ };
@@ -0,0 +1,16 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const google = {
6
+
7
+ getApiV1SocialAuthGoogleRedirect: () => {
8
+ return api.get('getApiV1SocialAuthGoogleRedirect', "/api/v1/social-auth/google/redirect");
9
+ }
10
+ ,
11
+
12
+ getApiV1SocialAuthGoogleCallback: () => {
13
+ return api.get('getApiV1SocialAuthGoogleCallback', "/api/v1/social-auth/google/callback");
14
+ }
15
+
16
+ };
@@ -0,0 +1,11 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const inspection = {
6
+
7
+ listingHistory: (params: ApiPathParams<'listingHistoryInspection'>) => {
8
+ return api.get('listingHistoryInspection', `/api/v1/public/inspection/listing/${params.listing_uid}`);
9
+ }
10
+
11
+ };
@@ -0,0 +1,116 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const landlord = {
6
+
7
+ new: (payload: ApiRequest<'newLandlord'>) => {
8
+ return api.post('newLandlord', "/api/v1/portal/landlord/create-landlord", payload);
9
+ }
10
+ ,
11
+
12
+ createListingDraft: (payload: ApiRequest<'createListingDraft'>) => {
13
+ return api.post('createListingDraft', "/api/v1/portal/landlord/listing", payload);
14
+ }
15
+ ,
16
+
17
+ getDraftListings: () => {
18
+ return api.get('getDraftListings', "/api/v1/portal/landlord/listing/drafts");
19
+ }
20
+ ,
21
+
22
+ getSubmittedListings: () => {
23
+ return api.get('getSubmittedListings', "/api/v1/portal/landlord/listing/fetch-submitted");
24
+ }
25
+ ,
26
+
27
+ getOwnerListings: () => {
28
+ return api.get('getOwnerListings', "/api/v1/portal/landlord/listing/fetch-all");
29
+ }
30
+ ,
31
+
32
+ getOwnerListing: (params: ApiPathParams<'getOwnerListing'>) => {
33
+ return api.get('getOwnerListing', `/api/v1/portal/landlord/listing/fetch-one/${params.listing_uid}`);
34
+ }
35
+ ,
36
+
37
+ savePropertyBasics: (params: ApiPathParams<'savePropertyBasics'>, payload: ApiRequest<'savePropertyBasics'>) => {
38
+ return api.post('savePropertyBasics', `/api/v1/portal/landlord/listing/${params.listing_uid}/property-basics`, payload);
39
+ }
40
+ ,
41
+
42
+ saveTenancyDetails: (params: ApiPathParams<'saveTenancyDetails'>, payload: ApiRequest<'saveTenancyDetails'>) => {
43
+ return api.post('saveTenancyDetails', `/api/v1/portal/landlord/listing/${params.listing_uid}/tenancy-details`, payload);
44
+ }
45
+ ,
46
+
47
+ saveListingFeatures: (params: ApiPathParams<'saveListingFeatures'>, payload: ApiRequest<'saveListingFeatures'>) => {
48
+ return api.post('saveListingFeatures', `/api/v1/portal/landlord/listing/${params.listing_uid}/features`, payload);
49
+ }
50
+ ,
51
+
52
+ saveTenantPreferences: (params: ApiPathParams<'saveTenantPreferences'>, payload: ApiRequest<'saveTenantPreferences'>) => {
53
+ return api.post('saveTenantPreferences', `/api/v1/portal/landlord/listing/${params.listing_uid}/tenant-preferences`, payload);
54
+ }
55
+ ,
56
+
57
+ saveViewingAvailability: (params: ApiPathParams<'saveViewingAvailability'>, payload: ApiRequest<'saveViewingAvailability'>) => {
58
+ return api.post('saveViewingAvailability', `/api/v1/portal/landlord/listing/${params.listing_uid}/viewing-availability`, payload);
59
+ }
60
+ ,
61
+
62
+ saveUsedItemDetails: (params: ApiPathParams<'saveUsedItemDetails'>, payload: ApiRequest<'saveUsedItemDetails'>) => {
63
+ return api.post('saveUsedItemDetails', `/api/v1/portal/landlord/listing/${params.listing_uid}/item-details`, payload);
64
+ }
65
+ ,
66
+
67
+ uploadListingMedia: (params: ApiPathParams<'uploadListingMedia'>) => {
68
+ return api.post('uploadListingMedia', `/api/v1/portal/landlord/listing/${params.listing_uid}/media`);
69
+ }
70
+ ,
71
+
72
+ reorderListingMedia: (params: ApiPathParams<'reorderListingMedia'>, payload: ApiRequest<'reorderListingMedia'>) => {
73
+ return api.post('reorderListingMedia', `/api/v1/portal/landlord/listing/${params.listing_uid}/media/order`, payload);
74
+ }
75
+ ,
76
+
77
+ setListingCoverMedia: (params: ApiPathParams<'setListingCoverMedia'>) => {
78
+ return api.post('setListingCoverMedia', `/api/v1/portal/landlord/listing/${params.listing_uid}/media/${params.media_uid}/cover`);
79
+ }
80
+ ,
81
+
82
+ submitListing: (params: ApiPathParams<'submitListing'>) => {
83
+ return api.post('submitListing', `/api/v1/portal/landlord/listing/${params.listing_uid}/submit`);
84
+ }
85
+ ,
86
+
87
+ getListingCompliance: (params: ApiPathParams<'getListingCompliance'>) => {
88
+ return api.get('getListingCompliance', `/api/v1/portal/landlord/listing/compliance/fetch/${params.listing_uid}`);
89
+ }
90
+ ,
91
+
92
+ submitListingCompliance: (params: ApiPathParams<'submitListingCompliance'>, payload: ApiRequest<'submitListingCompliance'>) => {
93
+ return api.post('submitListingCompliance', `/api/v1/portal/landlord/listing/compliance/submit/${params.listing_uid}`, payload);
94
+ }
95
+ ,
96
+
97
+ resolveListingCompliance: (params: ApiPathParams<'resolveListingCompliance'>) => {
98
+ return api.post('resolveListingCompliance', `/api/v1/portal/landlord/listing/compliance/resolve/${params.listing_uid}`);
99
+ }
100
+ ,
101
+
102
+ getLandlordTenancies: () => {
103
+ return api.get('getLandlordTenancies', "/api/v1/portal/landlord/tenancy/fetch-all");
104
+ }
105
+ ,
106
+
107
+ submitTenancyCompliance: (params: ApiPathParams<'submitTenancyCompliance'>, payload: ApiRequest<'submitTenancyCompliance'>) => {
108
+ return api.post('submitTenancyCompliance', `/api/v1/portal/landlord/tenancy/compliance/submit/${params.tenancy_uid}`, payload);
109
+ }
110
+ ,
111
+
112
+ resolveTenancyCompliance: (params: ApiPathParams<'resolveTenancyCompliance'>) => {
113
+ return api.post('resolveTenancyCompliance', `/api/v1/portal/landlord/tenancy/compliance/resolve/${params.tenancy_uid}`);
114
+ }
115
+
116
+ };
@@ -0,0 +1,21 @@
1
+
2
+ import { api } from "../api-client";
3
+ import type { ApiRequest, ApiPathParams, Expand } from "../types/openapi";
4
+
5
+ export const listings = {
6
+
7
+ search: (query?: Expand<ApiRequest<'searchListings'>>) => {
8
+ return api.get('searchListings', "/api/v1/public/listings/search", query);
9
+ }
10
+ ,
11
+
12
+ discover: (query?: Expand<ApiRequest<'discoverListings'>>) => {
13
+ return api.get('discoverListings', "/api/v1/public/listings/discover", query);
14
+ }
15
+ ,
16
+
17
+ fetchOne: (params: ApiPathParams<'fetchOne'>) => {
18
+ return api.get('fetchOne', `/api/v1/public/listings/fetch-one/${params.listing_uid}`);
19
+ }
20
+
21
+ };