@parra/parra-js-sdk 0.0.26 → 0.2.6

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.
Files changed (73) hide show
  1. package/dist/AccessToken.d.ts +1 -0
  2. package/dist/AccessToken.js +63 -0
  3. package/dist/ParraAPI.d.ts +184 -767
  4. package/dist/ParraAPI.js +46 -571
  5. package/dist/index.d.ts +3 -5
  6. package/dist/index.js +5 -7
  7. package/package.json +6 -2
  8. package/dist/AuthInterceptor.d.ts +0 -13
  9. package/dist/AuthInterceptor.js +0 -99
  10. package/dist/HTTPClient.d.ts +0 -30
  11. package/dist/HTTPClient.js +0 -158
  12. package/dist/HTTPInterceptor.d.ts +0 -5
  13. package/dist/HTTPInterceptor.js +0 -2
  14. package/dist/URLBuilder.d.ts +0 -7
  15. package/dist/URLBuilder.js +0 -24
  16. package/dist/models/AdminUser.d.ts +0 -12
  17. package/dist/models/AdminUser.js +0 -2
  18. package/dist/models/Business.d.ts +0 -23
  19. package/dist/models/Business.js +0 -2
  20. package/dist/models/BusinessProfile.d.ts +0 -10
  21. package/dist/models/BusinessProfile.js +0 -2
  22. package/dist/models/Category.d.ts +0 -18
  23. package/dist/models/Category.js +0 -2
  24. package/dist/models/City.d.ts +0 -7
  25. package/dist/models/City.js +0 -2
  26. package/dist/models/CollectionResponse.d.ts +0 -6
  27. package/dist/models/CollectionResponse.js +0 -2
  28. package/dist/models/Coordinate.d.ts +0 -4
  29. package/dist/models/Coordinate.js +0 -2
  30. package/dist/models/Employee.d.ts +0 -22
  31. package/dist/models/Employee.js +0 -2
  32. package/dist/models/EmployeeProfile.d.ts +0 -6
  33. package/dist/models/EmployeeProfile.js +0 -2
  34. package/dist/models/Entity.d.ts +0 -6
  35. package/dist/models/Entity.js +0 -2
  36. package/dist/models/Feature.d.ts +0 -7
  37. package/dist/models/Feature.js +0 -2
  38. package/dist/models/ImageAsset.d.ts +0 -10
  39. package/dist/models/ImageAsset.js +0 -2
  40. package/dist/models/Industry.d.ts +0 -9
  41. package/dist/models/Industry.js +0 -2
  42. package/dist/models/Location.d.ts +0 -39
  43. package/dist/models/Location.js +0 -2
  44. package/dist/models/LocationAddress.d.ts +0 -17
  45. package/dist/models/LocationAddress.js +0 -2
  46. package/dist/models/LocationPhoto.d.ts +0 -10
  47. package/dist/models/LocationPhoto.js +0 -2
  48. package/dist/models/LocationProfile.d.ts +0 -12
  49. package/dist/models/LocationProfile.js +0 -2
  50. package/dist/models/LocationRating.d.ts +0 -10
  51. package/dist/models/LocationRating.js +0 -2
  52. package/dist/models/LocationReview.d.ts +0 -22
  53. package/dist/models/LocationReview.js +0 -2
  54. package/dist/models/LocationReviewSource.d.ts +0 -5
  55. package/dist/models/LocationReviewSource.js +0 -2
  56. package/dist/models/LocationReviewer.d.ts +0 -4
  57. package/dist/models/LocationReviewer.js +0 -2
  58. package/dist/models/LocationService.d.ts +0 -9
  59. package/dist/models/LocationService.js +0 -2
  60. package/dist/models/LocationServiceArea.d.ts +0 -11
  61. package/dist/models/LocationServiceArea.js +0 -2
  62. package/dist/models/Pagination.d.ts +0 -2
  63. package/dist/models/Pagination.js +0 -2
  64. package/dist/models/Query.d.ts +0 -9
  65. package/dist/models/Query.js +0 -2
  66. package/dist/models/StripeAccountLink.d.ts +0 -10
  67. package/dist/models/StripeAccountLink.js +0 -2
  68. package/dist/models/Tag.d.ts +0 -11
  69. package/dist/models/Tag.js +0 -2
  70. package/dist/models/User.d.ts +0 -12
  71. package/dist/models/User.js +0 -2
  72. package/dist/models/index.d.ts +0 -8
  73. package/dist/models/index.js +0 -20
