Skip to content
Open
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
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ All capability flags share the following behavior:
- If `true`, the device has this capability, and this capability is functional on this device instance.
- If `false`, the device has this capability, but the capability is not currently functional.

See the device [errors](/core-concepts/devices) and [warnings](/core-concepts/devices) for more details about the cause of this issue. You can also examine the [properties](/core-concepts/devices) of the device and [events](/api/events/object) related to the device to learn more about the cause of this issue.
See the device [errors and warnings](/api/devices/errors) for more details about the cause of this issue. You can also examine the [properties](/api/devices/object) of the device and [events](/api/devices/events) related to the device to learn more about the cause of this issue.

- If not present, the device does not have this capability.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -165,4 +165,4 @@ Once you have configured your thresholds and webhooks, you can monitor events wi
}
```

For a detailed reference of event parameters, see [Events](/api/events/object).
For a detailed reference of event parameters, see [Events](/api/noise_sensors/noise_thresholds/events).
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Note that it's important to check the capabilities of a thermostat before attemp

These imperative operations return an [action attempt](../../core-concepts/action-attempts) that enables you to track the progress of the action. Poll this action attempt, until the action completes.

Further, Seam emits a [`thermostat.temperature_reached_set_point` event](/api/events/object) when the thermostat reports a temperature within 1° Celsius of the heating or cooling temperature that you requested.
Further, Seam emits a [`thermostat.temperature_reached_set_point` event](/api/thermostats/events) when the thermostat reports a temperature within 1° Celsius of the heating or cooling temperature that you requested.

---

Expand Down Expand Up @@ -118,7 +118,7 @@ Before you attempt to set the HVAC or fan mode settings for a thermostat, be sur

Use the [`/devices/get`](/api/devices/get) endpoint for a specific device to return these capability flags. Then, use an `if` statement or similar check to confirm that the relevant flag is both present and `true` before attempting to perform the imperative thermostat action.

If the relevant capability flag is `false` or not present, you can view the [properties](/capability-guides/thermostats) of the device, [errors](/core-concepts/devices) or [warnings](/core-concepts/devices) for the device, and [events](/api/events/object) related to the device to learn more about the cause of these issues. For example, you could examine `device.properties.online`. In addition, you could look for a `device.disconnected` event.
If the relevant capability flag is `false` or not present, you can view the [properties](/api/devices/object) of the device, [errors or warnings](/api/devices/errors) for the device, and [events](/api/devices/events) related to the device to learn more about the cause of these issues. For example, you could examine `device.properties.online`. In addition, you could look for a `device.disconnected` event.

**Request:**

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ In addition to [scheduling](../creating-and-managing-thermostat-schedules) clima

Activating a climate preset returns an [action attempt](../../../core-concepts/action-attempts) that enables you to track the progress of the action. Poll this action attempt, until the action completes.

Further, Seam emits a [`thermostat.temperature_reached_set_point` event](/api/events/object) when the thermostat reports a temperature within 1° Celsius of the heating or cooling [set point](../understanding-thermostat-concepts/set-points) specified in the climate preset that you've activated. You can configure a [webhook](../../../developer-tools/webhooks) to watch for this event.
Further, Seam emits a [`thermostat.temperature_reached_set_point` event](/api/thermostats/events) when the thermostat reports a temperature within 1° Celsius of the heating or cooling [set point](../understanding-thermostat-concepts/set-points) specified in the climate preset that you've activated. You can configure a [webhook](../../../developer-tools/webhooks) to watch for this event.

---

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ In the Seam API, use the `starts_at` and `ends_at` parameters to define the time

`starts_at` is required and must be unique within all the schedules for the thermostat. However, if you want to schedule a climate preset that starts immediately, set `start_at` to a time in the past. Alternately, you can [activate a climate preset](/capability-guides/thermostats/creating-and-managing-climate-presets/activating-a-climate-preset) immediately.

After a scheduled climate preset starts, Seam emits a [`thermostat.temperature_reached_set_point` event](/api/events/object) when the thermostat reports a temperature within 1° Celsius of the heating or cooling [set point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points) specified in this climate preset. You can configure a [webhook](../../developer-tools/webhooks) to watch for this event.
After a scheduled climate preset starts, Seam emits a [`thermostat.temperature_reached_set_point` event](/api/thermostats/events) when the thermostat reports a temperature within 1° Celsius of the heating or cooling [set point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points) specified in this climate preset. You can configure a [webhook](../../developer-tools/webhooks) to watch for this event.

---

Expand Down
2 changes: 1 addition & 1 deletion mintlify-docs/capability-guides/thermostats/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ First, connect your users' thermostats to Seam using the [Seam Console](/core-co

Retrieve and monitor your users' thermostats using the [`/thermostats/list`](/api/thermostats/list) and [`/devices/get`](/api/devices/get) endpoints. The Seam API returns robust, up-to-date information about your connected thermostats. In addition, you can use these endpoints to learn the capabilities of each thermostat.

Further, you can use the [`/thermostats/set_temperature_threshold`](/api/thermostats/set_temperature_threshold) endpoint to set upper and lower acceptable temperature bounds. If the thermostat reports a temperature outside this range, Seam emits a [`thermostat.temperature_threshold_exceeded` event](/api/events/object).
Further, you can use the [`/thermostats/set_temperature_threshold`](/api/thermostats/set_temperature_threshold) endpoint to set upper and lower acceptable temperature bounds. If the thermostat reports a temperature outside this range, Seam emits a [`thermostat.temperature_threshold_exceeded` event](/api/thermostats/events).

### Perform Remote Management

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: 'Setting and Monitoring Temperature Thresholds'
description: 'Learn how to use temperature thresholds to monitor your thermostat for potential HVAC system misuse or malfunctioning.'
---

You can configure Seam to emit a [`thermostat.temperature_threshold_exceeded` event](/api/events/object) if a thermostat reports a temperature outside a specific threshold range. This capability helps you to monitor your thermostats proactively, alerting you to potential HVAC system misuse or malfunctioning.
You can configure Seam to emit a [`thermostat.temperature_threshold_exceeded` event](/api/thermostats/events) if a thermostat reports a temperature outside a specific threshold range. This capability helps you to monitor your thermostats proactively, alerting you to potential HVAC system misuse or malfunctioning.

Use the [`/thermostats/set_temperature_threshold`](/api/thermostats/set_temperature_threshold) endpoint to set upper and lower acceptable temperature bounds. Then, you can use a [webhook](../../developer-tools/webhooks) to monitor for `thermostat.temperature_threshold_exceeded` events.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ For more information, see [Thermostat Capabilities](/capability-guides/thermosta

## Simulate Adjusting the HVAC Mode

The `/thermostats/simulate/hvac_mode_adjusted` endpoint enables you to simulate having adjusted the [HVAC mode](./understanding-thermostat-concepts/hvac-mode) for a thermostat. This simulation is helpful for testing that your app is receiving [thermostat events](/api/events/object) correctly, such as `thermostat.manually_adjusted`.
The `/thermostats/simulate/hvac_mode_adjusted` endpoint enables you to simulate having adjusted the [HVAC mode](./understanding-thermostat-concepts/hvac-mode) for a thermostat. This simulation is helpful for testing that your app is receiving [thermostat events](/api/thermostats/events) correctly, such as `thermostat.manually_adjusted`.

You can simulate having set the HVAC mode to any of the following settings:

Expand Down Expand Up @@ -210,7 +210,7 @@ void

## Simulate Reaching a Desired Temperature

The `/thermostats/simulate/temperature_reached` endpoint enables you to simulate the thermostat reaching a specified temperature. This simulation is helpful for testing that your app is receiving [thermostat events](/api/events/object) correctly, such as `thermostat.temperature_changed` and `thermostat.temperature_reached_set_point`.
The `/thermostats/simulate/temperature_reached` endpoint enables you to simulate the thermostat reaching a specified temperature. This simulation is helpful for testing that your app is receiving [thermostat events](/api/thermostats/events) correctly, such as `thermostat.temperature_changed` and `thermostat.temperature_reached_set_point`.

Specify the desired temperature that you want to simulate the thermostat reaching using either of the following parameters:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: 'Retrieving Devices or Access Control Systems Connected Through a Connect
description: 'Learn how to retrieve the set of devices or ACS that your app user connected to Seam through a specific Connect Webview.'
---

When your app user completes a [Connect Webview](./) authorization flow successfully, the resulting [`connected_account.connected` event](/api/events/object) includes a `connected_account_id`. Also, once the connection is successful, the [`connect_webview` object](/api/connect_webviews/object) includes the `connected_account_id`.
When your app user completes a [Connect Webview](./) authorization flow successfully, the resulting [`connected_account.connected` event](/api/connected_accounts/events) includes a `connected_account_id`. Also, once the connection is successful, the [`connect_webview` object](/api/connect_webviews/object) includes the `connected_account_id`.

The first step in controlling connected devices or a connected ACS is to retrieve the newly-connected set of devices or ACS.

Expand All @@ -17,7 +17,7 @@ Use this `connected_account_id` in a [List Devices](/api/devices/list) command t
If you set `wait_for_device_creation` to `false` when [creating the Connect
Webview](/core-concepts/connect-webviews/embedding-a-connect-webview-in-your-app#step-1-open-a-connect-webview), you should wait for the
[`connected_account.completed_first_sync`
event](/api/events/object) before retrieving the user's
event](/api/connected_accounts/events) before retrieving the user's
devices. This event indicates that Seam has finished the first sync of the
connected account and the devices are now available.
</Info>
Expand Down Expand Up @@ -173,7 +173,7 @@ Use this `connected_account_id` in a [List ACS Systems](/api/acs/systems/list) c
If you set `wait_for_device_creation` to `false` when [creating the Connect
Webview](/core-concepts/connect-webviews/embedding-a-connect-webview-in-your-app#step-1-open-a-connect-webview), you should wait for the
[`connected_account.completed_first_sync`
event](/api/events/object) before retrieving the user's
event](/api/connected_accounts/events) before retrieving the user's
ACS. This event indicates that Seam has finished the first sync of the
connected account and the `acs_system` is now available.
</Info>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ ConnectWebview(

## **Webhook**

When Seam successfully establishes the connection to the user's device or ACS account, Seam emits a [`connected_account.connected` event](/api/events/object). This event includes a `connect_webview_id` property.
When Seam successfully establishes the connection to the user's device or ACS account, Seam emits a [`connected_account.connected` event](/api/connected_accounts/events). This event includes a `connect_webview_id` property.

To avoid polling, use a Seam webhook to monitor for a `connected_account.connected` event with a `connect_webview_id` that matches the `connect_webview_id` of the appropriate Connect Webview instance.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ Online: True

## Get Device Status Using Connection-Related Events

When a device connection or disconnection occurs, Seam generates a [`device.connected`](/api/events/object) or [`device.disconnected`](/api/events/object) event, respectively. You can retrieve these events using a [List Events](/api/events/list) request or through [webhooks](../../developer-tools/webhooks) and then display the corresponding status in your app.
When a device connection or disconnection occurs, Seam generates a [`device.connected`](/api/devices/events) or [`device.disconnected`](/api/devices/events) event, respectively. You can retrieve these events using a [List Events](/api/events/list) request or through [webhooks](../../developer-tools/webhooks) and then display the corresponding status in your app.

<Info>
To help you test your app against events—like device disconnection or
Expand All @@ -114,7 +114,7 @@ When a device connection or disconnection occurs, Seam generates a [`device.conn

