@bikefinder/api-client 0.1.0 → 0.2.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.
@@ -4,10 +4,120 @@ export type ClientOptions = {
4
4
  baseUrl: `${string}://${string}` | (string & {});
5
5
  };
6
6
 
7
+ export type AccountDeletionRequest = {
8
+ requestId: string;
9
+ };
10
+
11
+ export type AccountNotification = {
12
+ id: string;
13
+ title: string;
14
+ body: string;
15
+ trackerId: null | string;
16
+ timestampMs: number;
17
+ subscriptionId: null | string;
18
+ };
19
+
20
+ export type AccountPreferences = {
21
+ language: string;
22
+ alarm: boolean;
23
+ timeSensitive: boolean;
24
+ pushReady: boolean;
25
+ devicePreferences: LegacyDevicePreferences;
26
+ };
27
+
28
+ export type BluetoothBatteryRequest = {
29
+ seenAt: number;
30
+ level: null | number;
31
+ isCharging: boolean;
32
+ };
33
+
34
+ export type BluetoothCommandReport = {
35
+ type: string;
36
+ success: boolean;
37
+ };
38
+
39
+ export type BluetoothObservationBattery = {
40
+ level: null | number;
41
+ isCharging: boolean;
42
+ };
43
+
44
+ export type BluetoothObservationRequest = {
45
+ requestId: string;
46
+ type: string;
47
+ timestampMs: number;
48
+ latitude: number;
49
+ longitude: number;
50
+ accuracy: number;
51
+ userLocationAccuracy: number;
52
+ crowdKey: null | number;
53
+ rssi: null | number;
54
+ status: string;
55
+ statusValue: number;
56
+ bleId: string;
57
+ appState: string;
58
+ battery: BluetoothObservationBattery;
59
+ };
60
+
61
+ export type BluetoothObservationResult = {
62
+ success: boolean;
63
+ observationId: string;
64
+ };
65
+
66
+ export type BluetoothReportingPolicy = {
67
+ pauseMs: number;
68
+ accuracy: number;
69
+ };
70
+
71
+ export type ClaimTrackerGuestAccessRequest = {
72
+ accessCode: string;
73
+ displayName: null | string;
74
+ };
75
+
76
+ export type ClaimTrackerOwnershipRequest = {
77
+ displayName: null | string;
78
+ };
79
+
80
+ export type CommandSuccess = {
81
+ success: boolean;
82
+ };
83
+
84
+ export type CompleteFirmwareRequest = {
85
+ from: string;
86
+ version: string;
87
+ };
88
+
89
+ export type FactoryResetResult = {
90
+ error: boolean;
91
+ };
92
+
7
93
  export type HealthStatus = {
8
94
  status: string;
9
95
  };
10
96
 
