Skip to content

Files

1526 lines (930 loc) · 43.3 KB

modules.md

File metadata and controls

1526 lines (930 loc) · 43.3 KB

seamapi / Exports

seamapi

Table of contents

References

Namespaces

Classes

Interfaces

Type aliases

Variables

Functions

References

default

Renames and re-exports Seam

Type aliases

APIResponse

Ƭ APIResponse<T>: SuccessfulAPIResponse<T> | ErroredAPIResponse

Type parameters

Name
T

Defined in

src/types/globals.ts:16


AccessCode

Ƭ AccessCode: OngoingAccessCode | TimeBoundAccessCode

Defined in

src/types/models.ts:453


AccessCodeConstraint

Ƭ AccessCodeConstraint: SimpleAccessCodeConstraint | { constraint_type: "name_length" ; max_length?: number ; min_length?: number }

Defined in

src/types/models.ts:259


AccessCodeCreateMultipleBaseRequest

Ƭ AccessCodeCreateMultipleBaseRequest: Object

Type declaration

Name Type
behavior_when_code_cannot_be_shared? "throw" | "create_random_code"
device_ids string[]
name? string

Defined in

src/types/route-requests.ts:73


AccessCodeCreateMultipleRequest

Ƭ AccessCodeCreateMultipleRequest: AccessCodeCreateMultipleOngoingRequest | AccessCodeCreateMultipleScheduledRequest

Defined in

src/types/route-requests.ts:88


AccessCodeCreateRequest

Ƭ AccessCodeCreateRequest: AccessCodeCreateOngoingRequest | AccessCodeCreateScheduledRequest

Defined in

src/types/route-requests.ts:69


AccessCodeDeleteRequest

Ƭ AccessCodeDeleteRequest: Object

Type declaration

Name Type
access_code_id string
device_id? string

Defined in

src/types/route-requests.ts:126


AccessCodeGenerateCodeRequest

Ƭ AccessCodeGenerateCodeRequest: Object

Type declaration

Name Type
device_id string

Defined in

src/types/route-requests.ts:115


AccessCodeGenerateCodeResponse

Ƭ AccessCodeGenerateCodeResponse: Object

Type declaration

Name Type
generated_code Object
generated_code.code string
generated_code.device_id string

Defined in

src/types/route-responses.ts:93


AccessCodeGetRequest

Ƭ AccessCodeGetRequest: Object

Type declaration

Name Type
access_code_id? string
code? string
device_id? string

Defined in

src/types/route-requests.ts:131


AccessCodeUpdateOngoingRequest

Ƭ AccessCodeUpdateOngoingRequest: Except<AccessCodeCreateOngoingRequest, "device_id"> & AccessCodeUpdateBaseRequest & { type?: "ongoing" }

Defined in

src/types/route-requests.ts:97


AccessCodeUpdateRequest

Ƭ AccessCodeUpdateRequest: AccessCodeUpdateOngoingRequest | AccessCodeUpdateScheduledRequest

Defined in

src/types/route-requests.ts:111


AccessCodeUpdateScheduledRequest

Ƭ AccessCodeUpdateScheduledRequest: Except<AccessCodeCreateScheduledRequest, "device_id"> & AccessCodeUpdateBaseRequest & { type?: "time_bound" }

Defined in

src/types/route-requests.ts:104


AccessCodesListRequest

Ƭ AccessCodesListRequest: { access_code_ids?: string[] ; device_id: string } | { access_code_ids: string[] }

Defined in

src/types/route-requests.ts:119


ActionAttempt

Ƭ ActionAttempt<T>: PendingActionAttempt<T> | ActionAttemptWithError<T> | SuccessfulActionAttempt<T>

Type parameters

Name Type
T extends ActionType = ActionType

Defined in

src/types/models.ts:387


ActionType

Ƭ ActionType: "LOCK_DOOR" | "UNLOCK_DOOR" | "CREATE_ACCESS_CODE" | "UPDATE_ACCESS_CODE" | "DELETE_ACCESS_CODE"

Defined in

src/types/models.ts:342


AnyDevice