### Get Connection-Related Events Using a List Events Request

When issuing a [List Events](/api/events/list) request to retrieve [`device.connected`](/api/events/object) or [`device.disconnected`](/api/events/object) events for a specific device, include the following parameters:
When issuing a [List Events](/api/events/list) request to retrieve [`device.connected`](/api/devices/events) or [`device.disconnected`](/api/devices/events) events for a specific device, include the following parameters:

<table>
<thead>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ You can retrieve these events using a [List Events](/api/events/list) request or

### Get Battery-Related Events Using a List Events Request

When issuing a [List Events](/api/events/list) request to retrieve [`device.low_battery`](/api/events/object) or [`device.battery_status_changed`](/api/events/object) events for a specific device, include the following parameters:
When issuing a [List Events](/api/events/list) request to retrieve [`device.low_battery`](/api/devices/events) or [`device.battery_status_changed`](/api/devices/events) events for a specific device, include the following parameters:

<table>
<thead>
Expand Down
2 changes: 1 addition & 1 deletion mintlify-docs/core-concepts/devices/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ In addition, Seam provides the following three sets of device-related features:

- **Actions:** Commands that you can issue to the device, such as unlock. For more information, see the [Capability Guides](../../capability-guides/device-and-system-capabilities).
- **Properties:** The current state of the device, such as the locked, online, and managed statuses. For details, see [`device` Properties](/core-concepts/devices).
- **Events:** Notifications related to changes in the state of the device, such as an unlocking operation performed with an access code. For details, see [Events](/api/events/object).\
- **Events:** Notifications related to changes in the state of the device, such as an unlocking operation performed with an access code. For details, see [Events](/api/devices/events).\
To help you test your app against events—like device disconnection or removal—that are difficult to orchestrate in a QA environment using real devices, Seam provides a suite of `simulate` endpoints that you can use in a [sandbox workspace](/core-concepts/workspaces/index#sandbox-workspaces). See [Testing Your App Against Device Disconnection and Removal](/core-concepts/devices/testing-your-app-against-device-disconnection-and-removal).
Original file line number Diff line number Diff line change
Expand Up @@ -783,7 +783,7 @@ ActionAttempt(

</CodeGroup>

You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/events/object).
You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/locks/events).

