- access_codes
- access_passes
- axios
- buildings
- device_groups
- devices
- events
- health
- incidents
- linked_accounts
- locks
- login_portals
- organizations
- user_groups
- users
• new SeamOS(apiKeyOrOptions?)
| Name | Type |
|---|---|
apiKeyOrOptions? |
string | SeamOSClientOptions |
• Readonly access_codes: Object
| Name | Type |
|---|---|
create |
(data: undefined | { code?: string ; device_id: string ; ends_at?: string | Date ; name?: string ; starts_at?: string | Date }) => Promise<{ access_code_id: string ; code: null | string ; created_at: string | Date ; ends_at: null ; is_managed: boolean ; starts_at: null ; status: "setting" | "set" | "unset" | "removing" ; type: "ongoing" } | { access_code_id: string ; code: null | string ; created_at: string | Date ; ends_at: string ; is_managed: boolean ; starts_at: string ; status: "setting" | "set" | "unset" | "removing" ; type: "time_bound" }> |
delete |
(data: undefined | { access_code_id: string }) => Promise<{}> |
get |
(data: undefined | { access_code_id: string }) => Promise<{ access_code_id: string ; code: null | string ; created_at: string | Date ; ends_at: null ; is_managed: boolean ; starts_at: null ; status: "setting" | "set" | "unset" | "removing" ; type: "ongoing" } | { access_code_id: string ; code: null | string ; created_at: string | Date ; ends_at: string ; is_managed: boolean ; starts_at: string ; status: "setting" | "set" | "unset" | "removing" ; type: "time_bound" }> |
list |
(data: undefined | { building_id?: string ; device_id?: string }) => Promise<({ access_code_id: string ; code: null | string ; created_at: string | Date ; ends_at: null ; is_managed: boolean ; starts_at: null ; status: "setting" | "set" | "unset" | "removing" ; type: "ongoing" } | { access_code_id: string ; code: null | string ; created_at: string | Date ; ends_at: string ; is_managed: boolean ; starts_at: string ; status: "setting" | "set" | "unset" | "removing" ; type: "time_bound" })[]> |
update |
(data: undefined | { access_code_id: string ; code?: string ; device_id?: string ; ends_at?: string | Date ; name?: string ; starts_at?: string | Date }) => Promise<{}> |
• Readonly access_passes: Object
| Name | Type |
|---|---|
create |
(data: undefined | { building_id?: string ; building_ids?: string[] ; can_use_access_code?: boolean ; can_use_remote_unlock?: boolean ; device_group_id?: string ; devices?: { can_use_access_code?: boolean ; can_use_remote_unlock?: boolean ; device_id: string }[] ; ends_at?: string | Date ; grant_mixed_building_device_access?: boolean ; name: string ; starts_at?: string | Date }) => Promise<{ access_pass_id: string ; access_pass_name: string ; created_at: string | Date ; device_count: number ; does_not_end: boolean ; ends_at: null | string | Date ; last_used_at: null | string | Date ; organization_id: string ; starts_at: string | Date ; url: string }> |
delete |
(data: undefined | { access_pass_id: string }) => Promise<{}> |
get |
(data: undefined | { access_pass_id: string }) => Promise<{ access_pass_id: string ; access_pass_name: string ; created_at: string | Date ; device_count: number ; does_not_end: boolean ; ends_at: null | string | Date ; last_used_at: null | string | Date ; organization_id: string ; starts_at: string | Date ; url: string }> |
get_count_summary |
(data: undefined | { access_pass_id: string ; end?: string | Date ; start: string | Date }) => Promise<{ total_uses: number ; uses_in_period: number }> |
list |
(data: undefined | { building_id?: string ; device_id?: string ; query?: string }) => Promise<{ access_pass_id: string ; access_pass_name: string ; created_at: string | Date ; device_count: number ; does_not_end: boolean ; ends_at: null | string | Date ; last_used_at: null | string | Date ; organization_id: string ; starts_at: string | Date ; url: string }[]> |
list_accessible_devices |
(data: undefined | { access_pass_id: string }) => Promise<{ access_code_id: null | string ; can_use_access_code: boolean ; can_use_remote_unlock: boolean ; code: null | string ; device_id: string }[]> |
• axios: AxiosInstance
• Readonly buildings: Object
| Name | Type |
|---|---|
add_device |
(data: undefined | { building_id: string ; device_id: string }) => Promise<{}> |
add_user |
(data: undefined | RouteRequestBody<"/buildings/add_user">) => Promise<{}> |
create |
(data: undefined | { ext_google_place_id: string ; image_url?: string ; name: string ; timezone: string }) => Promise<{ building_id: string ; created_at: string | Date ; image_url: null | string ; location: { addr1: string ; addr2: null | string ; city: string ; country: string ; ext_google_place_id: null | string ; full_address_string: string ; latitude: number ; longitude: number ; state: string ; zip_code: string } ; name: string ; organization_id: string ; timezone: string }> |
delete |
(data: undefined | { building_id: string }) => Promise<{}> |
get |
(data: undefined | { building_id: string }) => Promise<{ building_id: string ; created_at: string | Date ; image_url: null | string ; location: { addr1: string ; addr2: null | string ; city: string ; country: string ; ext_google_place_id: null | string ; full_address_string: string ; latitude: number ; longitude: number ; state: string ; zip_code: string } ; name: string ; organization_id: string ; timezone: string }> |
get_count_summary |
(data: undefined | { building_id?: string ; end?: string | Date ; start?: string | Date }) => Promise<{ active_access_passes: number ; device_incidents: number ; devices: number ; incidents: number ; low_battery_incidents: number ; offline_account_incidents: number }> |
list |
(data: undefined | { query?: string }) => Promise<{ building_id: string ; created_at: string | Date ; image_url: null | string ; location: { addr1: string ; addr2: null | string ; city: string ; country: string ; ext_google_place_id: null | string ; full_address_string: string ; latitude: number ; longitude: number ; state: string ; zip_code: string } ; name: string ; organization_id: string ; timezone: string }[]> |
list_count_summaries |
(data: undefined | { building_ids: string[] }) => Promise<{ active_access_passes: number ; devices: number ; incidents: number }[]> |
remove_user |
(data: undefined | { building_id: string ; user_id: string }) => Promise<{}> |
update |
(data: undefined | { building_id: string ; ext_google_place_id?: string ; image_url?: string ; name?: string ; timezone?: string }) => Promise<{}> |
update_user_role |
(data: undefined | { building_id: string ; building_roles: ("building:manager" | "building:operator")[] ; user_id: string }) => Promise<{}> |
• Readonly device_groups: Object
| Name | Type |
|---|---|
create |
(data: undefined | { device_ids?: string[] ; name: string }) => Promise<{ created_at: string | Date ; device_group_id: string ; device_ids: string[] ; name: string ; organization_id: string }> |
delete |
(data: undefined | { device_group_id: string }) => Promise<{}> |
get |
(data: undefined | { device_group_id: string }) => Promise<{ created_at: string | Date ; device_group_id: string ; device_ids: string[] ; name: string ; organization_id: string }> |
list |
(data: undefined | {}) => Promise<{ created_at: string | Date ; device_group_id: string ; device_ids: string[] ; name: string ; organization_id: string }[]> |
update |
(data: undefined | { device_group_id: string ; device_ids?: string[] ; name?: string }) => Promise<{}> |
• Readonly devices: Object
| Name | Type |
|---|---|
delete |
(data: undefined | { device_id: string }) => Promise<{}> |
get |
(data: undefined | { building_id?: string ; device_id?: string ; device_name?: string }) => Promise<{ building_id: null | string ; created_at: string ; device_id: string ; device_type: string ; errors: unknown[] ; linked_account_id: string ; name: string ; properties: { [x: string]: unknown; } ; warnings: unknown[] }> |
get_count_summary |
(data: undefined | { device_id: string }) => Promise<{ active_access_passes: number }> |
list |
(data: undefined | { building_id?: string ; device_ids?: string[] ; has_no_building?: boolean ; linked_account_id?: string ; query?: string ; user_group_id?: string ; user_id?: string }) => Promise<{ building_id: null | string ; created_at: string ; device_id: string ; device_type: string ; errors: unknown[] ; linked_account_id: string ; name: string ; properties: { [x: string]: unknown; } ; warnings: unknown[] }[]> |
list_counts |
(data: undefined | { building_id?: string ; linked_account_id?: string ; organization_id?: string ; queries: string[] }) => Promise<{ count: number ; query: string }[]> |
update |
(data: undefined | RouteRequestBody<"/devices/update">) => Promise<{}> |
• Readonly events: Object
| Name | Type |
|---|---|
list |
(data: undefined | { access_pass_id?: string ; between?: (string | Date)[] ; building_id?: string ; device_id?: string ; query?: string }) => Promise<({ event_id: string ; event_type: "linked_account.connected" ; linked_account_id: string ; occurred_at: string | Date ; organization_id: string } | { event_id: string ; event_type: "linked_account.completed_first_sync" ; linked_account_id: string ; occurred_at: string | Date ; organization_id: string } | { device_id: string ; event_id: string ; event_type: "device.connected" ; occurred_at: string | Date ; organization_id: string } | { building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.disconnected" ; occurred_at: string | Date ; organization_id: string } | { building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.tampered" ; occurred_at: string | Date ; organization_id: string } | { access_pass_id: string ; building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.unlocked" ; method: "access_pass" ; occurred_at: string | Date ; organization_id: string ; user_id: null | string } | { building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.unlocked" ; method: "manual" ; occurred_at: string | Date ; organization_id: string ; user_id: string } | { building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.unlocked" ; method: "keycode" | "unknown" ; occurred_at: string | Date ; organization_id: string } | { access_pass_id: string ; building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.locked" ; method: "access_pass" ; occurred_at: string | Date ; organization_id: string ; user_id: null | string } | { building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.locked" ; method: "manual" ; occurred_at: string | Date ; organization_id: string ; user_id: string } | { building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.locked" ; method: "keycode" | "unknown" ; occurred_at: string | Date ; organization_id: string } | { battery_level: number ; building_id: null | string ; device_id: string ; event_id: string ; event_type: "device.low_battery" ; occurred_at: string | Date ; organization_id: string } | { access_pass_id: string ; building_id: null | string ; event_id: string ; event_type: "access_pass.used" ; occurred_at: string | Date ; organization_id: string ; user_id: null | string } | { access_code_id: string ; device_id: string ; event_id: string ; event_type: "access_code.created" ; occurred_at: string | Date ; organization_id: string } | { access_code_id: string ; device_id: string ; event_id: string ; event_type: "access_code.deleted" ; occurred_at: string | Date ; organization_id: string })[]> |
• health: (data: undefined | {}) => Promise<{}>
▸ (data): Promise<{}>
| Name | Type |
|---|---|
data |
undefined | {} |
Promise<{}>
• Readonly incidents: Object
| Name | Type |
|---|---|
list |
(data: undefined | { access_code_id?: string ; access_pass_id?: string ; between?: (string | Date)[] ; building_id?: string ; device_id?: string ; device_ids?: string[] ; is_resolved?: boolean ; linked_account_id?: string ; query?: string }) => Promise<{ access_code_id: null | string ; access_pass_id: null | string ; building_id: null | string ; created_at: string | Date ; device_id: null | string ; ended_at: null | string | Date ; incident_id: string ; incident_type: string ; is_resolved: boolean ; linked_account_id: null | string ; organization_id: string ; started_at: string | Date }[]> |
• Readonly linked_accounts: Object
| Name | Type |
|---|---|
get |
(data: undefined | { linked_account_id: string }) => Promise<{ account_type: string ; created_at: string | Date ; device_count: number ; did_complete_first_sync: boolean ; errors: { error_code: string ; message: string }[] ; ext_seam_connected_account_id: string ; linked_account_id: string ; organization_id: string ; user_identifier?: any ; warnings: { message: string ; warning_code: string }[] }> |
list |
(data: undefined | { query?: string ; since?: string | Date }) => Promise<{ account_type: string ; created_at: string | Date ; device_count: number ; did_complete_first_sync: boolean ; errors: { error_code: string ; message: string }[] ; ext_seam_connected_account_id: string ; linked_account_id: string ; organization_id: string ; user_identifier?: any ; warnings: { message: string ; warning_code: string }[] }[]> |
• Readonly locks: Object
| Name | Type |
|---|---|
lock |
(data: undefined | { access_pass_id?: string ; device_id: string }) => Promise<{}> |
unlock |
(data: undefined | { access_pass_id?: string ; device_id: string }) => Promise<{}> |
• Readonly login_portals: Object
| Name | Type |
|---|---|
create |
(data: undefined | { accepted_providers?: string[] ; custom_redirect_url?: string ; device_selection_mode?: "none" | "single" | "multiple" }) => Promise<{ created_at: string | Date ; linked_account_id: null | string ; login_portal_id: string ; login_successful: boolean ; organization_id: string ; status: "pending" | "authorized" ; view_url: string }> |
delete |
(data: undefined | { login_portal_id: string }) => Promise<{}> |
get |
(data: undefined | { login_portal_id: string }) => Promise<{ created_at: string | Date ; linked_account_id: null | string ; login_portal_id: string ; login_successful: boolean ; organization_id: string ; status: "pending" | "authorized" ; view_url: string }> |
• Readonly organizations: Object
| Name | Type |
|---|---|
create |
(data: undefined | { is_sandbox?: boolean ; name: string }) => Promise<{ created_at: string | Date ; created_by: null | string ; name: string ; organization_id: string }> |
get |
(data: undefined | { organization_id: string }) => Promise<{ created_at: string | Date ; created_by: null | string ; name: string ; organization_id: string }> |
get_count_summary |
(data: undefined | { between: (string | Date)[] ; organization_id: string }) => Promise<{ incidents_in_period: number ; total_active_access_passes: number ; total_admins: number ; total_buildings: number ; total_devices: number ; total_linked_accounts: number ; total_members: number ; total_online_devices: number ; total_super_admins: number }> |
invite_user |
(data: undefined | RouteRequestBody<"/organizations/invite_user">) => Promise<{}> |
list |
(data: undefined | { query?: string }) => Promise<{ created_at: string | Date ; created_by: null | string ; name: string ; organization_id: string }[]> |
pending_users |
Object |
pending_users.delete |
(data: undefined | { organization_invitation_id: string }) => Promise<{}> |
pending_users.list |
(data: undefined | {}) => Promise<{ created_at: string | Date ; email: null | string ; organization_id: string ; organization_invitation_id: string ; role: "org:superadmin" | "org:admin" | "org:member" ; status: "pending" | "accepted" | "declined" ; user_id: null | string }[]> |
pending_users.resend_invitation |
(data: undefined | { organization_invitation_id: string }) => Promise<{}> |
pending_users.update |
(data: undefined | { organization_invitation_id: string ; role: "org:superadmin" | "org:admin" | "org:member" }) => Promise<{}> |
remove_user |
(data: undefined | { user_id: string }) => Promise<{}> |
update |
(data: undefined | { ext_seam_connect_api_key?: string ; name?: string }) => Promise<{}> |
update_user_role |
(data: undefined | { can_view_all_buildings?: boolean ; organization_roles?: ("org:superadmin" | "org:admin" | "org:member")[] ; user_id: string }) => Promise<{}> |
• Readonly user_groups: Object
| Name | Type |
|---|---|
add_user |
(data: undefined | { user_group_id: string ; user_id: string }) => Promise<{}> |
create |
(data: undefined | { name: string }) => Promise<{ created_at: string | Date ; name: string ; organization_id: string ; user_group_id: string }> |
delete |
(data: undefined | { user_group_id: string }) => Promise<{}> |
get |
(data: undefined | { user_group_id: string }) => Promise<{ created_at: string | Date ; name: string ; organization_id: string ; user_group_id: string }> |
list |
(data: undefined | {}) => Promise<{ created_at: string | Date ; name: string ; organization_id: string ; user_group_id: string }[]> |
remove_user |
(data: undefined | { user_group_id: string ; user_id: string }) => Promise<{}> |
update |
(data: undefined | { name?: string ; user_group_id: string }) => Promise<{}> |
• Readonly users: Object
| Name | Type |
|---|---|
delete |
(data: undefined | { user_id: string }) => Promise<{}> |
get |
(data: undefined | { user_id: string }) => Promise<{ created_at: string | Date ; email: null | string ; first_name: null | string ; last_name: null | string ; organization_id?: string ; user_id: string }> |
get_building_roles |
(data: undefined | { user_id: string }) => Promise<{ building_id: string ; building_name: string ; building_roles: ("building:manager" | "building:operator")[] ; created_at: string }[]> |
list |
(data: undefined | { building_id?: string ; user_group_id?: string ; user_id?: string }) => Promise<{ created_at: string | Date ; email: null | string ; first_name: null | string ; last_name: null | string ; organization_id?: string ; user_id: string }[]> |
list_organization_roles |
(data: undefined | { user_ids?: string[] }) => Promise<{ can_view_all_buildings: boolean ; organization_roles: ("org:superadmin" | "org:admin" | "org:member")[] ; user_id: string }[]> |
update |
(data: undefined | { first_name?: string ; last_name?: string ; user_id?: string }) => Promise<{}> |
▸ Private _curriedGet<URL>(url): (data: undefined | RouteRequestBody<URL>) => Promise<Routes[URL]["jsonResponse"]>
| Name | Type |
|---|---|
URL |
extends keyof Routes |
| Name | Type |
|---|---|
url |
URL |
fn
▸ (data): Promise<Routes[URL]["jsonResponse"]>
| Name | Type |
|---|---|
data |
undefined | RouteRequestBody<URL> |
Promise<Routes[URL]["jsonResponse"]>
▸ Private _curriedPost<URL>(url): (data: undefined | RouteRequestBody<URL>) => Promise<Routes[URL]["jsonResponse"]>
| Name | Type |
|---|---|
URL |
extends keyof Routes |
| Name | Type |
|---|---|
url |
URL |
fn
▸ (data): Promise<Routes[URL]["jsonResponse"]>
| Name | Type |
|---|---|
data |
undefined | RouteRequestBody<URL> |
Promise<Routes[URL]["jsonResponse"]>
▸ Private _getGrab<URL, InnerObject>(url, innerObject): (data: undefined | RouteRequestBody<URL>) => Promise<Routes[URL]["jsonResponse"][InnerObject]>
| Name | Type |
|---|---|
URL |
extends keyof Routes |
InnerObject |
extends string | number | symbol |
| Name | Type |
|---|---|
url |
URL |
innerObject |
InnerObject |
fn
▸ (data): Promise<Routes[URL]["jsonResponse"][InnerObject]>
| Name | Type |
|---|---|
data |
undefined | RouteRequestBody<URL> |
Promise<Routes[URL]["jsonResponse"][InnerObject]>
▸ Private _postGrab<URL, InnerObject>(url, innerObject): (data: undefined | RouteRequestBody<URL>) => Promise<Routes[URL]["jsonResponse"][InnerObject]>
| Name | Type |
|---|---|
URL |
extends keyof Routes |
InnerObject |
extends string | number | symbol |
| Name | Type |
|---|---|
url |
URL |
innerObject |
InnerObject |
fn
▸ (data): Promise<Routes[URL]["jsonResponse"][InnerObject]>
| Name | Type |
|---|---|
data |
undefined | RouteRequestBody<URL> |
Promise<Routes[URL]["jsonResponse"][InnerObject]>
▸ get<URL>(url, config?): Promise<Routes[URL]["jsonResponse"]>
| Name | Type |
|---|---|
URL |
extends keyof Routes |
| Name | Type |
|---|---|
url |
URL |
config? |
ExtendedAxiosRequestConfig<URL, "GET"> |
Promise<Routes[URL]["jsonResponse"]>
▸ makeRequest<URL, Method>(request): Promise<Routes[URL]["jsonResponse"]>
| Name | Type |
|---|---|
URL |
extends keyof Routes |
Method |
extends "POST" | "DELETE" | "GET" | "PATCH" |
| Name | Type |
|---|---|
request |
ExtendedAxiosRequestConfig<URL, Method> |
Promise<Routes[URL]["jsonResponse"]>
▸ post<URL>(url, data, config?): Promise<Routes[URL]["jsonResponse"]>
| Name | Type |
|---|---|
URL |
extends keyof Routes |
| Name | Type |
|---|---|
url |
URL |
data |
undefined | RouteRequestBody<URL> |
config? |
ExtendedAxiosRequestConfig<URL, "POST"> |
Promise<Routes[URL]["jsonResponse"]>