Ƭ AnyDevice: Device<any, DeviceType>

deprecated use CommonDevice instead

Defined in

src/types/models.ts:311


BatteryStatus

Ƭ BatteryStatus: "critical" | "low" | "good" | "full"

Defined in

src/types/models.ts:178


ClientSessionsCreateRequest

Ƭ ClientSessionsCreateRequest: Object

Type declaration

Name Type
connect_webview_ids? string[]
connected_account_ids? string[]
user_identifier_key string

Defined in

src/types/route-requests.ts:246


ClientSessionsCreateResponse

Ƭ ClientSessionsCreateResponse: Object

Type declaration

Name Type
client_session ClientSession

Defined in

src/types/route-responses.ts:161


ClientSessionsDeleteRequest

Ƭ ClientSessionsDeleteRequest: Object

Type declaration

Name Type
client_session_id string

Defined in

src/types/route-requests.ts:258


ClientSessionsGetOrCreateRequest

Ƭ ClientSessionsGetOrCreateRequest: ClientSessionsCreateRequest

Defined in

src/types/route-requests.ts:262


ClientSessionsGetOrCreateResponse

Ƭ ClientSessionsGetOrCreateResponse: ClientSessionsCreateResponse

Defined in

src/types/route-responses.ts:176


ClientSessionsGetRequest

Ƭ ClientSessionsGetRequest: Object

Type declaration

Name Type
client_session_id? string
user_identifier_key? string

Defined in

src/types/route-requests.ts:264


ClientSessionsGetResponse

Ƭ ClientSessionsGetResponse: Object

Type declaration

Name Type
client_session ClientSession

Defined in

src/types/route-responses.ts:165


ClientSessionsListRequest

Ƭ ClientSessionsListRequest: Object

Type declaration

Name Type
client_session_id? string
user_identifier_key? string
without_user_identifier_key? boolean

Defined in

src/types/route-requests.ts:252


ClientSessionsListResponse

Ƭ ClientSessionsListResponse: Object

Type declaration

Name Type
client_sessions Omit<ClientSession, "connected_account_ids" | "connect_webview_ids">[]

Defined in

src/types/route-responses.ts:169


ClientSessionsResponse

Ƭ ClientSessionsResponse: ClientSessionsCreateResponse

deprecated use ClientSessionsCreateResponse instead

Defined in

src/types/route-responses.ts:179


ClimateSetting

Ƭ ClimateSetting: Object

Type declaration

Name Type
automatic_cooling_enabled? boolean
automatic_heating_enabled? boolean
cooling_set_point_celsius? number
cooling_set_point_fahrenheit? number
heating_set_point_celsius? number
heating_set_point_fahrenheit? number
hvac_mode_setting? HvacModeSetting
manual_override_allowed boolean

Defined in

src/types/models.ts:53


ClimateSettingSchedule

Ƭ ClimateSettingSchedule: ClimateSettingScheduleBase & { climate_setting_schedule_id: string ; created_at: string ; is_set_on_device: boolean }

Defined in

src/types/models.ts:552


ClimateSettingScheduleBase

Ƭ ClimateSettingScheduleBase: ClimateSetting & { device_id: string ; name?: string ; schedule_ends_at: string ; schedule_starts_at: string ; schedule_type?: "time_bound" }

Defined in

src/types/models.ts:544


ClimateSettingScheduleCreateRequest

Ƭ ClimateSettingScheduleCreateRequest: ClimateSettingScheduleBase

Defined in

src/types/route-requests.ts:287


ClimateSettingScheduleDeleteRequest

Ƭ ClimateSettingScheduleDeleteRequest: Object

Type declaration

Name Type
climate_setting_schedule_id string

Defined in

src/types/route-requests.ts:294


ClimateSettingScheduleDeleteResponse

Ƭ ClimateSettingScheduleDeleteResponse: void

Defined in

src/types/route-responses.ts:210


ClimateSettingScheduleGetRequest

Ƭ ClimateSettingScheduleGetRequest: Object

Type declaration

Name Type
climate_setting_schedule_id string
device_id? string

