Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2,381 changes: 1,675 additions & 706 deletions docs/api/_blueprint.json

Large diffs are not rendered by default.

240 changes: 37 additions & 203 deletions docs/api/_report.md

Large diffs are not rendered by default.

13 changes: 12 additions & 1 deletion docs/api/access_codes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Represents a smart lock [access code](https://docs.seam.co/latest/capability-gui

An access code is a code used for a keypad or pinpad device. Unlike physical keys, which can easily be lost or duplicated, PIN codes can be customized, tracked, and altered on the fly. Using the Seam Access Code API, you can easily generate access codes on the hundreds of door lock models with which we integrate.

Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). To differentiate between the two, refer to the `type` property of the access code. Ongoing codes display as `ongoing`, whereas time-bound codes are labeled `time_bound`.
Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). To differentiate between the two, refer to the `type` property of the access code. Ongoing codes display as `ongoing`, whereas time-bound codes are labeled `time_bound`. An ongoing access code is active, until it has been removed from the device. To specify an ongoing access code, leave both `starts_at` and `ends_at` empty. A time-bound access code will be programmed at the `starts_at` time and removed at the `ends_at` time.

In addition, for certain devices, Seam also supports [offline access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#offline-access-codes). Offline access (PIN) codes are designed for door locks that might not always maintain an internet connection. For this type of access code, the device manufacturer uses encryption keys (tokens) to create server-based registries of algorithmically-generated offline PIN codes. Because the tokens remain synchronized with the managed devices, the locks do not require an active internet connection—and you do not need to be near the locks—to create an offline access code. Then, owners or managers can share these offline codes with users through a variety of mechanisms, such as messaging applications. That is, lock users do not need to install a smartphone application to receive an offline access code.

Expand Down Expand Up @@ -1771,6 +1771,12 @@ Indicates whether the access code is waiting for a code assignment.
**`name`** *String*

Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.

Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as `first_name` and `last_name`.

To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints.

To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called `appearance`. This is an object with a `name` property and, optionally, `first_name` and `last_name` properties (for providers that break down a name into components).



Expand Down Expand Up @@ -3258,6 +3264,11 @@ Creates new [access codes](https://docs.seam.co/latest/capability-guides/smart-l
Deletes an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).


[**`/access_codes/generate_code`**](./generate_code.md)

Generates a code for an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes), given a device ID.


[**`/access_codes/get`**](./get.md)