97
+ export type HistoryPage = {
98
+ items: Array<TrackerPosition>;
99
+ nextCursor: null | string;
100
+ };
101
+
102
+ export type IFormFile = Blob | File;
103
+
104
+ export type LegacyDevicePreferences = {
105
+ unit: string;
106
+ liquidGlass: boolean;
107
+ mapStyle: string;
108
+ };
109
+
110
+ export type NotificationPage = {
111
+ items: Array<AccountNotification>;
112
+ nextCursor: null | string;
113
+ };
114
+
115
+ export type PhotoUploadResult = {
116
+ id: string;
117
+ };
118
+
119
+ export type PlanStatus = "active" | "ending" | "hold" | "inactive" | "unknown";
120
+
11
121
  export type ProblemDetails = {
12
122
  type?: null | string;
13
123
  title?: null | string;
@@ -16,20 +126,199 @@ export type ProblemDetails = {
16
126
  instance?: null | string;
17
127
  };
18
128
 
129
+ export type RecordFirmwareAttemptRequest = {
130
+ attemptId: string;
131
+ success: boolean;
132
+ };
133
+
134
+ export type RecordFirmwareAttemptResult = {
135
+ success: boolean;
136
+ recorded: boolean;
137
+ };
138
+
139
+ export type RegisterPushRegistrationRequest = {
140
+ token: string;
141
+ previousTokens?: null | Array<string>;
142
+ platform?: null | string;
143
+ };
144
+
145
+ export type RemovePushRegistrationRequest = {
146
+ tokens: Array<string>;
147
+ };
148
+
149
+ export type RemoveTrackerMembershipRequest = {
150
+ expectedLastMember: boolean;
151
+ };
152
+
153
+ export type SubmitTrackerTheftReportRequest = {
154
+ requestId: string;
155
+ phoneNumber: string;
156
+ };
157
+
158
+ export type SubscriptionChangeRequest = {
159
+ subscriptionId: string;
160
+ };
161
+
162
+ export type SubscriptionList = {
163
+ items: Array<SubscriptionPlan>;
164
+ };
165
+
166
+ export type SubscriptionPlan = {
167
+ id: string;
168
+ ownerUid: null | string;
169
+ name: string;
170
+ fallbackTier: null | number;
171
+ status: PlanStatus;
172
+ isActive: null | boolean;
173
+ quantity: null | number;
174
+ available: number;
175
+ trackerIds: Array<string>;
176
+ managementUrl: null | string;
177
+ nextRenewalMs: null | number;
178
+ endMs: null | number;
179
+ };
180
+
181
+ export type TrackerBattery = {
182
+ level: null | number;
183
+ isCharging: boolean;
184
+ timestampMs: null | number;
185
+ };
186
+
187
+ export type TrackerBikeDetails = {
188
+ nickname: string;
189
+ brand: string;
190
+ type: string;
191
+ model: string;
192
+ frameNumber: string;
193
+ marketPrice: string;
194
+ marketPriceCurrency: string;
195
+ url: string;
196
+ };
197
+
198
+ export type TrackerBluetoothCredentials = {
199
+ id: string;
200
+ imei: null | string;
201
+ generation: null | number;
202
+ pin: Array<number>;
203
+ rotatePin: boolean;
204
+ };
205
+
206
+ export type TrackerClaimabilityRequest = {
207
+ deviceIds: Array<string>;
208
+ };
209
+
210
+ export type TrackerFirmwarePlan = {
211
+ trackerId: string;
212
+ from: string;
213
+ version: string;
214
+ url: string;
215
+ blockSize: number;
216
+ requiredBattery: number;
217
+ blockTimeoutMs: number;
218
+ rebootTimeoutMs: number;
219
+ };
220
+
221
+ export type TrackerFirmwareVersions = {
222
+ lte: null | string;
223
+ ble: null | string;
224
+ bat: null | string;
225
+ tiFirmware: null | string;
226
+ mtkFirmware: null | string;
227
+ };
228
+
229
+ export type TrackerInvitation = {
230
+ accessCode: string;
231
+ };
232
+
233
+ export type TrackerModeRequest = {
234
+ mode: TrackingMode;
235
+ };
236
+
237
+ export type TrackerModeResult = {
238
+ success: boolean;
239
+ requestedMode: string;
240
+ };
241
+
19
242
  export type TrackerPage = {
20
243
  items: Array<TrackerSummary>;
21
244
  nextCursor: null | string;
22
245
  };
23
246
 
247
+ export type TrackerPhoto = {
248
+ id: string;
249
+ kind: string;
250
+ url: string;
251
+ thumbnailUrl: string;
252
+ timestampMs: null | number;
253
+ };
254
+
255
+ export type TrackerPhotoList = {
256
+ items: Array<TrackerPhoto>;
257
+ };
258
+
259
+ export type TrackerPosition = {
260
+ id: string;
261
+ latitude: number;
262
+ longitude: number;
263
+ timestampMs: number;
264
+ source: string;
265
+ accuracy: null | number;
266
+ };
267
+
268
+ export type TrackerPositionState = {
269
+ latest: null | TrackerPosition;
270
+ lastPrecise: null | TrackerPosition;
271
+ };
272
+
273
+ export type TrackerSubscription = {
274
+ id: null | string;
275
+ status: string;
276
+ endTimestampMs: null | number;
277
+ tier: null | number;
278
+ };
279
+
24
280
  export type TrackerSummary = {
25
281
  id: string;
26
282
  nickname: null | string;
27
283
  requestedMode: null | TrackingMode;
28
284
  subscriptionActive: null | boolean;
285
+ bikeDetails: null | TrackerBikeDetails;
286
+ battery: null | TrackerBattery;
287
+ subscription: null | TrackerSubscription;
288
+ membershipCount: number;
289
+ sharingCodes: null | Array<string>;
290
+ generation: null | number;
291
+ imei: null | string;
292
+ iccid: null | string;
293
+ firmwareVersions: null | TrackerFirmwareVersions;
294
+ lastCommunicationMode: null | string;
295
+ };
296
+
297
+ export type TrackerTheftReportResult = {
298
+ success: boolean;
299
+ reportId: string;
300
+ requestId: string;
29
301
  };
30
302
 
31
303
  export type TrackingMode = "standard" | "security" | "tracking";
32
304
 
305
+ export type UpdateAccountPreferencesRequest = {
306
+ language?: null | string;
307
+ alarm?: null | boolean;
308
+ timeSensitive?: null | boolean;
309
+ };
310
+
311
+ export type UpdateBluetoothPinRequest = {
312
+ pin: Array<number>;
313
+ expected: Array<number>;
314
+ clearRotation: boolean;
315
+ };
316
+
317
+ export type UpdateTrackerBikeRequest = {
318
+ before: TrackerBikeDetails;
319
+ draft: TrackerBikeDetails;
320
+ };
321
+
33
322
  export type GetHealthData = {
34
323
  body?: never;
35
324
  path?: never;
@@ -46,20 +335,71 @@ export type GetHealthResponses = {
46
335
 
47
336
  export type GetHealthResponse = GetHealthResponses[keyof GetHealthResponses];
48
337
 
49
- export type ListTrackersData = {
338
+ export type GetBluetoothReportingPolicyData = {
50
339
  body?: never;
51
340
  path?: never;
52
- query?: {
53
- cursor?: string;
54
- /**
55
- * Page size, from 1 to 100. Defaults to 50.
56
- */
57
- limit?: number;
341
+ query?: never;
342
+ url: "/v1/bluetooth/reporting-policy";
343
+ };
344
+
345
+ export type GetBluetoothReportingPolicyErrors = {
346
+ /**
347
+ * Bad Request
348
+ */
349
+ 400: ProblemDetails;
350
+ /**
351
+ * Unauthorized
352
+ */
353
+ 401: ProblemDetails;
354
+ /**
355
+ * Forbidden
356
+ */
357
+ 403: ProblemDetails;
358
+ /**
359
+ * Not Found
360
+ */
361
+ 404: ProblemDetails;
362
+ /**
363
+ * Conflict
364
+ */
365
+ 409: ProblemDetails;
366
+ /**
367
+ * Too Many Requests
368
+ */
369
+ 429: ProblemDetails;
370
+ /**
371
+ * Bad Gateway
372
+ */
373
+ 502: ProblemDetails;
374
+ /**
375
+ * Service Unavailable
376
+ */
377
+ 503: ProblemDetails;
378
+ };
379
+
380
+ export type GetBluetoothReportingPolicyError =
381
+ GetBluetoothReportingPolicyErrors[keyof GetBluetoothReportingPolicyErrors];
382
+
383
+ export type GetBluetoothReportingPolicyResponses = {
384
+ /**
385
+ * OK
386
+ */
387
+ 200: BluetoothReportingPolicy;
388
+ };
389
+
390
+ export type GetBluetoothReportingPolicyResponse =
391
+ GetBluetoothReportingPolicyResponses[keyof GetBluetoothReportingPolicyResponses];
392
+
393
+ export type UnlinkTrackerSubscriptionData = {
394
+ body: SubscriptionChangeRequest;
395
+ path: {
396
+ trackerId: string;
58
397
  };
59
- url: "/v1/trackers";
398
+ query?: never;
399
+ url: "/v1/trackers/{trackerId}/subscription";
60
400
  };
61
401
 
62
- export type ListTrackersErrors = {
402
+ export type UnlinkTrackerSubscriptionErrors = {
63
403
  /**
64
404
  * Bad Request
65
405
  */
@@ -69,41 +409,42 @@ export type ListTrackersErrors = {
69
409
  */
70
410
  401: ProblemDetails;
71
411
  /**
72
- * Internal Server Error
412
+ * Forbidden
73
413
  */
74
- 500: ProblemDetails;
414
+ 403: ProblemDetails;
415
+ /**
416
+ * Conflict
417
+ */
418
+ 409: ProblemDetails;
75
419
  /**
76
420
  * Service Unavailable
77
421
  */
78
422
  503: ProblemDetails;
79
423
  };
80
424
 
81
- export type ListTrackersError = ListTrackersErrors[keyof ListTrackersErrors];
425
+ export type UnlinkTrackerSubscriptionError =
426
+ UnlinkTrackerSubscriptionErrors[keyof UnlinkTrackerSubscriptionErrors];
82
427
 
83
- export type ListTrackersResponses = {
428
+ export type UnlinkTrackerSubscriptionResponses = {
84
429
  /**
85
430
  * OK
86
431
  */
87
- 200: TrackerPage;
432
+ 200: CommandSuccess;
88
433
  };
89
434
 
90
- export type ListTrackersResponse =
91
- ListTrackersResponses[keyof ListTrackersResponses];
435
+ export type UnlinkTrackerSubscriptionResponse =
436
+ UnlinkTrackerSubscriptionResponses[keyof UnlinkTrackerSubscriptionResponses];
92
437
 
93
- export type SubscribeTrackersData = {
94
- body?: never;
95
- path?: never;
96
- query?: {
97
- cursor?: string;
98
- /**
99
- * Page size, from 1 to 100. Defaults to 50.
100
- */
101
- limit?: number;
438
+ export type LinkTrackerSubscriptionData = {
439
+ body: SubscriptionChangeRequest;
440
+ path: {
441
+ trackerId: string;
102
442
  };
103
- url: "/v1/trackers/stream";
443
+ query?: never;
444
+ url: "/v1/trackers/{trackerId}/subscription";
104
445
  };
105
446
 
106
- export type SubscribeTrackersErrors = {
447
+ export type LinkTrackerSubscriptionErrors = {
107
448
  /**
108
449
  * Bad Request
109
450
  */
@@ -113,38 +454,42 @@ export type SubscribeTrackersErrors = {
113
454
  */
114
455
  401: ProblemDetails;
115
456
  /**
116
- * Internal Server Error
457
+ * Forbidden
117
458
  */
118
- 500: ProblemDetails;
459
+ 403: ProblemDetails;
460
+ /**
461
+ * Conflict
462
+ */
463
+ 409: ProblemDetails;
119
464
  /**
120
465
  * Service Unavailable
121
466
  */
122
467
  503: ProblemDetails;
123
468
  };
124
469
 
125
- export type SubscribeTrackersError =
126
- SubscribeTrackersErrors[keyof SubscribeTrackersErrors];
470
+ export type LinkTrackerSubscriptionError =
471
+ LinkTrackerSubscriptionErrors[keyof LinkTrackerSubscriptionErrors];
127
472
 
128
- export type SubscribeTrackersResponses = {
473
+ export type LinkTrackerSubscriptionResponses = {
129
474
  /**
130
475
  * OK
131
476
  */
132
- 200: TrackerPage | null;
477
+ 200: CommandSuccess;
133
478
  };
134
479
 
135
- export type SubscribeTrackersResponse =
136
- SubscribeTrackersResponses[keyof SubscribeTrackersResponses];
480
+ export type LinkTrackerSubscriptionResponse =
481
+ LinkTrackerSubscriptionResponses[keyof LinkTrackerSubscriptionResponses];
137
482
 
138
- export type GetTrackerData = {
483
+ export type ListTrackerPhotosData = {
139
484
  body?: never;
140
485
  path: {
141
486
  trackerId: string;
142
487
  };
143
488
  query?: never;
144
- url: "/v1/trackers/{trackerId}";
489
+ url: "/v1/trackers/{trackerId}/photos";
145
490
  };
146
491
 
147
- export type GetTrackerErrors = {
492
+ export type ListTrackerPhotosErrors = {
148
493
  /**
149
494
  * Bad Request
150
495
  */
@@ -167,13 +512,1841 @@ export type GetTrackerErrors = {
167
512
  503: ProblemDetails;
168
513
  };
169
514
 
170
- export type GetTrackerError = GetTrackerErrors[keyof GetTrackerErrors];
515
+ export type ListTrackerPhotosError =
516
+ ListTrackerPhotosErrors[keyof ListTrackerPhotosErrors];
171
517
 
172
- export type GetTrackerResponses = {
518
+ export type ListTrackerPhotosResponses = {
173
519
  /**
174
520
  * OK
175
521
  */
176
- 200: TrackerSummary;
522
+ 200: TrackerPhotoList;
177
523
  };
178
524
 
179
- export type GetTrackerResponse = GetTrackerResponses[keyof GetTrackerResponses];
525
+ export type ListTrackerPhotosResponse =
526
+ ListTrackerPhotosResponses[keyof ListTrackerPhotosResponses];
527
+
528
+ export type UploadTrackerPhotoData = {
529
+ body: {
530
+ file: IFormFile;
531
+ } & {
532
+ kind: string;
533
+ } & {
534
+ width: number;
535
+ } & {
536
+ height: number;
537
+ };
538
+ path: {
539
+ trackerId: string;
540
+ };
541
+ query?: never;
542
+ url: "/v1/trackers/{trackerId}/photos";
543
+ };
544
+
545
+ export type UploadTrackerPhotoErrors = {
546
+ /**
547
+ * Bad Request
548
+ */
549
+ 400: ProblemDetails;
550
+ /**
551
+ * Unauthorized
552
+ */
553
+ 401: ProblemDetails;
554
+ /**
555
+ * Not Found
556
+ */
557
+ 404: ProblemDetails;
558
+ /**
559
+ * Payload Too Large
560
+ */
561
+ 413: ProblemDetails;
562
+ /**
563
+ * Service Unavailable
564
+ */
565
+ 503: ProblemDetails;
566
+ };
567
+
568
+ export type UploadTrackerPhotoError =
569
+ UploadTrackerPhotoErrors[keyof UploadTrackerPhotoErrors];
570
+
571
+ export type UploadTrackerPhotoResponses = {
572
+ /**
573
+ * OK
574
+ */
575
+ 200: PhotoUploadResult;
576
+ };
577
+
578
+ export type UploadTrackerPhotoResponse =
579
+ UploadTrackerPhotoResponses[keyof UploadTrackerPhotoResponses];
580
+
581
+ export type DeleteTrackerPhotoData = {
582
+ body?: never;
583
+ path: {
584
+ trackerId: string;
585
+ photoId: string;
586
+ };
587
+ query?: never;
588
+ url: "/v1/trackers/{trackerId}/photos/{photoId}";
589
+ };
590
+
591
+ export type DeleteTrackerPhotoErrors = {
592
+ /**
593
+ * Bad Request
594
+ */
595
+ 400: ProblemDetails;
596
+ /**
597
+ * Unauthorized
598
+ */
599
+ 401: ProblemDetails;
600
+ /**
601
+ * Not Found
602
+ */
603
+ 404: ProblemDetails;
604
+ /**
605
+ * Service Unavailable
606
+ */
607
+ 503: ProblemDetails;
608
+ };
609
+
610
+ export type DeleteTrackerPhotoError =
611
+ DeleteTrackerPhotoErrors[keyof DeleteTrackerPhotoErrors];
612
+
613
+ export type DeleteTrackerPhotoResponses = {
614
+ /**
615
+ * OK
616
+ */
617
+ 200: CommandSuccess;
618
+ };
619
+
620
+ export type DeleteTrackerPhotoResponse =
621
+ DeleteTrackerPhotoResponses[keyof DeleteTrackerPhotoResponses];
622
+
623
+ export type ListTrackersData = {
624
+ body?: never;
625
+ path?: never;
626
+ query?: {
627
+ cursor?: string;
628
+ /**
629
+ * Page size, from 1 to 100. Defaults to 50.
630
+ */
631
+ limit?: number;
632
+ };
633
+ url: "/v1/trackers";
634
+ };
635
+
636
+ export type ListTrackersErrors = {
637
+ /**
638
+ * Bad Request
639
+ */
640
+ 400: ProblemDetails;
641
+ /**
642
+ * Unauthorized
643
+ */
644
+ 401: ProblemDetails;
645
+ /**
646
+ * Internal Server Error
647
+ */
648
+ 500: ProblemDetails;
649
+ /**
650
+ * Service Unavailable
651
+ */
652
+ 503: ProblemDetails;
653
+ };
654
+
655
+ export type ListTrackersError = ListTrackersErrors[keyof ListTrackersErrors];
656
+
657
+ export type ListTrackersResponses = {
658
+ /**
659
+ * OK
660
+ */
661
+ 200: TrackerPage;
662
+ };
663
+
664
+ export type ListTrackersResponse =
665
+ ListTrackersResponses[keyof ListTrackersResponses];
666
+
667
+ export type SubscribeTrackersData = {
668
+ body?: never;
669
+ path?: never;
670
+ query?: {
671
+ cursor?: string;
672
+ /**
673
+ * Page size, from 1 to 100. Defaults to 50.
674
+ */
675
+ limit?: number;
676
+ };
677
+ url: "/v1/trackers/stream";
678
+ };
679
+
680
+ export type SubscribeTrackersErrors = {
681
+ /**
682
+ * Bad Request
683
+ */
684
+ 400: ProblemDetails;
685
+ /**
686
+ * Unauthorized
687
+ */
688
+ 401: ProblemDetails;
689
+ /**
690
+ * Internal Server Error
691
+ */
692
+ 500: ProblemDetails;
693
+ /**
694
+ * Service Unavailable
695
+ */
696
+ 503: ProblemDetails;
697
+ };
698
+
699
+ export type SubscribeTrackersError =
700
+ SubscribeTrackersErrors[keyof SubscribeTrackersErrors];
701
+
702
+ export type SubscribeTrackersResponses = {
703
+ /**
704
+ * OK
705
+ */
706
+ 200: TrackerPage | null;
707
+ };
708
+
709
+ export type SubscribeTrackersResponse =
710
+ SubscribeTrackersResponses[keyof SubscribeTrackersResponses];
711
+
712
+ export type GetTrackerData = {
713
+ body?: never;
714
+ path: {
715
+ trackerId: string;
716
+ };
717
+ query?: never;
718
+ url: "/v1/trackers/{trackerId}";
719
+ };
720
+
721
+ export type GetTrackerErrors = {
722
+ /**
723
+ * Bad Request
724
+ */
725
+ 400: ProblemDetails;
726
+ /**
727
+ * Unauthorized
728
+ */
729
+ 401: ProblemDetails;
730
+ /**
731
+ * Not Found
732
+ */
733
+ 404: ProblemDetails;
734
+ /**
735
+ * Internal Server Error
736
+ */
737
+ 500: ProblemDetails;
738
+ /**
739
+ * Service Unavailable
740
+ */
741
+ 503: ProblemDetails;
742
+ };
743
+
744
+ export type GetTrackerError = GetTrackerErrors[keyof GetTrackerErrors];
745
+
746
+ export type GetTrackerResponses = {
747
+ /**
748
+ * OK
749
+ */
750
+ 200: TrackerSummary;
751
+ };
752
+
753
+ export type GetTrackerResponse = GetTrackerResponses[keyof GetTrackerResponses];
754
+
755
+ export type GetTrackerPositionsData = {
756
+ body?: never;
757
+ path: {
758
+ trackerId: string;
759
+ };
760
+ query?: never;
761
+ url: "/v1/trackers/{trackerId}/positions";
762
+ };
763
+
764
+ export type GetTrackerPositionsErrors = {
765
+ /**
766
+ * Bad Request
767
+ */
768
+ 400: ProblemDetails;
769
+ /**
770
+ * Unauthorized
771
+ */
772
+ 401: ProblemDetails;
773
+ /**
774
+ * Not Found
775
+ */
776
+ 404: ProblemDetails;
777
+ /**
778
+ * Internal Server Error
779
+ */
780
+ 500: ProblemDetails;
781
+ /**
782
+ * Service Unavailable
783
+ */
784
+ 503: ProblemDetails;
785
+ };
786
+
787
+ export type GetTrackerPositionsError =
788
+ GetTrackerPositionsErrors[keyof GetTrackerPositionsErrors];
789
+
790
+ export type GetTrackerPositionsResponses = {
791
+ /**
792
+ * OK
793
+ */
794
+ 200: TrackerPositionState;
795
+ };
796
+
797
+ export type GetTrackerPositionsResponse =
798
+ GetTrackerPositionsResponses[keyof GetTrackerPositionsResponses];
799
+
800
+ export type SubscribeTrackerPositionsData = {
801
+ body?: never;
802
+ path: {
803
+ trackerId: string;
804
+ };
805
+ query?: never;
806
+ url: "/v1/trackers/{trackerId}/positions/stream";
807
+ };
808
+
809
+ export type SubscribeTrackerPositionsErrors = {
810
+ /**
811
+ * Bad Request
812
+ */
813
+ 400: ProblemDetails;
814
+ /**
815
+ * Unauthorized
816
+ */
817
+ 401: ProblemDetails;
818
+ /**
819
+ * Not Found
820
+ */
821
+ 404: ProblemDetails;
822
+ /**
823
+ * Internal Server Error
824
+ */
825
+ 500: ProblemDetails;
826
+ /**
827
+ * Service Unavailable
828
+ */
829
+ 503: ProblemDetails;
830
+ };
831
+
832
+ export type SubscribeTrackerPositionsError =
833
+ SubscribeTrackerPositionsErrors[keyof SubscribeTrackerPositionsErrors];
834
+
835
+ export type SubscribeTrackerPositionsResponses = {
836
+ /**
837
+ * OK
838
+ */
839
+ 200: TrackerPositionState | null;
840
+ };
841
+
842
+ export type SubscribeTrackerPositionsResponse =
843
+ SubscribeTrackerPositionsResponses[keyof SubscribeTrackerPositionsResponses];
844
+
845
+ export type SubscribeTrackerPhotosData = {
846
+ body?: never;
847
+ path: {
848
+ trackerId: string;
849
+ };
850
+ query?: never;
851
+ url: "/v1/trackers/{trackerId}/photos/stream";
852
+ };
853
+
854
+ export type SubscribeTrackerPhotosErrors = {
855
+ /**
856
+ * Bad Request
857
+ */
858
+ 400: ProblemDetails;
859
+ /**
860
+ * Unauthorized
861
+ */
862
+ 401: ProblemDetails;
863
+ /**
864
+ * Not Found
865
+ */
866
+ 404: ProblemDetails;
867
+ /**
868
+ * Internal Server Error
869
+ */
870
+ 500: ProblemDetails;
871
+ /**
872
+ * Service Unavailable
873
+ */
874
+ 503: ProblemDetails;
875
+ };
876
+
877
+ export type SubscribeTrackerPhotosError =
878
+ SubscribeTrackerPhotosErrors[keyof SubscribeTrackerPhotosErrors];
879
+
880
+ export type SubscribeTrackerPhotosResponses = {
881
+ /**
882
+ * OK
883
+ */
884
+ 200: TrackerPhotoList | null;
885
+ };
886
+
887
+ export type SubscribeTrackerPhotosResponse =
888
+ SubscribeTrackerPhotosResponses[keyof SubscribeTrackerPhotosResponses];
889
+
890
+ export type RequestTrackerModeData = {
891
+ body: TrackerModeRequest;
892
+ path: {
893
+ trackerId: string;
894
+ };
895
+ query?: never;
896
+ url: "/v1/trackers/{trackerId}/mode-requests";
897
+ };
898
+
899
+ export type RequestTrackerModeErrors = {
900
+ /**
901
+ * Bad Request
902
+ */
903
+ 400: ProblemDetails;
904
+ /**
905
+ * Unauthorized
906
+ */
907
+ 401: ProblemDetails;
908
+ /**
909
+ * Forbidden
910
+ */
911
+ 403: ProblemDetails;
912
+ /**
913
+ * Not Found
914
+ */
915
+ 404: ProblemDetails;
916
+ /**
917
+ * Conflict
918
+ */
919
+ 409: ProblemDetails;
920
+ /**
921
+ * Too Many Requests
922
+ */
923
+ 429: ProblemDetails;
924
+ /**
925
+ * Bad Gateway
926
+ */
927
+ 502: ProblemDetails;
928
+ /**
929
+ * Service Unavailable
930
+ */
931
+ 503: ProblemDetails;
932
+ };
933
+
934
+ export type RequestTrackerModeError =
935
+ RequestTrackerModeErrors[keyof RequestTrackerModeErrors];
936
+
937
+ export type RequestTrackerModeResponses = {
938
+ /**
939
+ * OK
940
+ */
941
+ 200: TrackerModeResult;
942
+ };
943
+
944
+ export type RequestTrackerModeResponse =
945
+ RequestTrackerModeResponses[keyof RequestTrackerModeResponses];
946
+
947
+ export type CheckTrackerClaimabilityData = {
948
+ body: TrackerClaimabilityRequest;
949
+ path?: never;
950
+ query?: never;
951
+ url: "/v1/trackers/claimability";
952
+ };
953
+
954
+ export type CheckTrackerClaimabilityErrors = {
955
+ /**
956
+ * Bad Request
957
+ */
958
+ 400: ProblemDetails;
959
+ /**
960
+ * Unauthorized
961
+ */
962
+ 401: ProblemDetails;
963
+ /**
964
+ * Forbidden
965
+ */
966
+ 403: ProblemDetails;
967
+ /**
968
+ * Not Found
969
+ */
970
+ 404: ProblemDetails;
971
+ /**
972
+ * Conflict
973
+ */
974
+ 409: ProblemDetails;
975
+ /**
976
+ * Too Many Requests
977
+ */
978
+ 429: ProblemDetails;
979
+ /**
980
+ * Bad Gateway
981
+ */
982
+ 502: ProblemDetails;
983
+ /**
984
+ * Service Unavailable
985
+ */
986
+ 503: ProblemDetails;
987
+ };
988
+
989
+ export type CheckTrackerClaimabilityError =
990
+ CheckTrackerClaimabilityErrors[keyof CheckTrackerClaimabilityErrors];
991
+
992
+ export type CheckTrackerClaimabilityResponses = {
993
+ /**
994
+ * OK
995
+ */
996
+ 200: {
997
+ [key: string]: boolean;
998
+ };
999
+ };
1000
+
1001
+ export type CheckTrackerClaimabilityResponse =
1002
+ CheckTrackerClaimabilityResponses[keyof CheckTrackerClaimabilityResponses];
1003
+
1004
+ export type ClaimTrackerOwnershipData = {
1005
+ body: ClaimTrackerOwnershipRequest;
1006
+ path: {
1007
+ trackerId: string;
1008
+ };
1009
+ query?: never;
1010
+ url: "/v1/trackers/{trackerId}/ownership-claims";
1011
+ };
1012
+
1013
+ export type ClaimTrackerOwnershipErrors = {
1014
+ /**
1015
+ * Bad Request
1016
+ */
1017
+ 400: ProblemDetails;
1018
+ /**
1019
+ * Unauthorized
1020
+ */
1021
+ 401: ProblemDetails;
1022
+ /**
1023
+ * Forbidden
1024
+ */
1025
+ 403: ProblemDetails;
1026
+ /**
1027
+ * Not Found
1028
+ */
1029
+ 404: ProblemDetails;
1030
+ /**
1031
+ * Conflict
1032
+ */
1033
+ 409: ProblemDetails;
1034
+ /**
1035
+ * Too Many Requests
1036
+ */
1037
+ 429: ProblemDetails;
1038
+ /**
1039
+ * Bad Gateway
1040
+ */
1041
+ 502: ProblemDetails;
1042
+ /**
1043
+ * Service Unavailable
1044
+ */
1045
+ 503: ProblemDetails;
1046
+ };
1047
+
1048
+ export type ClaimTrackerOwnershipError =
1049
+ ClaimTrackerOwnershipErrors[keyof ClaimTrackerOwnershipErrors];
1050
+
1051
+ export type ClaimTrackerOwnershipResponses = {
1052
+ /**
1053
+ * OK
1054
+ */
1055
+ 200: CommandSuccess;
1056
+ };
1057
+
1058
+ export type ClaimTrackerOwnershipResponse =
1059
+ ClaimTrackerOwnershipResponses[keyof ClaimTrackerOwnershipResponses];
1060
+
1061
+ export type ClaimTrackerGuestAccessData = {
1062
+ body: ClaimTrackerGuestAccessRequest;
1063
+ path: {
1064
+ trackerId: string;
1065
+ };
1066
+ query?: never;
1067
+ url: "/v1/trackers/{trackerId}/guest-claims";
1068
+ };
1069
+
1070
+ export type ClaimTrackerGuestAccessErrors = {
1071
+ /**
1072
+ * Bad Request
1073
+ */
1074
+ 400: ProblemDetails;
1075
+ /**
1076
+ * Unauthorized
1077
+ */
1078
+ 401: ProblemDetails;
1079
+ /**
1080
+ * Forbidden
1081
+ */
1082
+ 403: ProblemDetails;
1083
+ /**
1084
+ * Not Found
1085
+ */
1086
+ 404: ProblemDetails;
1087
+ /**
1088
+ * Conflict
1089
+ */
1090
+ 409: ProblemDetails;
1091
+ /**
1092
+ * Too Many Requests
1093
+ */
1094
+ 429: ProblemDetails;
1095
+ /**
1096
+ * Bad Gateway
1097
+ */
1098
+ 502: ProblemDetails;
1099
+ /**
1100
+ * Service Unavailable
1101
+ */
1102
+ 503: ProblemDetails;
1103
+ };
1104
+
1105
+ export type ClaimTrackerGuestAccessError =
1106
+ ClaimTrackerGuestAccessErrors[keyof ClaimTrackerGuestAccessErrors];
1107
+
1108
+ export type ClaimTrackerGuestAccessResponses = {
1109
+ /**
1110
+ * OK
1111
+ */
1112
+ 200: CommandSuccess;
1113
+ };
1114
+
1115
+ export type ClaimTrackerGuestAccessResponse =
1116
+ ClaimTrackerGuestAccessResponses[keyof ClaimTrackerGuestAccessResponses];
1117
+
1118
+ export type CreateTrackerInvitationData = {
1119
+ body?: never;
1120
+ path: {
1121
+ trackerId: string;
1122
+ };
1123
+ query?: never;
1124
+ url: "/v1/trackers/{trackerId}/invitations";
1125
+ };
1126
+
1127
+ export type CreateTrackerInvitationErrors = {
1128
+ /**
1129
+ * Bad Request
1130
+ */
1131
+ 400: ProblemDetails;
1132
+ /**
1133
+ * Unauthorized
1134
+ */
1135
+ 401: ProblemDetails;
1136
+ /**
1137
+ * Forbidden
1138
+ */
1139
+ 403: ProblemDetails;
1140
+ /**
1141
+ * Not Found
1142
+ */
1143
+ 404: ProblemDetails;
1144
+ /**
1145
+ * Conflict
1146
+ */
1147
+ 409: ProblemDetails;
1148
+ /**
1149
+ * Too Many Requests
1150
+ */
1151
+ 429: ProblemDetails;
1152
+ /**
1153
+ * Bad Gateway
1154
+ */
1155
+ 502: ProblemDetails;
1156
+ /**
1157
+ * Service Unavailable
1158
+ */
1159
+ 503: ProblemDetails;
1160
+ };
1161
+
1162
+ export type CreateTrackerInvitationError =
1163
+ CreateTrackerInvitationErrors[keyof CreateTrackerInvitationErrors];
1164
+
1165
+ export type CreateTrackerInvitationResponses = {
1166
+ /**
1167
+ * OK
1168
+ */
1169
+ 200: TrackerInvitation;
1170
+ };
1171
+
1172
+ export type CreateTrackerInvitationResponse =
1173
+ CreateTrackerInvitationResponses[keyof CreateTrackerInvitationResponses];
1174
+
1175
+ export type RevokeTrackerInvitationData = {
1176
+ body?: never;
1177
+ path: {
1178
+ trackerId: string;
1179
+ accessCode: string;
1180
+ };
1181
+ query?: never;
1182
+ url: "/v1/trackers/{trackerId}/invitations/{accessCode}";
1183
+ };
1184
+
1185
+ export type RevokeTrackerInvitationErrors = {
1186
+ /**
1187
+ * Bad Request
1188
+ */
1189
+ 400: ProblemDetails;
1190
+ /**
1191
+ * Unauthorized
1192
+ */
1193
+ 401: ProblemDetails;
1194
+ /**
1195
+ * Forbidden
1196
+ */
1197
+ 403: ProblemDetails;
1198
+ /**
1199
+ * Not Found
1200
+ */
1201
+ 404: ProblemDetails;
1202
+ /**
1203
+ * Conflict
1204
+ */
1205
+ 409: ProblemDetails;
1206
+ /**
1207
+ * Too Many Requests
1208
+ */
1209
+ 429: ProblemDetails;
1210
+ /**
1211
+ * Bad Gateway
1212
+ */
1213
+ 502: ProblemDetails;
1214
+ /**
1215
+ * Service Unavailable
1216
+ */
1217
+ 503: ProblemDetails;
1218
+ };
1219
+
1220
+ export type RevokeTrackerInvitationError =
1221
+ RevokeTrackerInvitationErrors[keyof RevokeTrackerInvitationErrors];
1222
+
1223
+ export type RevokeTrackerInvitationResponses = {
1224
+ /**
1225
+ * OK
1226
+ */
1227
+ 200: CommandSuccess;
1228
+ };
1229
+
1230
+ export type RevokeTrackerInvitationResponse =
1231
+ RevokeTrackerInvitationResponses[keyof RevokeTrackerInvitationResponses];
1232
+
1233
+ export type RemoveTrackerMembershipData = {
1234
+ body: RemoveTrackerMembershipRequest;
1235
+ path: {
1236
+ trackerId: string;
1237
+ };
1238
+ query?: never;
1239
+ url: "/v1/trackers/{trackerId}/membership-removals";
1240
+ };
1241
+
1242
+ export type RemoveTrackerMembershipErrors = {
1243
+ /**
1244
+ * Bad Request
1245
+ */
1246
+ 400: ProblemDetails;
1247
+ /**
1248
+ * Unauthorized
1249
+ */
1250
+ 401: ProblemDetails;
1251
+ /**
1252
+ * Forbidden
1253
+ */
1254
+ 403: ProblemDetails;
1255
+ /**
1256
+ * Not Found
1257
+ */
1258
+ 404: ProblemDetails;
1259
+ /**
1260
+ * Conflict
1261
+ */
1262
+ 409: ProblemDetails;
1263
+ /**
1264
+ * Too Many Requests
1265
+ */
1266
+ 429: ProblemDetails;
1267
+ /**
1268
+ * Bad Gateway
1269
+ */
1270
+ 502: ProblemDetails;
1271
+ /**
1272
+ * Service Unavailable
1273
+ */
1274
+ 503: ProblemDetails;
1275
+ };
1276
+
1277
+ export type RemoveTrackerMembershipError =
1278
+ RemoveTrackerMembershipErrors[keyof RemoveTrackerMembershipErrors];
1279
+
1280
+ export type RemoveTrackerMembershipResponses = {
1281
+ /**
1282
+ * OK
1283
+ */
1284
+ 200: CommandSuccess;
1285
+ };
1286
+
1287
+ export type RemoveTrackerMembershipResponse =
1288
+ RemoveTrackerMembershipResponses[keyof RemoveTrackerMembershipResponses];
1289
+
1290
+ export type UpdateTrackerBikeData = {
1291
+ body: UpdateTrackerBikeRequest;
1292
+ path: {
1293
+ trackerId: string;
1294
+ };
1295
+ query?: never;
1296
+ url: "/v1/trackers/{trackerId}/bike";
1297
+ };
1298
+
1299
+ export type UpdateTrackerBikeErrors = {
1300
+ /**
1301
+ * Bad Request
1302
+ */
1303
+ 400: ProblemDetails;
1304
+ /**
1305
+ * Unauthorized
1306
+ */
1307
+ 401: ProblemDetails;
1308
+ /**
1309
+ * Forbidden
1310
+ */
1311
+ 403: ProblemDetails;
1312
+ /**
1313
+ * Not Found
1314
+ */
1315
+ 404: ProblemDetails;
1316
+ /**
1317
+ * Conflict
1318
+ */
1319
+ 409: ProblemDetails;
1320
+ /**
1321
+ * Too Many Requests
1322
+ */
1323
+ 429: ProblemDetails;
1324
+ /**
1325
+ * Bad Gateway
1326
+ */
1327
+ 502: ProblemDetails;
1328
+ /**
1329
+ * Service Unavailable
1330
+ */
1331
+ 503: ProblemDetails;
1332
+ };
1333
+
1334
+ export type UpdateTrackerBikeError =
1335
+ UpdateTrackerBikeErrors[keyof UpdateTrackerBikeErrors];
1336
+
1337
+ export type UpdateTrackerBikeResponses = {
1338
+ /**
1339
+ * OK
1340
+ */
1341
+ 200: TrackerBikeDetails;
1342
+ };
1343
+
1344
+ export type UpdateTrackerBikeResponse =
1345
+ UpdateTrackerBikeResponses[keyof UpdateTrackerBikeResponses];
1346
+
1347
+ export type SubmitTrackerTheftReportData = {
1348
+ body: SubmitTrackerTheftReportRequest;
1349
+ path: {
1350
+ trackerId: string;
1351
+ };
1352
+ query?: never;
1353
+ url: "/v1/trackers/{trackerId}/theft-reports";
1354
+ };
1355
+
1356
+ export type SubmitTrackerTheftReportErrors = {
1357
+ /**
1358
+ * Bad Request
1359
+ */
1360
+ 400: ProblemDetails;
1361
+ /**
1362
+ * Unauthorized
1363
+ */
1364
+ 401: ProblemDetails;
1365
+ /**
1366
+ * Forbidden
1367
+ */
1368
+ 403: ProblemDetails;
1369
+ /**
1370
+ * Not Found
1371
+ */
1372
+ 404: ProblemDetails;
1373
+ /**
1374
+ * Conflict
1375
+ */
1376
+ 409: ProblemDetails;
1377
+ /**
1378
+ * Too Many Requests
1379
+ */
1380
+ 429: ProblemDetails;
1381
+ /**
1382
+ * Bad Gateway
1383
+ */
1384
+ 502: ProblemDetails;
1385
+ /**
1386
+ * Service Unavailable
1387
+ */
1388
+ 503: ProblemDetails;
1389
+ };
1390
+
1391
+ export type SubmitTrackerTheftReportError =
1392
+ SubmitTrackerTheftReportErrors[keyof SubmitTrackerTheftReportErrors];
1393
+
1394
+ export type SubmitTrackerTheftReportResponses = {
1395
+ /**
1396
+ * OK
1397
+ */
1398
+ 200: TrackerTheftReportResult;
1399
+ };
1400
+
1401
+ export type SubmitTrackerTheftReportResponse =
1402
+ SubmitTrackerTheftReportResponses[keyof SubmitTrackerTheftReportResponses];
1403
+
1404
+ export type GetTrackerBluetoothCredentialsData = {
1405
+ body?: never;
1406
+ path: {
1407
+ trackerId: string;
1408
+ };
1409
+ query?: never;
1410
+ url: "/v1/trackers/{trackerId}/bluetooth/credentials";
1411
+ };
1412
+
1413
+ export type GetTrackerBluetoothCredentialsErrors = {
1414
+ /**
1415
+ * Bad Request
1416
+ */
1417
+ 400: ProblemDetails;
1418
+ /**
1419
+ * Unauthorized
1420
+ */
1421
+ 401: ProblemDetails;
1422
+ /**
1423
+ * Forbidden
1424
+ */
1425
+ 403: ProblemDetails;
1426
+ /**
1427
+ * Not Found
1428
+ */
1429
+ 404: ProblemDetails;
1430
+ /**
1431
+ * Conflict
1432
+ */
1433
+ 409: ProblemDetails;
1434
+ /**
1435
+ * Too Many Requests
1436
+ */
1437
+ 429: ProblemDetails;
1438
+ /**
1439
+ * Bad Gateway
1440
+ */
1441
+ 502: ProblemDetails;
1442
+ /**
1443
+ * Service Unavailable
1444
+ */
1445
+ 503: ProblemDetails;
1446
+ };
1447
+
1448
+ export type GetTrackerBluetoothCredentialsError =
1449
+ GetTrackerBluetoothCredentialsErrors[keyof GetTrackerBluetoothCredentialsErrors];
1450
+
1451
+ export type GetTrackerBluetoothCredentialsResponses = {
1452
+ /**
1453
+ * OK
1454
+ */
1455
+ 200: TrackerBluetoothCredentials;
1456
+ };
1457
+
1458
+ export type GetTrackerBluetoothCredentialsResponse =
1459
+ GetTrackerBluetoothCredentialsResponses[keyof GetTrackerBluetoothCredentialsResponses];
1460
+
1461
+ export type UpdateTrackerBluetoothPinData = {
1462
+ body: UpdateBluetoothPinRequest;
1463
+ path: {
1464
+ trackerId: string;
1465
+ };
1466
+ query?: never;
1467
+ url: "/v1/trackers/{trackerId}/bluetooth/pin";
1468
+ };
1469
+
1470
+ export type UpdateTrackerBluetoothPinErrors = {
1471
+ /**
1472
+ * Bad Request
1473
+ */
1474
+ 400: ProblemDetails;
1475
+ /**
1476
+ * Unauthorized
1477
+ */
1478
+ 401: ProblemDetails;
1479
+ /**
1480
+ * Forbidden
1481
+ */
1482
+ 403: ProblemDetails;
1483
+ /**
1484
+ * Not Found
1485
+ */
1486
+ 404: ProblemDetails;
1487
+ /**
1488
+ * Conflict
1489
+ */
1490
+ 409: ProblemDetails;
1491
+ /**
1492
+ * Too Many Requests
1493
+ */
1494
+ 429: ProblemDetails;
1495
+ /**
1496
+ * Bad Gateway
1497
+ */
1498
+ 502: ProblemDetails;
1499
+ /**
1500
+ * Service Unavailable
1501
+ */
1502
+ 503: ProblemDetails;
1503
+ };
1504
+
1505
+ export type UpdateTrackerBluetoothPinError =
1506
+ UpdateTrackerBluetoothPinErrors[keyof UpdateTrackerBluetoothPinErrors];
1507
+
1508
+ export type UpdateTrackerBluetoothPinResponses = {
1509
+ /**
1510
+ * OK
1511
+ */
1512
+ 200: CommandSuccess;
1513
+ };
1514
+
1515
+ export type UpdateTrackerBluetoothPinResponse =
1516
+ UpdateTrackerBluetoothPinResponses[keyof UpdateTrackerBluetoothPinResponses];
1517
+
1518
+ export type ReportTrackerBluetoothBatteryData = {
1519
+ body: BluetoothBatteryRequest;
1520
+ path: {
1521
+ trackerId: string;
1522
+ };
1523
+ query?: never;
1524
+ url: "/v1/trackers/{trackerId}/bluetooth/battery-observations";
1525
+ };
1526
+
1527
+ export type ReportTrackerBluetoothBatteryErrors = {
1528
+ /**
1529
+ * Bad Request
1530
+ */
1531
+ 400: ProblemDetails;
1532
+ /**
1533
+ * Unauthorized
1534
+ */
1535
+ 401: ProblemDetails;
1536
+ /**
1537
+ * Forbidden
1538
+ */
1539
+ 403: ProblemDetails;
1540
+ /**
1541
+ * Not Found
1542
+ */
1543
+ 404: ProblemDetails;
1544
+ /**
1545
+ * Conflict
1546
+ */
1547
+ 409: ProblemDetails;
1548
+ /**
1549
+ * Too Many Requests
1550
+ */
1551
+ 429: ProblemDetails;
1552
+ /**
1553
+ * Bad Gateway
1554
+ */
1555
+ 502: ProblemDetails;
1556
+ /**
1557
+ * Service Unavailable
1558
+ */
1559
+ 503: ProblemDetails;
1560
+ };
1561
+
1562
+ export type ReportTrackerBluetoothBatteryError =
1563
+ ReportTrackerBluetoothBatteryErrors[keyof ReportTrackerBluetoothBatteryErrors];
1564
+
1565
+ export type ReportTrackerBluetoothBatteryResponses = {
1566
+ /**
1567
+ * OK
1568
+ */
1569
+ 200: CommandSuccess;
1570
+ };
1571
+
1572
+ export type ReportTrackerBluetoothBatteryResponse =
1573
+ ReportTrackerBluetoothBatteryResponses[keyof ReportTrackerBluetoothBatteryResponses];
1574
+
1575
+ export type ReportTrackerBluetoothCommandData = {
1576
+ body: BluetoothCommandReport;
1577
+ path: {
1578
+ trackerId: string;
1579
+ };
1580
+ query?: never;
1581
+ url: "/v1/trackers/{trackerId}/bluetooth/command-results";
1582
+ };
1583
+
1584
+ export type ReportTrackerBluetoothCommandErrors = {
1585
+ /**
1586
+ * Bad Request
1587
+ */
1588
+ 400: ProblemDetails;
1589
+ /**
1590
+ * Unauthorized
1591
+ */
1592
+ 401: ProblemDetails;
1593
+ /**
1594
+ * Forbidden
1595
+ */
1596
+ 403: ProblemDetails;
1597
+ /**
1598
+ * Not Found
1599
+ */
1600
+ 404: ProblemDetails;
1601
+ /**
1602
+ * Conflict
1603
+ */
1604
+ 409: ProblemDetails;
1605
+ /**
1606
+ * Too Many Requests
1607
+ */
1608
+ 429: ProblemDetails;
1609
+ /**
1610
+ * Bad Gateway
1611
+ */
1612
+ 502: ProblemDetails;
1613
+ /**
1614
+ * Service Unavailable
1615
+ */
1616
+ 503: ProblemDetails;
1617
+ };
1618
+
1619
+ export type ReportTrackerBluetoothCommandError =
1620
+ ReportTrackerBluetoothCommandErrors[keyof ReportTrackerBluetoothCommandErrors];
1621
+
1622
+ export type ReportTrackerBluetoothCommandResponses = {
1623
+ /**
1624
+ * OK
1625
+ */
1626
+ 200: CommandSuccess;
1627
+ };
1628
+
1629
+ export type ReportTrackerBluetoothCommandResponse =
1630
+ ReportTrackerBluetoothCommandResponses[keyof ReportTrackerBluetoothCommandResponses];
1631
+
1632
+ export type UploadTrackerBluetoothObservationData = {
1633
+ body: BluetoothObservationRequest;
1634
+ path: {
1635
+ trackerId: string;
1636
+ };
1637
+ query?: never;
1638
+ url: "/v1/trackers/{trackerId}/bluetooth/observations";
1639
+ };
1640
+
1641
+ export type UploadTrackerBluetoothObservationErrors = {
1642
+ /**
1643
+ * Bad Request
1644
+ */
1645
+ 400: ProblemDetails;
1646
+ /**
1647
+ * Unauthorized
1648
+ */
1649
+ 401: ProblemDetails;
1650
+ /**
1651
+ * Forbidden
1652
+ */
1653
+ 403: ProblemDetails;
1654
+ /**
1655
+ * Not Found
1656
+ */
1657
+ 404: ProblemDetails;
1658
+ /**
1659
+ * Conflict
1660
+ */
1661
+ 409: ProblemDetails;
1662
+ /**
1663
+ * Too Many Requests
1664
+ */
1665
+ 429: ProblemDetails;
1666
+ /**
1667
+ * Bad Gateway
1668
+ */
1669
+ 502: ProblemDetails;
1670
+ /**
1671
+ * Service Unavailable
1672
+ */
1673
+ 503: ProblemDetails;
1674
+ };
1675
+
1676
+ export type UploadTrackerBluetoothObservationError =
1677
+ UploadTrackerBluetoothObservationErrors[keyof UploadTrackerBluetoothObservationErrors];
1678
+
1679
+ export type UploadTrackerBluetoothObservationResponses = {
1680
+ /**
1681
+ * OK
1682
+ */
1683
+ 200: BluetoothObservationResult;
1684
+ };
1685
+
1686
+ export type UploadTrackerBluetoothObservationResponse =
1687
+ UploadTrackerBluetoothObservationResponses[keyof UploadTrackerBluetoothObservationResponses];
1688
+
1689
+ export type ReportTrackerFactoryResetData = {
1690
+ body?: never;
1691
+ path: {
1692
+ trackerId: string;
1693
+ };
1694
+ query?: never;
1695
+ url: "/v1/trackers/{trackerId}/bluetooth/factory-reset-reports";
1696
+ };
1697
+
1698
+ export type ReportTrackerFactoryResetErrors = {
1699
+ /**
1700
+ * Bad Request
1701
+ */
1702
+ 400: ProblemDetails;
1703
+ /**
1704
+ * Unauthorized
1705
+ */
1706
+ 401: ProblemDetails;
1707
+ /**
1708
+ * Forbidden
1709
+ */
1710
+ 403: ProblemDetails;
1711
+ /**
1712
+ * Not Found
1713
+ */
1714
+ 404: ProblemDetails;
1715
+ /**
1716
+ * Conflict
1717
+ */
1718
+ 409: ProblemDetails;
1719
+ /**
1720
+ * Too Many Requests
1721
+ */
1722
+ 429: ProblemDetails;
1723
+ /**
1724
+ * Bad Gateway
1725
+ */
1726
+ 502: ProblemDetails;
1727
+ /**
1728
+ * Service Unavailable
1729
+ */
1730
+ 503: ProblemDetails;
1731
+ };
1732
+
1733
+ export type ReportTrackerFactoryResetError =
1734
+ ReportTrackerFactoryResetErrors[keyof ReportTrackerFactoryResetErrors];
1735
+
1736
+ export type ReportTrackerFactoryResetResponses = {
1737
+ /**
1738
+ * OK
1739
+ */
1740
+ 200: FactoryResetResult;
1741
+ };
1742
+
1743
+ export type ReportTrackerFactoryResetResponse =
1744
+ ReportTrackerFactoryResetResponses[keyof ReportTrackerFactoryResetResponses];
1745
+
1746
+ export type GetTrackerFirmwarePlanData = {
1747
+ body?: never;
1748
+ path: {
1749
+ trackerId: string;
1750
+ };
1751
+ query: {
1752
+ platform: string;
1753
+ build: string;
1754
+ };
1755
+ url: "/v1/trackers/{trackerId}/firmware-plan";
1756
+ };
1757
+
1758
+ export type GetTrackerFirmwarePlanErrors = {
1759
+ /**
1760
+ * Bad Request
1761
+ */
1762
+ 400: ProblemDetails;
1763
+ /**
1764
+ * Unauthorized
1765
+ */
1766
+ 401: ProblemDetails;
1767
+ /**
1768
+ * Forbidden
1769
+ */
1770
+ 403: ProblemDetails;
1771
+ /**
1772
+ * Not Found
1773
+ */
1774
+ 404: ProblemDetails;
1775
+ /**
1776
+ * Conflict
1777
+ */
1778
+ 409: ProblemDetails;
1779
+ /**
1780
+ * Too Many Requests
1781
+ */
1782
+ 429: ProblemDetails;
1783
+ /**
1784
+ * Bad Gateway
1785
+ */
1786
+ 502: ProblemDetails;
1787
+ /**
1788
+ * Service Unavailable
1789
+ */
1790
+ 503: ProblemDetails;
1791
+ };
1792
+
1793
+ export type GetTrackerFirmwarePlanError =
1794
+ GetTrackerFirmwarePlanErrors[keyof GetTrackerFirmwarePlanErrors];
1795
+
1796
+ export type GetTrackerFirmwarePlanResponses = {
1797
+ /**
1798
+ * OK
1799
+ */
1800
+ 200: TrackerFirmwarePlan;
1801
+ };
1802
+
1803
+ export type GetTrackerFirmwarePlanResponse =
1804
+ GetTrackerFirmwarePlanResponses[keyof GetTrackerFirmwarePlanResponses];
1805
+
1806
+ export type CompleteTrackerFirmwareUpdateData = {
1807
+ body: CompleteFirmwareRequest;
1808
+ path: {
1809
+ trackerId: string;
1810
+ };
1811
+ query?: never;
1812
+ url: "/v1/trackers/{trackerId}/firmware-completions";
1813
+ };
1814
+
1815
+ export type CompleteTrackerFirmwareUpdateErrors = {
1816
+ /**
1817
+ * Bad Request
1818
+ */
1819
+ 400: ProblemDetails;
1820
+ /**
1821
+ * Unauthorized
1822
+ */
1823
+ 401: ProblemDetails;
1824
+ /**
1825
+ * Forbidden
1826
+ */
1827
+ 403: ProblemDetails;
1828
+ /**
1829
+ * Not Found
1830
+ */
1831
+ 404: ProblemDetails;
1832
+ /**
1833
+ * Conflict
1834
+ */
1835
+ 409: ProblemDetails;
1836
+ /**
1837
+ * Too Many Requests
1838
+ */
1839
+ 429: ProblemDetails;
1840
+ /**
1841
+ * Bad Gateway
1842
+ */
1843
+ 502: ProblemDetails;
1844
+ /**
1845
+ * Service Unavailable
1846
+ */
1847
+ 503: ProblemDetails;
1848
+ };
1849
+
1850
+ export type CompleteTrackerFirmwareUpdateError =
1851
+ CompleteTrackerFirmwareUpdateErrors[keyof CompleteTrackerFirmwareUpdateErrors];
1852
+
1853
+ export type CompleteTrackerFirmwareUpdateResponses = {
1854
+ /**
1855
+ * OK
1856
+ */
1857
+ 200: CommandSuccess;
1858
+ };
1859
+
1860
+ export type CompleteTrackerFirmwareUpdateResponse =
1861
+ CompleteTrackerFirmwareUpdateResponses[keyof CompleteTrackerFirmwareUpdateResponses];
1862
+
1863
+ export type RecordTrackerFirmwareAttemptData = {
1864
+ body: RecordFirmwareAttemptRequest;
1865
+ path: {
1866
+ trackerId: string;
1867
+ };
1868
+ query?: never;
1869
+ url: "/v1/trackers/{trackerId}/firmware-attempts";
1870
+ };
1871
+
1872
+ export type RecordTrackerFirmwareAttemptErrors = {
1873
+ /**
1874
+ * Bad Request
1875
+ */
1876
+ 400: ProblemDetails;
1877
+ /**
1878
+ * Unauthorized
1879
+ */
1880
+ 401: ProblemDetails;
1881
+ /**
1882
+ * Forbidden
1883
+ */
1884
+ 403: ProblemDetails;
1885
+ /**
1886
+ * Not Found
1887
+ */
1888
+ 404: ProblemDetails;
1889
+ /**
1890
+ * Conflict
1891
+ */
1892
+ 409: ProblemDetails;
1893
+ /**
1894
+ * Too Many Requests
1895
+ */
1896
+ 429: ProblemDetails;
1897
+ /**
1898
+ * Bad Gateway
1899
+ */
1900
+ 502: ProblemDetails;
1901
+ /**
1902
+ * Service Unavailable
1903
+ */
1904
+ 503: ProblemDetails;
1905
+ };
1906
+
1907
+ export type RecordTrackerFirmwareAttemptError =
1908
+ RecordTrackerFirmwareAttemptErrors[keyof RecordTrackerFirmwareAttemptErrors];
1909
+
1910
+ export type RecordTrackerFirmwareAttemptResponses = {
1911
+ /**
1912
+ * OK
1913
+ */
1914
+ 200: RecordFirmwareAttemptResult;
1915
+ };
1916
+
1917
+ export type RecordTrackerFirmwareAttemptResponse =
1918
+ RecordTrackerFirmwareAttemptResponses[keyof RecordTrackerFirmwareAttemptResponses];
1919
+
1920
+ export type GetAccountPreferencesData = {
1921
+ body?: never;
1922
+ path?: never;
1923
+ query?: never;
1924
+ url: "/v1/me/preferences";
1925
+ };
1926
+
1927
+ export type GetAccountPreferencesErrors = {
1928
+ /**
1929
+ * Bad Request
1930
+ */
1931
+ 400: ProblemDetails;
1932
+ /**
1933
+ * Unauthorized
1934
+ */
1935
+ 401: ProblemDetails;
1936
+ /**
1937
+ * Not Found
1938
+ */
1939
+ 404: ProblemDetails;
1940
+ /**
1941
+ * Internal Server Error
1942
+ */
1943
+ 500: ProblemDetails;
1944
+ /**
1945
+ * Service Unavailable
1946
+ */
1947
+ 503: ProblemDetails;
1948
+ };
1949
+
1950
+ export type GetAccountPreferencesError =
1951
+ GetAccountPreferencesErrors[keyof GetAccountPreferencesErrors];
1952
+
1953
+ export type GetAccountPreferencesResponses = {
1954
+ /**
1955
+ * OK
1956
+ */
1957
+ 200: AccountPreferences;
1958
+ };
1959
+
1960
+ export type GetAccountPreferencesResponse =
1961
+ GetAccountPreferencesResponses[keyof GetAccountPreferencesResponses];
1962
+
1963
+ export type UpdateAccountPreferencesData = {
1964
+ body: UpdateAccountPreferencesRequest;
1965
+ path?: never;
1966
+ query?: never;
1967
+ url: "/v1/me/preferences";
1968
+ };
1969
+
1970
+ export type UpdateAccountPreferencesErrors = {
1971
+ /**
1972
+ * Bad Request
1973
+ */
1974
+ 400: ProblemDetails;
1975
+ /**
1976
+ * Unauthorized
1977
+ */
1978
+ 401: ProblemDetails;
1979
+ /**
1980
+ * Not Found
1981
+ */
1982
+ 404: ProblemDetails;
1983
+ /**
1984
+ * Internal Server Error
1985
+ */
1986
+ 500: ProblemDetails;
1987
+ /**
1988
+ * Service Unavailable
1989
+ */
1990
+ 503: ProblemDetails;
1991
+ };
1992
+
1993
+ export type UpdateAccountPreferencesError =
1994
+ UpdateAccountPreferencesErrors[keyof UpdateAccountPreferencesErrors];
1995
+
1996
+ export type UpdateAccountPreferencesResponses = {
1997
+ /**
1998
+ * OK
1999
+ */
2000
+ 200: AccountPreferences;
2001
+ };
2002
+
2003
+ export type UpdateAccountPreferencesResponse =
2004
+ UpdateAccountPreferencesResponses[keyof UpdateAccountPreferencesResponses];
2005
+
2006
+ export type SubscribeAccountPreferencesData = {
2007
+ body?: never;
2008
+ path?: never;
2009
+ query?: never;
2010
+ url: "/v1/me/preferences/stream";
2011
+ };
2012
+
2013
+ export type SubscribeAccountPreferencesErrors = {
2014
+ /**
2015
+ * Bad Request
2016
+ */
2017
+ 400: ProblemDetails;
2018
+ /**
2019
+ * Unauthorized
2020
+ */
2021
+ 401: ProblemDetails;
2022
+ /**
2023
+ * Not Found
2024
+ */
2025
+ 404: ProblemDetails;
2026
+ /**
2027
+ * Internal Server Error
2028
+ */
2029
+ 500: ProblemDetails;
2030
+ /**
2031
+ * Service Unavailable
2032
+ */
2033
+ 503: ProblemDetails;
2034
+ };
2035
+
2036
+ export type SubscribeAccountPreferencesError =
2037
+ SubscribeAccountPreferencesErrors[keyof SubscribeAccountPreferencesErrors];
2038
+
2039
+ export type SubscribeAccountPreferencesResponses = {
2040
+ /**
2041
+ * OK
2042
+ */
2043
+ 200: AccountPreferences | null;
2044
+ };
2045
+
2046
+ export type SubscribeAccountPreferencesResponse =
2047
+ SubscribeAccountPreferencesResponses[keyof SubscribeAccountPreferencesResponses];
2048
+
2049
+ export type RemovePushRegistrationData = {
2050
+ body: RemovePushRegistrationRequest;
2051
+ path?: never;
2052
+ query?: never;
2053
+ url: "/v1/me/push-registration";
2054
+ };
2055
+
2056
+ export type RemovePushRegistrationErrors = {
2057
+ /**
2058
+ * Bad Request
2059
+ */
2060
+ 400: ProblemDetails;
2061
+ /**
2062
+ * Unauthorized
2063
+ */
2064
+ 401: ProblemDetails;
2065
+ /**
2066
+ * Not Found
2067
+ */
2068
+ 404: ProblemDetails;
2069
+ /**
2070
+ * Internal Server Error
2071
+ */
2072
+ 500: ProblemDetails;
2073
+ /**
2074
+ * Service Unavailable
2075
+ */
2076
+ 503: ProblemDetails;
2077
+ };
2078
+
2079
+ export type RemovePushRegistrationError =
2080
+ RemovePushRegistrationErrors[keyof RemovePushRegistrationErrors];
2081
+
2082
+ export type RemovePushRegistrationResponses = {
2083
+ /**
2084
+ * No Content
2085
+ */
2086
+ 204: void;
2087
+ };
2088
+
2089
+ export type RemovePushRegistrationResponse =
2090
+ RemovePushRegistrationResponses[keyof RemovePushRegistrationResponses];
2091
+
2092
+ export type RegisterPushRegistrationData = {
2093
+ body: RegisterPushRegistrationRequest;
2094
+ path?: never;
2095
+ query?: never;
2096
+ url: "/v1/me/push-registration";
2097
+ };
2098
+
2099
+ export type RegisterPushRegistrationErrors = {
2100
+ /**
2101
+ * Bad Request
2102
+ */
2103
+ 400: ProblemDetails;
2104
+ /**
2105
+ * Unauthorized
2106
+ */
2107
+ 401: ProblemDetails;
2108
+ /**
2109
+ * Not Found
2110
+ */
2111
+ 404: ProblemDetails;
2112
+ /**
2113
+ * Internal Server Error
2114
+ */
2115
+ 500: ProblemDetails;
2116
+ /**
2117
+ * Service Unavailable
2118
+ */
2119
+ 503: ProblemDetails;
2120
+ };
2121
+
2122
+ export type RegisterPushRegistrationError =
2123
+ RegisterPushRegistrationErrors[keyof RegisterPushRegistrationErrors];
2124
+
2125
+ export type RegisterPushRegistrationResponses = {
2126
+ /**
2127
+ * No Content
2128
+ */
2129
+ 204: void;
2130
+ };
2131
+
2132
+ export type RegisterPushRegistrationResponse =
2133
+ RegisterPushRegistrationResponses[keyof RegisterPushRegistrationResponses];
2134
+
2135
+ export type RequestAccountDeletionData = {
2136
+ body?: never;
2137
+ path?: never;
2138
+ query?: never;
2139
+ url: "/v1/me/deletion-requests";
2140
+ };
2141
+
2142
+ export type RequestAccountDeletionErrors = {
2143
+ /**
2144
+ * Bad Request
2145
+ */
2146
+ 400: ProblemDetails;
2147
+ /**
2148
+ * Unauthorized
2149
+ */
2150
+ 401: ProblemDetails;
2151
+ /**
2152
+ * Not Found
2153
+ */
2154
+ 404: ProblemDetails;
2155
+ /**
2156
+ * Internal Server Error
2157
+ */
2158
+ 500: ProblemDetails;
2159
+ /**
2160
+ * Service Unavailable
2161
+ */
2162
+ 503: ProblemDetails;
2163
+ };
2164
+
2165
+ export type RequestAccountDeletionError =
2166
+ RequestAccountDeletionErrors[keyof RequestAccountDeletionErrors];
2167
+
2168
+ export type RequestAccountDeletionResponses = {
2169
+ /**
2170
+ * Accepted
2171
+ */
2172
+ 202: AccountDeletionRequest;
2173
+ };
2174
+
2175
+ export type RequestAccountDeletionResponse =
2176
+ RequestAccountDeletionResponses[keyof RequestAccountDeletionResponses];
2177
+
2178
+ export type ListTrackerHistoryData = {
2179
+ body?: never;
2180
+ path: {
2181
+ trackerId: string;
2182
+ };
2183
+ query: {
2184
+ startMs: number;
2185
+ endMs: number;
2186
+ cursor?: string;
2187
+ };
2188
+ url: "/v1/trackers/{trackerId}/history";
2189
+ };
2190
+
2191
+ export type ListTrackerHistoryErrors = {
2192
+ /**
2193
+ * Bad Request
2194
+ */
2195
+ 400: ProblemDetails;
2196
+ /**
2197
+ * Unauthorized
2198
+ */
2199
+ 401: ProblemDetails;
2200
+ /**
2201
+ * Not Found
2202
+ */
2203
+ 404: ProblemDetails;
2204
+ /**
2205
+ * Internal Server Error
2206
+ */
2207
+ 500: ProblemDetails;
2208
+ /**
2209
+ * Service Unavailable
2210
+ */
2211
+ 503: ProblemDetails;
2212
+ };
2213
+
2214
+ export type ListTrackerHistoryError =
2215
+ ListTrackerHistoryErrors[keyof ListTrackerHistoryErrors];
2216
+
2217
+ export type ListTrackerHistoryResponses = {
2218
+ /**
2219
+ * OK
2220
+ */
2221
+ 200: HistoryPage;
2222
+ };
2223
+
2224
+ export type ListTrackerHistoryResponse =
2225
+ ListTrackerHistoryResponses[keyof ListTrackerHistoryResponses];
2226
+
2227
+ export type ListNotificationsData = {
2228
+ body?: never;
2229
+ path?: never;
2230
+ query?: {
2231
+ cursor?: string;
2232
+ };
2233
+ url: "/v1/me/notifications";
2234
+ };
2235
+
2236
+ export type ListNotificationsErrors = {
2237
+ /**
2238
+ * Bad Request
2239
+ */
2240
+ 400: ProblemDetails;
2241
+ /**
2242
+ * Unauthorized
2243
+ */
2244
+ 401: ProblemDetails;
2245
+ /**
2246
+ * Internal Server Error
2247
+ */
2248
+ 500: ProblemDetails;
2249
+ /**
2250
+ * Service Unavailable
2251
+ */
2252
+ 503: ProblemDetails;
2253
+ };
2254
+
2255
+ export type ListNotificationsError =
2256
+ ListNotificationsErrors[keyof ListNotificationsErrors];
2257
+
2258
+ export type ListNotificationsResponses = {
2259
+ /**
2260
+ * OK
2261
+ */
2262
+ 200: NotificationPage;
2263
+ };
2264
+
2265
+ export type ListNotificationsResponse =
2266
+ ListNotificationsResponses[keyof ListNotificationsResponses];
2267
+
2268
+ export type ListSubscriptionsData = {
2269
+ body?: never;
2270
+ path?: never;
2271
+ query?: never;
2272
+ url: "/v1/me/subscriptions";
2273
+ };
2274
+
2275
+ export type ListSubscriptionsErrors = {
2276
+ /**
2277
+ * Bad Request
2278
+ */
2279
+ 400: ProblemDetails;
2280
+ /**
2281
+ * Unauthorized
2282
+ */
2283
+ 401: ProblemDetails;
2284
+ /**
2285
+ * Not Found
2286
+ */
2287
+ 404: ProblemDetails;
2288
+ /**
2289
+ * Internal Server Error
2290
+ */
2291
+ 500: ProblemDetails;
2292
+ /**
2293
+ * Service Unavailable
2294
+ */
2295
+ 503: ProblemDetails;
2296
+ };
2297
+
2298
+ export type ListSubscriptionsError =
2299
+ ListSubscriptionsErrors[keyof ListSubscriptionsErrors];
2300
+
2301
+ export type ListSubscriptionsResponses = {
2302
+ /**
2303
+ * OK
2304
+ */
2305
+ 200: SubscriptionList;
2306
+ };
2307
+
2308
+ export type ListSubscriptionsResponse =
2309
+ ListSubscriptionsResponses[keyof ListSubscriptionsResponses];
2310
+
2311
+ export type SubscribeSubscriptionsData = {
2312
+ body?: never;
2313
+ path?: never;
2314
+ query?: never;
2315
+ url: "/v1/me/subscriptions/stream";
2316
+ };
2317
+
2318
+ export type SubscribeSubscriptionsErrors = {
2319
+ /**
2320
+ * Bad Request
2321
+ */
2322
+ 400: ProblemDetails;
2323
+ /**
2324
+ * Unauthorized
2325
+ */
2326
+ 401: ProblemDetails;
2327
+ /**
2328
+ * Not Found
2329
+ */
2330
+ 404: ProblemDetails;
2331
+ /**
2332
+ * Internal Server Error
2333
+ */
2334
+ 500: ProblemDetails;
2335
+ /**
2336
+ * Service Unavailable
2337
+ */
2338
+ 503: ProblemDetails;
2339
+ };
2340
+
2341
+ export type SubscribeSubscriptionsError =
2342
+ SubscribeSubscriptionsErrors[keyof SubscribeSubscriptionsErrors];
2343
+
2344
+ export type SubscribeSubscriptionsResponses = {
2345
+ /**
2346
+ * OK
2347
+ */
2348
+ 200: SubscriptionList | null;
2349
+ };
2350
+
2351
+ export type SubscribeSubscriptionsResponse =
2352
+ SubscribeSubscriptionsResponses[keyof SubscribeSubscriptionsResponses];