Defined in

src/types/route-requests.ts:282


ClimateSettingScheduleUpdateRequest

Ƭ ClimateSettingScheduleUpdateRequest: Partial<ClimateSettingScheduleBase> & { climate_setting_schedule_id: string }

Defined in

src/types/route-requests.ts:289


ClimateSettingSchedulesListRequest

Ƭ ClimateSettingSchedulesListRequest: Object

Type declaration

Name Type
device_id string

Defined in

src/types/route-requests.ts:278


CommonDevice

Ƭ CommonDevice: Device<CommonDeviceProperties, DeviceType>

Defined in

src/types/models.ts:313


CommonDeviceProperties

Ƭ CommonDeviceProperties: Object

Type declaration

Name Type
battery? Object
battery.level number
battery.status BatteryStatus
image_alt_text? string
image_url? string
manufacturer? string
model Object
model.display_name string
model.manufacturer_display_name string
name string
online boolean

Defined in

src/types/models.ts:180


CoolingThermostatProperties

Ƭ CoolingThermostatProperties: BaseThermostatDeviceProperties & CoolingProperties & { is_heating_available: false }

Defined in

src/types/models.ts:101


CustomMetadata

Ƭ CustomMetadata: Record<string, string | number | boolean | null>

Defined in

src/types/globals.ts:18


DeviceDeleteRequest

Ƭ DeviceDeleteRequest: Object

Type declaration

Name Type
device_id string

Defined in

src/types/route-requests.ts:182


DeviceGetRequest

Ƭ DeviceGetRequest: { device_id: string } | { name: string }

Defined in

src/types/route-requests.ts:166


DeviceLocation

Ƭ DeviceLocation: Object

Type declaration

Name Type
location_name? string
timezone? string

Defined in

src/types/models.ts:196


DeviceModelsListRequest

Ƭ DeviceModelsListRequest: Object

Type declaration

Name Type
brand? string
main_category? string
support_level? string
text_search? string

Defined in

src/types/route-requests.ts:269


DeviceModelsListResponse

Ƭ DeviceModelsListResponse: Object

Type declaration

Name Type
device_models DeviceModel[]

Defined in

src/types/route-responses.ts:181


DeviceType

Ƭ DeviceType: LockDeviceType | NoiseSensorDeviceType | ThermostatDeviceType

Defined in

src/types/models.ts:121


DeviceUpdateRequest

Ƭ DeviceUpdateRequest: Object

Type declaration

Name Type
device_id string
is_managed? boolean
location? object
name? string
properties? Partial<CommonDeviceProperties>

Defined in

src/types/route-requests.ts:174


Event

Ƭ Event: Flatten<SeamEvent["event_type"]>

Defined in

src/types/models.ts:508


FanModeSetting

Ƭ FanModeSetting: "on" | "auto"

Defined in

src/types/models.ts:51


HeatCoolThermostatProperties

Ƭ HeatCoolThermostatProperties: BaseThermostatDeviceProperties & CoolingProperties & HeatingProperties & HeatingCoolingDeltaProperties

Defined in

src/types/models.ts:111


HeatingThermostatProperties

Ƭ HeatingThermostatProperties: BaseThermostatDeviceProperties & HeatingProperties & { is_cooling_available: false }

Defined in

src/types/models.ts:106


HvacModeSetting

Ƭ HvacModeSetting: "off" | "heat" | "cool" | "heat_cool"

Defined in

src/types/models.ts:50


LockDevice

Ƭ LockDevice: Device<LockProperties, LockDeviceType>

Defined in

src/types/models.ts:314


LockDeviceType

Ƭ LockDeviceType: typeof LOCK_DEVICE_TYPES[number]

Defined in

src/types/models.ts:38


NoiseDetectionDeviceType

Ƭ NoiseDetectionDeviceType: NoiseSensorDeviceType

deprecated use NoiseSensorDeviceType instead

Defined in

src/types/models.ts:129


NoiseSensorDevice

Ƭ NoiseSensorDevice: Device<NoiseSensorDeviceProperties, NoiseSensorDeviceType>