Returns a specified [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).
Expand Down
10 changes: 8 additions & 2 deletions docs/api/access_codes/create.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ To learn more, see [Authentication](https://docs.seam.co/latest/api/authenticati

**`device_id`** (Required)

ID of the device for which to create the new access code.
ID of the device for which you want to create the new access code.

---

Expand Down Expand Up @@ -88,7 +88,13 @@ Maximum rounding adjustment. To create a daily-bound [offline access code](https

**`name`**

Name of the new access code.
Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.

Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as `first_name` and `last_name`.

To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints.

To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called `appearance`. This is an object with a `name` property and, optionally, `first_name` and `last_name` properties (for providers that break down a name into components).

---

Expand Down
10 changes: 8 additions & 2 deletions docs/api/access_codes/create_multiple.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ To learn more, see [Authentication](https://docs.seam.co/latest/api/authenticati

**`device_ids`** *of UUIDs* (Required)

IDs of the devices for which to create the new access codes.
IDs of the devices for which you want to create the new access codes.

---

Expand Down Expand Up @@ -96,7 +96,13 @@ Maximum rounding adjustment. To create a daily-bound [offline access code](https

**`name`**

Name of the new access code.
Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.

Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as `first_name` and `last_name`.

To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints.

To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called `appearance`. This is an object with a `name` property and, optionally, `first_name` and `last_name` properties (for providers that break down a name into components).

---

Expand Down
4 changes: 2 additions & 2 deletions docs/api/access_codes/delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,13 @@ To learn more, see [Authentication](https://docs.seam.co/latest/api/authenticati

**`access_code_id`** (Required)

ID of the access code to delete.
ID of the access code that you want to delete.

---

**`device_id`**

ID of the device for which to delete the access code.
ID of the device for which you want to delete the access code.

---

Expand Down
49 changes: 49 additions & 0 deletions docs/api/access_codes/generate_code.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Generate a Code

- [Request Parameters](./#request-parameters)
- [Response](./#response)
- [Examples](./#examples)

Generates a code for an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes), given a device ID.

{% tabs %}
{% tab title="Signature" %}
```
POST /access_codes/generate_code ⇒ { generated_code }
```
{% endtab %}
{% endtabs %}

<details>

<summary>Authentication Methods</summary>

- API key
- Client session token
- Personal access token
<br>Must also include the `seam-workspace` header in the request.

To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication).
</details>

## Request Parameters

**`device_id`** (Required)

ID of the device for which you want to generate a code.

---


## Response

[access\_code](./)
{% tabs %}
{% tab title="JSON" %}
```json
{
JSON representation of access_code
}
```
{% endtab %}
{% endtabs %}
4 changes: 2 additions & 2 deletions docs/api/access_codes/pull_backup_access_code.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@

Retrieves a backup access code for an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). See also [Managing Backup Access Codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/backup-access-codes).

A backup access code pool is a collection of pre-programmed access codes stored on a device, ready for use. These codes are programmed in addition to the regular access codes on Seam, serving as a safety net for any issues with the primary codes.
A backup access code pool is a collection of pre-programmed access codes stored on a device, ready for use. These codes are programmed in addition to the regular access codes on Seam, serving as a safety net for any issues with the primary codes. If there's ever a complication with a primary access code—be it due to intermittent connectivity, manual removal from a device, or provider outages—a backup code can be retrieved. Its end time can then be adjusted to align with the original code, facilitating seamless and uninterrupted access.

If there's ever a complication with a primary access code—be it due to intermittent connectivity, manual removal from a device, or provider outages—a backup code can be retrieved. Its end time can then be adjusted to align with the original code, facilitating seamless and uninterrupted access.
You can pull a backup access code from the pool at any time. These backup codes are guaranteed to work immediately and automatically programmed to be removed from the device after the access code ends.

You can only pull backup access codes for time-bound access codes.

Expand Down
4 changes: 3 additions & 1 deletion docs/api/access_codes/report_device_constraints.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@

Enables you to report access code-related constraints for a device. Currently, supports reporting supported code length constraints for SmartThings devices.

Specify either `supported_code_lengths` or `min_code_length`/`max_code_length`.

{% tabs %}
{% tab title="Signature" %}
```
Expand All @@ -30,7 +32,7 @@ To learn more, see [Authentication](https://docs.seam.co/latest/api/authenticati

**`device_id`** (Required)

ID of the device for which to report constraints.
ID of the device for which you want to report constraints.

---

Expand Down
10 changes: 10 additions & 0 deletions docs/api/access_codes/unmanaged/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ When you create an access code on a device in Seam, it is created as a managed a

Prior to using Seam to manage your devices, you may have used another lock management system to manage the access codes on your devices. Where possible, we help you keep any existing access codes on devices and transition those codes to ones managed by your Seam workspace.

Not all providers support unmanaged access codes. The following providers do not support unmanaged access codes:

- [Kwikset](https://docs.seam.co/latest/device-and-system-integration-guides/kwikset-locks)

{% tabs %}
{% tab title="JSON" %}
```json
Expand Down Expand Up @@ -1690,6 +1694,12 @@ Indicates that Seam does not manage the access code.
**`name`** *String*

Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.

Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as `first_name` and `last_name`.

To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints.

To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called `appearance`. This is an object with a `name` property and, optionally, `first_name` and `last_name` properties (for providers that break down a name into components).



Expand Down
4 changes: 2 additions & 2 deletions docs/api/access_codes/unmanaged/convert_to_managed.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ ID of the unmanaged access code that you want to convert to a managed access cod

**`allow_external_modification`**

Indicates whether external modification of the access code is allowed.
Indicates whether [external modification](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#external-modification) of the access code is allowed.

---

Expand All @@ -52,7 +52,7 @@ Indicates whether to force the access code conversion. To switch management of a

**`is_external_modification_allowed`**

Indicates whether external modification of the access code is allowed.
Indicates whether [external modification](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#external-modification) of the access code is allowed.

---

Expand Down
2 changes: 1 addition & 1 deletion docs/api/access_codes/unmanaged/delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ To learn more, see [Authentication](https://docs.seam.co/latest/api/authenticati

**`access_code_id`** (Required)

ID of the unmanaged access code to delete.
ID of the unmanaged access code that you want to delete.

---

Expand Down
8 changes: 7 additions & 1 deletion docs/api/access_codes/update.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,13 @@ Maximum rounding adjustment. To create a daily-bound [offline access code](https

**`name`**

Name of the new access code.
Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.

Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as `first_name` and `last_name`.

To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints.

To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called `appearance`. This is an object with a `name` property and, optionally, `first_name` and `last_name` properties (for providers that break down a name into components).

---

Expand Down
8 changes: 7 additions & 1 deletion docs/api/access_codes/update_multiple.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,13 @@ Date and time at which the validity of the new access code ends, in [ISO 8601](h

**`name`**

Name of the new access code.
Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.

Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as `first_name` and `last_name`.

To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints.

To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called `appearance`. This is an object with a `name` property and, optionally, `first_name` and `last_name` properties (for providers that break down a name into components).

---

Expand Down
6 changes: 3 additions & 3 deletions docs/api/acs/access_groups/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@ An ACS access group was deleted.

[**`/acs/access_groups/add_user`**](./add_user.md)

Adds a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).
Adds a specified [access system user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).


[**`/acs/access_groups/get`**](./get.md)
Expand All @@ -263,11 +263,11 @@ Returns a list of all accessible entrances for a specified [access group](https:

[**`/acs/access_groups/list_users`**](./list_users.md)

Returns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in an [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).
Returns a list of all [access system users](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in an [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).


[**`/acs/access_groups/remove_user`**](./remove_user.md)

Removes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) from a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).
Removes a specified [access system user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) from a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).


27 changes: 24 additions & 3 deletions docs/api/acs/access_groups/add_user.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
- [Response](./#response)
- [Examples](./#examples)

Adds a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).
Adds a specified [access system user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).

{% tabs %}
{% tab title="Signature" %}
Expand All @@ -29,13 +29,13 @@ To learn more, see [Authentication](https://docs.seam.co/latest/api/authenticati

**`acs_access_group_id`** (Required)

ID of the desired access group.
ID of the access group to which you want to add an access system user.

---

**`acs_user_id`** (Required)

ID of the desired user.
ID of the access system user that you want to add to an access group.

---

Expand Down Expand Up @@ -163,6 +163,27 @@ nil
```
{% endtab %}

{% tab title="cURL" %}
#### Code

```curl
curl --include --request POST "https://connect.getseam.com/acs/access_groups/add_user" \
--header "Authorization: Bearer $SEAM_API_KEY" \
--json @- <<EOF
{
"acs_access_group_id": "44444444-4444-4444-4444-444444444444",
"acs_user_id": "33333333-3333-3333-3333-333333333333"
}
EOF
```

#### Output

```curl
{}
```
{% endtab %}

{% endtabs %}


Loading
Loading