@seamapi/types 1.1085.0 → 1.1087.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/lib/seam/connect/model-types.d.ts +1 -1
- package/lib/seam/connect/models/events/devices.d.ts +12 -6
- package/lib/seam/connect/models/events/devices.js +7 -3
- package/lib/seam/connect/models/events/devices.js.map +1 -1
- package/lib/seam/connect/models/events/seam-event.d.ts +6 -3
- package/lib/seam/connect/models/index.d.ts +1 -0
- package/lib/seam/connect/models/index.js +1 -0
- package/lib/seam/connect/models/index.js.map +1 -1
- package/lib/seam/connect/models/instant-keys/instant-key-preview.d.ts +6 -6
- package/lib/seam/connect/models/media/index.d.ts +1 -0
- package/lib/seam/connect/models/media/index.js +2 -0
- package/lib/seam/connect/models/media/index.js.map +1 -0
- package/lib/seam/connect/models/media/media.d.ts +36 -0
- package/lib/seam/connect/models/media/media.js +44 -0
- package/lib/seam/connect/models/media/media.js.map +1 -0
- package/lib/seam/connect/openapi.js +186 -4
- package/lib/seam/connect/openapi.js.map +1 -1
- package/lib/seam/connect/route-types.d.ts +67 -10
- package/lib/seam/connect/schemas.d.ts +1 -1
- package/lib/seam/connect/schemas.js +1 -1
- package/lib/seam/connect/schemas.js.map +1 -1
- package/package.json +1 -1
- package/src/lib/seam/connect/internal/schemas.ts +1 -0
- package/src/lib/seam/connect/model-types.ts +1 -0
- package/src/lib/seam/connect/models/events/devices.ts +9 -3
- package/src/lib/seam/connect/models/index.ts +1 -0
- package/src/lib/seam/connect/models/media/index.ts +1 -0
- package/src/lib/seam/connect/models/media/media.ts +55 -0
- package/src/lib/seam/connect/openapi.ts +194 -4
- package/src/lib/seam/connect/route-types.ts +71 -17
- package/src/lib/seam/connect/schemas.ts +1 -0
|
@@ -51999,8 +51999,8 @@ export type Routes = {
|
|
|
51999
51999
|
image_url?: string | undefined;
|
|
52000
52000
|
/** URL to a short video clip captured at the time of activation. */
|
|
52001
52001
|
video_url?: string | undefined;
|
|
52002
|
-
/**
|
|
52003
|
-
|
|
52002
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured for this activation. Use `/media/get` to retrieve each one. */
|
|
52003
|
+
media_ids?: string[] | undefined;
|
|
52004
52004
|
} | {
|
|
52005
52005
|
/** ID of the event. */
|
|
52006
52006
|
event_id: string;
|
|
@@ -52031,6 +52031,8 @@ export type Routes = {
|
|
|
52031
52031
|
image_url?: string | undefined;
|
|
52032
52032
|
/** URL to a short video clip captured at the time the doorbell was pressed. */
|
|
52033
52033
|
video_url?: string | undefined;
|
|
52034
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured when the doorbell was pressed. Use `/media/get` to retrieve each one. */
|
|
52035
|
+
media_ids?: string[] | undefined;
|
|
52034
52036
|
} | {
|
|
52035
52037
|
/** ID of the event. */
|
|
52036
52038
|
event_id: string;
|
|
@@ -55632,8 +55634,8 @@ export type Routes = {
|
|
|
55632
55634
|
image_url?: string | undefined;
|
|
55633
55635
|
/** URL to a short video clip captured at the time of activation. */
|
|
55634
55636
|
video_url?: string | undefined;
|
|
55635
|
-
/**
|
|
55636
|
-
|
|
55637
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured for this activation. Use `/media/get` to retrieve each one. */
|
|
55638
|
+
media_ids?: string[] | undefined;
|
|
55637
55639
|
} | {
|
|
55638
55640
|
/** ID of the event. */
|
|
55639
55641
|
event_id: string;
|
|
@@ -55664,6 +55666,8 @@ export type Routes = {
|
|
|
55664
55666
|
image_url?: string | undefined;
|
|
55665
55667
|
/** URL to a short video clip captured at the time the doorbell was pressed. */
|
|
55666
55668
|
video_url?: string | undefined;
|
|
55669
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured when the doorbell was pressed. Use `/media/get` to retrieve each one. */
|
|
55670
|
+
media_ids?: string[] | undefined;
|
|
55667
55671
|
} | {
|
|
55668
55672
|
/** ID of the event. */
|
|
55669
55673
|
event_id: string;
|
|
@@ -71276,6 +71280,45 @@ export type Routes = {
|
|
|
71276
71280
|
};
|
|
71277
71281
|
maxDuration: undefined;
|
|
71278
71282
|
};
|
|
71283
|
+
'/media/get': {
|
|
71284
|
+
route: '/media/get';
|
|
71285
|
+
method: 'GET' | 'POST';
|
|
71286
|
+
queryParams: {};
|
|
71287
|
+
jsonBody: {};
|
|
71288
|
+
commonParams: {
|
|
71289
|
+
/** ID of the media that you want to get. */
|
|
71290
|
+
media_id: string;
|
|
71291
|
+
/** Response format. `json` returns the media object. `redirect` responds with a `302` redirect to the media's download URL, so you can use this endpoint directly as the source of an image or video. */
|
|
71292
|
+
format?: 'json' | 'redirect';
|
|
71293
|
+
};
|
|
71294
|
+
formData: {};
|
|
71295
|
+
jsonResponse: {
|
|
71296
|
+
/** Represents a piece of media, such as a video clip or a thumbnail image, that a device captured for an event. Media is in beta. */
|
|
71297
|
+
media: {
|
|
71298
|
+
/** ID of the media. */
|
|
71299
|
+
media_id: string;
|
|
71300
|
+
/** ID of the workspace that contains the media. */
|
|
71301
|
+
workspace_id: string;
|
|
71302
|
+
/** ID of the device that captured the media. */
|
|
71303
|
+
device_id: string | null;
|
|
71304
|
+
/** ID of the event that the media belongs to. */
|
|
71305
|
+
event_id: string | null;
|
|
71306
|
+
/** Type of the media: a video clip or a still image. */
|
|
71307
|
+
media_type: 'video' | 'image';
|
|
71308
|
+
/** MIME type of the media, such as `video/mp4` or `image/jpeg`. */
|
|
71309
|
+
content_type: string | null;
|
|
71310
|
+
/** Status of the media. `pending` means that Seam is still retrieving the media. `available` means that `url` can be used to download it. `unavailable` means that no media exists for the event, and `failed` means that Seam could not retrieve it. */
|
|
71311
|
+
status: 'pending' | 'available' | 'unavailable' | 'failed';
|
|
71312
|
+
/** Short-lived URL from which you can download the media. Null unless `status` is `available`. The URL expires after about five minutes. Call `/media/get` again for a new URL. */
|
|
71313
|
+
url: string | null;
|
|
71314
|
+
/** Date and time at which the media stops being available. Null when Seam does not know when the media expires. */
|
|
71315
|
+
expires_at: string | null;
|
|
71316
|
+
/** Date and time at which the media was created. */
|
|
71317
|
+
created_at: string;
|
|
71318
|
+
};
|
|
71319
|
+
};
|
|
71320
|
+
maxDuration: undefined;
|
|
71321
|
+
};
|
|
71279
71322
|
'/noise_sensors/list': {
|
|
71280
71323
|
route: '/noise_sensors/list';
|
|
71281
71324
|
method: 'GET' | 'POST';
|
|
@@ -83805,6 +83848,8 @@ export type Routes = {
|
|
|
83805
83848
|
instant_key_max_use_count?: number | undefined;
|
|
83806
83849
|
prefer_guest_phone_last4_as_code?: boolean | undefined;
|
|
83807
83850
|
allow_shared_email_and_phone_across_user_identities?: boolean | undefined;
|
|
83851
|
+
access_starts_minutes_before_reservation?: number | undefined;
|
|
83852
|
+
access_ends_minutes_after_reservation?: number | undefined;
|
|
83808
83853
|
};
|
|
83809
83854
|
} | undefined;
|
|
83810
83855
|
reservation_time_updated?: {
|
|
@@ -83888,6 +83933,8 @@ export type Routes = {
|
|
|
83888
83933
|
instant_key_max_use_count?: number | undefined;
|
|
83889
83934
|
prefer_guest_phone_last4_as_code?: boolean | undefined;
|
|
83890
83935
|
allow_shared_email_and_phone_across_user_identities?: boolean | undefined;
|
|
83936
|
+
access_starts_minutes_before_reservation?: number | undefined;
|
|
83937
|
+
access_ends_minutes_after_reservation?: number | undefined;
|
|
83891
83938
|
};
|
|
83892
83939
|
} | null) | undefined;
|
|
83893
83940
|
reservation_time_updated?: ({
|
|
@@ -84298,6 +84345,8 @@ export type Routes = {
|
|
|
84298
84345
|
instant_key_max_use_count?: number | undefined;
|
|
84299
84346
|
prefer_guest_phone_last4_as_code?: boolean | undefined;
|
|
84300
84347
|
allow_shared_email_and_phone_across_user_identities?: boolean | undefined;
|
|
84348
|
+
access_starts_minutes_before_reservation?: number | undefined;
|
|
84349
|
+
access_ends_minutes_after_reservation?: number | undefined;
|
|
84301
84350
|
};
|
|
84302
84351
|
} | undefined;
|
|
84303
84352
|
reservation_time_updated?: {
|
|
@@ -84380,6 +84429,8 @@ export type Routes = {
|
|
|
84380
84429
|
instant_key_max_use_count?: number | undefined;
|
|
84381
84430
|
prefer_guest_phone_last4_as_code?: boolean | undefined;
|
|
84382
84431
|
allow_shared_email_and_phone_across_user_identities?: boolean | undefined;
|
|
84432
|
+
access_starts_minutes_before_reservation?: number | undefined;
|
|
84433
|
+
access_ends_minutes_after_reservation?: number | undefined;
|
|
84383
84434
|
};
|
|
84384
84435
|
} | null) | undefined;
|
|
84385
84436
|
reservation_time_updated?: ({
|
|
@@ -88008,8 +88059,8 @@ export type Routes = {
|
|
|
88008
88059
|
image_url?: string | undefined;
|
|
88009
88060
|
/** URL to a short video clip captured at the time of activation. */
|
|
88010
88061
|
video_url?: string | undefined;
|
|
88011
|
-
/**
|
|
88012
|
-
|
|
88062
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured for this activation. Use `/media/get` to retrieve each one. */
|
|
88063
|
+
media_ids?: string[] | undefined;
|
|
88013
88064
|
} | {
|
|
88014
88065
|
/** ID of the event. */
|
|
88015
88066
|
event_id: string;
|
|
@@ -88040,6 +88091,8 @@ export type Routes = {
|
|
|
88040
88091
|
image_url?: string | undefined;
|
|
88041
88092
|
/** URL to a short video clip captured at the time the doorbell was pressed. */
|
|
88042
88093
|
video_url?: string | undefined;
|
|
88094
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured when the doorbell was pressed. Use `/media/get` to retrieve each one. */
|
|
88095
|
+
media_ids?: string[] | undefined;
|
|
88043
88096
|
} | {
|
|
88044
88097
|
/** ID of the event. */
|
|
88045
88098
|
event_id: string;
|
|
@@ -93661,8 +93714,8 @@ export type Routes = {
|
|
|
93661
93714
|
image_url?: string | undefined;
|
|
93662
93715
|
/** URL to a short video clip captured at the time of activation. */
|
|
93663
93716
|
video_url?: string | undefined;
|
|
93664
|
-
/**
|
|
93665
|
-
|
|
93717
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured for this activation. Use `/media/get` to retrieve each one. */
|
|
93718
|
+
media_ids?: string[] | undefined;
|
|
93666
93719
|
} | {
|
|
93667
93720
|
/** ID of the event. */
|
|
93668
93721
|
event_id: string;
|
|
@@ -93693,6 +93746,8 @@ export type Routes = {
|
|
|
93693
93746
|
image_url?: string | undefined;
|
|
93694
93747
|
/** URL to a short video clip captured at the time the doorbell was pressed. */
|
|
93695
93748
|
video_url?: string | undefined;
|
|
93749
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured when the doorbell was pressed. Use `/media/get` to retrieve each one. */
|
|
93750
|
+
media_ids?: string[] | undefined;
|
|
93696
93751
|
} | {
|
|
93697
93752
|
/** ID of the event. */
|
|
93698
93753
|
event_id: string;
|
|
@@ -134320,8 +134375,8 @@ export type Routes = {
|
|
|
134320
134375
|
image_url?: string | undefined;
|
|
134321
134376
|
/** URL to a short video clip captured at the time of activation. */
|
|
134322
134377
|
video_url?: string | undefined;
|
|
134323
|
-
/**
|
|
134324
|
-
|
|
134378
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured for this activation. Use `/media/get` to retrieve each one. */
|
|
134379
|
+
media_ids?: string[] | undefined;
|
|
134325
134380
|
} | {
|
|
134326
134381
|
/** ID of the event. */
|
|
134327
134382
|
event_id: string;
|
|
@@ -134352,6 +134407,8 @@ export type Routes = {
|
|
|
134352
134407
|
image_url?: string | undefined;
|
|
134353
134408
|
/** URL to a short video clip captured at the time the doorbell was pressed. */
|
|
134354
134409
|
video_url?: string | undefined;
|
|
134410
|
+
/** IDs of the media, such as a video clip and a thumbnail image, captured when the doorbell was pressed. Use `/media/get` to retrieve each one. */
|
|
134411
|
+
media_ids?: string[] | undefined;
|
|
134355
134412
|
} | {
|
|
134356
134413
|
/** ID of the event. */
|
|
134357
134414
|
event_id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { access_code, acs_access_group, acs_credential, acs_encoder, acs_entrance, acs_system, acs_user, action_attempt, batch, bridge, bridge_client_session, camera_live_view_answer, camera_live_view_session, client_session, common_failed_action_attempt, common_pending_action_attempt, common_succeeded_action_attempt, connect_webview, connected_account, custom_metadata, customer_portal, customization_profile, device, device_provider, instant_key, magic_link, noise_threshold, pagination, seam_event, staff_member_resource, thermostat_daily_program, thermostat_schedule, thermostat_weekly_program, unmanaged_access_code, unmanaged_acs_access_group, unmanaged_acs_credential, unmanaged_acs_user, unmanaged_device, user_identity, webhook, workspace, } from './models/index.js';
|
|
1
|
+
export { access_code, acs_access_group, acs_credential, acs_encoder, acs_entrance, acs_system, acs_user, action_attempt, batch, bridge, bridge_client_session, camera_live_view_answer, camera_live_view_session, client_session, common_failed_action_attempt, common_pending_action_attempt, common_succeeded_action_attempt, connect_webview, connected_account, custom_metadata, customer_portal, customization_profile, device, device_provider, instant_key, magic_link, media, noise_threshold, pagination, seam_event, staff_member_resource, thermostat_daily_program, thermostat_schedule, thermostat_weekly_program, unmanaged_access_code, unmanaged_acs_access_group, unmanaged_acs_credential, unmanaged_acs_user, unmanaged_device, user_identity, webhook, workspace, } from './models/index.js';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { access_code, acs_access_group, acs_credential, acs_encoder, acs_entrance, acs_system, acs_user, action_attempt, batch, bridge, bridge_client_session, camera_live_view_answer, camera_live_view_session, client_session, common_failed_action_attempt, common_pending_action_attempt, common_succeeded_action_attempt, connect_webview, connected_account, custom_metadata, customer_portal, customization_profile, device, device_provider, instant_key, magic_link, noise_threshold, pagination, seam_event, staff_member_resource, thermostat_daily_program, thermostat_schedule, thermostat_weekly_program, unmanaged_access_code, unmanaged_acs_access_group, unmanaged_acs_credential, unmanaged_acs_user, unmanaged_device, user_identity, webhook, workspace, } from './models/index.js';
|
|
1
|
+
export { access_code, acs_access_group, acs_credential, acs_encoder, acs_entrance, acs_system, acs_user, action_attempt, batch, bridge, bridge_client_session, camera_live_view_answer, camera_live_view_session, client_session, common_failed_action_attempt, common_pending_action_attempt, common_succeeded_action_attempt, connect_webview, connected_account, custom_metadata, customer_portal, customization_profile, device, device_provider, instant_key, magic_link, media, noise_threshold, pagination, seam_event, staff_member_resource, thermostat_daily_program, thermostat_schedule, thermostat_weekly_program, unmanaged_access_code, unmanaged_acs_access_group, unmanaged_acs_credential, unmanaged_acs_user, unmanaged_device, user_identity, webhook, workspace, } from './models/index.js';
|
|
2
2
|
//# sourceMappingURL=schemas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../src/lib/seam/connect/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,cAAc,EACd,KAAK,EACL,MAAM,EACN,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,cAAc,EACd,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,MAAM,EACN,eAAe,EACf,WAAW,EACX,UAAU,EACV,eAAe,EACf,UAAU,EACV,UAAU,EACV,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,SAAS,GACV,MAAM,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../src/lib/seam/connect/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,cAAc,EACd,KAAK,EACL,MAAM,EACN,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,cAAc,EACd,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,MAAM,EACN,eAAe,EACf,WAAW,EACX,UAAU,EACV,KAAK,EACL,eAAe,EACf,UAAU,EACV,UAAU,EACV,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,SAAS,GACV,MAAM,mBAAmB,CAAA"}
|
package/package.json
CHANGED
|
@@ -852,11 +852,11 @@ export const camera_activated_event = device_event.extend({
|
|
|
852
852
|
.url()
|
|
853
853
|
.optional()
|
|
854
854
|
.describe('URL to a short video clip captured at the time of activation.'),
|
|
855
|
-
|
|
856
|
-
.
|
|
855
|
+
media_ids: z
|
|
856
|
+
.array(z.string().uuid())
|
|
857
857
|
.optional()
|
|
858
858
|
.describe(
|
|
859
|
-
'
|
|
859
|
+
'IDs of the media, such as a video clip and a thumbnail image, captured for this activation. Use `/media/get` to retrieve each one.',
|
|
860
860
|
),
|
|
861
861
|
}).describe(`
|
|
862
862
|
---
|
|
@@ -883,6 +883,12 @@ export const device_doorbell_rang_event = device_event.extend({
|
|
|
883
883
|
.describe(
|
|
884
884
|
'URL to a short video clip captured at the time the doorbell was pressed.',
|
|
885
885
|
),
|
|
886
|
+
media_ids: z
|
|
887
|
+
.array(z.string().uuid())
|
|
888
|
+
.optional()
|
|
889
|
+
.describe(
|
|
890
|
+
'IDs of the media, such as a video clip and a thumbnail image, captured when the doorbell was pressed. Use `/media/get` to retrieve each one.',
|
|
891
|
+
),
|
|
886
892
|
}).describe(`
|
|
887
893
|
---
|
|
888
894
|
route_path: /devices
|
|
@@ -20,6 +20,7 @@ export * from './datetime.js'
|
|
|
20
20
|
export * from './devices/index.js'
|
|
21
21
|
export * from './events/index.js'
|
|
22
22
|
export * from './instant-keys/index.js'
|
|
23
|
+
export * from './media/index.js'
|
|
23
24
|
export * from './noise-sensors/index.js'
|
|
24
25
|
export * from './pagination.js'
|
|
25
26
|
export * from './partner/index.js'
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './media.js'
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import * as z from 'zod/v3'
|
|
2
|
+
|
|
3
|
+
import { datetime } from '../datetime.js'
|
|
4
|
+
|
|
5
|
+
export const media = z.object({
|
|
6
|
+
media_id: z.string().uuid().describe('ID of the media.'),
|
|
7
|
+
workspace_id: z
|
|
8
|
+
.string()
|
|
9
|
+
.uuid()
|
|
10
|
+
.describe('ID of the workspace that contains the media.'),
|
|
11
|
+
device_id: z
|
|
12
|
+
.string()
|
|
13
|
+
.uuid()
|
|
14
|
+
.nullable()
|
|
15
|
+
.describe('ID of the device that captured the media.'),
|
|
16
|
+
event_id: z
|
|
17
|
+
.string()
|
|
18
|
+
.uuid()
|
|
19
|
+
.nullable()
|
|
20
|
+
.describe('ID of the event that the media belongs to.'),
|
|
21
|
+
media_type: z
|
|
22
|
+
.enum(['video', 'image'])
|
|
23
|
+
.describe('Type of the media: a video clip or a still image.'),
|
|
24
|
+
content_type: z
|
|
25
|
+
.string()
|
|
26
|
+
.nullable()
|
|
27
|
+
.describe('MIME type of the media, such as `video/mp4` or `image/jpeg`.'),
|
|
28
|
+
status: z
|
|
29
|
+
.enum(['pending', 'available', 'unavailable', 'failed'])
|
|
30
|
+
.describe(
|
|
31
|
+
'Status of the media. `pending` means that Seam is still retrieving the media. `available` means that `url` can be used to download it. `unavailable` means that no media exists for the event, and `failed` means that Seam could not retrieve it.',
|
|
32
|
+
),
|
|
33
|
+
url: z
|
|
34
|
+
.string()
|
|
35
|
+
.url()
|
|
36
|
+
.nullable()
|
|
37
|
+
.describe(
|
|
38
|
+
'Short-lived URL from which you can download the media. Null unless `status` is `available`. The URL expires after about five minutes. Call `/media/get` again for a new URL.',
|
|
39
|
+
),
|
|
40
|
+
expires_at: datetime
|
|
41
|
+
.nullable()
|
|
42
|
+
.describe(
|
|
43
|
+
'Date and time at which the media stops being available. Null when Seam does not know when the media expires.',
|
|
44
|
+
),
|
|
45
|
+
created_at: datetime.describe(
|
|
46
|
+
'Date and time at which the media was created.',
|
|
47
|
+
),
|
|
48
|
+
}).describe(`
|
|
49
|
+
---
|
|
50
|
+
route_path: /media
|
|
51
|
+
---
|
|
52
|
+
Represents a piece of media, such as a video clip or a thumbnail image, that a device captured for an event. Media is in beta.
|
|
53
|
+
`)
|
|
54
|
+
|
|
55
|
+
export type Media = z.infer<typeof media>
|
|
@@ -29172,11 +29172,11 @@ const openapi: OpenAPISpec = {
|
|
|
29172
29172
|
format: 'uri',
|
|
29173
29173
|
type: 'string',
|
|
29174
29174
|
},
|
|
29175
|
-
|
|
29175
|
+
media_ids: {
|
|
29176
29176
|
description:
|
|
29177
|
-
'
|
|
29178
|
-
|
|
29179
|
-
type: '
|
|
29177
|
+
'IDs of the media, such as a video clip and a thumbnail image, captured for this activation. Use `/media/get` to retrieve each one.',
|
|
29178
|
+
items: { format: 'uuid', type: 'string' },
|
|
29179
|
+
type: 'array',
|
|
29180
29180
|
},
|
|
29181
29181
|
motion_sub_type: {
|
|
29182
29182
|
description: 'Sub-type of motion detected, if available.',
|
|
@@ -29270,6 +29270,12 @@ const openapi: OpenAPISpec = {
|
|
|
29270
29270
|
format: 'uri',
|
|
29271
29271
|
type: 'string',
|
|
29272
29272
|
},
|
|
29273
|
+
media_ids: {
|
|
29274
|
+
description:
|
|
29275
|
+
'IDs of the media, such as a video clip and a thumbnail image, captured when the doorbell was pressed. Use `/media/get` to retrieve each one.',
|
|
29276
|
+
items: { format: 'uuid', type: 'string' },
|
|
29277
|
+
type: 'array',
|
|
29278
|
+
},
|
|
29273
29279
|
occurred_at: {
|
|
29274
29280
|
description: 'Date and time at which the event occurred.',
|
|
29275
29281
|
format: 'date-time',
|
|
@@ -29732,6 +29738,84 @@ const openapi: OpenAPISpec = {
|
|
|
29732
29738
|
'x-route-path': '/unstable_partner/building_blocks',
|
|
29733
29739
|
'x-undocumented': 'Unreleased.',
|
|
29734
29740
|
},
|
|
29741
|
+
media: {
|
|
29742
|
+
description:
|
|
29743
|
+
'Represents a piece of media, such as a video clip or a thumbnail image, that a device captured for an event. Media is in beta.',
|
|
29744
|
+
properties: {
|
|
29745
|
+
content_type: {
|
|
29746
|
+
description:
|
|
29747
|
+
'MIME type of the media, such as `video/mp4` or `image/jpeg`.',
|
|
29748
|
+
nullable: true,
|
|
29749
|
+
type: 'string',
|
|
29750
|
+
},
|
|
29751
|
+
created_at: {
|
|
29752
|
+
description: 'Date and time at which the media was created.',
|
|
29753
|
+
format: 'date-time',
|
|
29754
|
+
type: 'string',
|
|
29755
|
+
},
|
|
29756
|
+
device_id: {
|
|
29757
|
+
description: 'ID of the device that captured the media.',
|
|
29758
|
+
format: 'uuid',
|
|
29759
|
+
nullable: true,
|
|
29760
|
+
type: 'string',
|
|
29761
|
+
},
|
|
29762
|
+
event_id: {
|
|
29763
|
+
description: 'ID of the event that the media belongs to.',
|
|
29764
|
+
format: 'uuid',
|
|
29765
|
+
nullable: true,
|
|
29766
|
+
type: 'string',
|
|
29767
|
+
},
|
|
29768
|
+
expires_at: {
|
|
29769
|
+
description:
|
|
29770
|
+
'Date and time at which the media stops being available. Null when Seam does not know when the media expires.',
|
|
29771
|
+
format: 'date-time',
|
|
29772
|
+
nullable: true,
|
|
29773
|
+
type: 'string',
|
|
29774
|
+
},
|
|
29775
|
+
media_id: {
|
|
29776
|
+
description: 'ID of the media.',
|
|
29777
|
+
format: 'uuid',
|
|
29778
|
+
type: 'string',
|
|
29779
|
+
},
|
|
29780
|
+
media_type: {
|
|
29781
|
+
description: 'Type of the media: a video clip or a still image.',
|
|
29782
|
+
enum: ['video', 'image'],
|
|
29783
|
+
type: 'string',
|
|
29784
|
+
},
|
|
29785
|
+
status: {
|
|
29786
|
+
description:
|
|
29787
|
+
'Status of the media. `pending` means that Seam is still retrieving the media. `available` means that `url` can be used to download it. `unavailable` means that no media exists for the event, and `failed` means that Seam could not retrieve it.',
|
|
29788
|
+
enum: ['pending', 'available', 'unavailable', 'failed'],
|
|
29789
|
+
type: 'string',
|
|
29790
|
+
},
|
|
29791
|
+
url: {
|
|
29792
|
+
description:
|
|
29793
|
+
'Short-lived URL from which you can download the media. Null unless `status` is `available`. The URL expires after about five minutes. Call `/media/get` again for a new URL.',
|
|
29794
|
+
format: 'uri',
|
|
29795
|
+
nullable: true,
|
|
29796
|
+
type: 'string',
|
|
29797
|
+
},
|
|
29798
|
+
workspace_id: {
|
|
29799
|
+
description: 'ID of the workspace that contains the media.',
|
|
29800
|
+
format: 'uuid',
|
|
29801
|
+
type: 'string',
|
|
29802
|
+
},
|
|
29803
|
+
},
|
|
29804
|
+
required: [
|
|
29805
|
+
'media_id',
|
|
29806
|
+
'workspace_id',
|
|
29807
|
+
'device_id',
|
|
29808
|
+
'event_id',
|
|
29809
|
+
'media_type',
|
|
29810
|
+
'content_type',
|
|
29811
|
+
'status',
|
|
29812
|
+
'url',
|
|
29813
|
+
'expires_at',
|
|
29814
|
+
'created_at',
|
|
29815
|
+
],
|
|
29816
|
+
type: 'object',
|
|
29817
|
+
'x-route-path': '/media',
|
|
29818
|
+
},
|
|
29735
29819
|
noise_threshold: {
|
|
29736
29820
|
description:
|
|
29737
29821
|
'Represents a [noise threshold](https://www.seam.co/docs/capability-guides/noise-sensors/configure-noise-threshold-settings) for a [noise sensor](https://www.seam.co/docs/capability-guides/noise-sensors). Thresholds represent the limits of noise tolerated at a property, which can be customized for each hour of the day. Each device has its own default thresholds, but you can use the Seam API to modify them.',
|
|
@@ -55215,6 +55299,72 @@ const openapi: OpenAPISpec = {
|
|
|
55215
55299
|
'x-title': 'Unlock a Lock',
|
|
55216
55300
|
},
|
|
55217
55301
|
},
|
|
55302
|
+
'/media/get': {
|
|
55303
|
+
get: {
|
|
55304
|
+
description:
|
|
55305
|
+
'Returns a specified piece of media, such as a video clip or thumbnail image captured for a camera event, with a short-lived URL from which you can download it. Camera events list their media in `media_ids`. This endpoint is in beta.',
|
|
55306
|
+
operationId: 'mediaGetGet',
|
|
55307
|
+
parameters: [
|
|
55308
|
+
{
|
|
55309
|
+
in: 'query',
|
|
55310
|
+
name: 'media_id',
|
|
55311
|
+
required: true,
|
|
55312
|
+
schema: {
|
|
55313
|
+
description: 'ID of the media that you want to get.',
|
|
55314
|
+
format: 'uuid',
|
|
55315
|
+
type: 'string',
|
|
55316
|
+
},
|
|
55317
|
+
},
|
|
55318
|
+
{
|
|
55319
|
+
in: 'query',
|
|
55320
|
+
name: 'format',
|
|
55321
|
+
required: false,
|
|
55322
|
+
schema: {
|
|
55323
|
+
default: 'json',
|
|
55324
|
+
description:
|
|
55325
|
+
"Response format. `json` returns the media object. `redirect` responds with a `302` redirect to the media's download URL, so you can use this endpoint directly as the source of an image or video.",
|
|
55326
|
+
enum: ['json', 'redirect'],
|
|
55327
|
+
type: 'string',
|
|
55328
|
+
},
|
|
55329
|
+
},
|
|
55330
|
+
],
|
|
55331
|
+
responses: {
|
|
55332
|
+
'200': {
|
|
55333
|
+
content: {
|
|
55334
|
+
'application/json': {
|
|
55335
|
+
schema: {
|
|
55336
|
+
properties: {
|
|
55337
|
+
media: { $ref: '#/components/schemas/media' },
|
|
55338
|
+
ok: { type: 'boolean' },
|
|
55339
|
+
},
|
|
55340
|
+
required: ['media', 'ok'],
|
|
55341
|
+
type: 'object',
|
|
55342
|
+
},
|
|
55343
|
+
},
|
|
55344
|
+
},
|
|
55345
|
+
description: 'OK',
|
|
55346
|
+
},
|
|
55347
|
+
'400': { description: 'Bad Request' },
|
|
55348
|
+
'401': { description: 'Unauthorized' },
|
|
55349
|
+
},
|
|
55350
|
+
security: [
|
|
55351
|
+
{ api_key: [] },
|
|
55352
|
+
{ pat_with_workspace: [] },
|
|
55353
|
+
{ console_session_with_workspace: [] },
|
|
55354
|
+
{ client_session: [] },
|
|
55355
|
+
{ client_session_with_customer: [] },
|
|
55356
|
+
{ client_session_with_customer_ro: [] },
|
|
55357
|
+
{ support_read_only_token: [] },
|
|
55358
|
+
],
|
|
55359
|
+
summary: '/media/get',
|
|
55360
|
+
tags: [],
|
|
55361
|
+
'x-fern-sdk-group-name': ['media'],
|
|
55362
|
+
'x-fern-sdk-method-name': 'get',
|
|
55363
|
+
'x-fern-sdk-return-value': 'media',
|
|
55364
|
+
'x-response-key': 'media',
|
|
55365
|
+
'x-title': 'Get Media',
|
|
55366
|
+
},
|
|
55367
|
+
},
|
|
55218
55368
|
'/noise_sensors/list': {
|
|
55219
55369
|
get: {
|
|
55220
55370
|
description:
|
|
@@ -59497,6 +59647,11 @@ const openapi: OpenAPISpec = {
|
|
|
59497
59647
|
properties: {
|
|
59498
59648
|
config: {
|
|
59499
59649
|
properties: {
|
|
59650
|
+
access_ends_minutes_after_reservation: {
|
|
59651
|
+
maximum: 1440,
|
|
59652
|
+
minimum: 0,
|
|
59653
|
+
type: 'integer',
|
|
59654
|
+
},
|
|
59500
59655
|
access_methods: {
|
|
59501
59656
|
items: {
|
|
59502
59657
|
enum: ['card', 'mobile_key', 'code'],
|
|
@@ -59505,6 +59660,11 @@ const openapi: OpenAPISpec = {
|
|
|
59505
59660
|
minItems: 1,
|
|
59506
59661
|
type: 'array',
|
|
59507
59662
|
},
|
|
59663
|
+
access_starts_minutes_before_reservation: {
|
|
59664
|
+
maximum: 1440,
|
|
59665
|
+
minimum: 0,
|
|
59666
|
+
type: 'integer',
|
|
59667
|
+
},
|
|
59508
59668
|
allow_shared_email_and_phone_across_user_identities:
|
|
59509
59669
|
{ type: 'boolean' },
|
|
59510
59670
|
card_count_on_reservation_create: {
|
|
@@ -59783,6 +59943,11 @@ const openapi: OpenAPISpec = {
|
|
|
59783
59943
|
properties: {
|
|
59784
59944
|
config: {
|
|
59785
59945
|
properties: {
|
|
59946
|
+
access_ends_minutes_after_reservation: {
|
|
59947
|
+
maximum: 1440,
|
|
59948
|
+
minimum: 0,
|
|
59949
|
+
type: 'integer',
|
|
59950
|
+
},
|
|
59786
59951
|
access_methods: {
|
|
59787
59952
|
items: {
|
|
59788
59953
|
enum: ['card', 'mobile_key', 'code'],
|
|
@@ -59791,6 +59956,11 @@ const openapi: OpenAPISpec = {
|
|
|
59791
59956
|
minItems: 1,
|
|
59792
59957
|
type: 'array',
|
|
59793
59958
|
},
|
|
59959
|
+
access_starts_minutes_before_reservation: {
|
|
59960
|
+
maximum: 1440,
|
|
59961
|
+
minimum: 0,
|
|
59962
|
+
type: 'integer',
|
|
59963
|
+
},
|
|
59794
59964
|
allow_shared_email_and_phone_across_user_identities:
|
|
59795
59965
|
{ type: 'boolean' },
|
|
59796
59966
|
card_count_on_reservation_create: {
|
|
@@ -61090,6 +61260,11 @@ const openapi: OpenAPISpec = {
|
|
|
61090
61260
|
properties: {
|
|
61091
61261
|
config: {
|
|
61092
61262
|
properties: {
|
|
61263
|
+
access_ends_minutes_after_reservation: {
|
|
61264
|
+
maximum: 1440,
|
|
61265
|
+
minimum: 0,
|
|
61266
|
+
type: 'integer',
|
|
61267
|
+
},
|
|
61093
61268
|
access_methods: {
|
|
61094
61269
|
items: {
|
|
61095
61270
|
enum: ['card', 'mobile_key', 'code'],
|
|
@@ -61098,6 +61273,11 @@ const openapi: OpenAPISpec = {
|
|
|
61098
61273
|
minItems: 1,
|
|
61099
61274
|
type: 'array',
|
|
61100
61275
|
},
|
|
61276
|
+
access_starts_minutes_before_reservation: {
|
|
61277
|
+
maximum: 1440,
|
|
61278
|
+
minimum: 0,
|
|
61279
|
+
type: 'integer',
|
|
61280
|
+
},
|
|
61101
61281
|
allow_shared_email_and_phone_across_user_identities:
|
|
61102
61282
|
{ type: 'boolean' },
|
|
61103
61283
|
card_count_on_reservation_create: {
|
|
@@ -61393,6 +61573,11 @@ const openapi: OpenAPISpec = {
|
|
|
61393
61573
|
properties: {
|
|
61394
61574
|
config: {
|
|
61395
61575
|
properties: {
|
|
61576
|
+
access_ends_minutes_after_reservation: {
|
|
61577
|
+
maximum: 1440,
|
|
61578
|
+
minimum: 0,
|
|
61579
|
+
type: 'integer',
|
|
61580
|
+
},
|
|
61396
61581
|
access_methods: {
|
|
61397
61582
|
items: {
|
|
61398
61583
|
enum: ['card', 'mobile_key', 'code'],
|
|
@@ -61401,6 +61586,11 @@ const openapi: OpenAPISpec = {
|
|
|
61401
61586
|
minItems: 1,
|
|
61402
61587
|
type: 'array',
|
|
61403
61588
|
},
|
|
61589
|
+
access_starts_minutes_before_reservation: {
|
|
61590
|
+
maximum: 1440,
|
|
61591
|
+
minimum: 0,
|
|
61592
|
+
type: 'integer',
|
|
61593
|
+
},
|
|
61404
61594
|
allow_shared_email_and_phone_across_user_identities:
|
|
61405
61595
|
{ type: 'boolean' },
|
|
61406
61596
|
card_count_on_reservation_create: {
|