Defined in

src/types/models.ts:315


NoiseSensorDeviceProperties

Ƭ NoiseSensorDeviceProperties: CommonDeviceProperties

Defined in

src/types/models.ts:45


NoiseSensorDeviceType

Ƭ NoiseSensorDeviceType: typeof NOISE_SENSOR_DEVICE_TYPES[number]

Defined in

src/types/models.ts:44


NoiseThresholds

Ƭ NoiseThresholds: Object

Type declaration

Name Type Description
device_id string -
ends_daily_at string -
name string -
noise_threshold_decibels number -
noise_threshold_id string -
noise_threshold_nrs? number Only present if the noise threshold is from Noiseaware
starts_daily_at string -

Defined in

src/types/models.ts:520


NoiseThresholdsCreateRequest

Ƭ NoiseThresholdsCreateRequest: Object

Type declaration

Name Type Description
device_id string -
ends_daily_at string -
name? string -
noise_threshold_decibels? number -
noise_threshold_nrs? number only available for NoiseAware devices
starts_daily_at string -

Defined in

src/types/route-requests.ts:216


NoiseThresholdsDeleteRequest

Ƭ NoiseThresholdsDeleteRequest: Object

Type declaration

Name Type
device_id string
noise_threshold_id string

Defined in

src/types/route-requests.ts:241


NoiseThresholdsListRequest

Ƭ NoiseThresholdsListRequest: Object

Type declaration

Name Type
device_id string

Defined in

src/types/route-requests.ts:212


NoiseThresholdsListResponse

Ƭ NoiseThresholdsListResponse: Object

Type declaration

Name Type
noise_thresholds NoiseThresholds[]

Defined in

src/types/route-responses.ts:155


NoiseThresholdsUpdateRequest

Ƭ NoiseThresholdsUpdateRequest: Object

Type declaration

Name Type Description
device_id string -
ends_daily_at? string -
name? string -
noise_threshold_decibels? number -
noise_threshold_id string -
noise_threshold_nrs? number only available for NoiseAware devices
starts_daily_at? string -

Defined in

src/types/route-requests.ts:228


Provider

Ƭ Provider: typeof PROVIDERS[number]

Defined in

src/types/models.ts:163


ProviderCategory

Ƭ ProviderCategory: "stable"

This type can allow for other provider categories as they are added

Defined in

src/types/models.ts:166


PullBackupAccessCodeRequest

Ƭ PullBackupAccessCodeRequest: Object

Type declaration

Name Type
access_code_id string

Defined in

src/types/route-requests.ts:162


SeamWebhookEvent

Ƭ SeamWebhookEvent: Distribute<SeamEvent["event_type"]>

Defined in

src/types/webhook-events.ts:9


SuccessfulAPIResponse

Ƭ SuccessfulAPIResponse<T>: T & { ok: true }

Type parameters

Name
T

Defined in

src/types/globals.ts:7


ThermostatDevice

Ƭ ThermostatDevice: Device<ThermostatDeviceProperties, ThermostatDeviceType>

Defined in

src/types/models.ts:319


ThermostatDeviceProperties

Ƭ ThermostatDeviceProperties: CoolingThermostatProperties | HeatingThermostatProperties | HeatCoolThermostatProperties

Defined in

src/types/models.ts:116


ThermostatDeviceType

Ƭ ThermostatDeviceType: typeof THERMOSTAT_DEVICE_TYPES[number]

Defined in

src/types/models.ts:48


ThermostatUpdateRequest

Ƭ ThermostatUpdateRequest: Object

Type declaration

Name Type
default_climate_setting Partial<ClimateSetting>
device_id string
sync? boolean

Defined in

src/types/route-requests.ts:300


UnmanagedAccessCode

Ƭ UnmanagedAccessCode: UnmanagedOngoingAccessCode | UnmanagedTimeBoundAccessCode

Defined in

src/types/models.ts:469


UnmanagedAccessCodeConvertToManagedRequest

Ƭ UnmanagedAccessCodeConvertToManagedRequest: Object

Type declaration

Name Type
access_code_id string
allow_external_modification? boolean

Defined in

src/types/route-requests.ts:157


UnmanagedAccessCodeDeleteRequest

Ƭ UnmanagedAccessCodeDeleteRequest: Object

Type declaration

Name Type
access_code_id string
device_id? string

Defined in

src/types/route-requests.ts:143


UnmanagedAccessCodeGetRequest

Ƭ UnmanagedAccessCodeGetRequest: Object

Type declaration

Name Type
access_code_id? string
code? string
device_id? string

Defined in

src/types/route-requests.ts:137


UnmanagedAccessCodeUpdateRequest

Ƭ UnmanagedAccessCodeUpdateRequest: Object

Type declaration

Name Type
access_code_id string
is_managed true

Defined in

src/types/route-requests.ts:152


UnmanagedAccessCodesListRequest

Ƭ UnmanagedAccessCodesListRequest: Object

Type declaration

Name Type
device_id string

Defined in

src/types/route-requests.ts:148


UnmanagedDevice

Ƭ UnmanagedDevice: Pick<Device<CommonDeviceProperties>, "device_id" | "device_type" | "capabilities_supported" | "connected_account_id" | "workspace_id" | "errors" | "warnings" | "created_at"> & { is_managed: false ; properties: UnmanagedDeviceProperties }

Defined in

src/types/models.ts:222


UnmanagedDeviceUpdateRequest

Ƭ UnmanagedDeviceUpdateRequest: Object

Type declaration

Name Type
device_id string
is_managed? boolean

Defined in

src/types/route-requests.ts:194


WebhookCreateRequest

Ƭ WebhookCreateRequest: Object

Type declaration

Name Type
url string

Defined in

src/types/route-requests.ts:190


WebhookGetRequest

Ƭ WebhookGetRequest: Object

Type declaration

Name Type
webhook_id string

Defined in

src/types/route-requests.ts:186

Variables

LOCK_DEVICE_TYPES

Const LOCK_DEVICE_TYPES: string[]

Defined in

src/types/models.ts:11


NOISE_DETECTION_DEVICE_TYPES

Const NOISE_DETECTION_DEVICE_TYPES: string[] = NOISE_SENSOR_DEVICE_TYPES

deprecated use NOISE_SENSOR_DEVICE_TYPES instead

Defined in

src/types/models.ts:127


NOISE_SENSOR_DEVICE_TYPES

Const NOISE_SENSOR_DEVICE_TYPES: string[]

Defined in

src/types/models.ts:40


PROVIDERS

Const PROVIDERS: string[]

Defined in

src/types/models.ts:131


THERMOSTAT_DEVICE_TYPES

Const THERMOSTAT_DEVICE_TYPES: string[]

Defined in

src/types/models.ts:47

Functions

getSeamClientOptionsWithDefaults

getSeamClientOptionsWithDefaults(apiKeyOrOptions?): SeamClientOptions

Parameters

Name Type
apiKeyOrOptions? string | SeamClientOptions

Returns

SeamClientOptions

Defined in

src/seam-connect/client.ts:38


getSeamOSClientOptionsWithDefaults

getSeamOSClientOptionsWithDefaults(apiKeyOrOptions?): SeamOSClientOptions

Parameters

Name Type
apiKeyOrOptions? string | SeamOSClientOptions

Returns

SeamOSClientOptions

Defined in

src/seam-os/client.ts:24


isLockDevice

isLockDevice(device): device is LockDevice

Parameters

Name Type
device LockDevice | CommonDevice

Returns

device is LockDevice

Defined in

src/types/models.ts:324


isNoiseSensorDevice

isNoiseSensorDevice(device): device is NoiseSensorDevice

Parameters

Name Type
device CommonDevice | NoiseSensorDevice

Returns

device is NoiseSensorDevice

Defined in

src/types/models.ts:330


isThermostatDevice

isThermostatDevice(device): device is ThermostatDevice

Parameters

Name Type
device CommonDevice | ThermostatDevice

Returns

device is ThermostatDevice

Defined in

src/types/models.ts:336