From e3fc57463309b9ccaa7571acb07d8f4950830335 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:00:36 -0400 Subject: [PATCH 01/23] Update reference.ts --- src/lib/reference.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lib/reference.ts b/src/lib/reference.ts index 94be89b8b..85dcd85fb 100644 --- a/src/lib/reference.ts +++ b/src/lib/reference.ts @@ -67,7 +67,8 @@ export const reference = ( !path.startsWith('/access_grants') && !path.startsWith('/access_methods') && !path.startsWith('/spaces') && - !path.startsWith('/access_codes') + !path.startsWith('/access_codes') && + !path.startsWith('/action_attempts') ) { return false } From 1afa63adf54607e2f03dbc21f6c5f62d24042686 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:01:52 -0400 Subject: [PATCH 02/23] Delete docs/api-clients/acs directory --- docs/api-clients/acs/README.md | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 docs/api-clients/acs/README.md diff --git a/docs/api-clients/acs/README.md b/docs/api-clients/acs/README.md deleted file mode 100644 index e3a7698d4..000000000 --- a/docs/api-clients/acs/README.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -description: Systems for managing and monitoring access to physical spaces ---- - -# Access Control Systems - -In the Seam platform and API, [access control systems](../../products/access-systems/) (ACSs) consist of the following components: - -
ComponentAPI ObjectDescription
Systemacs_systemAn access control system itself. You create users, access groups, and credentials in the context of an acs_system.
Useracs_userA user to whom to grant access to specific physical spaces.
Entranceacs_entranceA secured door, gate, service, or other method of entry.
Access groupacs_access_groupA group that defines the entrances to which a set of users has access, as well as the access schedule for these entrances and users.
Credentialacs_credentialA means by which a user gains access at an entrance, such as access codes, key cards, and mobile passes.
From c4d3e636d8e8b7659ec1c80b4e193d03190f916a Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:02:05 -0400 Subject: [PATCH 03/23] Delete docs/api-clients/action_attempts directory --- docs/api-clients/action_attempts/README.md | 24 ---- docs/api-clients/action_attempts/get.md | 139 --------------------- 2 files changed, 163 deletions(-) delete mode 100644 docs/api-clients/action_attempts/README.md delete mode 100644 docs/api-clients/action_attempts/get.md diff --git a/docs/api-clients/action_attempts/README.md b/docs/api-clients/action_attempts/README.md deleted file mode 100644 index 7acce47c9..000000000 --- a/docs/api-clients/action_attempts/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# Action Attempts - -## The Action Attempt Object - -| **`action_attempt_id`** | uuid | ID of the Action Attempt | -| ----------------------- | ------ | ----------------------------------------------------------- | -| **`action_type`** | string | [See table below](./#action-types) for list of action types | -| **`status`** | string | `pending` or `success` or `error` | -| **`result`** | object | Response data from the action | -| **`error`** | object | Error data from the action | - -### Action Types - -| `CREATE_ACCESS_CODE` | [Creates an Access Code](../../api/access_codes/create.md) for a keypad lock | -| ------------------------ | ------------------------------------------------------------------------------------------- | -| `DELETE_ACCESS_CODE` | [Deletes an Access Code](../../api/access_codes/delete.md) for a keypad lock | -| `LOCK_DOOR` | [Locks a Door Lock](../locks/lock_door.md) for a door lock | -| `UNLOCK_DOOR` | [Unlocks a Door Lock](../locks/unlock_door.md) for a door lock | -| `CREATE_NOISE_THRESHOLD` | [Creates a Noise Threshold](../noise_sensors/noise_thresholds/create.md) for a noise sensor | -| `REMOVE_NOISE_THRESHOLD` | [Removes a Noise Threshold](../noise_sensors/noise_thresholds/delete.md) for a noise sensor | - -### List of Methods - -
Get Action AttemptGet Action Attempt
diff --git a/docs/api-clients/action_attempts/get.md b/docs/api-clients/action_attempts/get.md deleted file mode 100644 index 98bb28b6a..000000000 --- a/docs/api-clients/action_attempts/get.md +++ /dev/null @@ -1,139 +0,0 @@ ---- -description: Retrieve an Action Attempt using its ID. ---- - -# Get Action Attempt - -{% swagger method="get" path="/action_attempts/get" baseUrl="https://connect.getseam.com" summary="Get an Action Attempt" %} -{% swagger-description %} - -{% endswagger-description %} - -{% swagger-parameter in="query" name="action_attempt_id" required="true" %} -ID of the Action Attempt to be retrieved -{% endswagger-parameter %} - -{% swagger-parameter in="header" name="Authorization" required="true" %} -Bearer -{% endswagger-parameter %} - -{% swagger-response status="200: OK" description="Action Attempt retrieved" %} -```javascript -{ - "action_attempt": { - "status": "success", - "action_attempt_id": "f7d02670-128a-49f1-b615-b44a2808e5c4", - "action_type": "UNLOCK_DOOR", - "result": {}, - "error": null - }, - "ok": true -} -``` -{% endswagger-response %} - -{% swagger-response status="400: Bad Request" description="" %} -```javascript -{ - "error": { - "type": "invalid_input", - "message": "Required for provided \"action_attempt_id\"", - "validation_errors": { - "_errors": [], - "action_attempt_id": { - "_errors": [ - "Required" - ] - } - }, - "request_id": "315d5b5f-1dde-433f-9f01-ad780bbd4687" - }, - "ok": false -} -``` -{% endswagger-response %} - -{% swagger-response status="404: Not Found" description="Action Attempt not found" %} -```javascript -{ - "error": { - "type": "action_attempt_not_found", - "message": "action_attempt not found", - "data": { - "action_attempt_id": "f7d02670-123a-49f1-b615-b44a2808e5c4" - }, - "request_id": "27fa9e5d-485f-42ad-99d3-6d07006f00f5" - }, - "ok": false -} -``` -{% endswagger-response %} -{% endswagger %} - -### Code Example - -{% tabs %} -{% tab title="Python" %} -```python -seam.action_attempts.get("") - -# ActionAttempt( -# action_attempt_id='f7d02670-128a-49f1-b615-b44a2808e5c4', -# action_type='UNLOCK_DOOR', -# status='success', -# result={}, -# error=None -# ) -``` -{% endtab %} - -{% tab title="Javascript" %} -```javascript -await seam.actionAttempts.get( - "f7d02670-128a-49f1-b615-b44a2808e5c4" -); - -// { -// status: 'success', -// action_attempt_id: 'f7d02670-128a-49f1-b615-b44a2808e5c4', -// action_type: 'UNLOCK_DOOR', -// result: {}, -// error: null -// } -``` -{% endtab %} - -{% tab title="Ruby" %} -```ruby -seam.action_attempts.get(action_attempt_id: "f7d02670-128a-49f1-b615-b44a2808e5c4") -``` -{% endtab %} -{% endtabs %} - -### Parameters - -| `action_attempt_id` | type: string | ID of the Action Attempt to be retrieved | -| ------------------- | ------------ | ---------------------------------------- | - -### Response - -This section shows the JSON response returned by the API. Since each language encapsulates this response inside objects specific to that language and/or implementation, the actual type in your language might differ from what’s written here. - -#### JSON format - -{% tabs %} -{% tab title="JSON" %} -```json -{ - "action_attempt": { - "status": "success", - "action_attempt_id": "f7d02670-128a-49f1-b615-b44a2808e5c4", - "action_type": "UNLOCK_DOOR", - "result": {}, - "error": null - }, - "ok": true -} -``` -{% endtab %} -{% endtabs %} From 32a9436120a506143d09a0a167d5d43579173a99 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:03:35 -0400 Subject: [PATCH 04/23] Update paths.yaml --- src/data/paths.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/data/paths.yaml b/src/data/paths.yaml index f791f7f66..b9c875a09 100644 --- a/src/data/paths.yaml +++ b/src/data/paths.yaml @@ -140,3 +140,6 @@ /customers: title: Customers alpha: "**Early Access Preview.** The customers API is currently in Alpha. We're actively developing it and seeking early feedback at [support@seam.co](mailto:support@seam.co). Expect breaking changes as we refine the design." + +/action_attempts: + title: Action Attempts From a51edef570d45ba21b9034789733997d38af9795 Mon Sep 17 00:00:00 2001 From: Seam Bot Date: Wed, 25 Jun 2025 04:05:13 +0000 Subject: [PATCH 05/23] ci: Generate docs --- docs/api/_report.md | 1 - docs/api/_summary.md | 3 + docs/api/action_attempts/README.md | 190 +++++++++++++++++++++ docs/api/action_attempts/get.md | 190 +++++++++++++++++++++ docs/api/action_attempts/list.md | 260 +++++++++++++++++++++++++++++ 5 files changed, 643 insertions(+), 1 deletion(-) create mode 100644 docs/api/action_attempts/README.md create mode 100644 docs/api/action_attempts/get.md create mode 100644 docs/api/action_attempts/list.md diff --git a/docs/api/_report.md b/docs/api/_report.md index 4abed18bf..550d3b03f 100644 --- a/docs/api/_report.md +++ b/docs/api/_report.md @@ -4,7 +4,6 @@ ### Routes -- `/action_attempts` - `/client_sessions` - `/connect_webviews` - `/devices` diff --git a/docs/api/_summary.md b/docs/api/_summary.md index e705e0ecd..1318b62f6 100644 --- a/docs/api/_summary.md +++ b/docs/api/_summary.md @@ -76,6 +76,9 @@ * [Delete an Access Method](api/access_methods/delete.md) * [Get an Access Method](api/access_methods/get.md) * [List Access Methods](api/access_methods/list.md) +* [Action Attempts](api/action_attempts/README.md) + * [Get an Action Attempt](api/action_attempts/get.md) + * [List Action Attempts](api/action_attempts/list.md) * [Connected Accounts](api/connected_accounts/README.md) * [Delete a Connected Account](api/connected_accounts/delete.md) * [Get a Connected Account](api/connected_accounts/get.md) diff --git a/docs/api/action_attempts/README.md b/docs/api/action_attempts/README.md new file mode 100644 index 000000000..3d2c5457c --- /dev/null +++ b/docs/api/action_attempts/README.md @@ -0,0 +1,190 @@ +# Action Attempts + + +## Events + +**`action_attempt.lock_door.succeeded`** + +A lock door [action attempt](../../core-concepts/action-attempts.md) succeeded. + +
+ +Properties + +action_attempt_id UUID + + ID of the affected action attempt. + +action_type String + + Type of the action. + +created_at Datetime + + Date and time at which the event was created. + +event_id UUID + + ID of the event. + +event_type Enum + + Value: `action_attempt.lock_door.succeeded` + +occurred_at Datetime + + Date and time at which the event occurred. + +status String + + Status of the action. + +workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md) associated with the event. +
+ +--- + +**`action_attempt.lock_door.failed`** + +A lock door [action attempt](../../core-concepts/action-attempts.md) failed. + +
+ +Properties + +action_attempt_id UUID + + ID of the affected action attempt. + +action_type String + + Type of the action. + +created_at Datetime + + Date and time at which the event was created. + +event_id UUID + + ID of the event. + +event_type Enum + + Value: `action_attempt.lock_door.failed` + +occurred_at Datetime + + Date and time at which the event occurred. + +status String + + Status of the action. + +workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md) associated with the event. +
+ +--- + +**`action_attempt.unlock_door.succeeded`** + +An unlock door [action attempt](../../core-concepts/action-attempts.md) succeeded. + +
+ +Properties + +action_attempt_id UUID + + ID of the affected action attempt. + +action_type String + + Type of the action. + +created_at Datetime + + Date and time at which the event was created. + +event_id UUID + + ID of the event. + +event_type Enum + + Value: `action_attempt.unlock_door.succeeded` + +occurred_at Datetime + + Date and time at which the event occurred. + +status String + + Status of the action. + +workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md) associated with the event. +
+ +--- + +**`action_attempt.unlock_door.failed`** + +An unlock door [action attempt](../../core-concepts/action-attempts.md) failed. + +
+ +Properties + +action_attempt_id UUID + + ID of the affected action attempt. + +action_type String + + Type of the action. + +created_at Datetime + + Date and time at which the event was created. + +event_id UUID + + ID of the event. + +event_type Enum + + Value: `action_attempt.unlock_door.failed` + +occurred_at Datetime + + Date and time at which the event occurred. + +status String + + Status of the action. + +workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md) associated with the event. +
+ +--- + +## Endpoints + + +[**`/action_attempts/get`**](./get.md) + +Returns a specified [action attempt](../../core-concepts/action-attempts.md). + + +[**`/action_attempts/list`**](./list.md) + +Returns a list of the [action attempts](../../core-concepts/action-attempts.md) that you specify as an array of `action_attempt_id`s. + + diff --git a/docs/api/action_attempts/get.md b/docs/api/action_attempts/get.md new file mode 100644 index 000000000..18ef9a438 --- /dev/null +++ b/docs/api/action_attempts/get.md @@ -0,0 +1,190 @@ +# Get an Action Attempt + +- [Request Parameters](#request-parameters) +- [Response](#response) + +Returns a specified [action attempt](../../core-concepts/action-attempts.md). + + +{% tabs %} +{% tab title="JavaScript" %} + +Returns a specified action attempt. + +#### Code + +```javascript +await seam.actionAttempts.get({ + action_attempt_id: "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", +}); +``` + +#### Output + +```javascript +{ + "action_attempt_id": "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type": "UNLOCK_DOOR", + "error": null, + "result": {}, + "status": "success" +} +``` +{% endtab %} + +{% tab title="cURL" %} + +Returns a specified action attempt. + +#### Code + +```curl +curl --include --request POST "https://connect.getseam.com/action_attempts/get" \ + --header "Authorization: Bearer $SEAM_API_KEY" \ + --json @- < "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type" => "UNLOCK_DOOR", + "error" => nil, + "result" => { + }, + "status" => "success", +} +``` +{% endtab %} + +{% tab title="PHP" %} + +Returns a specified action attempt. + +#### Code + +```php +action_attempts->get( + action_attempt_id: "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f" +); +``` + +#### Output + +```php + "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type" => "UNLOCK_DOOR", + "error" => null, + "result" => [], + "status" => "success", +]; +``` +{% endtab %} + +{% tab title="Seam CLI" %} + +Returns a specified action attempt. + +#### Code + +```seam_cli +seam action-attempts get --action_attempt_id "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f" +``` + +#### Output + +```seam_cli +{ + "action_attempt_id": "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type": "UNLOCK_DOOR", + "error": null, + "result": {}, + "status": "success" +} +``` +{% endtab %} + +{% endtabs %} + + +
+ +Authentication Methods + +- API key +- Client session token +- Personal access token +
Must also include the `seam-workspace` header in the request. + +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
+ +## Request Parameters + +**`action_attempt_id`** *String* (Required) + +ID of the action attempt that you want to get. + +--- + + +## Response + +[action\_attempt](./) + diff --git a/docs/api/action_attempts/list.md b/docs/api/action_attempts/list.md new file mode 100644 index 000000000..80060ca96 --- /dev/null +++ b/docs/api/action_attempts/list.md @@ -0,0 +1,260 @@ +# List Action Attempts + +- [Request Parameters](#request-parameters) +- [Response](#response) + +Returns a list of the [action attempts](../../core-concepts/action-attempts.md) that you specify as an array of `action_attempt_id`s. + + +{% tabs %} +{% tab title="JavaScript" %} + +Returns a list of the action attempts that you specify as an array of `action_attempt_id`s. + +#### Code + +```javascript +await seam.actionAttempts.list({ + action_attempt_ids: [ + "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "3f2b1c8d-1b5e-4f8c-9c7d-9a8b7c6d5e4f", + ], +}); +``` + +#### Output + +```javascript +[ + { + "action_attempt_id": "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type": "UNLOCK_DOOR", + "error": null, + "result": {}, + "status": "success" + }, + { + "action_attempt_id": "3f2b1c8d-1b5e-4f8c-9c7d-9a8b7c6d5e4f", + "action_type": "LOCK_DOOR", + "error": null, + "result": {}, + "status": "success" + } +] +``` +{% endtab %} + +{% tab title="cURL" %} + +Returns a list of the action attempts that you specify as an array of `action_attempt_id`s. + +#### Code + +```curl +curl --include --request POST "https://connect.getseam.com/action_attempts/list" \ + --header "Authorization: Bearer $SEAM_API_KEY" \ + --json @- < "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type" => "UNLOCK_DOOR", + "error" => nil, + "result" => { + }, + "status" => "success", + }, + { + "action_attempt_id" => "3f2b1c8d-1b5e-4f8c-9c7d-9a8b7c6d5e4f", + "action_type" => "LOCK_DOOR", + "error" => nil, + "result" => { + }, + "status" => "success", + }, +] +``` +{% endtab %} + +{% tab title="PHP" %} + +Returns a list of the action attempts that you specify as an array of `action_attempt_id`s. + +#### Code + +```php +action_attempts->list( + action_attempt_ids: [ + "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "3f2b1c8d-1b5e-4f8c-9c7d-9a8b7c6d5e4f", + ] +); +``` + +#### Output + +```php + "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type" => "UNLOCK_DOOR", + "error" => null, + "result" => [], + "status" => "success", + ], + [ + "action_attempt_id" => "3f2b1c8d-1b5e-4f8c-9c7d-9a8b7c6d5e4f", + "action_type" => "LOCK_DOOR", + "error" => null, + "result" => [], + "status" => "success", + ], +]; +``` +{% endtab %} + +{% tab title="Seam CLI" %} + +Returns a list of the action attempts that you specify as an array of `action_attempt_id`s. + +#### Code + +```seam_cli +seam action-attempts list --action_attempt_ids ["5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f","3f2b1c8d-1b5e-4f8c-9c7d-9a8b7c6d5e4f"] +``` + +#### Output + +```seam_cli +[ + { + "action_attempt_id": "5f4e3d2c-1b0a-9f8e-7d6c-5b4a3c2d1e0f", + "action_type": "UNLOCK_DOOR", + "error": null, + "result": {}, + "status": "success" + }, + { + "action_attempt_id": "3f2b1c8d-1b5e-4f8c-9c7d-9a8b7c6d5e4f", + "action_type": "LOCK_DOOR", + "error": null, + "result": {}, + "status": "success" + } +] +``` +{% endtab %} + +{% endtabs %} + + +
+ +Authentication Methods + +- API key +- Personal access token +
Must also include the `seam-workspace` header in the request. + +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
+ +## Request Parameters + +**`action_attempt_ids`** *Array* *of UUIDs* (Required) + +IDs of the action attempts that you want to retrieve. + +--- + + +## Response + +Array of [action\_attempts](./) + From acac73a5915314c37d823f36c2ab834bfb51de07 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:07:33 -0400 Subject: [PATCH 06/23] Update SUMMARY.md --- docs/SUMMARY.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index 4085d1a2f..052b0754d 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -205,8 +205,9 @@ * [Delete an Access Method](api/access_methods/delete.md) * [Get an Access Method](api/access_methods/get.md) * [List Access Methods](api/access_methods/list.md) -* [Action Attempts](api-clients/action_attempts/README.md) - * [Get Action Attempt](api-clients/action_attempts/get.md) +* [Action Attempts](api/action_attempts/README.md) + * [List Action Attempts](api/action_attempts/list.md) + * [Get an Action Attempt](api/action_attempts/get.md) * [Client Sessions](api-clients/client_sessions/README.md) * [Create a Client Session](api-clients/client_sessions/create.md) * [Get or Create a Client Session](api-clients/client_sessions/get_or_create.md) From 10390167d5d399ddda66e0e5817795c9986db1e7 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:10:35 -0400 Subject: [PATCH 07/23] Update overview.md --- docs/api-overview/overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/api-overview/overview.md b/docs/api-overview/overview.md index ad0511cf1..9ffd4a1d0 100644 --- a/docs/api-overview/overview.md +++ b/docs/api-overview/overview.md @@ -30,5 +30,5 @@ See the following reference topics: ## Monitoring * [Events](../api-clients/events/) -* [Action Attempts](../api-clients/action_attempts/) +* [Action Attempts](../api/action_attempts/) * [Connected Accounts](../api/connected_accounts/) From 0017065a42a9ce70d3b4e5b449640984159ab3bd Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:11:59 -0400 Subject: [PATCH 08/23] Update action-attempts.md --- docs/core-concepts/action-attempts.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/core-concepts/action-attempts.md b/docs/core-concepts/action-attempts.md index 2598a9aec..cce2bb76a 100644 --- a/docs/core-concepts/action-attempts.md +++ b/docs/core-concepts/action-attempts.md @@ -6,7 +6,7 @@ description: >- # Action Attempts -As seen in the [Capability Guides](broken-reference) section, you can perform actions against a device. However, devices exist in the physical world. The physical world is intrinsically asynchronous. +You can perform actions against a device. However, devices exist in the physical world. The physical world is intrinsically asynchronous. This means that certain actions can take seconds, minutes, or even days to complete. Furthermore, an action can fail, and you may also not find out until later. @@ -20,4 +20,4 @@ This action attempt enables you to keep track of the progress of your action. Our client libraries do this automatically for you. However, you can also choose not to wait and to check on the action at a later time. -For more information, see the [Action Attempts](../api-clients/action_attempts/) in the Seam API reference. +For more information, see [Action Attempts](../api/action_attempts/) in the Seam API reference. From 8448476ce9e0f4b8d170f8a4bd0f52f7be54c85b Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:13:17 -0400 Subject: [PATCH 09/23] Update lock-and-unlock.md --- docs/products/smart-locks/lock-and-unlock.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/products/smart-locks/lock-and-unlock.md b/docs/products/smart-locks/lock-and-unlock.md index f14e29b7a..1af15f022 100644 --- a/docs/products/smart-locks/lock-and-unlock.md +++ b/docs/products/smart-locks/lock-and-unlock.md @@ -10,7 +10,7 @@ Seam enables you to lock or unlock your door lock remotely. This guide walks you When you send a command to a smart lock, it might take a while for Seam to confirm the action's success. To handle this, Seam provides [an "action attempt" object](../../core-concepts/action-attempts.md), which indicates whether the action was successful. -To ensure that the action has been successfully executed, we advise checking the status of the action attempt object by polling the ["Get Action Attempt" request](../../api-clients/action_attempts/get.md). Once Seam has successfully confirmed the action, the action attempt's `status` will indicate `success`. +To ensure that the action has been successfully executed, we advise checking the status of the action attempt object by polling the ["Get Action Attempt" request](../../api/action_attempts/get.md). Once Seam has successfully confirmed the action, the action attempt's `status` will indicate `success`. For those who prefer using webhooks to verify the success of an action, we'll soon introduce events that confirm an action's success. @@ -687,7 +687,7 @@ seam.Locks.LockDoor(deviceId: "11111111-1111-1111-1111-444444444444"); ### 2. Poll the Action Attempt to Verify the Success of the Action -Use the `action_attempt_id` from the prior response to make a [Get Action Attempt request](../../api-clients/action_attempts/get.md). When the action attempt's `status` changes to `success`, it indicates the action has been successful. +Use the `action_attempt_id` from the prior response to make a [Get Action Attempt request](../../api/action_attempts/get.md). When the action attempt's `status` changes to `success`, it indicates the action has been successful. {% tabs %} {% tab title="Python" %} From 96ee3bf42deb06b58bcbd054fbc4526839c59665 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:14:13 -0400 Subject: [PATCH 10/23] Update .gitbook.yaml --- .gitbook.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitbook.yaml b/.gitbook.yaml index 7f80379f0..f1a59284e 100644 --- a/.gitbook.yaml +++ b/.gitbook.yaml @@ -76,8 +76,8 @@ redirects: api-clients/access-control-systems/users/update-user: api/acs/users/update.md api-clients/access-control-systems/users: api/acs/users/README.md api-clients/access-control-systems: api/acs/README.md - api-clients/action-attempt/get-action-attempt: api-clients/action_attempts/get.md - api-clients/action-attempt: api-clients/action_attempts/README.md + api-clients/action-attempt/get-action-attempt: api/action_attempts/get.md + api-clients/action-attempt: api/action_attempts/README.md api-clients/client-sessions/create-a-client-session: api-clients/client_sessions/create.md api-clients/client-sessions/delete-a-client-session: api-clients/client_sessions/delete.md api-clients/client-sessions/get-a-client-session: api-clients/client_sessions/get.md From 78df76694801ef7e717db18c0b5d96c2151409fb Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:14:58 -0400 Subject: [PATCH 11/23] Update get-started-with-ttlock-devices.md --- docs/device-guides/get-started-with-ttlock-devices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-guides/get-started-with-ttlock-devices.md b/docs/device-guides/get-started-with-ttlock-devices.md index e69f72402..c79821dfa 100644 --- a/docs/device-guides/get-started-with-ttlock-devices.md +++ b/docs/device-guides/get-started-with-ttlock-devices.md @@ -888,7 +888,7 @@ if (frontDoor.CanRemotelyUnlock == true) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`lock.unlocked` event](../api-clients/events/#event-types). +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.md) by ID, or look for a [`lock.unlocked` event](../api-clients/events/#event-types). To query the `locked` status of the device: From 6c0c3a86f6ee063e439df17b258989cce9771a7c Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:15:36 -0400 Subject: [PATCH 12/23] Update get-started-with-ecobee-thermostats.md --- docs/device-guides/get-started-with-ecobee-thermostats.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-guides/get-started-with-ecobee-thermostats.md b/docs/device-guides/get-started-with-ecobee-thermostats.md index 1f7dc864b..e2506d622 100644 --- a/docs/device-guides/get-started-with-ecobee-thermostats.md +++ b/docs/device-guides/get-started-with-ecobee-thermostats.md @@ -930,7 +930,7 @@ if ($living_room_thermostat->can_hvac_heat) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`thermostat.manually_adjusted` event](../api-clients/events/#event-types). 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.md) by ID, or look for a [`thermostat.manually_adjusted` event](../api-clients/events/#event-types). 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: From c338d18b2801916d683a23c6cd2e0600c34b3f76 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:16:44 -0400 Subject: [PATCH 13/23] Update get-started-with-smartthings-hubs-+-smart-locks.md --- .../get-started-with-smartthings-hubs-+-smart-locks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-guides/get-started-with-smartthings-hubs-+-smart-locks.md b/docs/device-guides/get-started-with-smartthings-hubs-+-smart-locks.md index b97aa92d6..f7693a1ed 100644 --- a/docs/device-guides/get-started-with-smartthings-hubs-+-smart-locks.md +++ b/docs/device-guides/get-started-with-smartthings-hubs-+-smart-locks.md @@ -892,7 +892,7 @@ if (frontDoor.CanRemotelyUnlock == true) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`lock.unlocked` event](../api-clients/events/#event-types). +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.md) by ID, or look for a [`lock.unlocked` event](../api-clients/events/#event-types). To query the `locked` status of the device: From 4af6baa3b2c6806fe5b5ccb7d70b923f0d8467c5 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:17:14 -0400 Subject: [PATCH 14/23] Update get-started-with-akiles-locks.md --- .../akiles-locks/get-started-with-akiles-locks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-and-system-integration-guides/akiles-locks/get-started-with-akiles-locks.md b/docs/device-and-system-integration-guides/akiles-locks/get-started-with-akiles-locks.md index 7cca6afbf..39df90718 100644 --- a/docs/device-and-system-integration-guides/akiles-locks/get-started-with-akiles-locks.md +++ b/docs/device-and-system-integration-guides/akiles-locks/get-started-with-akiles-locks.md @@ -870,7 +870,7 @@ if (frontDoor.CanRemotelyUnlock == true) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`lock.unlocked` event](../../api-clients/events/#event-types). +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.md) by ID, or look for a [`lock.unlocked` event](../../api-clients/events/#event-types). To query the `locked` status of the device: From 4b6412bb8d58331ca3611bc23053edc31b10b56d Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:17:35 -0400 Subject: [PATCH 15/23] Update get-started-with-4suites-locks.md --- .../4suites-locks/get-started-with-4suites-locks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-and-system-integration-guides/4suites-locks/get-started-with-4suites-locks.md b/docs/device-and-system-integration-guides/4suites-locks/get-started-with-4suites-locks.md index 45b4f22b0..2255d31b2 100644 --- a/docs/device-and-system-integration-guides/4suites-locks/get-started-with-4suites-locks.md +++ b/docs/device-and-system-integration-guides/4suites-locks/get-started-with-4suites-locks.md @@ -869,7 +869,7 @@ if (frontDoor.CanRemotelyUnlock == true) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`lock.unlocked` event](../../api-clients/events/#event-types). +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.md) by ID, or look for a [`lock.unlocked` event](../../api-clients/events/#event-types). To query the `locked` status of the device: From 4124d0c798cb7a6c9d438e1448084d14b8d4d5d5 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:17:56 -0400 Subject: [PATCH 16/23] Update get-started-with-33-lock-devices.md --- .../33-lock-devices/get-started-with-33-lock-devices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-and-system-integration-guides/33-lock-devices/get-started-with-33-lock-devices.md b/docs/device-and-system-integration-guides/33-lock-devices/get-started-with-33-lock-devices.md index 8adbce243..095a071b4 100644 --- a/docs/device-and-system-integration-guides/33-lock-devices/get-started-with-33-lock-devices.md +++ b/docs/device-and-system-integration-guides/33-lock-devices/get-started-with-33-lock-devices.md @@ -888,7 +888,7 @@ if (frontDoor.CanRemotelyUnlock == true) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`lock.unlocked` event](../../api-clients/events/#event-types). +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.md) by ID, or look for a [`lock.unlocked` event](../../api-clients/events/#event-types). To query the `locked` status of the device: From cdc7c6752f165016a569238f320d7270b6116e26 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:18:24 -0400 Subject: [PATCH 17/23] Update get-started-with-sensi-thermostats.md --- .../sensi-thermostats/get-started-with-sensi-thermostats.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-and-system-integration-guides/sensi-thermostats/get-started-with-sensi-thermostats.md b/docs/device-and-system-integration-guides/sensi-thermostats/get-started-with-sensi-thermostats.md index df39cfc91..d3de06bac 100644 --- a/docs/device-and-system-integration-guides/sensi-thermostats/get-started-with-sensi-thermostats.md +++ b/docs/device-and-system-integration-guides/sensi-thermostats/get-started-with-sensi-thermostats.md @@ -925,7 +925,7 @@ if ($living_room_thermostat->can_hvac_heat) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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: From 2b2b22e75ddc9d9345893329df1d06a5531574ad Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:19:04 -0400 Subject: [PATCH 18/23] Update get-started-with-smartthings-hubs-+-thermostats.md --- .../get-started-with-smartthings-hubs-+-thermostats.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-and-system-integration-guides/smartthings-hubs-+-devices/get-started-with-smartthings-hubs-+-thermostats.md b/docs/device-and-system-integration-guides/smartthings-hubs-+-devices/get-started-with-smartthings-hubs-+-thermostats.md index 27a9a6093..fbf7f7023 100644 --- a/docs/device-and-system-integration-guides/smartthings-hubs-+-devices/get-started-with-smartthings-hubs-+-thermostats.md +++ b/docs/device-and-system-integration-guides/smartthings-hubs-+-devices/get-started-with-smartthings-hubs-+-thermostats.md @@ -935,7 +935,7 @@ if ($living_room_thermostat->can_hvac_heat) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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: From 4dc5b3c4f67c5fc3be326d43399f38e25337ab56 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:19:49 -0400 Subject: [PATCH 19/23] Update configure-current-climate-settings.md --- docs/products/thermostats/configure-current-climate-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/products/thermostats/configure-current-climate-settings.md b/docs/products/thermostats/configure-current-climate-settings.md index 9c5d55cdd..392d09440 100644 --- a/docs/products/thermostats/configure-current-climate-settings.md +++ b/docs/products/thermostats/configure-current-climate-settings.md @@ -1152,7 +1152,7 @@ $seam->thermostats->set_fan_mode( ## Poll the Action Attempt -The imperative HVAC or fan mode setting request returns an [action attempt](../../core-concepts/action-attempts.md). Use the `action_attempt_id` from this response to poll the associated action attempt using the [`/action_attempts/get`](../../api-clients/action_attempts/get.md) request. When the setting modification completes successfully, the `status` of the action attempt changes to `success`. +The imperative HVAC or fan mode setting request returns an [action attempt](../../core-concepts/action-attempts.md). Use the `action_attempt_id` from this response to poll the associated action attempt using the [`/action_attempts/get`](../../api/action_attempts/get.md) request. When the setting modification completes successfully, the `status` of the action attempt changes to `success`. {% tabs %} {% tab title="Python" %} From f5b179e6a692cf2d4ea322d0105abac8d16b4d42 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:20:24 -0400 Subject: [PATCH 20/23] Update activating-a-climate-preset.md --- .../activating-a-climate-preset.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/capability-guides/thermostats/creating-and-managing-climate-presets/activating-a-climate-preset.md b/docs/capability-guides/thermostats/creating-and-managing-climate-presets/activating-a-climate-preset.md index 69757361c..cb450291c 100644 --- a/docs/capability-guides/thermostats/creating-and-managing-climate-presets/activating-a-climate-preset.md +++ b/docs/capability-guides/thermostats/creating-and-managing-climate-presets/activating-a-climate-preset.md @@ -153,7 +153,7 @@ $seam->thermostats->activate_climate_preset( ## Poll the Action Attempt -Activating a climate preset returns an [action attempt](../../../core-concepts/action-attempts.md). Use the `action_attempt_id` from this response to poll the associated action attempt using the [`/action_attempts/get`](../../../api-clients/action_attempts/get.md) request. When the activation completes successfully, the `status` of the action attempt changes to `success`. +Activating a climate preset returns an [action attempt](../../../core-concepts/action-attempts.md). Use the `action_attempt_id` from this response to poll the associated action attempt using the [`/action_attempts/get`](../../../api/action_attempts/get.md) request. When the activation completes successfully, the `status` of the action attempt changes to `success`. {% tabs %} {% tab title="Python" %} From 5ceddf16e3649ffac93f7ac30ad00db1cd40abc4 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:20:58 -0400 Subject: [PATCH 21/23] Update get-started-with-nest-thermostats.md --- .../get-started-with-nest-thermostats.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-and-system-integration-guides/google-nest-thermostats/get-started-with-nest-thermostats.md b/docs/device-and-system-integration-guides/google-nest-thermostats/get-started-with-nest-thermostats.md index 82b930515..1aa5af2e4 100644 --- a/docs/device-and-system-integration-guides/google-nest-thermostats/get-started-with-nest-thermostats.md +++ b/docs/device-and-system-integration-guides/google-nest-thermostats/get-started-with-nest-thermostats.md @@ -934,7 +934,7 @@ if ($living_room_thermostat->can_hvac_heat) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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: From 8c8ef3b1e28bfcea84d075ceacf4da4ae823c51b Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:21:20 -0400 Subject: [PATCH 22/23] Update get-started-with-honeywell-thermostats.md --- .../get-started-with-honeywell-thermostats.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-and-system-integration-guides/honeywell-thermostats/get-started-with-honeywell-thermostats.md b/docs/device-and-system-integration-guides/honeywell-thermostats/get-started-with-honeywell-thermostats.md index 1c436bacd..a5b6459c7 100644 --- a/docs/device-and-system-integration-guides/honeywell-thermostats/get-started-with-honeywell-thermostats.md +++ b/docs/device-and-system-integration-guides/honeywell-thermostats/get-started-with-honeywell-thermostats.md @@ -932,7 +932,7 @@ if ($living_room_thermostat->can_hvac_heat) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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.md) by ID, or look for a [`thermostat.manually_adjusted` event](../../api-clients/events/#event-types). 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: From ccd7ebf43aee89346b16da622664605b864ac434 Mon Sep 17 00:00:00 2001 From: DebbieAtSeam <145377258+DebbieAtSeam@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:22:15 -0400 Subject: [PATCH 23/23] Update get-started-with-august-locks.md --- docs/device-guides/get-started-with-august-locks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/device-guides/get-started-with-august-locks.md b/docs/device-guides/get-started-with-august-locks.md index cae1330a2..42d082170 100644 --- a/docs/device-guides/get-started-with-august-locks.md +++ b/docs/device-guides/get-started-with-august-locks.md @@ -891,7 +891,7 @@ if (frontDoor.CanRemotelyUnlock == true) { {% endtabs %} -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-clients/action_attempts/get.md) by ID, or look for a [`lock.unlocked` event](../api-clients/events/#event-types). +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.md) by ID, or look for a [`lock.unlocked` event](../api-clients/events/#event-types). To query the `locked` status of the device: