@seamapi/types 1.83.0 → 1.85.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/connect.cjs +65 -38
- package/dist/connect.cjs.map +1 -1
- package/dist/connect.d.cts +102 -59
- package/lib/seam/connect/openapi.d.ts +83 -46
- package/lib/seam/connect/openapi.js +55 -31
- package/lib/seam/connect/openapi.js.map +1 -1
- package/lib/seam/connect/route-types.d.ts +15 -9
- package/lib/seam/connect/stable/models/connect-webview.d.ts +3 -3
- package/lib/seam/connect/stable/models/custom-metadata.d.ts +1 -1
- package/lib/seam/connect/stable/models/custom-metadata.js +1 -1
- package/lib/seam/connect/stable/models/custom-metadata.js.map +1 -1
- package/package.json +1 -1
- package/src/lib/seam/connect/openapi.ts +57 -31
- package/src/lib/seam/connect/route-types.ts +15 -8
- package/src/lib/seam/connect/stable/models/custom-metadata.ts +4 -1
|
@@ -1505,9 +1505,9 @@ export interface Routes {
|
|
|
1505
1505
|
device_selection_mode?: ('none' | 'single' | 'multiple') | undefined;
|
|
1506
1506
|
custom_redirect_url?: string | undefined;
|
|
1507
1507
|
custom_redirect_failure_url?: string | undefined;
|
|
1508
|
-
accepted_providers?: Array<'akuvox' | 'august' | 'avigilon_alta' | 'brivo' | 'butterflymx' | 'schlage' | 'smartthings' | 'yale' | 'genie' | 'doorking' | 'salto' | 'lockly' | 'ttlock' | 'linear' | 'noiseaware' | 'nuki' | 'seam_relay_admin' | 'igloo' | 'kwikset' | 'minut' | 'my_2n' | 'controlbyweb' | 'nest' | 'igloohome' | 'ecobee' | 'hubitat' | 'four_suites' | 'dormakaba_oracode' | 'pti' | 'wyze' | 'seam_passport' | 'visionline' | 'assa_abloy_credential_service' | 'seam_bridge' | 'yale_access' | 'hid_cm'> | undefined;
|
|
1508
|
+
accepted_providers?: Array<'akuvox' | 'august' | 'avigilon_alta' | 'brivo' | 'butterflymx' | 'schlage' | 'smartthings' | 'yale' | 'genie' | 'doorking' | 'salto' | 'lockly' | 'ttlock' | 'linear' | 'noiseaware' | 'nuki' | 'seam_relay_admin' | 'igloo' | 'kwikset' | 'minut' | 'my_2n' | 'controlbyweb' | 'nest' | 'google_nest' | 'igloohome' | 'ecobee' | 'hubitat' | 'four_suites' | 'dormakaba_oracode' | 'pti' | 'wyze' | 'seam_passport' | 'visionline' | 'assa_abloy_credential_service' | 'seam_bridge' | 'yale_access' | 'hid_cm'> | undefined;
|
|
1509
1509
|
provider_category?: ('stable' | 'consumer_smartlocks' | 'internal_beta') | undefined;
|
|
1510
|
-
custom_metadata?: Record<string, string | boolean> | undefined;
|
|
1510
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined;
|
|
1511
1511
|
automatically_manage_new_devices?: boolean | undefined;
|
|
1512
1512
|
wait_for_device_creation?: boolean | undefined;
|
|
1513
1513
|
};
|
|
@@ -1529,7 +1529,7 @@ export interface Routes {
|
|
|
1529
1529
|
status: 'pending' | 'failed' | 'authorized';
|
|
1530
1530
|
custom_redirect_url: string | null;
|
|
1531
1531
|
custom_redirect_failure_url: string | null;
|
|
1532
|
-
custom_metadata: Record<string, string | boolean>;
|
|
1532
|
+
custom_metadata: Record<string, string | boolean | null>;
|
|
1533
1533
|
automatically_manage_new_devices: boolean;
|
|
1534
1534
|
wait_for_device_creation: boolean;
|
|
1535
1535
|
authorized_at: string | null;
|
|
@@ -1573,7 +1573,7 @@ export interface Routes {
|
|
|
1573
1573
|
status: 'pending' | 'failed' | 'authorized';
|
|
1574
1574
|
custom_redirect_url: string | null;
|
|
1575
1575
|
custom_redirect_failure_url: string | null;
|
|
1576
|
-
custom_metadata: Record<string, string | boolean>;
|
|
1576
|
+
custom_metadata: Record<string, string | boolean | null>;
|
|
1577
1577
|
automatically_manage_new_devices: boolean;
|
|
1578
1578
|
wait_for_device_creation: boolean;
|
|
1579
1579
|
authorized_at: string | null;
|
|
@@ -1588,6 +1588,8 @@ export interface Routes {
|
|
|
1588
1588
|
jsonBody: {};
|
|
1589
1589
|
commonParams: {
|
|
1590
1590
|
user_identifier_key?: string | undefined;
|
|
1591
|
+
/** Returns devices where the webview's custom_metadata contains all of the provided key/value pairs. */
|
|
1592
|
+
custom_metadata_has?: Record<string, string | boolean> | undefined;
|
|
1591
1593
|
};
|
|
1592
1594
|
formData: {};
|
|
1593
1595
|
jsonResponse: {
|
|
@@ -1606,7 +1608,7 @@ export interface Routes {
|
|
|
1606
1608
|
status: 'pending' | 'failed' | 'authorized';
|
|
1607
1609
|
custom_redirect_url: string | null;
|
|
1608
1610
|
custom_redirect_failure_url: string | null;
|
|
1609
|
-
custom_metadata: Record<string, string | boolean>;
|
|
1611
|
+
custom_metadata: Record<string, string | boolean | null>;
|
|
1610
1612
|
automatically_manage_new_devices: boolean;
|
|
1611
1613
|
wait_for_device_creation: boolean;
|
|
1612
1614
|
authorized_at: string | null;
|
|
@@ -1664,7 +1666,7 @@ export interface Routes {
|
|
|
1664
1666
|
account_type_display_name: string;
|
|
1665
1667
|
errors?: any;
|
|
1666
1668
|
warnings?: any;
|
|
1667
|
-
custom_metadata?: Record<string, string | boolean> | undefined;
|
|
1669
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined;
|
|
1668
1670
|
automatically_manage_new_devices: boolean;
|
|
1669
1671
|
};
|
|
1670
1672
|
};
|
|
@@ -1674,7 +1676,10 @@ export interface Routes {
|
|
|
1674
1676
|
method: 'GET' | 'POST';
|
|
1675
1677
|
queryParams: {};
|
|
1676
1678
|
jsonBody: {};
|
|
1677
|
-
commonParams: {
|
|
1679
|
+
commonParams: {
|
|
1680
|
+
/** Returns devices where the account's custom_metadata contains all of the provided key/value pairs. */
|
|
1681
|
+
custom_metadata_has?: Record<string, string | boolean> | undefined;
|
|
1682
|
+
};
|
|
1678
1683
|
formData: {};
|
|
1679
1684
|
jsonResponse: {
|
|
1680
1685
|
connected_accounts: Array<{
|
|
@@ -1691,7 +1696,7 @@ export interface Routes {
|
|
|
1691
1696
|
account_type_display_name: string;
|
|
1692
1697
|
errors?: any;
|
|
1693
1698
|
warnings?: any;
|
|
1694
|
-
custom_metadata?: Record<string, string | boolean> | undefined;
|
|
1699
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined;
|
|
1695
1700
|
automatically_manage_new_devices: boolean;
|
|
1696
1701
|
}>;
|
|
1697
1702
|
};
|
|
@@ -1703,6 +1708,7 @@ export interface Routes {
|
|
|
1703
1708
|
jsonBody: {
|
|
1704
1709
|
connected_account_id: string;
|
|
1705
1710
|
automatically_manage_new_devices?: boolean | undefined;
|
|
1711
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined;
|
|
1706
1712
|
};
|
|
1707
1713
|
commonParams: {};
|
|
1708
1714
|
formData: {};
|
|
@@ -1721,7 +1727,7 @@ export interface Routes {
|
|
|
1721
1727
|
account_type_display_name: string;
|
|
1722
1728
|
errors?: any;
|
|
1723
1729
|
warnings?: any;
|
|
1724
|
-
custom_metadata?: Record<string, string | boolean> | undefined;
|
|
1730
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined;
|
|
1725
1731
|
automatically_manage_new_devices: boolean;
|
|
1726
1732
|
};
|
|
1727
1733
|
};
|
|
@@ -14,7 +14,7 @@ export declare const connect_webview: z.ZodObject<{
|
|
|
14
14
|
status: z.ZodEnum<["pending", "failed", "authorized"]>;
|
|
15
15
|
custom_redirect_url: z.ZodNullable<z.ZodString>;
|
|
16
16
|
custom_redirect_failure_url: z.ZodNullable<z.ZodString>;
|
|
17
|
-
custom_metadata: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, Record<string, string | boolean>, Record<string, string | boolean>>;
|
|
17
|
+
custom_metadata: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean, z.ZodNull]>>, Record<string, string | boolean | null>, Record<string, string | boolean | null>>;
|
|
18
18
|
automatically_manage_new_devices: z.ZodBoolean;
|
|
19
19
|
wait_for_device_creation: z.ZodBoolean;
|
|
20
20
|
authorized_at: z.ZodNullable<z.ZodString>;
|
|
@@ -33,7 +33,7 @@ export declare const connect_webview: z.ZodObject<{
|
|
|
33
33
|
login_successful: boolean;
|
|
34
34
|
custom_redirect_url: string | null;
|
|
35
35
|
custom_redirect_failure_url: string | null;
|
|
36
|
-
custom_metadata: Record<string, string | boolean>;
|
|
36
|
+
custom_metadata: Record<string, string | boolean | null>;
|
|
37
37
|
automatically_manage_new_devices: boolean;
|
|
38
38
|
wait_for_device_creation: boolean;
|
|
39
39
|
authorized_at: string | null;
|
|
@@ -53,7 +53,7 @@ export declare const connect_webview: z.ZodObject<{
|
|
|
53
53
|
login_successful: boolean;
|
|
54
54
|
custom_redirect_url: string | null;
|
|
55
55
|
custom_redirect_failure_url: string | null;
|
|
56
|
-
custom_metadata: Record<string, string | boolean>;
|
|
56
|
+
custom_metadata: Record<string, string | boolean | null>;
|
|
57
57
|
automatically_manage_new_devices: boolean;
|
|
58
58
|
wait_for_device_creation: boolean;
|
|
59
59
|
authorized_at: string | null;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export declare const custom_metadata: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, Record<string, string | boolean>, Record<string, string | boolean>>;
|
|
2
|
+
export declare const custom_metadata: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean, z.ZodNull]>>, Record<string, string | boolean | null>, Record<string, string | boolean | null>>;
|
|
3
3
|
export type CustomMetadata = z.infer<typeof custom_metadata>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export const custom_metadata = z
|
|
3
|
-
.record(z.string().max(40), z.union([z.string().max(500), z.boolean()]))
|
|
3
|
+
.record(z.string().max(40), z.union([z.string().max(500), z.boolean(), z.null()]))
|
|
4
4
|
.refine((val) => Object.keys(val).length <= 50, {
|
|
5
5
|
message: 'Custom metadata is limited to a maximum of 50 keys',
|
|
6
6
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-metadata.js","sourceRoot":"","sources":["../../../../../src/lib/seam/connect/stable/models/custom-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,
|
|
1
|
+
{"version":3,"file":"custom-metadata.js","sourceRoot":"","sources":["../../../../../src/lib/seam/connect/stable/models/custom-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CACL,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAClB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CACtD;KACA,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE;IAC9C,OAAO,EAAE,oDAAoD;CAC9D,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -426,7 +426,12 @@ export default {
|
|
|
426
426
|
created_at: { format: 'date-time', type: 'string' },
|
|
427
427
|
custom_metadata: {
|
|
428
428
|
additionalProperties: {
|
|
429
|
-
|
|
429
|
+
nullable: true,
|
|
430
|
+
oneOf: [
|
|
431
|
+
{ maxLength: 500, type: 'string' },
|
|
432
|
+
{ type: 'boolean' },
|
|
433
|
+
{ format: 'null', nullable: true, type: 'string' },
|
|
434
|
+
],
|
|
430
435
|
},
|
|
431
436
|
type: 'object',
|
|
432
437
|
},
|
|
@@ -482,7 +487,12 @@ export default {
|
|
|
482
487
|
created_at: { format: 'date-time', type: 'string' },
|
|
483
488
|
custom_metadata: {
|
|
484
489
|
additionalProperties: {
|
|
485
|
-
|
|
490
|
+
nullable: true,
|
|
491
|
+
oneOf: [
|
|
492
|
+
{ maxLength: 500, type: 'string' },
|
|
493
|
+
{ type: 'boolean' },
|
|
494
|
+
{ format: 'null', nullable: true, type: 'string' },
|
|
495
|
+
],
|
|
486
496
|
},
|
|
487
497
|
type: 'object',
|
|
488
498
|
},
|
|
@@ -7346,6 +7356,7 @@ export default {
|
|
|
7346
7356
|
'my_2n',
|
|
7347
7357
|
'controlbyweb',
|
|
7348
7358
|
'nest',
|
|
7359
|
+
'google_nest',
|
|
7349
7360
|
'igloohome',
|
|
7350
7361
|
'ecobee',
|
|
7351
7362
|
'hubitat',
|
|
@@ -7367,9 +7378,11 @@ export default {
|
|
|
7367
7378
|
automatically_manage_new_devices: { type: 'boolean' },
|
|
7368
7379
|
custom_metadata: {
|
|
7369
7380
|
additionalProperties: {
|
|
7381
|
+
nullable: true,
|
|
7370
7382
|
oneOf: [
|
|
7371
7383
|
{ maxLength: 500, type: 'string' },
|
|
7372
7384
|
{ type: 'boolean' },
|
|
7385
|
+
{ format: 'null', nullable: true, type: 'string' },
|
|
7373
7386
|
],
|
|
7374
7387
|
},
|
|
7375
7388
|
type: 'object',
|
|
@@ -7523,7 +7536,20 @@ export default {
|
|
|
7523
7536
|
content: {
|
|
7524
7537
|
'application/json': {
|
|
7525
7538
|
schema: {
|
|
7526
|
-
properties: {
|
|
7539
|
+
properties: {
|
|
7540
|
+
custom_metadata_has: {
|
|
7541
|
+
additionalProperties: {
|
|
7542
|
+
oneOf: [
|
|
7543
|
+
{ maxLength: 500, type: 'string' },
|
|
7544
|
+
{ type: 'boolean' },
|
|
7545
|
+
],
|
|
7546
|
+
},
|
|
7547
|
+
description:
|
|
7548
|
+
"Returns devices where the webview's custom_metadata contains all of the provided key/value pairs.",
|
|
7549
|
+
type: 'object',
|
|
7550
|
+
},
|
|
7551
|
+
user_identifier_key: { type: 'string' },
|
|
7552
|
+
},
|
|
7527
7553
|
type: 'object',
|
|
7528
7554
|
},
|
|
7529
7555
|
},
|
|
@@ -7694,41 +7720,30 @@ export default {
|
|
|
7694
7720
|
},
|
|
7695
7721
|
},
|
|
7696
7722
|
'/connected_accounts/list': {
|
|
7697
|
-
|
|
7698
|
-
operationId: '
|
|
7699
|
-
|
|
7700
|
-
|
|
7701
|
-
|
|
7702
|
-
|
|
7703
|
-
|
|
7704
|
-
|
|
7705
|
-
|
|
7706
|
-
|
|
7707
|
-
|
|
7723
|
+
post: {
|
|
7724
|
+
operationId: 'connectedAccountsListPost',
|
|
7725
|
+
requestBody: {
|
|
7726
|
+
content: {
|
|
7727
|
+
'application/json': {
|
|
7728
|
+
schema: {
|
|
7729
|
+
properties: {
|
|
7730
|
+
custom_metadata_has: {
|
|
7731
|
+
additionalProperties: {
|
|
7732
|
+
oneOf: [
|
|
7733
|
+
{ maxLength: 500, type: 'string' },
|
|
7734
|
+
{ type: 'boolean' },
|
|
7735
|
+
],
|
|
7708
7736
|
},
|
|
7709
|
-
|
|
7737
|
+
description:
|
|
7738
|
+
"Returns devices where the account's custom_metadata contains all of the provided key/value pairs.",
|
|
7739
|
+
type: 'object',
|
|
7710
7740
|
},
|
|
7711
|
-
required: ['connected_accounts', 'ok'],
|
|
7712
|
-
type: 'object',
|
|
7713
7741
|
},
|
|
7742
|
+
type: 'object',
|
|
7714
7743
|
},
|
|
7715
7744
|
},
|
|
7716
|
-
description: 'OK',
|
|
7717
7745
|
},
|
|
7718
|
-
400: { description: 'Bad Request' },
|
|
7719
|
-
401: { description: 'Unauthorized' },
|
|
7720
7746
|
},
|
|
7721
|
-
security: [
|
|
7722
|
-
{ access_token: [], seam_workspace: [] },
|
|
7723
|
-
{ seam_client_session_token: [] },
|
|
7724
|
-
{ client_session_token: [] },
|
|
7725
|
-
],
|
|
7726
|
-
summary: '/connected_accounts/list',
|
|
7727
|
-
tags: ['/connected_accounts'],
|
|
7728
|
-
'x-fern-ignore': true,
|
|
7729
|
-
},
|
|
7730
|
-
post: {
|
|
7731
|
-
operationId: 'connectedAccountsListPost',
|
|
7732
7747
|
responses: {
|
|
7733
7748
|
200: {
|
|
7734
7749
|
content: {
|
|
@@ -7773,6 +7788,17 @@ export default {
|
|
|
7773
7788
|
properties: {
|
|
7774
7789
|
automatically_manage_new_devices: { type: 'boolean' },
|
|
7775
7790
|
connected_account_id: { format: 'uuid', type: 'string' },
|
|
7791
|
+
custom_metadata: {
|
|
7792
|
+
additionalProperties: {
|
|
7793
|
+
nullable: true,
|
|
7794
|
+
oneOf: [
|
|
7795
|
+
{ maxLength: 500, type: 'string' },
|
|
7796
|
+
{ type: 'boolean' },
|
|
7797
|
+
{ format: 'null', nullable: true, type: 'string' },
|
|
7798
|
+
],
|
|
7799
|
+
},
|
|
7800
|
+
type: 'object',
|
|
7801
|
+
},
|
|
7776
7802
|
},
|
|
7777
7803
|
required: ['connected_account_id'],
|
|
7778
7804
|
type: 'object',
|
|
@@ -1686,6 +1686,7 @@ export interface Routes {
|
|
|
1686
1686
|
| 'my_2n'
|
|
1687
1687
|
| 'controlbyweb'
|
|
1688
1688
|
| 'nest'
|
|
1689
|
+
| 'google_nest'
|
|
1689
1690
|
| 'igloohome'
|
|
1690
1691
|
| 'ecobee'
|
|
1691
1692
|
| 'hubitat'
|
|
@@ -1704,7 +1705,7 @@ export interface Routes {
|
|
|
1704
1705
|
provider_category?:
|
|
1705
1706
|
| ('stable' | 'consumer_smartlocks' | 'internal_beta')
|
|
1706
1707
|
| undefined
|
|
1707
|
-
custom_metadata?: Record<string, string | boolean> | undefined
|
|
1708
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined
|
|
1708
1709
|
automatically_manage_new_devices?: boolean | undefined
|
|
1709
1710
|
wait_for_device_creation?: boolean | undefined
|
|
1710
1711
|
}
|
|
@@ -1726,7 +1727,7 @@ export interface Routes {
|
|
|
1726
1727
|
status: 'pending' | 'failed' | 'authorized'
|
|
1727
1728
|
custom_redirect_url: string | null
|
|
1728
1729
|
custom_redirect_failure_url: string | null
|
|
1729
|
-
custom_metadata: Record<string, string | boolean>
|
|
1730
|
+
custom_metadata: Record<string, string | boolean | null>
|
|
1730
1731
|
automatically_manage_new_devices: boolean
|
|
1731
1732
|
wait_for_device_creation: boolean
|
|
1732
1733
|
authorized_at: string | null
|
|
@@ -1770,7 +1771,7 @@ export interface Routes {
|
|
|
1770
1771
|
status: 'pending' | 'failed' | 'authorized'
|
|
1771
1772
|
custom_redirect_url: string | null
|
|
1772
1773
|
custom_redirect_failure_url: string | null
|
|
1773
|
-
custom_metadata: Record<string, string | boolean>
|
|
1774
|
+
custom_metadata: Record<string, string | boolean | null>
|
|
1774
1775
|
automatically_manage_new_devices: boolean
|
|
1775
1776
|
wait_for_device_creation: boolean
|
|
1776
1777
|
authorized_at: string | null
|
|
@@ -1785,6 +1786,8 @@ export interface Routes {
|
|
|
1785
1786
|
jsonBody: {}
|
|
1786
1787
|
commonParams: {
|
|
1787
1788
|
user_identifier_key?: string | undefined
|
|
1789
|
+
/** Returns devices where the webview's custom_metadata contains all of the provided key/value pairs. */
|
|
1790
|
+
custom_metadata_has?: Record<string, string | boolean> | undefined
|
|
1788
1791
|
}
|
|
1789
1792
|
formData: {}
|
|
1790
1793
|
jsonResponse: {
|
|
@@ -1803,7 +1806,7 @@ export interface Routes {
|
|
|
1803
1806
|
status: 'pending' | 'failed' | 'authorized'
|
|
1804
1807
|
custom_redirect_url: string | null
|
|
1805
1808
|
custom_redirect_failure_url: string | null
|
|
1806
|
-
custom_metadata: Record<string, string | boolean>
|
|
1809
|
+
custom_metadata: Record<string, string | boolean | null>
|
|
1807
1810
|
automatically_manage_new_devices: boolean
|
|
1808
1811
|
wait_for_device_creation: boolean
|
|
1809
1812
|
authorized_at: string | null
|
|
@@ -1865,7 +1868,7 @@ export interface Routes {
|
|
|
1865
1868
|
account_type_display_name: string
|
|
1866
1869
|
errors?: any
|
|
1867
1870
|
warnings?: any
|
|
1868
|
-
custom_metadata?: Record<string, string | boolean> | undefined
|
|
1871
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined
|
|
1869
1872
|
automatically_manage_new_devices: boolean
|
|
1870
1873
|
}
|
|
1871
1874
|
}
|
|
@@ -1875,7 +1878,10 @@ export interface Routes {
|
|
|
1875
1878
|
method: 'GET' | 'POST'
|
|
1876
1879
|
queryParams: {}
|
|
1877
1880
|
jsonBody: {}
|
|
1878
|
-
commonParams: {
|
|
1881
|
+
commonParams: {
|
|
1882
|
+
/** Returns devices where the account's custom_metadata contains all of the provided key/value pairs. */
|
|
1883
|
+
custom_metadata_has?: Record<string, string | boolean> | undefined
|
|
1884
|
+
}
|
|
1879
1885
|
formData: {}
|
|
1880
1886
|
jsonResponse: {
|
|
1881
1887
|
connected_accounts: Array<{
|
|
@@ -1894,7 +1900,7 @@ export interface Routes {
|
|
|
1894
1900
|
account_type_display_name: string
|
|
1895
1901
|
errors?: any
|
|
1896
1902
|
warnings?: any
|
|
1897
|
-
custom_metadata?: Record<string, string | boolean> | undefined
|
|
1903
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined
|
|
1898
1904
|
automatically_manage_new_devices: boolean
|
|
1899
1905
|
}>
|
|
1900
1906
|
}
|
|
@@ -1906,6 +1912,7 @@ export interface Routes {
|
|
|
1906
1912
|
jsonBody: {
|
|
1907
1913
|
connected_account_id: string
|
|
1908
1914
|
automatically_manage_new_devices?: boolean | undefined
|
|
1915
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined
|
|
1909
1916
|
}
|
|
1910
1917
|
commonParams: {}
|
|
1911
1918
|
formData: {}
|
|
@@ -1926,7 +1933,7 @@ export interface Routes {
|
|
|
1926
1933
|
account_type_display_name: string
|
|
1927
1934
|
errors?: any
|
|
1928
1935
|
warnings?: any
|
|
1929
|
-
custom_metadata?: Record<string, string | boolean> | undefined
|
|
1936
|
+
custom_metadata?: Record<string, string | boolean | null> | undefined
|
|
1930
1937
|
automatically_manage_new_devices: boolean
|
|
1931
1938
|
}
|
|
1932
1939
|
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod'
|
|
2
2
|
|
|
3
3
|
export const custom_metadata = z
|
|
4
|
-
.record(
|
|
4
|
+
.record(
|
|
5
|
+
z.string().max(40),
|
|
6
|
+
z.union([z.string().max(500), z.boolean(), z.null()]),
|
|
7
|
+
)
|
|
5
8
|
.refine((val) => Object.keys(val).length <= 50, {
|
|
6
9
|
message: 'Custom metadata is limited to a maximum of 50 keys',
|
|
7
10
|
})
|