SeamOS is a single unified interface that works with any smart lock or access system to unlock doors, issue virtual keys and monitor access across thousands of buildings.
SeamOS is a single unified dashboard for managing all your devices across buildings. An out-of-the-box solution, simply connect your access system accounts to Seam and manage everything in one place. Issue and revoke virtual keys, review audit logs, revamp legacy hardware, integrate with your favorite systems, and more.
Without SeamOS Each building has a different set of access systems and smart locks, requiring separate logins and switching between accounts.
With SeamOS smart locks and access systems are controlled in one place. Easily navigate between buildings, unlock doors, create virtual keys, and review logs.
Use SeamOS to issue virtual access, monitor devices, and audit entry logs.
SeamOS is completely hardware agnostic. Connect any smart lock or access system brand and start managing all your devices in one place. Use the Seam Gateway to bridge offline systems like DoorKing, Linear, and RBH.
Stop providing permanent codes or forcing visitors to download apps. SeamOS provides a simple way to share access to your buildings. It does not require any app download and can be automatically expired based on the schedule you set.
Monitor for problematic devices across your entire fleet. Get timely notification of incidents (low battery, door ajar, and more), audit entry logs, and troubleshoot devices all in one place.
Automate workflows for tenant, short-term rental, and property management software apps. Sync systems so that new tenants or temporary guests receive unique access passes on time and are revoked access at the end of their stay. No more manual work, physical programming of locks, or errors for a new stay.
SeamOS is built on top of the Seam API. This lets you control devices both via SeamOS and the Seam API to customize device workflows.
1import Seam from "seamapi"
2
3// Automatically uses SEAM_API_KEY env var
4const seam = new Seam()
5
6// Create an Access Pass for a Building
7const myLock = await seam.accessPasses.create({
8 device_ids: [
9 "8e44f059-7dea-4948-a5fe-50866ea00725",
10 "6e64a3d8-f473-47af-b07b-c2d11bcac87c",
11 ],
12 name: "Visitor 123",
13 starts_at: "2022-12-01T22:00:00+0000",
14 ends_at: "2022-12-02T12:00:00+0000",
15})
16
1import Seam from "seamapi"
2
3// Automatically uses SEAM_API_KEY env var
4const seam = new Seam()
5
6// Create an Access Pass for a Building
7const myLock = await seam.accessPasses.create({
8 device_ids: [
9 "8e44f059-7dea-4948-a5fe-50866ea00725",
10 "6e64a3d8-f473-47af-b07b-c2d11bcac87c",
11 ],
12 name: "Visitor 123",
13 starts_at: "2022-12-01T22:00:00+0000",
14 ends_at: "2022-12-02T12:00:00+0000",
15})
16