To query the `locked` status of the device:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -766,7 +766,7 @@ ActionAttempt(

</CodeGroup>

You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/events/object).
You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/locks/events).

To query the `locked` status of the device:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ To create a [Connect Webview](/core-concepts/connect-webviews) that enables your
To control 4SUITES devices using Seam, you must prompt owners of these devices to perform the following steps:

1. Obtain the credentials that you use to log in to your [4SUITES account](https://app.4suites.nl/auth/login).
2. Use these credentials to log in to the [Seam Connect Webview](/core-concepts/connect-webviews) to add your 4SUITES devices to Seam.
2. Use these credentials to log in to the Seam Connect Webview to add your 4SUITES devices to Seam.

---

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -766,7 +766,7 @@ ActionAttempt(

</CodeGroup>

You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/events/object).
You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/locks/events).

To query the `locked` status of the device:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -798,7 +798,7 @@ ActionAttempt(

</CodeGroup>

You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/events/object).
You can track the status of the unlock operation to confirm that the device unlocked successfully. Query the `locked` status of the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`lock.unlocked` event](/api/locks/events).

To query the `locked` status of the device:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -840,7 +840,7 @@ ActionAttempt(

</CodeGroup>

You can track the status of the operation to confirm that the device was set to heat mode successfully. Query `properties.current_climate_setting.hvac_mode_setting` for the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`thermostat.manually_adjusted` event](/api/events/object). Further, if you wanted to find out whether the HVAC system was currently heating, you could inspect `properties.is_heating` for the device.
You can track the status of the operation to confirm that the device was set to heat mode successfully. Query `properties.current_climate_setting.hvac_mode_setting` for the device, [retrieve the action attempt](/api/action_attempts/get) by ID, or look for a [`thermostat.manually_adjusted` event](/api/thermostats/events). Further, if you wanted to find out whether the HVAC system was currently heating, you could inspect `properties.is_heating` for the device.

To query `properties.current_climate_setting.hvac_mode_setting` for the device:

Expand Down
Loading
Loading