@@ -1,578 +1,199 @@
1
- import { HTTPClient } from "./HTTPClient";
2
- export interface CoordinateResponse {
3
- latitude: number;
4
- longitude: number;
5
- }
6
- export interface UpdateCityRequestBody {
7
- name: string;
8
- stateCode: string;
9
- }
10
- export interface CreateCityRequestBody {
1
+ import { HTTPClient } from "@parra/http-client";
2
+ export interface CreateTenantRequestBody {
11
3
  name: string;
12
- stateCode: string;
4
+ is_test: boolean;
13
5
  }
14
- export interface CityResponse {
6
+ export interface Tenant {
15
7
  id: string;
16
- createdAt: string;
17
- updatedAt: string;
18
- deletedAt: string | null;
19
- name: string;
20
- stateCode: string;
21
- }
22
- export interface CityCollectionResponse {
23
- page: number;
24
- pageCount: number;
25
- pageSize: number;
26
- totalCount: number;
27
- data: Array<CityResponse>;
28
- }
29
- export declare type CityListResponse = CityResponse;
30
- export interface UpdateFeatureRequestBody {
31
- zipCode: string | null;
32
- country: string | null;
33
- city: string | null;
34
- state: string | null;
35
- }
36
- export interface CreateFeatureRequestBody {
37
- zipCode: string | null;
38
- country: string | null;
39
- city: string | null;
40
- state: string | null;
41
- }
42
- export interface FeatureResponse {
43
- id: string;
44
- createdAt: string;
45
- updatedAt: string;
46
- deletedAt: string | null;
47
- zipCode: string | null;
48
- country: string | null;
49
- city: string | null;
50
- state: string | null;
51
- }
52
- export declare type FeatureListResponse = FeatureResponse;
53
- export interface AppStatusResponse {
54
- version: AppStatusVersionResponse;
55
- }
56
- export interface AppStatusVersionResponse {
57
- updateAvailable: boolean;
58
- updateRequired: boolean;
59
- currentVersion: string;
60
- }
61
- export interface CategorySearchResponse {
62
- categories: Array<CategoryResponse>;
63
- }
64
- export interface LocationSearchResponse {
65
- locations: Array<LocationResponse>;
66
- }
67
- export interface UpdateBusinessProfileRequestBody {
68
- name: string | null;
69
- email: string | null;
70
- phoneNumber: string | null;
71
- website: string | null;
72
- about: string | null;
73
- isPersonalName: boolean;
74
- }
75
- export interface BusinessProfileResponse {
76
- id: string;
77
- createdAt: string;
78
- updatedAt: string;
79
- deletedAt: string | null;
80
- name: string | null;
81
- email: string | null;
82
- phoneNumber: string | null;
83
- website: string | null;
84
- about: string | null;
85
- isPersonalName: boolean;
86
- }
87
- export interface BusinessResponse {
88
- id: string;
89
- createdAt: string;
90
- updatedAt: string;
91
- deletedAt: string | null;
8
+ created_at: string;
9
+ updated_at: string;
10
+ deleted_at?: string | null;
92
11
  name: string;
93
- isVerified: boolean;
94
- stripeAccountId: string | null;
95
- avatarUrl: string | null;
96
- profileId: string | null;
97
- profile: BusinessProfileResponse | null;
12
+ is_test: boolean;
98
13
  }
99
- export interface BusinessCollectionResponse {
14
+ export interface TenantColectionResponse {
100
15
  page: number;
101
- pageCount: number;
102
- pageSize: number;
103
- totalCount: number;
104
- data: Array<BusinessResponse>;
16
+ page_count: number;
17
+ page_size: number;
18
+ total_count: number;
19
+ data: Array<Tenant>;
105
20
  }
106
- export interface CreateBusinessRequestBody {
21
+ export interface CreateApiKeyRequestBody {
107
22
  name: string;
108
23
  }
109
- export interface UpdateBusinessRequestBody {
110
- name: string;
111
- }
112
- export interface CreateBusinessForEmployeeRequestBody {
113
- type: string;
114
- companyName: string | null;
115
- firstName: string | null;
116
- lastName: string | null;
117
- email: string;
118
- phoneNumber: string;
119
- }
120
- export declare enum BusinessType {
121
- individual = "individual",
122
- company = "company",
123
- nonProfit = "non_profit",
124
- governmentEntity = "government_entity"
125
- }
126
- export declare enum AccountLinkType {
127
- accountOnboarding = "account_onboarding",
128
- accountUpdate = "account_update"
129
- }
130
- export interface CreateStripeAccountLinkRequestBody {
131
- refreshUrl: string;
132
- returnUrl: string;
133
- type: string;
134
- }
135
- export interface StripeAccountLinkResponse {
136
- object: string;
137
- created: string;
138
- url: string;
139
- }
140
- export interface CategoryResponse {
24
+ export interface ApiKey {
141
25
  id: string;
142
- createdAt: string;
143
- updatedAt: string;
144
- deletedAt: string | null;
145
- name: string;
146
- detail: string | null;
147
- locationCount: number | null;
148
- industryId: string | null;
149
- iconId: string | null;
150
- icon: IconResponse | null;
151
- industry: IndustryResponse | null;
152
- }
153
- export interface CreateCategoryRequestBody {
154
- name: string;
155
- detail: string | null;
156
- industryId: string | null;
157
- }
158
- export interface UpdateCategoryRequestBody {
26
+ created_at: string;
27
+ updated_at: string;
28
+ deleted_at?: string | null;
159
29
  name: string;
160
- detail: string | null;
161
- industryId: string | null;
30
+ tenant_id: string;
162
31
  }
163
- export interface CategoryCollectionResponse {
164
- page: number;
165
- pageCount: number;
166
- pageSize: number;
167
- totalCount: number;
168
- data: Array<CategoryResponse>;
169
- }
170
- export interface IndustryResponse {
32
+ export interface ApiKeyWithSecretResponse {
171
33
  id: string;
172
- createdAt: string;
173
- updatedAt: string;
174
- deletedAt: string | null;
34
+ created_at: string;
35
+ updated_at: string;
36
+ deleted_at?: string | null;
175
37
  name: string;
176
- detail: string | null;
38
+ tenant_id: string;
39
+ secret: string;
177
40
  }
178
- export interface IndustryCollectionResponse {
41
+ export interface ApiKeyColectionResponse {
179
42
  page: number;
180
- pageCount: number;
181
- pageSize: number;
182
- totalCount: number;
183
- data: Array<IndustryResponse>;
43
+ page_count: number;
44
+ page_size: number;
45
+ total_count: number;
46
+ data: Array<ApiKey>;
184
47
  }
185
- export interface CreateIndustryRequestBody {
186
- name: string;
187
- detail: string | null;
188
- }
189
- export interface UpdateIndustryRequestBody {
190
- name: string;
191
- detail: string | null;
48
+ export interface AnswerData {
192
49
  }
193
- export interface TagResponse {
50
+ export interface Answer {
194
51
  id: string;
195
- createdAt: string;
196
- updatedAt: string;
197
- deletedAt: string | null;
198
- name: string;
199
- shortName: string | null;
200
- detail: string | null;
201
- categoryId: string | null;
202
- }
203
- export interface TagCollectionResponse {
204
- page: number;
205
- pageCount: number;
206
- pageSize: number;
207
- totalCount: number;
208
- data: Array<TagResponse>;
209
- }
210
- export interface CreateTagRequestBody {
211
- name: string;
212
- detail: string | null;
213
- categoryId: string | null;
52
+ created_at: string;
53
+ updated_at: string;
54
+ deleted_at?: string | null;
55
+ question_id: string;
56
+ user_id: string;
57
+ tenant_id: string;
58
+ data: AnswerData;
214
59
  }
215
- export interface UpdateTagRequestBody {
216
- name: string;
217
- detail: string | null;
218
- categoryId: string | null;
60
+ export interface AnswerQuestionBody {
219
61
  }
220
- export interface EmployeeResponse {
221
- id: string;
222
- createdAt: string;
223
- updatedAt: string;
224
- deletedAt: string | null;
225
- firstName: string;
226
- lastName: string;
227
- email: string;
228
- name: string;
229
- isVerified: boolean;
230
- stripeAccountId: string | null;
231
- avatarUrl: string | null;
232
- profileId: string | null;
233
- businessId: string | null;
234
- profile: EmployeeProfileResponse | null;
235
- Business: BusinessResponse | null;
236
- }
237
- export interface EmployeeCollectionResponse {
238
- page: number;
239
- pageCount: number;
240
- pageSize: number;
241
- totalCount: number;
242
- data: Array<EmployeeResponse>;
243
- }
244
- export interface InviteEmployeeRequestBody {
245
- firstName: string;
246
- lastName: string;
247
- email: string;
62
+ export declare type CardItemData = Question;
63
+ export interface CardItem {
64
+ type: string;
65
+ version: string;
66
+ data: CardItemData;
248
67
  }
249
- export interface UpdateEmployeeRequestBody {
250
- firstName: string;
251
- lastName: string;
252
- email: string;
68
+ export interface CardsResponse {
69
+ items: Array<CardItem>;
253
70
  }
254
- export interface TipEmployeeRequestBody {
255
- amount: string;
71
+ export declare enum QuestionType {
72
+ choice = "choice"
256
73
  }
257
- export interface CreateEmployeeForBusinessRequestBody {
258
- firstName: string;
259
- lastName: string;
260
- email: string;
74
+ export declare enum QuestionKind {
75
+ radio = "radio",
76
+ checkbox = "checkbox"
261
77
  }
262
- export interface UpdateEmployeeProfileRequestBody {
263
- gender: string | null;
264
- birthday: string | null;
78
+ export interface CreateChoiceQuestionOption {
79
+ title?: string;
80
+ value: string;
81
+ is_other?: boolean | null;
265
82
  }
266
- export interface EmployeeProfileResponse {
83
+ export interface ChoiceQuestionOption {
84
+ title?: string;
85
+ value: string;
86
+ is_other?: boolean | null;
267
87
  id: string;
268
- createdAt: string;
269
- updatedAt: string;
270
- deletedAt: string | null;
271
- gender: string | null;
272
- birthday: string | null;
273
88
  }
274
- export interface ImageAssetResponse {
275
- id: string;
276
- createdAt: string;
277
- updatedAt: string;
278
- deletedAt: string | null;
279
- width: number;
280
- height: number;
281
- url: string;
282
- identifier: string;
283
- fileType: string;
284
- mimeType: string;
285
- }
286
- export interface AvatarResponse {
287
- id: string;
288
- createdAt: string;
289
- updatedAt: string;
290
- deletedAt: string | null;
291
- width: number;
292
- height: number;
293
- url: string;
294
- identifier: string;
295
- fileType: string;
296
- mimeType: string;
297
- }
298
- export interface PhotoResponse {
299
- id: string;
300
- createdAt: string;
301
- updatedAt: string;
302
- deletedAt: string | null;
303
- width: number;
304
- height: number;
305
- url: string;
306
- identifier: string;
307
- fileType: string;
308
- mimeType: string;
309
- }
310
- export interface IconResponse {
311
- id: string;
312
- createdAt: string;
313
- updatedAt: string;
314
- deletedAt: string | null;
315
- width: number;
316
- height: number;
317
- url: string;
318
- identifier: string;
319
- fileType: string;
320
- mimeType: string;
321
- }
322
- export interface UploadAvatarRequestBody {
323
- avatar: File;
324
- }
325
- export interface UploadIconRequestBody {
326
- icon: File;
327
- }
328
- export interface UploadPhotoRequestBody {
329
- photo: File;
330
- }
331
- export interface CreateLocationForBusinessRequestBody {
332
- name: string;
89
+ export interface ChoiceQuestionBody {
90
+ options: Array<ChoiceQuestionOption>;
333
91
  }
334
- export interface CreateLocationRequestBody {
335
- name: string;
336
- businessId: string | null;
92
+ export interface CreateChoiceQuestionBody {
93
+ options: Array<CreateChoiceQuestionOption>;
337
94
  }
338
- export interface UpdateLocationRequestBody {
339
- name: string;
95
+ export declare type CreateQuestionData = CreateChoiceQuestionBody;
96
+ export declare type QuestionData = ChoiceQuestionBody;
97
+ export interface CreateQuestionRequestBody {
98
+ title: string;
99
+ subtitle?: string | null;
100
+ type: string;
101
+ kind: string;
102
+ data: CreateQuestionData;
103
+ active?: boolean;
104
+ expires_at?: string | null;
105
+ answer_quota?: number | null;
340
106
  }
341
- export interface LocationResponse {
107
+ export interface Question {
342
108
  id: string;
343
- createdAt: string;
344
- updatedAt: string;
345
- deletedAt: string | null;
346
- isVerified: boolean;
347
- name: string;
348
- rating: number | null;
349
- ratingCount: number | null;
350
- avatarUrl: string | null;
351
- avatarId: string | null;
352
- businessId: string;
353
- profileId: string | null;
354
- addressId: string | null;
355
- avatar: AvatarResponse | null;
356
- business: BusinessResponse | null;
357
- profile: LocationProfileResponse | null;
358
- address: LocationAddressResponse | null;
359
- ratingBreakdown: LocationRatingBreakdownResponse | null;
360
- categories: Array<CategoryResponse> | null;
361
- photos: Array<PhotoResponse> | null;
362
- }
363
- export interface LocationCollectionResponse {
109
+ created_at: string;
110
+ updated_at: string;
111
+ deleted_at?: string | null;
112
+ title: string;
113
+ subtitle?: string | null;
114
+ type: string;
115
+ kind: string;
116
+ data: CreateQuestionData;
117
+ active?: boolean;
118
+ expires_at?: string | null;
119
+ answer_quota?: number | null;
120
+ tenant_id: string;
121
+ answer?: Answer;
122
+ }
123
+ export interface QuestionColectionResponse {
364
124
  page: number;
365
- pageCount: number;
366
- pageSize: number;
367
- totalCount: number;
368
- data: Array<LocationResponse>;
369
- }
370
- export interface CreateCategoryForLocationRequestBody {
371
- categoryId: string;
372
- }
373
- export interface CreateTagForLocationRequestBody {
374
- tagId: string;
375
- }
376
- export interface UpdateTagsForLocationCategoryRequestBody {
377
- tagIds: Array<string>;
378
- }
379
- export interface CreateLocationCategoryRequestBody {
380
- locationId: string;
381
- categoryId: string;
382
- }
383
- export interface LocationCategoryResponse {
384
- id: string;
385
- createdAt: string;
386
- updatedAt: string;
387
- deletedAt: string | null;
388
- locationId: string;
389
- categoryId: string;
390
- location: LocationResponse | null;
391
- category: CategoryResponse | null;
392
- }
393
- export interface UpdateLocationServiceAreaRequestBody {
394
- zipCode: string | null;
395
- geometry: Array<CoordinateResponse> | null;
396
- }
397
- export interface CreateLocationServiceAreaRequestBody {
398
- zipCode: string | null;
399
- geometry: Array<CoordinateResponse> | null;
400
- }
401
- export interface LocationServiceAreaResponse {
402
- id: string;
403
- createdAt: string;
404
- updatedAt: string;
405
- deletedAt: string | null;
406
- zipCode: string | null;
407
- geometry: Array<CoordinateResponse> | null;
408
- locationId: string;
409
- location: LocationResponse | null;
410
- }
411
- export interface CreateLocationReviewReviewerStub {
412
- name: string;
413
- }
414
- export interface CreateLocationReviewRequestBody {
415
- locationId: string;
416
- title: string | null;
417
- body: string | null;
418
- rating: number;
419
- weight: number | null;
420
- isFeatured: boolean;
421
- sourceId: string | null;
422
- reviewer: CreateLocationReviewReviewerStub;
423
- }
424
- export interface LocationReviewSourceResponse {
425
- id: string;
426
- name: string;
427
- }
428
- export interface LocationRatingBreakdownResponse {
429
- id: string;
430
- overallRating: number;
431
- totalRatings: number;
432
- oneStarRatings: number;
433
- twoStarRatings: number;
434
- threeStarRatings: number;
435
- fourStarRatings: number;
436
- fiveStarRatings: number;
437
- }
438
- export interface UpdateLocationRatingRequestBody {
439
- rating: number;
440
- ratingCount: number;
441
- }
442
- export interface LocationReviewerResponse {
443
- id: string;
444
- createdAt: string;
445
- updatedAt: string;
446
- deletedAt: string | null;
447
- name: string | null;
448
- }
449
- export interface CreateLocationReviewStub {
450
- locationId: string;
451
- title: string | null;
452
- body: string | null;
453
- rating: number;
454
- weight: number | null;
455
- isFeatured: boolean;
456
- sourceId: string | null;
457
- }
458
- export interface LocationReviewResponse {
459
- id: string;
460
- createdAt: string;
461
- updatedAt: string;
462
- deletedAt: string | null;
463
- locationId: string;
464
- title: string | null;
465
- body: string | null;
466
- rating: number;
467
- weight: number | null;
468
- isFeatured: boolean;
469
- sourceId: string | null;
470
- reviewerId: string | null;
471
- location: LocationResponse | null;
472
- source: LocationReviewSourceResponse | null;
473
- reviewer: LocationReviewerResponse | null;
474
- }
475
- export interface UpdateLocationAddressRequestBody {
476
- streetAddress: string;
477
- suiteOrUnitNumber: string | null;
478
- city: string;
479
- stateCode: string;
480
- zipCode: string;
481
- isStoreFront: boolean;
482
- }
483
- export interface LocationAddressResponse {
484
- id: string;
485
- createdAt: string;
486
- updatedAt: string;
487
- deletedAt: string | null;
488
- streetAddress: string;
489
- suiteOrUnitNumber: string | null;
490
- city: string;
491
- stateCode: string;
492
- zipCode: string;
493
- isStoreFront: boolean;
494
- coordinate: CoordinateResponse;
495
- formattedAddress: string | null;
496
- rawAddress: Map<string, any> | null;
497
- state: string;
498
- country: string | null;
499
- countryCode: string | null;
500
- }
501
- export interface LocationPhotoResponse {
502
- id: string;
503
- createdAt: string;
504
- updatedAt: string;
505
- deletedAt: string | null;
506
- index: number | null;
507
- locationId: string;
508
- photoId: string;
509
- location: LocationResponse | null;
510
- photo: PhotoResponse;
511
- }
512
- export interface UpdateLocationProfileRequestBody {
513
- name: string | null;
514
- email: string | null;
515
- phoneNumber: string | null;
516
- website: string | null;
517
- about: string | null;
518
- hasStoreFrontOffering: boolean;
519
- hasRemoteOffering: boolean;
520
- hasOnSiteOffering: boolean;
521
- }
522
- export interface LocationProfileResponse {
523
- id: string;
524
- createdAt: string;
525
- updatedAt: string;
526
- deletedAt: string | null;
527
- name: string | null;
528
- email: string | null;
529
- phoneNumber: string | null;
530
- website: string | null;
531
- about: string | null;
532
- hasStoreFrontOffering: boolean;
533
- hasRemoteOffering: boolean;
534
- hasOnSiteOffering: boolean;
535
- }
536
- export interface UpdateVerificationRequestBody {
537
- isVerified: boolean;
538
- }
539
- export interface VerificationResponse {
540
- isVerified: boolean;
541
- }
542
- export interface ChatAuthTokenResponse {
543
- access_token: string;
544
- }
545
- export interface ChannelResponse {
125
+ page_count: number;
126
+ page_size: number;
127
+ total_count: number;
128
+ data: Array<Question>;
129
+ }
130
+ export interface NotificationRecipient {
131
+ user_id?: string | null;
132
+ }
133
+ export interface CreateNotificationRequestBody {
134
+ type?: string;
135
+ title: string;
136
+ subtitle?: string | null;
137
+ body?: string | null;
138
+ image_url?: string | null;
139
+ data?: Map<string, any> | null;
140
+ action?: Map<string, any> | null;
141
+ deduplication_id?: string | null;
142
+ group_id?: string | null;
143
+ visible?: boolean;
144
+ silent?: boolean;
145
+ content_available?: boolean;
146
+ expires_at?: string | null;
147
+ recipients: Array<NotificationRecipient>;
148
+ }
149
+ export interface NotificationResponse {
150
+ type?: string;
151
+ title: string;
152
+ subtitle?: string | null;
153
+ body?: string | null;
154
+ image_url?: string | null;
155
+ data?: Map<string, any> | null;
156
+ action?: Map<string, any> | null;
157
+ deduplication_id?: string | null;
158
+ group_id?: string | null;
159
+ visible?: boolean;
160
+ silent?: boolean;
161
+ content_available?: boolean;
162
+ expires_at?: string | null;
163
+ user_id?: string | null;
546
164
  id: string;
547
165
  created_at: string;
548
166
  updated_at: string;
549
167
  deleted_at: string | null;
550
- hash: string;
551
- name: string;
552
- twilio_conversation_sid: string;
168
+ viewed_at?: string | null;
169
+ version?: string;
553
170
  }
554
- export interface SendMessageRequestBody {
555
- body: string;
171
+ export interface NotificationColectionResponse {
172
+ page: number;
173
+ page_count: number;
174
+ page_size: number;
175
+ total_count: number;
176
+ data: Array<NotificationResponse>;
556
177
  }
557
- export interface MessageResponse {
558
- id: string;
559
- created_at: string;
560
- updated_at: string;
561
- deleted_at: string | null;
562
- body: string | null;
563
- twilio_message_sid: string;
564
- channel_id: string;
565
- channel_participant_id: string;
178
+ export interface ReadNotificationsRequestBody {
179
+ notification_ids: Array<string>;
180
+ }
181
+ export interface CreatePushTokenRequestBody {
182
+ user_id?: string;
183
+ apns_token: string;
566
184
  }
567
185
  export interface UserResponse {
568
186
  id: string;
569
187
  created_at: string;
570
188
  updated_at: string;
571
- deleted_at: string | null;
189
+ deleted_at?: string | null;
572
190
  name: string;
573
- first_name: string | null;
574
- last_name: string | null;
575
- email: string | null;
191
+ first_name?: string | null;
192
+ last_name?: string | null;
193
+ email?: string | null;
194
+ email_verified?: boolean;
195
+ avatar_url?: string | null;
196
+ locale?: string | null;
576
197
  type: string;
577
198
  }
578
199
  export interface CreateIdentityRequestBody {
@@ -583,87 +204,35 @@ export interface IdentityResponse {
583
204
  id: string;
584
205
  created_at: string;
585
206
  updated_at: string;
586
- deleted_at: string | null;
207
+ deleted_at?: string | null;
587
208
  provider: string;
588
209
  provider_user_id: string;
589
210
  user_id: string;
590
211
  }
591
212
  export interface CreateUserRequestBody {
592
- first_name: string | null;
593
- last_name: string | null;
594
- email: string | null;
595
- type: boolean;
596
- identities: Array<CreateIdentityRequestBody>;
213
+ first_name?: string | null;
214
+ last_name?: string | null;
215
+ email?: string | null;
216
+ email_verified?: boolean;
217
+ avatar_url?: string | null;
218
+ locale?: string | null;
219
+ type: string;
220
+ identities?: Array<CreateIdentityRequestBody>;
597
221
  }
598
222
  export interface UpdateUserRequestBody {
599
- firstName: string;
600
- lastName: string;
223
+ first_name: string;
224
+ last_name: string;
601
225
  email: string;
602
226
  }
603
227
  export interface UserCollectionResponse {
604
228
  page: number;
605
- pageCount: number;
606
- pageSize: number;
607
- totalCount: number;
229
+ page_count: number;
230
+ page_size: number;
231
+ total_count: number;
608
232
  data: Array<UserResponse>;
609
233
  }
610
- export interface CreatePaymentMethodRequestBody {
611
- paymentMethodId: string;
612
- }
613
- export interface PaymentMethodCardResponse {
614
- brand: string;
615
- last4: string;
616
- }
617
- export interface PaymentMethodResponse {
618
- id: string;
619
- object: string;
620
- type: string;
621
- customer: string | null;
622
- card: PaymentMethodCardResponse;
623
- }
624
- export interface EphemeralKeyResponse {
625
- id: string;
626
- secret: string;
627
- }
628
- export interface SubmitContactRequestBody {
629
- reason: string;
630
- name: string;
631
- email: string;
632
- phoneNumber: string;
633
- subject: string;
634
- body: string;
635
- }
636
- export interface SubmitProSignUpRequestBody {
637
- business: BusinessSignUpRequestBody;
638
- employee: EmployeeSignUpRequestBody;
639
- location: LocationSignUpRequestBody;
640
- }
641
- export interface BusinessSignUpRequestBody {
642
- name: string;
643
- email: string;
644
- phoneNumber: string;
645
- }
646
- export interface EmployeeSignUpRequestBody {
647
- fistName: string;
648
- lastName: string;
649
- email: string;
650
- phoneNumber: string;
651
- about: string;
652
- keywords: string;
653
- }
654
- export interface LocationSignUpRequestBody {
655
- streetAddress: string;
656
- suiteOrUnitNumber: string | null;
657
- city: string;
658
- state: string;
659
- zipCode: string;
660
- hasStoreFrontOffering: boolean;
661
- }
662
234
  export interface UserInfoResponse {
663
- user: UserResponse | null;
664
- employee: EmployeeResponse | null;
665
- business: BusinessResponse | null;
666
- locations: Array<LocationResponse> | null;
235
+ user?: UserResponse | null;
667
236
  }
668
237
  declare class ParraAPI {
669
238
  private http;
@@ -671,160 +240,18 @@ declare class ParraAPI {
671
240
  constructor(http: HTTPClient, options: {
672
241
  baseUrl: string;
673
242
  });
674
- getAppStatus: () => Promise<AppStatusResponse>;
675
- searchCategories: (query: {
676
- zipCode: string;
677
- }) => Promise<CategorySearchResponse>;
678
- searchLocations: (query: {
679
- zipCode: string;
680
- categoryId: string;
681
- }) => Promise<LocationSearchResponse>;
682
- createBusiness: (body: CreateBusinessRequestBody) => Promise<BusinessResponse>;
683
- listBusinesses: (query?: {
684
- $select?: string | undefined;
685
- $top?: number | undefined;
686
- $skip?: number | undefined;
687
- $orderBy?: string | undefined;
688
- $filter?: string | undefined;
689
- $expand?: string | undefined;
690
- $search?: string | undefined;
691
- } | undefined) => Promise<BusinessCollectionResponse>;
692
- getBusinessById: (businessId: string) => Promise<BusinessResponse>;
693
- updateBusinessById: (businessId: string, body: UpdateBusinessRequestBody) => Promise<BusinessResponse>;
694
- deleteBusinessById: (businessId: string) => Promise<Response>;
695
- updateProfileForBusinessById: (businessId: string, body: UpdateBusinessProfileRequestBody) => Promise<BusinessProfileResponse>;
696
- updateVerificationForBusinessById: (businessId: string, body: UpdateVerificationRequestBody) => Promise<VerificationResponse>;
697
- createEmployeeForBusinessById: (businessId: string, body: CreateEmployeeForBusinessRequestBody) => Promise<EmployeeResponse>;
698
- getEmployeesForBusinessById: (businessId: string) => Promise<Array<EmployeeResponse>>;
699
- createLocationForBusinessById: (businessId: string, body: CreateLocationForBusinessRequestBody) => Promise<LocationResponse>;
700
- getLocationsForBusinessById: (businessId: string) => Promise<Array<LocationResponse>>;
701
- createStripeAccountLinkForBusinessById: (businessId: string, body: CreateStripeAccountLinkRequestBody) => Promise<StripeAccountLinkResponse>;
702
- createCategory: (body: CreateCategoryRequestBody) => Promise<CategoryResponse>;
703
- listCategories: (query?: {
704
- $select?: string | undefined;
705
- $top?: number | undefined;
706
- $skip?: number | undefined;
707
- $orderBy?: string | undefined;
708
- $filter?: string | undefined;
709
- $expand?: string | undefined;
710
- $search?: string | undefined;
711
- } | undefined) => Promise<CategoryCollectionResponse>;
712
- getCategoryById: (categoryId: string) => Promise<CategoryResponse>;
713
- updateCategoryById: (categoryId: string, body: UpdateCategoryRequestBody) => Promise<CategoryResponse>;
714
- deleteCategoryById: (categoryId: string) => Promise<Response>;
715
- uploadIconForCategoryById: (categoryId: string, body?: UploadIconRequestBody | undefined) => Promise<PhotoResponse>;
716
- listTagsForCategoryById: (categoryId: string) => Promise<Array<TagResponse>>;
717
- createCity: (body: CreateCityRequestBody) => Promise<CityResponse>;
718
- listCities: (query?: {
719
- $select?: string | undefined;
720
- $top?: number | undefined;
721
- $skip?: number | undefined;
722
- $orderBy?: string | undefined;
723
- $filter?: string | undefined;
724
- $expand?: string | undefined;
725
- $search?: string | undefined;
726
- } | undefined) => Promise<CityCollectionResponse>;
727
- getCityById: (cityId: string) => Promise<CityResponse>;
728
- updateCityById: (cityId: string, body: UpdateCityRequestBody) => Promise<CityResponse>;
729
- deleteCityById: (cityId: string) => Promise<Response>;
730
- listFeaturesForCityById: (cityId: string, query?: {
731
- $select?: string | undefined;
732
- $top?: number | undefined;
733
- $skip?: number | undefined;
734
- $orderBy?: string | undefined;
735
- $filter?: string | undefined;
736
- $expand?: string | undefined;
737
- $search?: string | undefined;
738
- } | undefined) => Promise<Array<FeatureResponse>>;
739
- createIndustry: (body: CreateIndustryRequestBody) => Promise<IndustryResponse>;
740
- listIndustries: (query?: {
741
- $select?: string | undefined;
742
- $top?: number | undefined;
743
- $skip?: number | undefined;
744
- $orderBy?: string | undefined;
745
- $filter?: string | undefined;
746
- $expand?: string | undefined;
747
- $search?: string | undefined;
748
- } | undefined) => Promise<IndustryCollectionResponse>;
749
- getIndustryById: (industryId: string) => Promise<IndustryResponse>;
750
- updateIndustryById: (industryId: string, body: UpdateIndustryRequestBody) => Promise<IndustryResponse>;
751
- deleteIndustryById: (industryId: string) => Promise<Response>;
752
- createLocation: (body: CreateLocationRequestBody) => Promise<LocationResponse>;
753
- listLocations: (query?: {
754
- $select?: string | undefined;
755
- $top?: number | undefined;
756
- $skip?: number | undefined;
757
- $orderBy?: string | undefined;
758
- $filter?: string | undefined;
759
- $expand?: string | undefined;
760
- $search?: string | undefined;
761
- } | undefined) => Promise<LocationCollectionResponse>;
762
- getLocationById: (locationId: string) => Promise<LocationResponse>;
763
- updateLocationById: (locationId: string, body: UpdateLocationRequestBody) => Promise<LocationResponse>;
764
- deleteLocationById: (locationId: string) => Promise<Response>;
765
- updateAddressForLocationById: (locationId: string, body: UpdateLocationAddressRequestBody) => Promise<LocationAddressResponse>;
766
- getAddressForLocationById: (locationId: string) => Promise<LocationAddressResponse>;
767
- uploadAvatarForLocationById: (locationId: string, body?: UploadAvatarRequestBody | undefined) => Promise<AvatarResponse>;
768
- createCategoryForLocationById: (locationId: string, body: CreateCategoryForLocationRequestBody) => Promise<CategoryResponse>;
769
- listCategoriesForLocationById: (locationId: string, query?: {
770
- status?: string | undefined;
771
- } | undefined) => Promise<Array<CategoryResponse>>;
772
- removeCategoryFromLocationById: (locationId: string, categoryId: string) => Promise<Response>;
773
- updateTagsForLocationCategoryByIds: (locationId: string, categoryId: string, body: UpdateTagsForLocationCategoryRequestBody) => Promise<Response>;
774
- updateProfileForLocationById: (locationId: string, body: UpdateLocationProfileRequestBody) => Promise<LocationProfileResponse>;
775
- getProfileForLocationById: (locationId: string) => Promise<LocationProfileResponse>;
776
- getRatingForLocationById: (locationId: string) => Promise<LocationRatingBreakdownResponse>;
777
- listReviewsForLocationById: (locationId: string, query?: {
778
- limit?: number | undefined;
779
- isFeatured?: boolean | undefined;
780
- } | undefined) => Promise<Array<LocationReviewResponse>>;
781
- listPhotosForLocationById: (locationId: string) => Promise<Array<PhotoResponse>>;
782
- uploadPhotoForLocationById: (locationId: string, body?: UploadPhotoRequestBody | undefined) => Promise<LocationPhotoResponse>;
783
- createServiceAreaForLocationById: (locationId: string, body: CreateLocationServiceAreaRequestBody) => Promise<LocationServiceAreaResponse>;
784
- listServiceAreasForLocationById: (locationId: string) => Promise<Array<LocationServiceAreaResponse>>;
785
- deleteServiceAreaForLocationById: (locationId: string, serviceAreaId: string) => Promise<Response>;
786
- deletePhotoForLocationById: (locationId: string, photoId: string) => Promise<Response>;
787
- createTagForLocationById: (locationId: string, body: CreateTagForLocationRequestBody) => Promise<TagResponse>;
788
- listTagsForLocationById: (locationId: string, query?: {
789
- categoryId?: string | undefined;
790
- } | undefined) => Promise<Array<TagResponse>>;
791
- removeTagFromLocationById: (locationId: string, tagId: string) => Promise<Response>;
792
- getVerificationForLocationById: (locationId: string) => Promise<VerificationResponse>;
793
- updateVerificationForLocationById: (locationId: string, body: UpdateVerificationRequestBody) => Promise<VerificationResponse>;
794
- listLocationReviewSources: () => Promise<Array<LocationReviewSourceResponse>>;
795
- createLocationReview: (body: CreateLocationReviewRequestBody) => Promise<LocationReviewResponse>;
796
- deleteLocationReviewById: (locationReviewId: string) => Promise<Response>;
797
- inviteEmployee: (body: InviteEmployeeRequestBody) => Promise<EmployeeResponse>;
798
- listEmployees: (query?: {
799
- $select?: string | undefined;
800
- $top?: number | undefined;
801
- $skip?: number | undefined;
802
- $orderBy?: string | undefined;
803
- $filter?: string | undefined;
804
- $expand?: string | undefined;
805
- $search?: string | undefined;
806
- } | undefined) => Promise<EmployeeCollectionResponse>;
807
- getEmployeeById: (employeeId: string) => Promise<EmployeeResponse>;
808
- updateEmployeeById: (employeeId: string, body: UpdateEmployeeRequestBody) => Promise<EmployeeResponse>;
809
- deleteEmployeeById: (employeeId: string) => Promise<Response>;
810
- createBusinessForEmployeeById: (employeeId: string, body: CreateBusinessForEmployeeRequestBody) => Promise<BusinessResponse>;
811
- updateProfileForEmployeeById: (employeeId: string, body: UpdateEmployeeProfileRequestBody) => Promise<EmployeeProfileResponse>;
812
- tipEmployeeById: (employeeId: string, body: TipEmployeeRequestBody) => Promise<Response>;
813
- getVerificationForEmployeeById: (employeeId: string) => Promise<VerificationResponse>;
814
- updateVerificationForEmployeeById: (employeeId: string, body: UpdateVerificationRequestBody) => Promise<VerificationResponse>;
815
- createTag: (body: CreateTagRequestBody) => Promise<TagResponse>;
816
- listTags: (query?: {
817
- $select?: string | undefined;
818
- $top?: number | undefined;
819
- $skip?: number | undefined;
820
- $orderBy?: string | undefined;
821
- $filter?: string | undefined;
822
- $expand?: string | undefined;
823
- $search?: string | undefined;
824
- } | undefined) => Promise<TagCollectionResponse>;
825
- getTagById: (tagId: string) => Promise<TagResponse>;
826
- updateTagById: (tagId: string, body: UpdateTagRequestBody) => Promise<TagResponse>;
827
- deleteTagById: (tagId: string) => Promise<Response>;
243
+ getTenantById: (tenant_id: string) => Promise<Tenant>;
244
+ createTenantForUserById: (user_id: string, body?: CreateTenantRequestBody | undefined) => Promise<Tenant>;
245
+ getTenantsForUserById: (user_id: string) => Promise<TenantColectionResponse>;
246
+ getTenantByUserIdAndTenantId: (user_id: string, tenant_id: string) => Promise<Tenant>;
247
+ createApiKeyForTenantById: (tenant_id: string, body?: CreateApiKeyRequestBody | undefined) => Promise<ApiKeyWithSecretResponse>;
248
+ getApiKeysForTenantById: (tenant_id: string) => Promise<ApiKeyColectionResponse>;
249
+ deleteApiKeyForTenantById: (tenant_id: string, api_key_id: string) => Promise<Response>;
250
+ getTenantForApiKeyById: (api_key_id: string) => Promise<Tenant>;
251
+ getCards: () => Promise<CardsResponse>;
252
+ createQuestion: (body?: CreateQuestionRequestBody | undefined) => Promise<Question>;
253
+ getQuestionById: (question_id: string) => Promise<Question>;
254
+ answerQuestionById: (question_id: string, body?: AnswerQuestionBody | undefined) => Promise<Response>;
828
255
  createUser: (body: CreateUserRequestBody) => Promise<UserResponse>;
829
256
  listUsers: (query?: {
830
257
  $select?: string | undefined;
@@ -835,22 +262,12 @@ declare class ParraAPI {
835
262
  $expand?: string | undefined;
836
263
  $search?: string | undefined;
837
264
  } | undefined) => Promise<UserCollectionResponse>;
838
- getUserById: (id: string) => Promise<UserResponse>;
839
- updateUserById: (id: string, body: UpdateUserRequestBody) => Promise<UserResponse>;
840
- deleteUserById: (id: string) => Promise<Response>;
841
- createIdentityForUserById: (id: string, body: CreateIdentityRequestBody) => Promise<IdentityResponse>;
842
- listIdentitiesForUserById: (id: string) => Promise<Array<IdentityResponse>>;
843
- listCustomerPaymentMethodsForUserById: (id: string) => Promise<Array<PaymentMethodResponse>>;
844
- attachPaymentMethodToCustomerForUserById: (id: string, body: CreatePaymentMethodRequestBody) => Promise<PaymentMethodResponse>;
845
- detachPaymentMethodFromCustomerForUserById: (id: string, paymentMethodId: string) => Promise<Response>;
846
- createCustomerEphemeralKeyForUserById: (id: string, query: {
847
- apiVersion: string;
848
- }) => Promise<EphemeralKeyResponse>;
849
- getUserByProviderAndProviderUserId: (provider: string, providerUserId: string) => Promise<UserResponse>;
850
- submitContactRequest: (body: SubmitContactRequestBody, query?: {
851
- pro?: boolean | undefined;
852
- } | undefined) => Promise<Response>;
853
- submitProSignUpRequest: (body: SubmitProSignUpRequestBody) => Promise<Response>;
265
+ getUserById: (user_id: string) => Promise<UserResponse>;
266
+ updateUserById: (user_id: string, body: UpdateUserRequestBody) => Promise<UserResponse>;
267
+ deleteUserById: (user_id: string) => Promise<Response>;
268
+ createIdentityForUserById: (user_id: string, body: CreateIdentityRequestBody) => Promise<IdentityResponse>;
269
+ listIdentitiesForUserById: (user_id: string) => Promise<Array<IdentityResponse>>;
270
+ getUserByProviderAndProviderUserId: (provider: string, provider_user_id: string) => Promise<UserResponse>;
854
271
  getUserInfo: () => Promise<UserInfoResponse>;
855
272
  }
856
273
  export default ParraAPI;