diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index 6b56272d6..6c7ddb1dc 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -126,55 +126,24 @@ * [Overview](api-clients/overview.md) * [Installation](api-clients/installation.md) * [Authentication](api-clients/authentication.md) -* [Workspaces](api-clients/workspaces/README.md) - * [Get Workspace](api-clients/workspaces/get.md) - * [Reset Workspace](api-clients/workspaces/reset_sandbox.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) - * [List Client Sessions](api-clients/client_sessions/list.md) - * [Get a Client Session](api-clients/client_sessions/get.md) - * [Grant Access to a Client Session](api-clients/client_sessions/grant_access.md) - * [Delete a Client Session](api-clients/client_sessions/delete.md) -* [Connect Webviews](api-clients/connect_webviews/README.md) - * [Create a Connect Webview](api-clients/connect_webviews/create.md) - * [List Connect Webviews](api-clients/connect_webviews/list.md) - * [Get a Connect Webview](api-clients/connect_webviews/get.md) - * [Delete a Connect Webview](api-clients/connect_webviews/delete.md) -* [Connected Accounts](api-clients/connected_accounts/README.md) - * [Get a Connected Account](api-clients/connected_accounts/get.md) - * [List Connected Accounts](api-clients/connected_accounts/list.md) - * [Update a Connected Account](api-clients/connected_accounts/update.md) - * [Delete a Connected Account](api-clients/connected_accounts/delete.md) -* [Devices](api-clients/devices/README.md) - * [List Devices](api-clients/devices/list.md) - * [List Device Providers](api-clients/devices/list_device_providers.md) - * [Device Provider Metadata](reference/device-provider-metadata.md) - * [Get a Device](api-clients/devices/get.md) - * [Update a Device](api-clients/devices/update.md) - * [Unmanaged Devices](api-clients/devices/unmanaged/README.md) - * [Update an Unmanaged Device](api-clients/devices/unmanaged/update.md) - * [List Unmanaged Devices](api-clients/devices/unmanaged/list.md) - * [Get an Unmanaged Device](api-clients/devices/unmanaged/get.md) -* [Access Codes](api-clients/access_codes/README.md) - * [Create an Access Code](api-clients/access_codes/create.md) - * [Create Multiple Linked Access Codes](api-clients/access_codes/create_multiple.md) - * [List Access Codes](api-clients/access_codes/list.md) - * [Get an Access Code](api-clients/access_codes/get.md) - * [Update an Access Code](api-clients/access_codes/update.md) - * [Update Multiple Linked Access Codes](api-clients/access_codes/update-multiple-linked-access-codes.md) - * [Delete an Access Code](api-clients/access_codes/delete.md) - * [Pull Backup Access Code](api-clients/access_codes/pull_backup_access_code.md) - * [Unmanaged Access Codes](api-clients/access_codes/unmanaged/README.md) - * [List Unmanaged Access Codes](api-clients/access_codes/unmanaged/list.md) - * [Convert an Unmanaged Access Code](api-clients/access_codes/unmanaged/convert_to_managed.md) - * [Delete an Unmanaged Access Code](api-clients/access_codes/unmanaged/delete.md) -* [Locks](api-clients/locks/README.md) - * [Get Lock](api-clients/locks/get.md) - * [Lock a Lock](api-clients/locks/lock_door.md) - * [Unlock a Lock](api-clients/locks/unlock_door.md) - * [List Locks](api-clients/locks/list.md) -* [Access Control Systems](api/acs/README.md) +* [Access Codes](api/access_codes/README.md) + * [Create an Access Code](api/access_codes/create.md) + * [Create Multiple Linked Access Codes](api/access_codes/create_multiple.md) + * [List Access Codes](api/access_codes/list.md) + * [Get an Access Code](api/access_codes/get.md) + * [Update an Access Code](api/access_codes/update.md) + * [Update Multiple Linked Access Codes](api/access_codes/update-multiple-linked-access-codes.md) + * [Delete an Access Code](api/access_codes/delete.md) + * [Pull a Backup Access Code](api/access_codes/pull_backup_access_code.md) + * [Unmanaged Access Codes](api/access_codes/unmanaged/README.md) + * [List Unmanaged Access Codes](api/access_codes/unmanaged/list.md) + * [Get an Unmanaged Access Code](api/access_codes/unmanaged/get.md) + * [Convert an Unmanaged Access Code](api/access_codes/unmanaged/convert_to_managed.md) + * [Update an Unmanaged Access Code](api/access_codes/unmanaged/update.md) + * [Delete an Unmanaged Access Code](api/access_codes/unmanaged/delete.md) + * [Access Code Simulations](api/access_codes/simulate/README.md) + * [Simulate Creating an Unmanaged Access Code](api/access_codes/simulate/create_unmanaged_access_code.md) +* [Access Control Systems (ACS)](api/acs/README.md) * [Systems](api/acs/systems/README.md) * [List ACS Systems](api/acs/systems/list.md) * [Get an ACS System](api/acs/systems/get.md) @@ -217,6 +186,43 @@ * [Simulate that the Next Credential Encoding Will Succeed](api/acs/encoders/simulate/next_credential_encode_will_succeed.md) * [Simulate that the Next Credential Scan Will Fail](api/acs/encoders/simulate/next_credential_scan_will_fail.md) * [Simulate that the Next Credential Scan Will Succeed](api/acs/encoders/simulate/next_credential_scan_will_succeed.md) +* [Action Attempts](api-clients/action_attempts/README.md) + * [Get Action Attempt](api-clients/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) + * [List Client Sessions](api-clients/client_sessions/list.md) + * [Get a Client Session](api-clients/client_sessions/get.md) + * [Grant Access to a Client Session](api-clients/client_sessions/grant_access.md) + * [Delete a Client Session](api-clients/client_sessions/delete.md) +* [Connect Webviews](api-clients/connect_webviews/README.md) + * [Create a Connect Webview](api-clients/connect_webviews/create.md) + * [List Connect Webviews](api-clients/connect_webviews/list.md) + * [Get a Connect Webview](api-clients/connect_webviews/get.md) + * [Delete a Connect Webview](api-clients/connect_webviews/delete.md) +* [Connected Accounts](api-clients/connected_accounts/README.md) + * [Get a Connected Account](api-clients/connected_accounts/get.md) + * [List Connected Accounts](api-clients/connected_accounts/list.md) + * [Update a Connected Account](api-clients/connected_accounts/update.md) + * [Delete a Connected Account](api-clients/connected_accounts/delete.md) +* [Devices](api-clients/devices/README.md) + * [List Devices](api-clients/devices/list.md) + * [List Device Providers](api-clients/devices/list_device_providers.md) + * [Device Provider Metadata](reference/device-provider-metadata.md) + * [Get a Device](api-clients/devices/get.md) + * [Update a Device](api-clients/devices/update.md) + * [Unmanaged Devices](api-clients/devices/unmanaged/README.md) + * [Update an Unmanaged Device](api-clients/devices/unmanaged/update.md) + * [List Unmanaged Devices](api-clients/devices/unmanaged/list.md) + * [Get an Unmanaged Device](api-clients/devices/unmanaged/get.md) +* [Events](api-clients/events/README.md) + * [List Events](api-clients/events/list.md) + * [Get an Event](api-clients/events/get.md) +* [Locks](api-clients/locks/README.md) + * [Get Lock](api-clients/locks/get.md) + * [Lock a Lock](api-clients/locks/lock_door.md) + * [Unlock a Lock](api-clients/locks/unlock_door.md) + * [List Locks](api-clients/locks/list.md) * [Noise Sensors](api-clients/noise_sensors/README.md) * [Noise Thresholds](api-clients/noise_sensors/noise_thresholds/README.md) * [Create Noise Thresholds](api-clients/noise_sensors/noise_thresholds/create.md) @@ -270,11 +276,9 @@ * [List Enrollment Automations](api/user_identities/enrollment_automations/list.md) * [Get an Enrollment Automation](api/user_identities/enrollment_automations/get.md) * [Delete an Enrollment Automation](api/user_identities/enrollment_automations/delete.md) -* [Action Attempts](api-clients/action_attempts/README.md) - * [Get Action Attempt](api-clients/action_attempts/get.md) -* [Events](api-clients/events/README.md) - * [List Events](api-clients/events/list.md) - * [Get an Event](api-clients/events/get.md) +* [Workspaces](api-clients/workspaces/README.md) + * [Get Workspace](api-clients/workspaces/get.md) + * [Reset Workspace](api-clients/workspaces/reset_sandbox.md) ## 🛠️ Developer Tools diff --git a/docs/api/_report.md b/docs/api/_report.md index 6aeec9856..cdc7453d1 100644 --- a/docs/api/_report.md +++ b/docs/api/_report.md @@ -4,9 +4,6 @@ ### Routes -- `/access_codes` -- `/access_codes/simulate` -- `/access_codes/unmanaged` - `/action_attempts` - `/bridges` - `/client_sessions` @@ -26,21 +23,7 @@ ### Endpoints -- `/access_codes/create` -- `/access_codes/create_multiple` -- `/access_codes/delete` - `/access_codes/generate_code` -- `/access_codes/get` -- `/access_codes/list` -- `/access_codes/pull_backup_access_code` -- `/access_codes/update` -- `/access_codes/update_multiple` -- `/access_codes/simulate/create_unmanaged_access_code` -- `/access_codes/unmanaged/convert_to_managed` -- `/access_codes/unmanaged/delete` -- `/access_codes/unmanaged/get` -- `/access_codes/unmanaged/list` -- `/access_codes/unmanaged/update` - `/action_attempts/get` - `/action_attempts/list` - `/bridges/get` @@ -114,11 +97,11 @@ These items are intentionally undocumented. - `acs_user.is_latest_desired_state_synced_with_provider`: Only used internally. - `acs_user.latest_desired_state_synced_with_provider_at`: Only used internally. -- `acs_user.pending_modifications`: Experimental. +- `acs_user.pending_mutations`: Experimental. - `thermostat_schedule.unstable_is_override_allowed`: Unstable - `unmanaged_acs_user.is_latest_desired_state_synced_with_provider`: Only used internally. - `unmanaged_acs_user.latest_desired_state_synced_with_provider_at`: Only used internally. -- `unmanaged_acs_user.pending_modifications`: Experimental. +- `unmanaged_acs_user.pending_mutations`: Experimental. ### Namespaces @@ -154,6 +137,16 @@ These items are intentionally undocumented. ### Endpoint parameters +- `/access_codes/create` + - `sync`: Only used internally. +- `/access_codes/delete` + - `sync`: Only used internally. +- `/access_codes/update` + - `sync`: Only used internally. +- `/access_codes/unmanaged/convert_to_managed` + - `sync`: Only used internally. +- `/access_codes/unmanaged/delete` + - `sync`: Only used internally. - `/devices/list` - `exclude_if`: Only used internally. - `include_if`: Only used internally. @@ -192,18 +185,18 @@ Items that are intentionally undocumented are not included in this section. ### Resources -- `access_code` - `acs_credential_pool` - `acs_credential_provisioning_automation` - `client_session` - `connect_webview` - `connected_account` +- `device` - `device_provider` - `event` - `network` - `noise_threshold` -- `unmanaged_access_code` - `unmanaged_acs_access_group` +- `unmanaged_device` - `webhook` - `workspace` @@ -227,6 +220,8 @@ Items that are intentionally undocumented are not included in this section. - `acs_credential_provisioning_automation.credential_manager_acs_system_id` - `acs_credential_provisioning_automation.user_identity_id` - `acs_credential_provisioning_automation.workspace_id` +- `acs_system.acs_access_group_count` +- `acs_system.acs_user_count` - `acs_system.location` - `acs_system.system_type` - `acs_system.system_type_display_name` @@ -236,7 +231,7 @@ Items that are intentionally undocumented are not included in this section. - `acs_user.is_latest_desired_state_synced_with_provider` - `acs_user.is_managed` - `acs_user.latest_desired_state_synced_with_provider_at` -- `acs_user.pending_modifications` +- `acs_user.pending_mutations` - `client_session.client_session_id` - `client_session.connect_webview_ids` - `client_session.connected_account_ids` @@ -275,6 +270,18 @@ Items that are intentionally undocumented are not included in this section. - `connected_account.errors` - `connected_account.user_identifier` - `connected_account.warnings` +- `device.can_hvac_cool` +- `device.can_hvac_heat` +- `device.can_hvac_heat_cool` +- `device.can_program_offline_access_codes` +- `device.can_program_online_access_codes` +- `device.can_remotely_lock` +- `device.can_remotely_unlock` +- `device.can_simulate_connection` +- `device.can_simulate_disconnection` +- `device.can_simulate_removal` +- `device.can_turn_off_hvac` +- `device.custom_metadata` - `device_provider.can_hvac_cool` - `device_provider.can_hvac_heat` - `device_provider.can_hvac_heat_cool` @@ -302,8 +309,6 @@ Items that are intentionally undocumented are not included in this section. - `noise_threshold.noise_threshold_id` - `noise_threshold.noise_threshold_nrs` - `noise_threshold.starts_daily_at` -- `unmanaged_access_code.is_managed` -- `unmanaged_access_code.status` - `unmanaged_acs_access_group.access_group_type` - `unmanaged_acs_access_group.access_group_type_display_name` - `unmanaged_acs_access_group.display_name` @@ -315,7 +320,20 @@ Items that are intentionally undocumented are not included in this section. - `unmanaged_acs_user.is_latest_desired_state_synced_with_provider` - `unmanaged_acs_user.is_managed` - `unmanaged_acs_user.latest_desired_state_synced_with_provider_at` -- `unmanaged_acs_user.pending_modifications` +- `unmanaged_acs_user.pending_mutations` +- `unmanaged_device.can_hvac_cool` +- `unmanaged_device.can_hvac_heat` +- `unmanaged_device.can_hvac_heat_cool` +- `unmanaged_device.can_program_offline_access_codes` +- `unmanaged_device.can_program_online_access_codes` +- `unmanaged_device.can_remotely_lock` +- `unmanaged_device.can_remotely_unlock` +- `unmanaged_device.can_simulate_connection` +- `unmanaged_device.can_simulate_disconnection` +- `unmanaged_device.can_simulate_removal` +- `unmanaged_device.can_turn_off_hvac` +- `unmanaged_device.is_managed` +- `unmanaged_device.properties` - `user_identity.display_name` - `user_identity.full_name` - `webhook.event_types` @@ -330,20 +348,7 @@ Items that are intentionally undocumented are not included in this section. ### Endpoints -- `/access_codes/create` -- `/access_codes/create_multiple` -- `/access_codes/delete` - `/access_codes/generate_code` -- `/access_codes/get` -- `/access_codes/list` -- `/access_codes/update` -- `/access_codes/update_multiple` -- `/access_codes/simulate/create_unmanaged_access_code` -- `/access_codes/unmanaged/convert_to_managed` -- `/access_codes/unmanaged/delete` -- `/access_codes/unmanaged/get` -- `/access_codes/unmanaged/list` -- `/access_codes/unmanaged/update` - `/acs/credential_pools/list` - `/acs/credential_provisioning_automations/launch` - `/acs/entrances/grant_access` @@ -409,106 +414,25 @@ Items that are intentionally undocumented are not included in this section. ### Endpoint parameters - `/access_codes/create` - - `allow_external_modification` - `attempt_for_offline_device` - - `code` - - `common_code_key` - - `device_id` - - `ends_at` - - `is_external_modification_allowed` - - `is_offline_access_code` - - `is_one_time_use` - - `max_time_rounding` - - `name` - - `prefer_native_scheduling` - - `preferred_code_length` - - `starts_at` - `sync` - - `use_backup_access_code_pool` - `use_offline_access_code` - `/access_codes/create_multiple` - - `allow_external_modification` - `attempt_for_offline_device` - - `behavior_when_code_cannot_be_shared` - - `code` - - `device_ids` - - `ends_at` - - `is_external_modification_allowed` - - `is_offline_access_code` - - `is_one_time_use` - - `max_time_rounding` - - `name` - - `prefer_native_scheduling` - - `preferred_code_length` - - `starts_at` - - `use_backup_access_code_pool` - `use_offline_access_code` - `/access_codes/delete` - - `access_code_id` - - `device_id` - `sync` - `/access_codes/generate_code` - `device_id` -- `/access_codes/get` - - `access_code_id` - - `code` - - `device_id` -- `/access_codes/list` - - `access_code_ids` - - `device_id` - - `user_identifier_key` -- `/access_codes/pull_backup_access_code` - - `access_code_id` - `/access_codes/update` - - `access_code_id` - - `allow_external_modification` - `attempt_for_offline_device` - - `code` - - `device_id` - - `ends_at` - - `is_external_modification_allowed` - - `is_managed` - - `is_offline_access_code` - - `is_one_time_use` - - `max_time_rounding` - - `name` - - `prefer_native_scheduling` - - `preferred_code_length` - - `starts_at` - `sync` - - `type` - - `use_backup_access_code_pool` - `use_offline_access_code` -- `/access_codes/update_multiple` - - `common_code_key` - - `ends_at` - - `name` - - `starts_at` -- `/access_codes/simulate/create_unmanaged_access_code` - - `code` - - `device_id` - - `name` - `/access_codes/unmanaged/convert_to_managed` - - `access_code_id` - - `allow_external_modification` - - `force` - - `is_external_modification_allowed` - `sync` - `/access_codes/unmanaged/delete` - - `access_code_id` - `sync` -- `/access_codes/unmanaged/get` - - `access_code_id` - - `code` - - `device_id` -- `/access_codes/unmanaged/list` - - `device_id` - - `user_identifier_key` - `/access_codes/unmanaged/update` - - `access_code_id` - - `allow_external_modification` - - `force` - - `is_external_modification_allowed` - `is_managed` - `/acs/credential_pools/list` - `acs_system_id` @@ -826,6 +750,8 @@ These items are deprecated. - `backup_access_code` - `/acs/users/list` - `pagination` +- `/connected_accounts/list` + - `pagination` - `/events/get` - `message` - `/locks/get` diff --git a/docs/api/access_codes/README.md b/docs/api/access_codes/README.md new file mode 100644 index 000000000..e04338f85 --- /dev/null +++ b/docs/api/access_codes/README.md @@ -0,0 +1,1465 @@ +# Access Codes + +## The access_code Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + + +Represents a smart lock [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + +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`. + +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. + +{% tabs %} +{% tab title="JSON" %} +```json +{ + access_code_id: [example value], + code: [example value], + common_code_key: [example value], + created_at: [example value], + device_id: [example value], + ends_at: [example value], + errors: [example value], + is_backup: [example value], + is_backup_access_code_available: [example value], + is_external_modification_allowed: [example value], + is_managed: [example value], + is_offline_access_code: [example value], + is_one_time_use: [example value], + is_scheduled_on_device: [example value], + is_waiting_for_code_assignment: [example value], + name: [example value], + pulled_backup_access_code_id: [example value], + starts_at: [example value], + status: [example value], + type: [example value], + warnings: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Properties + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PropertyDescription
access_code_id UUID +Unique identifier for the access code. + + +
code String +Code used for access. Typically, a numeric or alphanumeric string. + + +
common_code_key String +Unique identifier for a group of access codes that share the same code. + + +
created_at Datetime +Date and time at which the access code was created. + + +
device_id UUID +Unique identifier for the device associated with the access code. + + +
ends_at Datetime +Date and time after which the time-bound access code becomes inactive. + + +
errors List of Objects +Errors associated with the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + +
is_backup Boolean +Indicates whether the access code is a backup code. + + +
is_backup_access_code_available Boolean +Indicates whether a backup access code is available for use if the primary access code is lost or compromised. + + +
is_external_modification_allowed Boolean +Indicates whether changes to the access code from external sources are permitted. + + +
is_managed Boolean +Indicates whether Seam manages the access code. + + +
is_offline_access_code Boolean +Indicates whether the access code is intended for use in offline scenarios. If `true`, this code can be created on a device without a network connection. + + +
is_one_time_use Boolean +Indicates whether the access code can only be used once. If `true`, the code becomes invalid after the first use. + + +
is_scheduled_on_device Boolean +Indicates whether the code is set on the device according to a preconfigured schedule. + + +
is_waiting_for_code_assignment Boolean +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. + + +
pulled_backup_access_code_id UUID +Identifier of the pulled backup access code. Used to associate the pulled backup access code with the original access code. + + +
starts_at Datetime +Date and time at which the time-bound access code becomes active. + + +
status Enum +Current status of the access code within the operational lifecycle. Values are `setting`, a transitional phase that indicates that the code is being configured or activated; `set`, which indicates that the code is active and operational; `unset`, which indicates a deactivated or unused state, either before activation or after deliberate deactivation; `removing`, which indicates a transitional period in which the code is being deleted or made inactive; and `unknown`, which indicates an indeterminate state, due to reasons such as system errors or incomplete data, that highlights a potential need for system review or troubleshooting. + +
+ +Enum values + +- `setting` +- `set` +- `unset` +- `removing` +- `unknown` +
+ + +
type Enum +Nature of the access code. Values are `ongoing` for access codes that are active continuously until deactivated manually or `time_bound` for access codes that have a specific duration. + +
+ +Enum values + +- `time_bound` +- `ongoing` +
+ + +
warnings List of Objects +Warnings associated with the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + +
+ +## Errors + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ErrorDescription
smartthings_failed_to_set_access_codeFailed to set code on SmartThings device.
smartthings_failed_to_set_after_multiple_retriesFailed to set code after multiple retries.
smartthings_no_free_slots_availableNo free slots available on the device.
failed_to_set_on_deviceFailed to set code on device.
failed_to_remove_from_deviceFailed to remove code from device.
duplicate_code_on_deviceDuplicate access code detected on device.
duplicate_code_attempt_preventedAn attempt to modify this access code was prevented.
igloohome_bridge_too_many_pending_jobsIgloohome bridge has too many pending jobs in the queue.
igloohome_bridge_offlineIgloohome bridge is offline.
igloohome_offline_access_code_no_variance_availableLock has reached maximum amount of codes.
kwikset_unable_to_confirm_codeUnable to confirm that the access code is set on Kwikset device.
kwikset_unable_to_confirm_deletionUnable to confirm the deletion of the access code on Kwikset device.
code_modified_external_to_seamCode was modified or removed externally after Seam successfully set it on the device.
august_lock_invalid_code_lengthInvalid code length for August lock.
august_device_programming_delayAccess code has not yet been fully moved to the device.
august_device_slots_fullAll access code slots on the device are full.
august_lock_missing_keypadAugust lock is missing a keypad.
august_lock_temporarily_offlineAugust lock is temporarily offline.
salto_ks_user_not_subscribedSalto site user is not subscribed.
hubitat_device_programming_delayAccess code has not yet been fully moved to the device.
hubitat_no_free_positions_availableNo free positions available on the device.
wyze_duplicate_code_nameDuplicate access code name detected.
wyze_potential_duplicate_codePotential duplicate access code detected.
dormakaba_oracode_no_valid_user_levelNo valid user level for Oracode.
account_disconnectedAccount is disconnected
salto_ks_subscription_limit_exceededSalto site user limit reached.
device_offlineDevice is offline
device_removedDevice has been removed
hub_disconnectedHub is disconnected
device_disconnectedDevice is disconnected
empty_backup_access_code_poolThe backup access code pool is empty.
august_lock_not_authorizedUser is not authorized to use the August Lock.
august_lock_missing_bridgeLock is not connected to the Seam Bridge.
ttlock_lock_not_paired_to_gatewayLock is not paired with a Gateway.
missing_device_credentialsMissing device credentials.
auxiliary_heat_runningThe auxiliary heat is running.
subscription_requiredSubscription required to connect.
invalid_credentialsCredentials provided were invalid.
bridge_disconnectedIndicates that the Seam API cannot communicate with [Seam Bridge](../../capability-guides/seam-bridge.md), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. + See also [Troubleshooting Your Access Control System](../../capability-guides/access-systems/troubleshooting-your-access-control-system.md#acs_system.errors.seam_bridge_disconnected).
+ +## Warnings + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
WarningDescription
smartthings_failed_to_set_access_codeFailed to set code on SmartThings device.
schlage_detected_duplicateDuplicate access code detected.
schlage_creation_outageReceived an error when attempting to create this code.
code_modified_external_to_seamCode was modified or removed externally after Seam successfully set it on the device.
delay_in_setting_on_deviceDelay in setting code on device.
delay_in_removing_from_deviceDelay in removing code from device.
third_party_integration_detectedThird-party integration detected that may cause access codes to fail.
august_device_programming_delayAccess code has not yet been fully moved to the device.
august_lock_temporarily_offlineAugust lock is temporarily offline.
igloo_algopin_must_be_used_within_24_hoursAlgopins must be used within 24 hours.
management_transferredManagement was transferred to another workspace.
kwikset_unable_to_confirm_codeUnable to confirm that the access code is set on Kwikset device.
+ +## Events + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EventDescription
access_code.created +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was created. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.changed +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was changed. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.scheduled_on_device +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was [scheduled natively](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#native-scheduling) on a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- code String + + Code for the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.set_on_device +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was set on a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- code String + + Code for the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.removed_from_device +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was removed from a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.delay_in_setting_on_device +There was an unusually long delay in setting an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) on a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.failed_to_set_on_device +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) failed to be set on a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.deleted +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was deleted. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- code String + + Code for the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.delay_in_removing_from_device +There was an unusually long delay in removing an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) from a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.failed_to_remove_from_device +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) failed to be removed from a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.modified_external_to_seam +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was modified outside of Seam. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.deleted_external_to_seam +An [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) was deleted outside of Seam. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.backup_access_code_pulled +A [backup access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/backup-access-codes) was pulled from the backup access code pool and set on a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- backup_access_code_id String + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.unmanaged.converted_to_managed +An [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) was converted successfully to a managed access code. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.unmanaged.failed_to_convert_to_managed +An [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) failed to be converted to a managed access code. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.unmanaged.created +An [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) was created on a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
access_code.unmanaged.removed +An [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) was removed from a device. + +
+ +Properties + +- access_code_id UUID + + ID of the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + + +- connected_account_id UUID + + ID of the [connected account](../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- device_id UUID + + ID of the [device](../../core-concepts/devices/README.md). + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + + +
+ +
+ +## Endpoints + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EndpointDescription
/access_codes/createCreates a new [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).
/access_codes/create_multipleCreates new [access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) that share a common code across multiple devices.
/access_codes/deleteDeletes an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).
/access_codes/getReturns a specified [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).
/access_codes/listReturns a list of all [access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).
/access_codes/pull_backup_access_codeRetrieves 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).
/access_codes/updateUpdates a specified active or upcoming [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).
/access_codes/update_multipleUpdates [access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) that share a common code across multiple devices.
diff --git a/docs/api/access_codes/create.md b/docs/api/access_codes/create.md new file mode 100644 index 000000000..326638f7a --- /dev/null +++ b/docs/api/access_codes/create.md @@ -0,0 +1,126 @@ +# Create an Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates a new [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/create ⇒ { access_code } +``` +{% 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the device for which to create the new access code. +
allow_external_modification Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/api/access_codes#external-modification) of the code is allowed. Default: `false`. +
attempt_for_offline_device Boolean +
code String + +Code to be used for access. +
common_code_key String + +Key to identify access codes that should have the same code. Any two access codes with the same `common_code_key` are guaranteed to have the same `code`. See also [Creating and Updating Multiple Linked Access Codes](../../capability-guides/smart-locks/access-codes/creating-and-updating-multiple-linked-access-codes.md). +
ends_at String + +Date and time at which the validity of the new access code ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. +
is_external_modification_allowed Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/api/access_codes#external-modification) of the code is allowed. Default: `false`. +
is_offline_access_code Boolean + +Indicates whether the access code is an [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes). +
is_one_time_use Boolean + +Indicates whether the [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes) is a single-use access code. +
max_time_rounding String + +Maximum rounding adjustment. To create a daily-bound [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes) for devices that support this feature, set this parameter to `1d`. +
name String + +Name of the new access code. +
prefer_native_scheduling Boolean + +Indicates whether [native scheduling](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#native-scheduling) should be used for time-bound codes when supported by the provider. Default: `true`. +
preferred_code_length Number + +Preferred code length. Only applicable if you do not specify a `code`. If the affected device does not support the preferred code length, Seam reverts to using the shortest supported code length. +
starts_at String + +Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
use_backup_access_code_pool Boolean + +Indicates whether to use a [backup access code pool](https://docs.seam.co/latest/core-concepts/access-codes#backup-access-codes) provided by Seam. If `true`, you can use [`/access_codes/pull_backup_access_code`](../../api-clients/access_codes/pull_backup_access_code.md). +
use_offline_access_code Boolean +
+ +## Response + +[access\_code](./) + +**`CREATE_ACCESS_CODE`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/create_multiple.md b/docs/api/access_codes/create_multiple.md new file mode 100644 index 000000000..42dfcdfa1 --- /dev/null +++ b/docs/api/access_codes/create_multiple.md @@ -0,0 +1,130 @@ +# Create Multiple Linked Access Codes + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates new [access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) that share a common code across multiple devices. + +Users with more than one door lock in a property may want to create groups of linked access codes, all of which have the same code (PIN). For example, a short-term rental host may want to provide guests the same PIN for both a front door lock and a back door lock. + +If you specify a custom code, Seam assigns this custom code to each of the resulting access codes. However, in this case, Seam does not link these access codes together with a `common_code_key`. That is, `common_code_key` remains null for these access codes. + +If you want to change these access codes that are not linked by a `common_code_key`, you cannot use `/access_codes/update_multiple`. However, you can update each of these access codes individually, using `/access_codes/update`. + +See also [Creating and Updating Multiple Linked Access Codes](../../capability-guides/smart-locks/access-codes/creating-and-updating-multiple-linked-access-codes.md). + +{% tabs %} +{% tab title="Signature" %} +``` +PUT /access_codes/create_multiple ⇒ { access_codes: [access_code, …] } +``` +{% 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
device_ids Array of UUIDs (Required) + +IDs of the devices for which to create the new access codes. +
allow_external_modification Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/api/access_codes#external-modification) of the code is allowed. Default: `false`. +
attempt_for_offline_device Boolean +
behavior_when_code_cannot_be_shared String + +Desired behavior if any device cannot share a code. If `throw` (default), no access codes will be created if any device cannot share a code. If `create_random_code`, a random code will be created on devices that cannot share a code. +
code String + +Code to be used for access. +
ends_at String + +Date and time at which the validity of the new access code ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. +
is_external_modification_allowed Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/api/access_codes#external-modification) of the code is allowed. Default: `false`. +
is_offline_access_code Boolean + +Indicates whether the access code is an [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes). +
is_one_time_use Boolean + +Indicates whether the [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes) is a single-use access code. +
max_time_rounding String + +Maximum rounding adjustment. To create a daily-bound [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes) for devices that support this feature, set this parameter to `1d`. +
name String + +Name of the new access code. +
prefer_native_scheduling Boolean + +Indicates whether [native scheduling](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#native-scheduling) should be used for time-bound codes when supported by the provider. Default: `true`. +
preferred_code_length Number + +Preferred code length. Only applicable if you do not specify a `code`. If the affected device does not support the preferred code length, Seam reverts to using the shortest supported code length. +
starts_at String + +Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
use_backup_access_code_pool Boolean + +Indicates whether to use a [backup access code pool](https://docs.seam.co/latest/core-concepts/access-codes#backup-access-codes) provided by Seam. If `true`, you can use [`/access_codes/pull_backup_access_code`](../../api-clients/access_codes/pull_backup_access_code.md). +
use_offline_access_code Boolean +
+ +## Response + +Array of [access\_codes](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of access_code +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/delete.md b/docs/api/access_codes/delete.md new file mode 100644 index 000000000..dcd73cadf --- /dev/null +++ b/docs/api/access_codes/delete.md @@ -0,0 +1,47 @@ +# Delete an Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes an [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/delete ⇒ void +``` +{% 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 + + + + + + + +
ParameterDescription
access_code_id String (Required) + +ID of the access code to delete. +
device_id String + +ID of the device for which to delete the access code. +
+ +## Response + +void diff --git a/docs/api/access_codes/get.md b/docs/api/access_codes/get.md new file mode 100644 index 000000000..72fc47993 --- /dev/null +++ b/docs/api/access_codes/get.md @@ -0,0 +1,61 @@ +# Get an Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + +You must specify either `access_code_id` or both `device_id` and `code`. + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/get ⇒ { access_code } +``` +{% endtab %} +{% endtabs %} + +
+ +Authentication Methods + +- API key +- Client session token + +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
+ +## Request Parameters + + + + + + + + + +
ParameterDescription
access_code_id String + +ID of the access code that you want to get. You must specify either `access_code_id` or both `device_id` and `code`. +
code String + +Code of the access code that you want to get. You must specify either `access_code_id` or both `device_id` and `code`. +
device_id String + +ID of the device containing the access code that you want to get. You must specify either `access_code_id` or both `device_id` and `code`. +
+ +## Response + +[access\_code](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of access_code +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/list.md b/docs/api/access_codes/list.md new file mode 100644 index 000000000..e7d1b0774 --- /dev/null +++ b/docs/api/access_codes/list.md @@ -0,0 +1,63 @@ +# List Access Codes + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + +Specify either `device_id` or `access_code_ids`. + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/list ⇒ { access_codes: [access_code, …] } +``` +{% 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 + + + + + + + + + +
ParameterDescription
access_code_ids Array of UUIDs + +IDs of the access codes that you want to retrieve. Specify either `device_id` or `access_code_ids`. +
device_id String + +ID of the device for which you want to list access codes. Specify either `device_id` or `access_code_ids`. +
user_identifier_key String + +Your user ID for the user by which to filter access codes. +
+ +## Response + +Array of [access\_codes](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of access_code +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/pull_backup_access_code.md b/docs/api/access_codes/pull_backup_access_code.md new file mode 100644 index 000000000..5b6ed9c8a --- /dev/null +++ b/docs/api/access_codes/pull_backup_access_code.md @@ -0,0 +1,59 @@ +# Pull a Backup Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +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. + +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 only pull backup access codes for time-bound access codes. + +Before pulling a backup access code, make sure that the device's `properties.supports_backup_access_code_pool` is `true`. Then, to activate the backup pool, set `use_backup_access_code_pool` to `true` when creating an access code. + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/pull_backup_access_code ⇒ { access_code } +``` +{% 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 + + + + + +
ParameterDescription
access_code_id String (Required) + +ID of the access code for which you want to pull a backup access code. +
+ +## Response + +[access\_code](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of access_code +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/simulate/README.md b/docs/api/access_codes/simulate/README.md new file mode 100644 index 000000000..07e502ef9 --- /dev/null +++ b/docs/api/access_codes/simulate/README.md @@ -0,0 +1,14 @@ +# Access Code Simulations + + + +## Endpoints + + + + + + + + +
EndpointDescription
/access_codes/simulate/create_unmanaged_access_codeSimulates the creation of an [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) in a [sandbox workspace](../../../core-concepts/workspaces/README.md#sandbox-workspaces).
diff --git a/docs/api/access_codes/simulate/create_unmanaged_access_code.md b/docs/api/access_codes/simulate/create_unmanaged_access_code.md new file mode 100644 index 000000000..dd74fc147 --- /dev/null +++ b/docs/api/access_codes/simulate/create_unmanaged_access_code.md @@ -0,0 +1,61 @@ +# Simulate Creating an Unmanaged Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Simulates the creation of an [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) in a [sandbox workspace](../../../core-concepts/workspaces/README.md#sandbox-workspaces). + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/simulate/create_unmanaged_access_code ⇒ { access_code } +``` +{% 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 + + + + + + + + + +
ParameterDescription
code String (Required) + +Code of the simulated unmanaged access code. +
device_id String (Required) + +ID of the device for which you want to simulate the creation of an unmanaged access code. +
name String (Required) + +Name of the simulated unmanaged access code. +
+ +## Response + +[unmanaged\_access\_code](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of unmanaged_access_code +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/unmanaged/README.md b/docs/api/access_codes/unmanaged/README.md new file mode 100644 index 000000000..80e9057ae --- /dev/null +++ b/docs/api/access_codes/unmanaged/README.md @@ -0,0 +1,388 @@ +# Unmanaged Access Code + +## The unmanaged_access_code Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + + +Represents an [unmanaged smart lock access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes). + +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. + +When you create an access code on a device in Seam, it is created as a managed access code. Access codes that exist on a device that were not created through Seam are considered unmanaged codes. We strictly limit the operations that can be performed on unmanaged codes. + +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. + +{% tabs %} +{% tab title="JSON" %} +```json +{ + access_code_id: [example value], + code: [example value], + created_at: [example value], + device_id: [example value], + ends_at: [example value], + errors: [example value], + is_managed: [example value], + name: [example value], + starts_at: [example value], + status: [example value], + type: [example value], + warnings: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Properties + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PropertyDescription
access_code_id UUID +Unique identifier for the access code. + + +
code String +Code used for access. Typically, a numeric or alphanumeric string. + + +
created_at Datetime +Date and time at which the access code was created. + + +
device_id UUID +Unique identifier for the device associated with the access code. + + +
ends_at Datetime +Date and time after which the time-bound access code becomes inactive. + + +
errors List of Objects +Errors associated with the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + +
is_managed Boolean +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. + + +
starts_at Datetime +Date and time at which the time-bound access code becomes active. + + +
status String +Current status of the access code within the operational lifecycle. `set` indicates that the code is active and operational. + + +
type Enum +Nature of the access code. Values are `ongoing` for access codes that are active continuously until deactivated manually or `time_bound` for access codes that have a specific duration. + +
+ +Enum values + +- `time_bound` +- `ongoing` +
+ + +
warnings List of Objects +Warnings associated with the [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + + +
+ +## Errors + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ErrorDescription
smartthings_failed_to_set_access_codeFailed to set code on SmartThings device.
smartthings_failed_to_set_after_multiple_retriesFailed to set code after multiple retries.
smartthings_no_free_slots_availableNo free slots available on the device.
failed_to_set_on_deviceFailed to set code on device.
failed_to_remove_from_deviceFailed to remove code from device.
duplicate_code_on_deviceDuplicate access code detected on device.
duplicate_code_attempt_preventedAn attempt to modify this access code was prevented.
igloohome_bridge_too_many_pending_jobsIgloohome bridge has too many pending jobs in the queue.
igloohome_bridge_offlineIgloohome bridge is offline.
igloohome_offline_access_code_no_variance_availableLock has reached maximum amount of codes.
kwikset_unable_to_confirm_codeUnable to confirm that the access code is set on Kwikset device.
kwikset_unable_to_confirm_deletionUnable to confirm the deletion of the access code on Kwikset device.
code_modified_external_to_seamCode was modified or removed externally after Seam successfully set it on the device.
august_lock_invalid_code_lengthInvalid code length for August lock.
august_device_programming_delayAccess code has not yet been fully moved to the device.
august_device_slots_fullAll access code slots on the device are full.
august_lock_missing_keypadAugust lock is missing a keypad.
august_lock_temporarily_offlineAugust lock is temporarily offline.
salto_ks_user_not_subscribedSalto site user is not subscribed.
hubitat_device_programming_delayAccess code has not yet been fully moved to the device.
hubitat_no_free_positions_availableNo free positions available on the device.
wyze_duplicate_code_nameDuplicate access code name detected.
wyze_potential_duplicate_codePotential duplicate access code detected.
dormakaba_oracode_no_valid_user_levelNo valid user level for Oracode.
account_disconnectedAccount is disconnected
salto_ks_subscription_limit_exceededSalto site user limit reached.
device_offlineDevice is offline
device_removedDevice has been removed
hub_disconnectedHub is disconnected
device_disconnectedDevice is disconnected
empty_backup_access_code_poolThe backup access code pool is empty.
august_lock_not_authorizedUser is not authorized to use the August Lock.
august_lock_missing_bridgeLock is not connected to the Seam Bridge.
ttlock_lock_not_paired_to_gatewayLock is not paired with a Gateway.
missing_device_credentialsMissing device credentials.
auxiliary_heat_runningThe auxiliary heat is running.
subscription_requiredSubscription required to connect.
invalid_credentialsCredentials provided were invalid.
bridge_disconnectedIndicates that the Seam API cannot communicate with [Seam Bridge](../../../capability-guides/seam-bridge.md), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. + See also [Troubleshooting Your Access Control System](../../../capability-guides/access-systems/troubleshooting-your-access-control-system.md#acs_system.errors.seam_bridge_disconnected).
+ +## Warnings + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
WarningDescription
smartthings_failed_to_set_access_codeFailed to set code on SmartThings device.
schlage_detected_duplicateDuplicate access code detected.
schlage_creation_outageReceived an error when attempting to create this code.
code_modified_external_to_seamCode was modified or removed externally after Seam successfully set it on the device.
delay_in_setting_on_deviceDelay in setting code on device.
delay_in_removing_from_deviceDelay in removing code from device.
third_party_integration_detectedThird-party integration detected that may cause access codes to fail.
august_device_programming_delayAccess code has not yet been fully moved to the device.
august_lock_temporarily_offlineAugust lock is temporarily offline.
igloo_algopin_must_be_used_within_24_hoursAlgopins must be used within 24 hours.
management_transferredManagement was transferred to another workspace.
kwikset_unable_to_confirm_codeUnable to confirm that the access code is set on Kwikset device.
+ + +## Endpoints + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EndpointDescription
/access_codes/unmanaged/convert_to_managedConverts an [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) to an [access code managed through Seam](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes).
/access_codes/unmanaged/deleteDeletes an [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes).
/access_codes/unmanaged/getReturns a specified [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes).
/access_codes/unmanaged/listReturns a list of all [unmanaged access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes).
/access_codes/unmanaged/updateUpdates a specified [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes).
diff --git a/docs/api/access_codes/unmanaged/convert_to_managed.md b/docs/api/access_codes/unmanaged/convert_to_managed.md new file mode 100644 index 000000000..96c18885e --- /dev/null +++ b/docs/api/access_codes/unmanaged/convert_to_managed.md @@ -0,0 +1,61 @@ +# Convert an Unmanaged Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Converts an [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) to an [access code managed through Seam](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + +An unmanaged access code has a limited set of operations that you can perform on it. Once you convert an unmanaged access code to a managed access code, the full set of access code operations and lifecycle events becomes available for it. + +Note that not all device providers support converting an unmanaged access code to a managed access code. + +{% tabs %} +{% tab title="Signature" %} +``` +PATCH /access_codes/unmanaged/convert_to_managed ⇒ void +``` +{% 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 + + + + + + + + + + + +
ParameterDescription
access_code_id String (Required) + +ID of the unmanaged access code that you want to convert to a managed access code. +
allow_external_modification Boolean + +Indicates whether external modification of the access code is allowed. +
force Boolean + +Indicates whether to force the access code conversion. To switch management of an access code from one Seam workspace to another, set `force` to `true`. +
is_external_modification_allowed Boolean + +Indicates whether external modification of the access code is allowed. +
+ +## Response + +void diff --git a/docs/api/access_codes/unmanaged/delete.md b/docs/api/access_codes/unmanaged/delete.md new file mode 100644 index 000000000..691eed8cf --- /dev/null +++ b/docs/api/access_codes/unmanaged/delete.md @@ -0,0 +1,42 @@ +# Delete an Unmanaged Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes an [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes). + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/unmanaged/delete ⇒ void +``` +{% 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 + + + + + +
ParameterDescription
access_code_id String (Required) + +ID of the unmanaged access code to delete. +
+ +## Response + +void diff --git a/docs/api/access_codes/unmanaged/get.md b/docs/api/access_codes/unmanaged/get.md new file mode 100644 index 000000000..23b3822ed --- /dev/null +++ b/docs/api/access_codes/unmanaged/get.md @@ -0,0 +1,63 @@ +# Get an Unmanaged Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes). + +You must specify either `access_code_id` or both `device_id` and `code`. + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/unmanaged/get ⇒ { access_code } +``` +{% 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 + + + + + + + + + +
ParameterDescription
access_code_id String + +ID of the unmanaged access code that you want to get. You must specify either `access_code_id` or both `device_id` and `code`. +
code String + +Code of the unmanaged access code that you want to get. You must specify either `access_code_id` or both `device_id` and `code`. +
device_id String + +ID of the device containing the unmanaged access code that you want to get. You must specify either `access_code_id` or both `device_id` and `code`. +
+ +## Response + +[unmanaged\_access\_code](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of unmanaged_access_code +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/unmanaged/list.md b/docs/api/access_codes/unmanaged/list.md new file mode 100644 index 000000000..9321f41b4 --- /dev/null +++ b/docs/api/access_codes/unmanaged/list.md @@ -0,0 +1,56 @@ +# List Unmanaged Access Codes + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [unmanaged access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes). + +{% tabs %} +{% tab title="Signature" %} +``` +POST /access_codes/unmanaged/list ⇒ { access_codes: [unmanaged_access_code, …] } +``` +{% 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 + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the device for which you want to list unmanaged access codes. +
user_identifier_key String + +Your user ID for the user by which to filter unmanaged access codes. +
+ +## Response + +Array of [unmanaged\_access\_codes](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of unmanaged_access_code +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/access_codes/unmanaged/update.md b/docs/api/access_codes/unmanaged/update.md new file mode 100644 index 000000000..2c3348625 --- /dev/null +++ b/docs/api/access_codes/unmanaged/update.md @@ -0,0 +1,60 @@ +# Update an Unmanaged Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Updates a specified [unmanaged access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes). + +{% tabs %} +{% tab title="Signature" %} +``` +PATCH /access_codes/unmanaged/update ⇒ void +``` +{% 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 + + + + + + + + + + + + + +
ParameterDescription
access_code_id String (Required) + +ID of the unmanaged access code that you want to update. +
is_managed Boolean (Required) +
allow_external_modification Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#external-modification) of the code is allowed. +
force Boolean + +Indicates whether to force the unmanaged access code update. +
is_external_modification_allowed Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#external-modification) of the code is allowed. +
+ +## Response + +void diff --git a/docs/api/access_codes/update.md b/docs/api/access_codes/update.md new file mode 100644 index 000000000..016adf03e --- /dev/null +++ b/docs/api/access_codes/update.md @@ -0,0 +1,125 @@ +# Update an Access Code + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Updates a specified active or upcoming [access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes). + +See also [Modifying Access Codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/modifying-access-codes). + +{% tabs %} +{% tab title="Signature" %} +``` +PUT /access_codes/update ⇒ void +``` +{% 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
access_code_id String (Required) + +ID of the access code that you want to update. +
allow_external_modification Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/api/access_codes#external-modification) of the code is allowed. Default: `false`. +
attempt_for_offline_device Boolean +
code String + +Code to be used for access. +
device_id String + +ID of the device containing the access code that you want to update. +
ends_at String + +Date and time at which the validity of the new access code ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. +
is_external_modification_allowed Boolean + +Indicates whether [external modification](https://docs.seam.co/latest/api/access_codes#external-modification) of the code is allowed. Default: `false`. +
is_managed Boolean + +Indicates whether the access code is managed through Seam. Note that to convert an unmanaged access code into a managed access code, use `/access_codes/unmanaged/convert_to_managed`. +
is_offline_access_code Boolean + +Indicates whether the access code is an [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes). +
is_one_time_use Boolean + +Indicates whether the [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes) is a single-use access code. +
max_time_rounding String + +Maximum rounding adjustment. To create a daily-bound [offline access code](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/offline-access-codes) for devices that support this feature, set this parameter to `1d`. +
name String + +Name of the new access code. +
prefer_native_scheduling Boolean + +Indicates whether [native scheduling](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#native-scheduling) should be used for time-bound codes when supported by the provider. Default: `true`. +
preferred_code_length Number + +Preferred code length. Only applicable if you do not specify a `code`. If the affected device does not support the preferred code length, Seam reverts to using the shortest supported code length. +
starts_at String + +Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
type String + +Type to which you want to convert the access code. To convert a time-bound access code to an ongoing access code, set `type` to `ongoing`. See also [Changing a time-bound access code to permanent access](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/modifying-access-codes#special-case-2-changing-a-time-bound-access-code-to-permanent-access). +
use_backup_access_code_pool Boolean + +Indicates whether to use a [backup access code pool](https://docs.seam.co/latest/core-concepts/access-codes#backup-access-codes) provided by Seam. If `true`, you can use [`/access_codes/pull_backup_access_code`](../../api-clients/access_codes/pull_backup_access_code.md). +
use_offline_access_code Boolean +
+ +## Response + +void diff --git a/docs/api/access_codes/update_multiple.md b/docs/api/access_codes/update_multiple.md new file mode 100644 index 000000000..9c5119d95 --- /dev/null +++ b/docs/api/access_codes/update_multiple.md @@ -0,0 +1,61 @@ +# Update Multiple Linked Access Codes + +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Updates [access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes) that share a common code across multiple devices. + +Specify the `common_code_key` to identify the set of access codes that you want to update. + +See also [Update Linked Access Codes](../../capability-guides/smart-locks/access-codes/creating-and-updating-multiple-linked-access-codes.md#update-linked-access-codes). + +{% tabs %} +{% tab title="Signature" %} +``` +PATCH /access_codes/update_multiple ⇒ void +``` +{% 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 + + + + + + + + + + + +
ParameterDescription
common_code_key String (Required) + +Key that links the group of access codes, assigned on creation by `/access_codes/create_multiple`. +
ends_at String + +Date and time at which the validity of the new access code ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. +
name String + +Name of the new access code. +
starts_at String + +Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
+ +## Response + +void diff --git a/docs/api/acs/README.md b/docs/api/acs/README.md index da76448fa..f7f0c9bc9 100644 --- a/docs/api/acs/README.md +++ b/docs/api/acs/README.md @@ -2,7 +2,7 @@ description: Systems for managing and monitoring access to physical spaces --- -# Access Control Systems +# Access Control Systems (ACS) Access control systems centralize access authorization for buildings, which means that you can use a single system to grant users access to one or more entrances. An access control system manages the following elements: @@ -21,6 +21,8 @@ To grant access using the Seam access control system API, use the following basi ## Resources +The Access Control Systems (ACS) namespace contains the following resources: + ### [`acs_system`](./systems/README.md#acs_system) Represents an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -28,6 +30,7 @@ Within an `acs_system`, create [`acs_user`s](https://docs.seam.co/latest/api/acs For details about the resources associated with an access control system, see the [access control systems namespace](https://docs.seam.co/latest/api/acs). +--- ### [`acs_user`](./users/README.md#acs_user) Represents a [user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -35,11 +38,13 @@ An `acs_user` typically refers to an individual who requires access, like an emp For details about how to configure `acs_user`s in your access control system, see the corresponding [system integration guide](../../device-and-system-integration-guides/overview.md#access-control-systems). +--- ### [`acs_entrance`](./entrances/README.md#acs_entrance) Represents an [entrance](../../capability-guides/access-systems/retrieving-entrance-details.md) within an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). In an access control system, an entrance is a secured door, gate, zone, or other method of entry. You can list details for all the `acs_entrance` resources in your workspace or get these details for a specific `acs_entrance`. You can also list all entrances associated with a specific credential, and you can list all credentials associated with a specific entrance. +--- ### [`acs_access_group`](./access_groups/README.md#acs_access_group) Group that defines the entrances to which a set of users has access and, in some cases, the access schedule for these entrances and users. @@ -47,6 +52,7 @@ Some access control systems use [access group](https://docs.seam.co/latest/capab To learn whether your access control system supports access groups, see the corresponding [system integration guide](../../device-and-system-integration-guides/overview.md#access-control-systems). +--- ### [`acs_credential`](./credentials/README.md#acs_credential) Means by which an [access control system user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) gains access at an [entrance](../../capability-guides/access-systems/retrieving-entrance-details.md). The `acs_credential` object represents a [credential](../../capability-guides/access-systems/managing-credentials.md) that provides an ACS user access within an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -54,6 +60,7 @@ An access control system generally uses digital means of access to authorize a u For each `acs_credential`, you define the access method. You can also specify additional properties, such as a PIN code, depending on the credential type. +--- ### [`acs_encoder`](./encoders/README.md#acs_encoder) Represents a hardware device that encodes [credential](../../capability-guides/access-systems/managing-credentials.md) data onto physical cards within an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -70,3 +77,4 @@ Separately, the Seam API also supports card scanning, which enables you to scan To verify if your access control system requires a card encoder, see the corresponding [system integration guide](../../device-and-system-integration-guides/overview.md#access-control-systems). +--- diff --git a/docs/api/acs/access_groups/README.md b/docs/api/acs/access_groups/README.md index 62031cc8e..faf422f94 100644 --- a/docs/api/acs/access_groups/README.md +++ b/docs/api/acs/access_groups/README.md @@ -1,6 +1,13 @@ # Access Groups -## `acs_access_group` +## The acs_access_group Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + Group that defines the entrances to which a set of users has access and, in some cases, the access schedule for these entrances and users. @@ -8,210 +15,258 @@ Some access control systems use [access group](https://docs.seam.co/latest/capab To learn whether your access control system supports access groups, see the corresponding [system integration guide](../../../device-and-system-integration-guides/overview.md#access-control-systems). -### `access_group_type` +{% tabs %} +{% tab title="JSON" %} +```json +{ + access_group_type: [example value], + access_group_type_display_name: [example value], + acs_access_group_id: [example value], + acs_system_id: [example value], + created_at: [example value], + display_name: [example value], + external_type: [example value], + external_type_display_name: [example value], + is_managed: [example value], + name: [example value], + warnings: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Properties + + + + + + + + + + + + -Format: `String` + + -### `external_type` + + + + -Format: `Boolean` + + -### `name` + + ---- + + + + -### [`/acs/access_groups/add_user`](./add_user.md) +
PropertyDescription
access_group_type Enum {% hint style="warning" %} **Deprecated**. Use `external_type`. {% endhint %} -Format: `Enum` +
+ +Enum values -Possible enum values: - `pti_unit` - `pti_access_level` - `salto_ks_access_group` - `brivo_group` - `salto_space_group` - `dormakaba_community_access_group` +
---- -### `access_group_type_display_name` +
access_group_type_display_name String {% hint style="warning" %} **Deprecated**. Use `external_type_display_name`. {% endhint %} -Format: `String` - ---- - -### `acs_access_group_id` -Format: `UUID` +
acs_access_group_id UUID ID of the access group. ---- - -### `acs_system_id` -Format: `UUID` +
acs_system_id UUID ID of the access control system that contains the access group. ---- - -### `created_at` -Format: `Datetime` +
created_at Datetime Date and time at which the access group was created. ---- -### `display_name` +
display_name String ---- +
external_type Enum +Brand-specific terminology for the access group type. -Format: `Enum` +
-Brand-specific terminology for the access group type. +Enum values -Possible enum values: - `pti_unit` - `pti_access_level` - `salto_ks_access_group` - `brivo_group` - `salto_space_group` - `dormakaba_community_access_group` +
---- - -### `external_type_display_name` -Format: `String` +
external_type_display_name String Display name that corresponds to the brand-specific terminology for the access group type. ---- -### `is_managed` +
is_managed Boolean ---- +
name String +Name of the access group. -Format: `String` -Name of the access group. +
warnings List of Objects +Warnings associated with the `acs_access_group`. -### `warnings` +
-Format: `List` +Child Object Properties -Item format: `Object` +- created_at Datetime -Warnings associated with the `acs_access_group`. + Date and time at which Seam created the warning. -
-created_at Format: Datetime -Date and time at which Seam created the warning. -
-
+- message String -message Format: String + Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. -Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. -
-
-warning_code Format: String -Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. +- warning_code String + + Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. + +
---- -### `workspace_id` -Format: `UUID` +
workspace_id UUID ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the access group. ---- -## Endpoints +
-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). -### [`/acs/access_groups/get`](./get.md) +## Events -Returns a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). -### [`/acs/access_groups/list`](./list.md) + + + + +
EventDescription
acs_access_group.deleted +An ACS access group was deleted. -Returns a list of all [access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). -### [`/acs/access_groups/list_accessible_entrances`](./list_accessible_entrances.md) +
-Returns a list of all accessible entrances for a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). -### [`/acs/access_groups/list_users`](./list_users.md) +Properties -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). -### [`/acs/access_groups/remove_user`](./remove_user.md) +- acs_access_group_id UUID -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). ---- -## Events +- acs_system_id UUID -### `acs_access_group.deleted` + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -An ACS access group was deleted. -
-acs_access_group_id Format: UUID -
-
+- connected_account_id UUID -acs_system_id Format: UUID + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
-connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
+- created_at Datetime -created_at Format: Datetime + Date and time at which the event was created. -Date and time at which the event was created. -
-
-event_id Format: UUID -ID of the event. -
-
+- event_id UUID -event_type Format: String -
-
+ ID of the event. -occurred_at Format: Datetime -Date and time at which the event occurred. -
-
-workspace_id Format: UUID +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). + -ID of the [workspace](../../../core-concepts/workspaces/README.md).
---- +
+ +## Endpoints + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EndpointDescription
/acs/access_groups/add_userAdds 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).
/acs/access_groups/getReturns a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).
/acs/access_groups/listReturns a list of all [access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).
/acs/access_groups/list_accessible_entrancesReturns a list of all accessible entrances for a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups).
/acs/access_groups/list_usersReturns 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).
/acs/access_groups/remove_userRemoves 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).
diff --git a/docs/api/acs/access_groups/add_user.md b/docs/api/acs/access_groups/add_user.md index 983d05410..f44fd7bf4 100644 --- a/docs/api/acs/access_groups/add_user.md +++ b/docs/api/acs/access_groups/add_user.md @@ -1,14 +1,61 @@ # Add an ACS User to an Access Group +- [Request Parameters](./#request-parameters) +- [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). + +{% tabs %} +{% tab title="Signature" %} ``` PUT /acs/access_groups/add_user ⇒ void ``` +{% endtab %} +{% endtabs %} -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). +
+ +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 + + + + + + + +
ParameterDescription
acs_access_group_id String (Required) + +ID of the desired access group. +
acs_user_id String (Required) + +ID of the desired user. +
+ +## Response + +void + +--- + +## Examples + +### Add an ACS user to an access group + +Specify the `acs_access_group_id` and `acs_user_id` to add an ACS user to an access group. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.accessGroups.addUser({ @@ -17,7 +64,7 @@ await seam.acs.accessGroups.addUser({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.acs.accessGroups.addUser({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.access_groups.add_user( @@ -34,7 +81,7 @@ seam.acs.access_groups.add_user( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.access_groups.add_user( @@ -51,7 +98,7 @@ seam.acs.access_groups.add_user( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->access_groups->add_user( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs access-groups add-user --acs_access_group_id "44444444-4444-4444-4444-444444444444" --acs_user_id "33333333-3333-3333-3333-333333333333" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam acs access-groups add-user --acs_access_group_id "44444444-4444-4444-4444-4 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +157,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -119,32 +166,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_access_group_id` -Type: `string` -Required: Yes - -ID of the desired access group. - -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the desired user. - -*** - -## Return Type - -void diff --git a/docs/api/acs/access_groups/get.md b/docs/api/acs/access_groups/get.md index e33a8cb19..115aba9c6 100644 --- a/docs/api/acs/access_groups/get.md +++ b/docs/api/acs/access_groups/get.md @@ -1,14 +1,65 @@ # Get an Access Group +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/access_groups/get ⇒ { acs_access_group } ``` +{% endtab %} +{% endtabs %} -Returns a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). +
+ +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 + + + + + +
ParameterDescription
acs_access_group_id String (Required) + +ID of the desired access group. +
+ +## Response + +[acs\_access\_group](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_access_group +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get a specific access group + +Specify the `acs_access_group_id` of the access group that you want to retrieve. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.accessGroups.get({ @@ -16,7 +67,7 @@ await seam.acs.accessGroups.get({ }); ``` -#### Response +#### Output ```javascript { @@ -35,13 +86,13 @@ await seam.acs.accessGroups.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.access_groups.get(acs_access_group_id="44444444-4444-4444-4444-444444444444") ``` -#### Response +#### Output ```python AcsAccessGroup( @@ -60,13 +111,13 @@ AcsAccessGroup( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.access_groups.get(acs_access_group_id: "44444444-4444-4444-4444-444444444444") ``` -#### Response +#### Output ```ruby { @@ -85,7 +136,7 @@ seam.acs.access_groups.get(acs_access_group_id: "44444444-4444-4444-4444-4444444 {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->access_groups->get( ); ``` -#### Response +#### Output ```php acs->access_groups->get( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs access-groups get --acs_access_group_id "44444444-4444-4444-4444-444444444444" ``` -#### Response +#### Output ```seam_cli { @@ -139,7 +190,7 @@ seam acs access-groups get --acs_access_group_id "44444444-4444-4444-4444-444444 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -157,7 +208,7 @@ func main() { } ``` -#### Response +#### Output ```go api.AcsAccessGroup{AcsAccessGroupId: "44444444-4444-4444-4444-444444444444", Name: "Lobby Access", DisplayName: "Lobby Access", AccessGroupTypeDisplayName: "PTI access level", AccessGroupType: "pti_access_level", ExternalType: "pti_access_level", ExternalTypeDisplayName: "PTI access level", AcsSystemId: "11111111-1111-1111-1111-111111111111", WorkspaceId: "00000000-0000-0000-0000-000000000000", CreatedAt: "2023-11-30T06:27:15.437Z"} @@ -166,23 +217,4 @@ api.AcsAccessGroup{AcsAccessGroupId: "44444444-4444-4444-4444-444444444444", Nam {% endtabs %} -## Authentication Methods -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_access_group_id` - -Type: `string` -Required: Yes - -ID of the desired access group. - -*** - -## Return Type - -[acs\_access\_group](./) diff --git a/docs/api/acs/access_groups/list.md b/docs/api/acs/access_groups/list.md index 103b790ba..f78246110 100644 --- a/docs/api/acs/access_groups/list.md +++ b/docs/api/acs/access_groups/list.md @@ -1,14 +1,70 @@ # List Access Groups +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/access_groups/list ⇒ { acs_access_groups: [acs_access_group, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). +
+ +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 + + + + + + + +
ParameterDescription
acs_system_id String + +ID of the access control system for which you want to retrieve all access groups. +
acs_user_id String + +ID of the user for which you want to retrieve all access groups. +
+ +## Response + +Array of [acs\_access\_groups](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_access_group +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List access groups + +To filter the list of access groups, include an `acs_system_id` or `acs_user_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.accessGroups.list({ @@ -17,7 +73,7 @@ await seam.acs.accessGroups.list({ }); ``` -#### Response +#### Output ```javascript [ @@ -38,7 +94,7 @@ await seam.acs.accessGroups.list({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.access_groups.list( @@ -47,7 +103,7 @@ seam.acs.access_groups.list( ) ``` -#### Response +#### Output ```python [ @@ -68,7 +124,7 @@ seam.acs.access_groups.list( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.access_groups.list( @@ -77,7 +133,7 @@ seam.acs.access_groups.list( ) ``` -#### Response +#### Output ```ruby [ @@ -98,7 +154,7 @@ seam.acs.access_groups.list( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->access_groups->list( ); ``` -#### Response +#### Output ```php acs->access_groups->list( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs access-groups list --acs_system_id "11111111-1111-1111-1111-111111111111" --acs_user_id "33333333-3333-3333-3333-333333333333" ``` -#### Response +#### Output ```seam_cli [ @@ -157,7 +213,7 @@ seam acs access-groups list --acs_system_id "11111111-1111-1111-1111-11111111111 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -176,7 +232,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsAccessGroup{api.AcsAccessGroup{AcsAccessGroupId: "44444444-4444-4444-4444-444444444444", Name: "Lobby Access", DisplayName: "Lobby Access", AccessGroupTypeDisplayName: "PTI access level", AccessGroupType: "pti_access_level", ExternalType: "pti_access_level", ExternalTypeDisplayName: "PTI access level", AcsSystemId: "11111111-1111-1111-1111-111111111111", WorkspaceId: "00000000-0000-0000-0000-000000000000", CreatedAt: "2023-11-30T06:27:15.437Z"}} @@ -185,32 +241,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_system_id` - -Type: `string` -Required: No - -ID of the access control system for which you want to retrieve all access groups. - -*** - -### `acs_user_id` - -Type: `string` -Required: No - -ID of the user for which you want to retrieve all access groups. - -*** - -## Return Type -Array<[acs\_access\_group](./)> diff --git a/docs/api/acs/access_groups/list_accessible_entrances.md b/docs/api/acs/access_groups/list_accessible_entrances.md index 265ab76d3..550198f9b 100644 --- a/docs/api/acs/access_groups/list_accessible_entrances.md +++ b/docs/api/acs/access_groups/list_accessible_entrances.md @@ -1,14 +1,65 @@ # List Entrances Accessible to an Access Group +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all accessible entrances for a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/access_groups/list_accessible_entrances ⇒ { acs_entrances: [acs_entrance, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all accessible entrances for a specified [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). +
+ +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 + + + + + +
ParameterDescription
acs_access_group_id String (Required) + +ID of the access group for which you want to retrieve all accessible entrances. +
+ +## Response + +Array of [acs\_entrances](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_entrance +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List accessible entrances for an access group + +Specify the `acs_access_group_id` to retrieve all accessible entrances for an access group. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.accessGroups.listAccessibleEntrances({ @@ -16,7 +67,7 @@ await seam.acs.accessGroups.listAccessibleEntrances({ }); ``` -#### Response +#### Output ```javascript [ @@ -33,7 +84,7 @@ await seam.acs.accessGroups.listAccessibleEntrances({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.access_groups.list_accessible_entrances( @@ -41,7 +92,7 @@ seam.acs.access_groups.list_accessible_entrances( ) ``` -#### Response +#### Output ```python [ @@ -58,7 +109,7 @@ seam.acs.access_groups.list_accessible_entrances( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.access_groups.list_accessible_entrances( @@ -66,7 +117,7 @@ seam.acs.access_groups.list_accessible_entrances( ) ``` -#### Response +#### Output ```ruby [ @@ -83,7 +134,7 @@ seam.acs.access_groups.list_accessible_entrances( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->access_groups->list_accessible_entrances( ); ``` -#### Response +#### Output ```php acs->access_groups->list_accessible_entrances( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs access-groups list-accessible-entrances --acs_access_group_id "44444444-4444-4444-4444-444444444444" ``` -#### Response +#### Output ```seam_cli [ @@ -133,7 +184,7 @@ seam acs access-groups list-accessible-entrances --acs_access_group_id "44444444 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -151,7 +202,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsEntrance{api.AcsEntrance{AcsEntranceId: "66666666-6666-6666-6666-666666666666", Name: "Main Entrance", DisplayName: "Main Entrance", AcsSystemId: "11111111-1111-1111-1111-111111111111", WorkspaceId: "00000000-0000-0000-0000-000000000000", CreatedAt: "2024-10-15T12:00:00.000Z"}} @@ -160,23 +211,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_access_group_id` - -Type: `string` -Required: Yes - -ID of the access group for which you want to retrieve all accessible entrances. - -*** - -## Return Type -Array<[acs\_entrance](./)> diff --git a/docs/api/acs/access_groups/list_users.md b/docs/api/acs/access_groups/list_users.md index c366a94a6..936cbca80 100644 --- a/docs/api/acs/access_groups/list_users.md +++ b/docs/api/acs/access_groups/list_users.md @@ -1,14 +1,65 @@ # List ACS Users in an Access Group +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +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). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/access_groups/list_users ⇒ { acs_users: [acs_user, …] } ``` +{% endtab %} +{% endtabs %} -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). +
+ +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 + + + + + +
ParameterDescription
acs_access_group_id String (Required) + +ID of the access group for which you want to retrieve all users. +
+ +## Response + +Array of [acs\_users](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_user +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List ACS users in an access group + +Specify the `acs_access_group_id` to retrieve all ACS users in an access group. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.accessGroups.listUsers({ @@ -16,7 +67,7 @@ await seam.acs.accessGroups.listUsers({ }); ``` -#### Response +#### Output ```javascript [ @@ -45,7 +96,7 @@ await seam.acs.accessGroups.listUsers({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.access_groups.list_users( @@ -53,7 +104,7 @@ seam.acs.access_groups.list_users( ) ``` -#### Response +#### Output ```python [ @@ -82,13 +133,13 @@ seam.acs.access_groups.list_users( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.access_groups.list_users(acs_access_group_id: "44444444-4444-4444-4444-444444444444") ``` -#### Response +#### Output ```ruby [ @@ -117,7 +168,7 @@ seam.acs.access_groups.list_users(acs_access_group_id: "44444444-4444-4444-4444- {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->access_groups->list_users( ); ``` -#### Response +#### Output ```php acs->access_groups->list_users( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs access-groups list-users --acs_access_group_id "44444444-4444-4444-4444-444444444444" ``` -#### Response +#### Output ```seam_cli [ @@ -191,7 +242,7 @@ seam acs access-groups list-users --acs_access_group_id "44444444-4444-4444-4444 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -209,7 +260,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsUser{api.AcsUser{AcsUserId: "33333333-3333-3333-3333-333333333333", DisplayName: "Jane Doe", FullName: "Jane Doe", Email: "jane@example.com", EmailAddress: "jane@example.com", PhoneNumber: "+15555550100", AcsSystemId: "11111111-1111-1111-1111-111111111111", WorkspaceId: "00000000-0000-0000-0000-000000000000", CreatedAt: "2024-04-05T07:14:28.531Z", IsSuspended: false, AccessSchedule: api.AcsUserAccessSchedule{StartsAt: "2024-03-01T10:40:00.000Z", EndsAt: "2024-03-04T10:40:00.000Z"}, UserIdentityId: "22222222-2222-2222-2222-222222222222", UserIdentityFullName: "Jane Doe", UserIdentityEmailAddress: "jane@example.com", UserIdentityPhoneNumber: "+15555550100"}} @@ -218,23 +269,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_access_group_id` - -Type: `string` -Required: Yes - -ID of the access group for which you want to retrieve all users. - -*** - -## Return Type -Array<[acs\_user](./)> diff --git a/docs/api/acs/access_groups/remove_user.md b/docs/api/acs/access_groups/remove_user.md index 6902f8394..fa15fcad2 100644 --- a/docs/api/acs/access_groups/remove_user.md +++ b/docs/api/acs/access_groups/remove_user.md @@ -1,14 +1,61 @@ # Remove an ACS User from an Access Group +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +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). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/access_groups/remove_user ⇒ void ``` +{% endtab %} +{% endtabs %} -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). +
+ +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 + + + + + + + +
ParameterDescription
acs_access_group_id String (Required) + +ID of the desired access group. +
acs_user_id String (Required) + +ID of the desired user. +
+ +## Response + +void + +--- + +## Examples + +### Remove an ACS user from an access group + +Specify the `acs_access_group_id` and `acs_user_id` to remove an ACS user from an access group. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.accessGroups.removeUser({ @@ -17,7 +64,7 @@ await seam.acs.accessGroups.removeUser({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.acs.accessGroups.removeUser({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.access_groups.remove_user( @@ -34,7 +81,7 @@ seam.acs.access_groups.remove_user( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.access_groups.remove_user( @@ -51,7 +98,7 @@ seam.acs.access_groups.remove_user( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->access_groups->remove_user( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs access-groups remove-user --acs_access_group_id "44444444-4444-4444-4444-444444444444" --acs_user_id "33333333-3333-3333-3333-333333333333" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam acs access-groups remove-user --acs_access_group_id "44444444-4444-4444-444 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +157,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -119,32 +166,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_access_group_id` -Type: `string` -Required: Yes - -ID of the desired access group. - -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the desired user. - -*** - -## Return Type - -void diff --git a/docs/api/acs/credentials/README.md b/docs/api/acs/credentials/README.md index 1a69523ec..e300bad36 100644 --- a/docs/api/acs/credentials/README.md +++ b/docs/api/acs/credentials/README.md @@ -1,6 +1,13 @@ # Credentials -## `acs_credential` +## The acs_credential Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + Means by which an [access control system user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) gains access at an [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). The `acs_credential` object represents a [credential](../../../capability-guides/access-systems/managing-credentials.md) that provides an ACS user access within an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -8,142 +15,184 @@ An access control system generally uses digital means of access to authorize a u For each `acs_credential`, you define the access method. You can also specify additional properties, such as a PIN code, depending on the credential type. -### `access_method` +{% tabs %} +{% tab title="JSON" %} +```json +{ + access_method: [example value], + acs_credential_id: [example value], + acs_credential_pool_id: [example value], + acs_system_id: [example value], + acs_user_id: [example value], + assa_abloy_vostio_metadata: [example value], + card_number: [example value], + code: [example value], + created_at: [example value], + display_name: [example value], + ends_at: [example value], + errors: [example value], + external_type: [example value], + external_type_display_name: [example value], + is_issued: [example value], + is_latest_desired_state_synced_with_provider: [example value], + is_managed: [example value], + is_multi_phone_sync_credential: [example value], + is_one_time_use: [example value], + issued_at: [example value], + latest_desired_state_synced_with_provider_at: [example value], + parent_acs_credential_id: [example value], + starts_at: [example value], + visionline_metadata: [example value], + warnings: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Properties + + + + + + + -Format: `UUID` + + + + + + + + -Format: `String` + + -### `ends_at` + + + + + + + + + + + + + + + + + + + + + ---- - -### `is_multi_phone_sync_credential` + + + + + + + + + + + + + + + + + + + + + + + +
PropertyDescription
access_method Enum +Access method for the [credential](../../../capability-guides/access-systems/managing-credentials.md). Supported values: `code`, `card`, `mobile_key`. -Format: `Enum` +
-Access method for the [credential](../../../capability-guides/access-systems/managing-credentials.md). Supported values: `code`, `card`, `mobile_key`. +Enum values -Possible enum values: - `code` - `card` - `mobile_key` +
---- - -### `acs_credential_id` -Format: `UUID` +
acs_credential_id UUID ID of the [credential](../../../capability-guides/access-systems/managing-credentials.md). ---- -### `acs_credential_pool_id` +
acs_credential_pool_id UUID ---- - -### `acs_system_id` - -Format: `UUID` +
acs_system_id UUID ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) that contains the [credential](../../../capability-guides/access-systems/managing-credentials.md). ---- - -### `acs_user_id` -Format: `UUID` +
acs_user_id UUID ID of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to whom the [credential](../../../capability-guides/access-systems/managing-credentials.md) belongs. ---- - -### `assa_abloy_vostio_metadata` -Format: `Object` +
assa_abloy_vostio_metadata Object Vostio-specific metadata for the [credential](../../../capability-guides/access-systems/managing-credentials.md).
-door_names Format: List Item format: String -
-
+Child Properties -endpoint_id Format: String -
-
+- door_names List of Strings -key_id Format: String -
-
-key_issuing_request_id Format: String -
-
-override_guest_acs_entrance_ids Format: List Item format: String -
---- +- endpoint_id String -### `card_number` -Format: `String` -Number of the card associated with the [credential](../../../capability-guides/access-systems/managing-credentials.md). +- key_id String ---- -### `code` -Format: `String` +- key_issuing_request_id String -Access (PIN) code for the [credential](../../../capability-guides/access-systems/managing-credentials.md). ---- -### `created_at` +- override_guest_acs_entrance_ids List of Strings -Format: `Datetime` -Date and time at which the [credential](../../../capability-guides/access-systems/managing-credentials.md) was created. + ---- -### `display_name` +
card_number String +Number of the card associated with the [credential](../../../capability-guides/access-systems/managing-credentials.md). -Display name that corresponds to the [credential](../../../capability-guides/access-systems/managing-credentials.md) type. ---- +
code String +Access (PIN) code for the [credential](../../../capability-guides/access-systems/managing-credentials.md). -Format: `String` -Date and time at which the [credential](../../../capability-guides/access-systems/managing-credentials.md) validity ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. +
created_at Datetime +Date and time at which the [credential](../../../capability-guides/access-systems/managing-credentials.md) was created. ---- -### `errors` +
display_name String +Display name that corresponds to the [credential](../../../capability-guides/access-systems/managing-credentials.md) type. -Format: `List` -Item format: `Object` +
ends_at String +Date and time at which the [credential](../../../capability-guides/access-systems/managing-credentials.md) validity ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. + + +
errors List of Objects Errors associated with the [credential](../../../capability-guides/access-systems/managing-credentials.md).
-error_code Format: String -
-
+Child Object Properties + +- error_code String + + + +- message String + -message Format: String
---- -### `external_type` -Format: `Enum` +
external_type Enum Brand-specific terminology for the [credential](../../../capability-guides/access-systems/managing-credentials.md) type. Supported values: `pti_card`, `brivo_credential`, `hid_credential`, `visionline_card`. -Possible enum values: +
+ +Enum values + - `pti_card` - `brivo_credential` - `hid_credential` @@ -151,365 +200,442 @@ Possible enum values: - `salto_ks_credential` - `assa_abloy_vostio_key` - `salto_space_key` +
---- - -### `external_type_display_name` -Format: `String` +
external_type_display_name String Display name that corresponds to the brand-specific terminology for the [credential](../../../capability-guides/access-systems/managing-credentials.md) type. ---- - -### `is_issued` -Format: `Boolean` +
is_issued Boolean Indicates whether the [credential](../../../capability-guides/access-systems/managing-credentials.md) has been encoded onto a card. ---- - -### `is_latest_desired_state_synced_with_provider` -Format: `Boolean` +
is_latest_desired_state_synced_with_provider Boolean Indicates whether the latest state of the [credential](../../../capability-guides/access-systems/managing-credentials.md) has been synced from Seam to the provider. ---- - -### `is_managed` -Format: `Boolean` +
is_managed Boolean -Format: `Boolean` +
is_multi_phone_sync_credential Boolean Indicates whether the [credential](../../../capability-guides/access-systems/managing-credentials.md) is a [multi-phone sync credential](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system#what-are-multi-phone-sync-credentials). ---- -### `is_one_time_use` - -Format: `Boolean` +
is_one_time_use Boolean Indicates whether the [credential](../../../capability-guides/access-systems/managing-credentials.md) can only be used once. If `true`, the code becomes invalid after the first use. ---- -### `issued_at` - -Format: `Datetime` +
issued_at Datetime Date and time at which the [credential](../../../capability-guides/access-systems/managing-credentials.md) was encoded onto a card. ---- - -### `latest_desired_state_synced_with_provider_at` -Format: `Datetime` +
latest_desired_state_synced_with_provider_at Datetime Date and time at which the state of the [credential](../../../capability-guides/access-systems/managing-credentials.md) was most recently synced from Seam to the provider. ---- -### `parent_acs_credential_id` - -Format: `UUID` +
parent_acs_credential_id UUID ID of the parent [credential](../../../capability-guides/access-systems/managing-credentials.md). ---- - -### `starts_at` -Format: `String` +
starts_at String Date and time at which the [credential](../../../capability-guides/access-systems/managing-credentials.md) validity starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. ---- - -### `visionline_metadata` -Format: `Object` +
visionline_metadata Object Visionline-specific metadata for the [credential](../../../capability-guides/access-systems/managing-credentials.md).
-auto_join Format: Boolean -
-
+Child Properties -card_function_type Format: Enum +- auto_join Boolean -Possible enum values: -- `guest` -- `staff` -
-
-card_id Format: String -
-
-common_acs_entrance_ids Format: List Item format: UUID -
-
+- card_function_type Enum -credential_id Format: String -
-
-guest_acs_entrance_ids Format: List Item format: UUID -
-is_valid Format: Boolean -
-
+Enum values: -joiner_acs_credential_ids Format: List Item format: UUID + - `guest` + - `staff`
---- -### [`warnings`](./#warnings-1) -Format: `List` -Item format: `Object` +- card_id String -Warnings associated with the [credential](../../../capability-guides/access-systems/managing-credentials.md). ---- -### `workspace_id` +- common_acs_entrance_ids List of UUIDs + + + +- credential_id String + -Format: `UUID` +- guest_acs_entrance_ids List of UUIDs + + + +- is_valid Boolean + + + +- joiner_acs_credential_ids List of UUIDs + + + + + +
warnings List of Objects +Warnings associated with the [credential](../../../capability-guides/access-systems/managing-credentials.md). + + +
workspace_id UUID ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the [credential](../../../capability-guides/access-systems/managing-credentials.md). ---- + +
## Warnings -### `waiting_to_be_issued` + + + -Indicates that the [credential](../../../capability-guides/access-systems/managing-credentials.md) is waiting to be issued. + + + ---- + + + -### `schedule_externally_modified` + + + -Indicates that the schedule of one of the [credential](../../../capability-guides/access-systems/managing-credentials.md)'s children was modified externally. + + + ---- + + + -### `schedule_modified` + + +
WarningDescription
waiting_to_be_issuedIndicates that the [credential](../../../capability-guides/access-systems/managing-credentials.md) is waiting to be issued.
schedule_externally_modifiedIndicates that the schedule of one of the [credential](../../../capability-guides/access-systems/managing-credentials.md)'s children was modified externally.
schedule_modifiedIndicates that the schedule of the [credential](../../../capability-guides/access-systems/managing-credentials.md) was modified to avoid creating a credential with a start date in the past.
being_deletedIndicates that the [credential](../../../capability-guides/access-systems/managing-credentials.md) is being deleted.
unknown_issue_with_acs_credentialAn unknown issue occurred while syncing the state of the [credential](../../../capability-guides/access-systems/managing-credentials.md) with the provider. This issue may affect the proper functioning of the credential.
needs_to_be_reissuedAccess permissions for the [credential](../../../capability-guides/access-systems/managing-credentials.md) have changed. [Reissue](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/creating-and-encoding-card-based-credentials.md) (re-encode) the credential. This issue may affect the proper functioning of the credential.
-Indicates that the schedule of the [credential](../../../capability-guides/access-systems/managing-credentials.md) was modified to avoid creating a credential with a start date in the past. +## Events ---- + + + + + + + + + + +
EventDescription
acs_credential.deleted +An [ACS credential](../../../capability-guides/access-systems/managing-credentials.md) was deleted. -### `being_deleted` +
-Indicates that the [credential](../../../capability-guides/access-systems/managing-credentials.md) is being deleted. +Properties ---- +- acs_credential_id UUID -### `unknown_issue_with_acs_credential` -An unknown issue occurred while syncing the state of the [credential](../../../capability-guides/access-systems/managing-credentials.md) with the provider. This issue may affect the proper functioning of the credential. ---- +- acs_system_id UUID -### `needs_to_be_reissued` + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -Access permissions for the [credential](../../../capability-guides/access-systems/managing-credentials.md) have changed. [Reissue](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/creating-and-encoding-card-based-credentials.md) (re-encode) the credential. This issue may affect the proper functioning of the credential. ---- -## Endpoints +- connected_account_id UUID -### [`/acs/credentials/assign`](./assign.md) + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -Assigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) to a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### [`/acs/credentials/create`](./create.md) -Creates a new [credential](../../../capability-guides/access-systems/managing-credentials.md) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### [`/acs/credentials/delete`](./delete.md) -Deletes a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). -### [`/acs/credentials/get`](./get.md) +- created_at Datetime -Returns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). -### [`/acs/credentials/list`](./list.md) + Date and time at which the event was created. -Returns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md). -### [`/acs/credentials/list_accessible_entrances`](./list_accessible_entrances.md) -Returns a list of all [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a [credential](https://docs.seam.co/latest/api/acs/credentials) grants access. -### [`/acs/credentials/unassign`](./unassign.md) -Unassigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) from a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### [`/acs/credentials/update`](./update.md) +- event_id UUID -Updates the code and ends at date and time for a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). + ID of the event. ---- -## Events -### `acs_credential.deleted` +- event_type String -An [ACS credential](../../../capability-guides/access-systems/managing-credentials.md) was deleted. -
-acs_credential_id Format: UUID -
-
+- occurred_at Datetime -acs_system_id Format: UUID + Date and time at which the event occurred. -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
-connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
+- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). -created_at Format: Datetime -Date and time at which the event was created.
-
-event_id Format: UUID +
acs_credential.issued +An [ACS credential](../../../capability-guides/access-systems/managing-credentials.md) was issued. -ID of the event. -
-event_type Format: String -
-
+Properties -occurred_at Format: Datetime +- acs_credential_id UUID -Date and time at which the event occurred. -
-
-workspace_id Format: UUID -ID of the [workspace](../../../core-concepts/workspaces/README.md). -
---- +- acs_system_id UUID -### `acs_credential.issued` + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -An [ACS credential](../../../capability-guides/access-systems/managing-credentials.md) was issued. -
-acs_credential_id Format: UUID -
-
+- connected_account_id UUID -acs_system_id Format: UUID + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
-connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
+- created_at Datetime -created_at Format: Datetime + Date and time at which the event was created. -Date and time at which the event was created. -
-
-event_id Format: UUID -ID of the event. -
-
+- event_id UUID -event_type Format: String -
-
+ ID of the event. -occurred_at Format: Datetime -Date and time at which the event occurred. -
-
-workspace_id Format: UUID +- event_type String -ID of the [workspace](../../../core-concepts/workspaces/README.md). -
---- -### `acs_credential.reissued` -An [ACS credential](../../../capability-guides/access-systems/managing-credentials.md) was reissued. +- occurred_at Datetime -
+ Date and time at which the event occurred. -acs_credential_id Format: UUID -
-
-acs_system_id Format: UUID -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
+- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). -connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md).
-
-created_at Format: Datetime +
acs_credential.reissued +An [ACS credential](../../../capability-guides/access-systems/managing-credentials.md) was reissued. -Date and time at which the event was created. -
-event_id Format: UUID +Properties -ID of the event. -
-
+- acs_credential_id UUID + + + +- acs_system_id UUID + + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). + + + +- connected_account_id UUID + + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- event_id UUID + + ID of the event. + + + +- event_type String -event_type Format: String -
-
-occurred_at Format: Datetime -Date and time at which the event occurred. +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). + +
+ +
acs_credential.invalidated +An [ACS credential](../../../capability-guides/access-systems/managing-credentials.md) was invalidated. +
-workspace_id Format: UUID +Properties + +- acs_credential_id UUID + + + +- acs_system_id UUID + + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). + + + +- connected_account_id UUID + + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). + -ID of the [workspace](../../../core-concepts/workspaces/README.md).
---- +
+ +## Endpoints + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EndpointDescription
/acs/credentials/assignAssigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) to a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
/acs/credentials/createCreates a new [credential](../../../capability-guides/access-systems/managing-credentials.md) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
/acs/credentials/deleteDeletes a specified [credential](../../../capability-guides/access-systems/managing-credentials.md).
/acs/credentials/getReturns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md).
/acs/credentials/listReturns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md).
/acs/credentials/list_accessible_entrancesReturns a list of all [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a [credential](https://docs.seam.co/latest/api/acs/credentials) grants access.
/acs/credentials/unassignUnassigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) from a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
/acs/credentials/updateUpdates the code and ends at date and time for a specified [credential](../../../capability-guides/access-systems/managing-credentials.md).
diff --git a/docs/api/acs/credentials/assign.md b/docs/api/acs/credentials/assign.md index e1cae31f5..104963607 100644 --- a/docs/api/acs/credentials/assign.md +++ b/docs/api/acs/credentials/assign.md @@ -1,14 +1,61 @@ # Assign a Credential to an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Assigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) to a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /acs/credentials/assign ⇒ void ``` +{% endtab %} +{% endtabs %} -Assigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) to a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
+ +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 + + + + + + + +
ParameterDescription
acs_credential_id String (Required) + +ID of the desired credential. +
acs_user_id String (Required) + +ID of the desired user. +
+ +## Response + +void + +--- + +## Examples + +### Assign a credential to an ACS user + +Specify the desired `acs_user_id` and `acs_credential_id` to assign a credential to an ACS user. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.assign({ @@ -17,7 +64,7 @@ await seam.acs.credentials.assign({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.acs.credentials.assign({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.assign( @@ -34,7 +81,7 @@ seam.acs.credentials.assign( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.assign( @@ -51,7 +98,7 @@ seam.acs.credentials.assign( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->assign( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials assign --acs_user_id "33333333-3333-3333-3333-333333333333" --acs_credential_id "66666666-6666-6666-6666-666666666666" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam acs credentials assign --acs_user_id "33333333-3333-3333-3333-333333333333" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +157,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -119,32 +166,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_credential_id` -Type: `string` -Required: Yes - -ID of the desired credential. - -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the desired user. - -*** - -## Return Type - -void diff --git a/docs/api/acs/credentials/create.md b/docs/api/acs/credentials/create.md index af1e25bfe..8275d07e9 100644 --- a/docs/api/acs/credentials/create.md +++ b/docs/api/acs/credentials/create.md @@ -1,14 +1,115 @@ # Create a Credential for an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates a new [credential](../../../capability-guides/access-systems/managing-credentials.md) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/credentials/create ⇒ { acs_credential } ``` +{% endtab %} +{% endtabs %} -Creates a new [credential](../../../capability-guides/access-systems/managing-credentials.md) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
+ +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 + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
access_method String (Required) + +Access method for the new credential. Supported values: `code`, `card`, `mobile_key`. +
acs_user_id String (Required) + +ID of the ACS user to whom the new credential belongs. +
allowed_acs_entrance_ids Array of UUIDs + +Set of IDs of the [entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md) for which the new credential grants access. +
assa_abloy_vostio_metadata Object + +Vostio-specific metadata for the new credential. +
code String + +Access (PIN) code for the new credential. There may be manufacturer-specific code restrictions. For details, see the applicable [device or system integration guide](../../../device-and-system-integration-guides/overview.md). +
credential_manager_acs_system_id String + +ACS system ID of the credential manager for the new credential. +
ends_at String + +Date and time at which the validity of the new credential ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. +
is_multi_phone_sync_credential Boolean + +Indicates whether the new credential is a [multi-phone sync credential](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system#what-are-multi-phone-sync-credentials). +
salto_space_metadata Object + +Salto Space-specific metadata for the new credential. +
starts_at String + +Date and time at which the validity of the new credential starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
visionline_metadata Object + +Visionline-specific metadata for the new credential. +
+ +## Response + +[acs\_credential](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_credential +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Create a credential for an ACS user + +Specify the `acs_user_id` and `access_method` to create a new credential. You can also specify additional parameters, depending on the `access_method`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.create({ @@ -25,7 +126,7 @@ await seam.acs.credentials.create({ }); ``` -#### Response +#### Output ```javascript { @@ -43,7 +144,7 @@ await seam.acs.credentials.create({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.create( @@ -60,7 +161,7 @@ seam.acs.credentials.create( ) ``` -#### Response +#### Output ```python AcsCredential( @@ -78,7 +179,7 @@ AcsCredential( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.create( @@ -95,7 +196,7 @@ seam.acs.credentials.create( ) ``` -#### Response +#### Output ```ruby { @@ -113,7 +214,7 @@ seam.acs.credentials.create( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->create( ); ``` -#### Response +#### Output ```php acs->credentials->create( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials create --acs_user_id "33333333-3333-3333-3333-333333333333" --access_method "mobile_key" --allowed_acs_entrance_ids ["55555555-5555-5555-5555-555555555555","55555555-5555-5555-5555-000000000000"] --credential_manager_acs_system_id "88888888-8888-8888-8888-888888888888" --is_multi_phone_sync_credential true --starts_at "2024-03-01T10:40:00Z" --ends_at "2024-03-04T10:40:00Z" ``` -#### Response +#### Output ```seam_cli { @@ -174,7 +275,7 @@ seam acs credentials create --acs_user_id "33333333-3333-3333-3333-333333333333" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -198,7 +299,7 @@ func main() { } ``` -#### Response +#### Output ```go api.AcsCredential{AcsCredentialId: "99999999-9999-9999-9999-999999999999", AcsUserId: "33333333-3333-3333-3333-333333333333", DisplayName: "Multi Phone Sync Credential", Code: nil, AcsSystemId: "88888888-8888-8888-8888-888888888888", AccessMethod: "mobile_key", WorkspaceId: "00000000-0000-0000-0000-000000000000", CreatedAt: "2024-04-12T03:56:22.396Z", IsMultiPhoneSyncCredential: true} @@ -207,113 +308,4 @@ api.AcsCredential{AcsCredentialId: "99999999-9999-9999-9999-999999999999", AcsUs {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `access_method` -Type: `string` -Required: Yes - -Access method for the new credential. Supported values: `code`, `card`, `mobile_key`. - -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the ACS user to whom the new credential belongs. - -*** - -### `allowed_acs_entrance_ids` - -Type: `array` -Required: No - -Set of IDs of the [entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md) for which the new credential grants access. - -*** - -### `assa_abloy_vostio_metadata` - -Type: `object` -Required: No - -Vostio-specific metadata for the new credential. - -*** - -### `code` - -Type: `string` -Required: No - -Access (PIN) code for the new credential. There may be manufacturer-specific code restrictions. For details, see the applicable [device or system integration guide](../../../device-and-system-integration-guides/overview.md). - -*** - -### `credential_manager_acs_system_id` - -Type: `string` -Required: No - -ACS system ID of the credential manager for the new credential. - -*** - -### `ends_at` - -Type: `string` -Required: No - -Date and time at which the validity of the new credential ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after `starts_at`. - -*** - -### `is_multi_phone_sync_credential` - -Type: `boolean` -Required: No - -Indicates whether the new credential is a [multi-phone sync credential](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system#what-are-multi-phone-sync-credentials). - -*** - -### `salto_space_metadata` - -Type: `object` -Required: No - -Salto Space-specific metadata for the new credential. - -*** - -### `starts_at` - -Type: `string` -Required: No - -Date and time at which the validity of the new credential starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. - -*** - -### `visionline_metadata` - -Type: `object` -Required: No - -Visionline-specific metadata for the new credential. - -*** - -## Return Type - -[acs\_credential](./) diff --git a/docs/api/acs/credentials/delete.md b/docs/api/acs/credentials/delete.md index 9a0fee13f..e8b324126 100644 --- a/docs/api/acs/credentials/delete.md +++ b/docs/api/acs/credentials/delete.md @@ -1,14 +1,56 @@ # Delete a Credential +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/credentials/delete ⇒ void ``` +{% endtab %} +{% endtabs %} -Deletes a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). +
+ +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 + + + + + +
ParameterDescription
acs_credential_id String (Required) + +ID of the desired credential. +
+ +## Response + +void + +--- + +## Examples + +### Delete a credential + +Specify the desired `acs_credential_id` to delete the specified credential. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.delete({ @@ -16,7 +58,7 @@ await seam.acs.credentials.delete({ }); ``` -#### Response +#### Output ```javascript // void @@ -24,13 +66,13 @@ await seam.acs.credentials.delete({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.delete(acs_credential_id="66666666-6666-6666-6666-666666666666") ``` -#### Response +#### Output ```python None @@ -38,13 +80,13 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.delete(acs_credential_id: "66666666-6666-6666-6666-666666666666") ``` -#### Response +#### Output ```ruby nil @@ -52,7 +94,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->delete( ); ``` -#### Response +#### Output ```php null @@ -69,13 +111,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials delete --acs_credential_id "66666666-6666-6666-6666-666666666666" ``` -#### Response +#### Output ```seam_cli {} @@ -83,7 +125,7 @@ seam acs credentials delete --acs_credential_id "66666666-6666-6666-6666-6666666 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -101,7 +143,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -110,23 +152,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_credential_id` -Type: `string` -Required: Yes - -ID of the desired credential. - -*** - -## Return Type - -void diff --git a/docs/api/acs/credentials/get.md b/docs/api/acs/credentials/get.md index 649794cee..181d9c30c 100644 --- a/docs/api/acs/credentials/get.md +++ b/docs/api/acs/credentials/get.md @@ -1,14 +1,65 @@ # Get a Credential +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/credentials/get ⇒ { acs_credential } ``` +{% endtab %} +{% endtabs %} -Returns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). +
+ +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 + + + + + +
ParameterDescription
acs_credential_id String (Required) + +ID of the desired credential. +
+ +## Response + +[acs\_credential](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_credential +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get a credential + +Specify the `acs_credential_id` of the credential that you want to retrieve. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.get({ @@ -16,7 +67,7 @@ await seam.acs.credentials.get({ }); ``` -#### Response +#### Output ```javascript { @@ -34,13 +85,13 @@ await seam.acs.credentials.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.get(acs_credential_id="66666666-6666-6666-6666-666666666666") ``` -#### Response +#### Output ```python AcsCredential( @@ -58,13 +109,13 @@ AcsCredential( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.get(acs_credential_id: "66666666-6666-6666-6666-666666666666") ``` -#### Response +#### Output ```ruby { @@ -82,7 +133,7 @@ seam.acs.credentials.get(acs_credential_id: "66666666-6666-6666-6666-66666666666 {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->get( ); ``` -#### Response +#### Output ```php acs->credentials->get( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials get --acs_credential_id "66666666-6666-6666-6666-666666666666" ``` -#### Response +#### Output ```seam_cli { @@ -134,7 +185,7 @@ seam acs credentials get --acs_credential_id "66666666-6666-6666-6666-6666666666 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -152,7 +203,7 @@ func main() { } ``` -#### Response +#### Output ```go api.AcsCredential{AcsCredentialId: "99999999-9999-9999-9999-999999999999", AcsUserId: "33333333-3333-3333-3333-333333333333", DisplayName: "Multi Phone Sync Credential", Code: nil, AcsSystemId: "11111111-1111-1111-1111-111111111111", AccessMethod: "mobile_key", WorkspaceId: "00000000-0000-0000-0000-000000000000", CreatedAt: "2024-04-12T03:56:22.396Z", IsMultiPhoneSyncCredential: true} @@ -161,23 +212,4 @@ api.AcsCredential{AcsCredentialId: "99999999-9999-9999-9999-999999999999", AcsUs {% endtabs %} -## Authentication Methods -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_credential_id` - -Type: `string` -Required: Yes - -ID of the desired credential. - -*** - -## Return Type - -[acs\_credential](./) diff --git a/docs/api/acs/credentials/list.md b/docs/api/acs/credentials/list.md index 2f656b113..e4d7d641a 100644 --- a/docs/api/acs/credentials/list.md +++ b/docs/api/acs/credentials/list.md @@ -1,14 +1,91 @@ # List Credentials +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/credentials/list ⇒ { acs_credentials: [acs_credential, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md). +
+ +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 + + + + + + + + + + + + + + + +
ParameterDescription
acs_system_id String + +ID of the access control system for which you want to retrieve all credentials. +
acs_user_id String + +ID of the ACS user for which you want to retrieve all credentials. +
created_before String + +Date and time, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, before which events to return were created. +
is_multi_phone_sync_credential Boolean + +Indicates whether you want to retrieve only multi-phone sync credentials or non-multi-phone sync credentials. +
limit Number + +Number of credentials to return. +
user_identity_id String + +ID of the user identity for which you want to retrieve all credentials. +
+ +## Response + +Array of [acs\_credentials](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_credential +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List credentials + +Filter the list of returned credentials by `acs_user_id`, `acs_system_id`, or `user_identity_id`. You can also include `is_multi_phone_sync_credential`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.list({ @@ -19,7 +96,7 @@ await seam.acs.credentials.list({ }); ``` -#### Response +#### Output ```javascript [ @@ -39,7 +116,7 @@ await seam.acs.credentials.list({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.list( @@ -50,7 +127,7 @@ seam.acs.credentials.list( ) ``` -#### Response +#### Output ```python [ @@ -70,7 +147,7 @@ seam.acs.credentials.list( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.list( @@ -81,7 +158,7 @@ seam.acs.credentials.list( ) ``` -#### Response +#### Output ```ruby [ @@ -101,7 +178,7 @@ seam.acs.credentials.list( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->list( ); ``` -#### Response +#### Output ```php acs->credentials->list( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials list --acs_user_id "33333333-3333-3333-3333-333333333333" --acs_system_id "11111111-1111-1111-1111-111111111111" --user_identity_id "22222222-2222-2222-2222-222222222222" --is_multi_phone_sync_credential true ``` -#### Response +#### Output ```seam_cli [ @@ -160,7 +237,7 @@ seam acs credentials list --acs_user_id "33333333-3333-3333-3333-333333333333" - {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -181,7 +258,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsCredential{api.AcsCredential{AcsCredentialId: "99999999-9999-9999-9999-999999999999", AcsUserId: "33333333-3333-3333-3333-333333333333", DisplayName: "Multi Phone Sync Credential", Code: nil, AcsSystemId: "11111111-1111-1111-1111-111111111111", AccessMethod: "mobile_key", WorkspaceId: "00000000-0000-0000-0000-000000000000", CreatedAt: "2024-04-12T03:56:22.396Z", IsMultiPhoneSyncCredential: true}} @@ -190,69 +267,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_system_id` - -Type: `string` -Required: No - -ID of the access control system for which you want to retrieve all credentials. - -*** - -### `acs_user_id` - -Type: `string` -Required: No - -ID of the ACS user for which you want to retrieve all credentials. - -*** - -### `created_before` - -Type: `string` -Required: No - -Date and time, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, before which events to return were created. - -*** - -### `is_multi_phone_sync_credential` - -Type: `boolean` -Required: No - -Indicates whether you want to retrieve only multi-phone sync credentials or non-multi-phone sync credentials. - -*** - -### `limit` - -Type: `number` -Required: No - -Number of credentials to return. - -*** - -### `user_identity_id` - -Type: `string` -Required: No - -ID of the user identity for which you want to retrieve all credentials. - -*** - -## Return Type -Array<[acs\_credential](./)> diff --git a/docs/api/acs/credentials/list_accessible_entrances.md b/docs/api/acs/credentials/list_accessible_entrances.md index 3dddcd871..fbbf50748 100644 --- a/docs/api/acs/credentials/list_accessible_entrances.md +++ b/docs/api/acs/credentials/list_accessible_entrances.md @@ -1,14 +1,65 @@ # List Accessible Entrances +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a [credential](https://docs.seam.co/latest/api/acs/credentials) grants access. + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/credentials/list_accessible_entrances ⇒ { acs_entrances: [acs_entrance, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a [credential](https://docs.seam.co/latest/api/acs/credentials) grants access. +
+ +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 + + + + + +
ParameterDescription
acs_credential_id String (Required) + +ID of the credential for which you want to retrieve all entrances to which this credential grants access. +
+ +## Response + +Array of [acs\_entrances](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_entrance +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List accessible entrances + +Specify the `acs_credential_id` for which you want to retrieve all entrances to which the credential grants access. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.listAccessibleEntrances({ @@ -16,7 +67,7 @@ await seam.acs.credentials.listAccessibleEntrances({ }); ``` -#### Response +#### Output ```javascript [ @@ -43,7 +94,7 @@ await seam.acs.credentials.listAccessibleEntrances({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.list_accessible_entrances( @@ -51,7 +102,7 @@ seam.acs.credentials.list_accessible_entrances( ) ``` -#### Response +#### Output ```python [ @@ -78,7 +129,7 @@ seam.acs.credentials.list_accessible_entrances( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.list_accessible_entrances( @@ -86,7 +137,7 @@ seam.acs.credentials.list_accessible_entrances( ) ``` -#### Response +#### Output ```ruby [ @@ -108,7 +159,7 @@ seam.acs.credentials.list_accessible_entrances( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->list_accessible_entrances( ); ``` -#### Response +#### Output ```php acs->credentials->list_accessible_entrances( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials list-accessible-entrances --acs_credential_id "66666666-6666-6666-6666-666666666666" ``` -#### Response +#### Output ```seam_cli [ @@ -178,7 +229,7 @@ seam acs credentials list-accessible-entrances --acs_credential_id "66666666-666 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -196,7 +247,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsEntrance{api.AcsEntrance{AcsEntranceId: "55555555-5555-5555-5555-555555555555", AcsSystemId: "11111111-1111-1111-1111-111111111111", WorkspaceId: "00000000-0000-0000-0000-000000000000", VisionlineMetadata: api.AcsEntranceVisionlineMetadata{Profiles: []AcsEntranceVisionlineMetadataProfiles{api.AcsEntranceVisionlineMetadataProfilesProfiles{VisionlineDoorProfileId: "Guest Door", VisionlineDoorProfileType: "BLE"}}, DoorName: "Guest Lock 2", DoorCategory: "guest"}, LatchMetadata: nil, DisplayName: "Guest Lock 2", CreatedAt: "2024-03-26T14:31:18.979Z"}} @@ -205,23 +256,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_credential_id` - -Type: `string` -Required: Yes - -ID of the credential for which you want to retrieve all entrances to which this credential grants access. - -*** - -## Return Type -Array<[acs\_entrance](./)> diff --git a/docs/api/acs/credentials/unassign.md b/docs/api/acs/credentials/unassign.md index 187a30eb3..b7e7bf2d2 100644 --- a/docs/api/acs/credentials/unassign.md +++ b/docs/api/acs/credentials/unassign.md @@ -1,14 +1,61 @@ # Unassign a Credential from an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Unassigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) from a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /acs/credentials/unassign ⇒ void ``` +{% endtab %} +{% endtabs %} -Unassigns a specified [credential](../../../capability-guides/access-systems/managing-credentials.md) from a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
+ +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 + + + + + + + +
ParameterDescription
acs_credential_id String (Required) + +ID of the desired credential. +
acs_user_id String (Required) + +ID of the desired user. +
+ +## Response + +void + +--- + +## Examples + +### Unassign a credential from an ACS user + +Specify the desired `acs_user_id` and `acs_credential_id` to unassign the specified credential from the specified ACS user. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.unassign({ @@ -17,7 +64,7 @@ await seam.acs.credentials.unassign({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.acs.credentials.unassign({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.unassign( @@ -34,7 +81,7 @@ seam.acs.credentials.unassign( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.unassign( @@ -51,7 +98,7 @@ seam.acs.credentials.unassign( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->unassign( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials unassign --acs_user_id "33333333-3333-3333-3333-333333333333" --acs_credential_id "66666666-6666-6666-6666-666666666666" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam acs credentials unassign --acs_user_id "33333333-3333-3333-3333-33333333333 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +157,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -119,32 +166,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_credential_id` -Type: `string` -Required: Yes - -ID of the desired credential. - -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the desired user. - -*** - -## Return Type - -void diff --git a/docs/api/acs/credentials/update.md b/docs/api/acs/credentials/update.md index 549c4a2b5..0a336745f 100644 --- a/docs/api/acs/credentials/update.md +++ b/docs/api/acs/credentials/update.md @@ -1,14 +1,66 @@ # Update a Credential +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Updates the code and ends at date and time for a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /acs/credentials/update ⇒ void ``` +{% endtab %} +{% endtabs %} -Updates the code and ends at date and time for a specified [credential](../../../capability-guides/access-systems/managing-credentials.md). +
+ +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 + + + + + + + + + +
ParameterDescription
acs_credential_id String (Required) + +ID of the desired credential. +
code String + +Replacement access (PIN) code for the credential. +
ends_at String + +Replacement date and time at which the validity of the credential ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after the `starts_at` value that you set when creating the credential. +
+ +## Response + +void + +--- + +## Examples + +### Update a credential + +Specify the desired `acs_credential_id` and updated `code` to update the credential. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.credentials.update({ @@ -17,7 +69,7 @@ await seam.acs.credentials.update({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +77,7 @@ await seam.acs.credentials.update({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.credentials.update( @@ -33,7 +85,7 @@ seam.acs.credentials.update( ) ``` -#### Response +#### Output ```python None @@ -41,13 +93,13 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.credentials.update(acs_credential_id: "66666666-6666-6666-6666-666666666666", code: "7890") ``` -#### Response +#### Output ```ruby nil @@ -55,7 +107,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->credentials->update( ); ``` -#### Response +#### Output ```php null @@ -73,13 +125,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs credentials update --acs_credential_id "66666666-6666-6666-6666-666666666666" --code "7890" ``` -#### Response +#### Output ```seam_cli {} @@ -87,7 +139,7 @@ seam acs credentials update --acs_credential_id "66666666-6666-6666-6666-6666666 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -106,7 +158,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -115,41 +167,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_credential_id` - -Type: `string` -Required: Yes - -ID of the desired credential. - -*** -### `code` - -Type: `string` -Required: No - -Replacement access (PIN) code for the credential. - -*** - -### `ends_at` - -Type: `string` -Required: No - -Replacement date and time at which the validity of the credential ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after the `starts_at` value that you set when creating the credential. - -*** - -## Return Type - -void diff --git a/docs/api/acs/encoders/README.md b/docs/api/acs/encoders/README.md index 2e1b40f45..03f22c35c 100644 --- a/docs/api/acs/encoders/README.md +++ b/docs/api/acs/encoders/README.md @@ -1,6 +1,13 @@ # Encoders -## `acs_encoder` +## The acs_encoder Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + Represents a hardware device that encodes [credential](../../../capability-guides/access-systems/managing-credentials.md) data onto physical cards within an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -17,191 +24,229 @@ Separately, the Seam API also supports card scanning, which enables you to scan To verify if your access control system requires a card encoder, see the corresponding [system integration guide](../../../device-and-system-integration-guides/overview.md#access-control-systems). -### `acs_encoder_id` +{% tabs %} +{% tab title="JSON" %} +```json +{ + acs_encoder_id: [example value], + acs_system_id: [example value], + created_at: [example value], + display_name: [example value], + errors: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} -Format: `UUID` +--- -ID of the [encoder](https://docs.seam.co/latest/capability-guides/access-systems/working-with-card-encoders-and-scanners. +## Properties ---- + + + + + + + + + + + + ---- + + + +
PropertyDescription
acs_encoder_id UUID +ID of the [encoder](https://docs.seam.co/latest/capability-guides/access-systems/working-with-card-encoders-and-scanners. -### `acs_system_id` -Format: `UUID` +
acs_system_id UUID ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) that contains the [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). ---- - -### `created_at` -Format: `Datetime` +
created_at Datetime Date and time at which the [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) was created. ---- - -### `display_name` -Format: `String` +
display_name String Display name for the [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). ---- -### `errors` - -Format: `List` - -Item format: `Object` +
errors List of Objects Errors associated with the [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md).
-created_at Format: Datetime +Child Object Properties -Date and time at which Seam created the error. -
-
+- created_at Datetime -error_code Format: String + Date and time at which Seam created the error. -Unique identifier of the type of error. Enables quick recognition and categorization of the issue. -
-
-message Format: String -Detailed description of the error. Provides insights into the issue and potentially how to rectify it. -
---- +- error_code String -### `workspace_id` + Unique identifier of the type of error. Enables quick recognition and categorization of the issue. -Format: `UUID` -ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). ---- +- message String -## Endpoints + Detailed description of the error. Provides insights into the issue and potentially how to rectify it. -### [`/acs/encoders/encode_credential`](./encode_credential.md) -Encodes an existing [credential](../../../capability-guides/access-systems/managing-credentials.md) onto a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). -### [`/acs/encoders/list`](./list.md) + -Returns a list of all [encoders](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). -### [`/acs/encoders/scan_credential`](./scan_credential.md) -Scans an encoded [acs_credential](../../../capability-guides/access-systems/managing-credentials.md) from a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). +
workspace_id UUID +ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). -## Events -### `acs_encoder.added` +
+## Events + + + + + + + +
EventDescription
acs_encoder.added An [ACS encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) was added.
-acs_encoder_id Format: UUID +Properties -ID of the [ACS encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). -
-
+- acs_encoder_id UUID -acs_system_id Format: UUID + ID of the [ACS encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
-connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
+- acs_system_id UUID -created_at Format: Datetime + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -Date and time at which the event was created. -
-
-event_id Format: UUID -ID of the event. -
-
+- connected_account_id UUID -event_type Format: String -
-
+ ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -occurred_at Format: Datetime -Date and time at which the event occurred. -
-
-workspace_id Format: UUID +- created_at Datetime -ID of the [workspace](../../../core-concepts/workspaces/README.md). -
---- + Date and time at which the event was created. -### `acs_encoder.removed` -An [ACS encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) was removed. -
+- event_id UUID -acs_encoder_id Format: UUID + ID of the event. -ID of the [ACS encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). -
-
-acs_system_id Format: UUID -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
+- event_type String -connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
-created_at Format: Datetime +- occurred_at Datetime -Date and time at which the event was created. -
-
+ Date and time at which the event occurred. -event_id Format: UUID -ID of the event. -
-
-event_type Format: String -
-
+- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). -occurred_at Format: Datetime -Date and time at which the event occurred.
+ +
acs_encoder.removed +An [ACS encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) was removed. +
-workspace_id Format: UUID +Properties + +- acs_encoder_id UUID + + ID of the [ACS encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). + + + +- acs_system_id UUID + + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). + + + +- connected_account_id UUID + + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). + -ID of the [workspace](../../../core-concepts/workspaces/README.md).
---- +
+ +## Endpoints + + + + + + + + + + + + + + + + + + +
EndpointDescription
/acs/encoders/encode_credentialEncodes an existing [credential](../../../capability-guides/access-systems/managing-credentials.md) onto a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md).
/acs/encoders/listReturns a list of all [encoders](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md).
/acs/encoders/scan_credentialScans an encoded [acs_credential](../../../capability-guides/access-systems/managing-credentials.md) from a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md).
diff --git a/docs/api/acs/encoders/encode_credential.md b/docs/api/acs/encoders/encode_credential.md index 680f06667..63cd59960 100644 --- a/docs/api/acs/encoders/encode_credential.md +++ b/docs/api/acs/encoders/encode_credential.md @@ -1,69 +1,59 @@ # Encode a Credential +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Encodes an existing [credential](../../../capability-guides/access-systems/managing-credentials.md) onto a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/encoders/encode_credential ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Encodes an existing [credential](../../../capability-guides/access-systems/managing-credentials.md) onto a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_credential_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + +
ParameterDescription
acs_credential_id String (Required) ID of the `acs_credential` to encode onto a card. - -*** - -### `acs_encoder_id` - -Type: `string` -Required: Yes +
acs_encoder_id String (Required) ID of the `acs_encoder` to use to encode the `acs_credential`. +
-*** - -## Return Type +## Response [action\_attempt](./) -### `ENCODE_CREDENTIAL` - -Action attempt to track encoding credential data from the physical encoder onto a card. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - -Type of action that the action attempt tracks. - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- - +**`ENCODE_CREDENTIAL`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/acs/encoders/list.md b/docs/api/acs/encoders/list.md index 5705eee18..4f1effda7 100644 --- a/docs/api/acs/encoders/list.md +++ b/docs/api/acs/encoders/list.md @@ -1,55 +1,65 @@ # List Encoders +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [encoders](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/encoders/list ⇒ { acs_encoders: [acs_encoder, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [encoders](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_encoder_ids` +## Request Parameters -Type: `array` -Required: No + + + + + + + + + + +
ParameterDescription
acs_encoder_ids Array of UUIDs IDs of the `acs_encoder`s that you want to retrieve. - -*** - -### `acs_system_id` - -Type: `string` -Required: No +
acs_system_id String ID of the `acs_system` for which you want to retrieve all `acs_encoder`s. - -*** - -### `acs_system_ids` - -Type: `array` -Required: No +
acs_system_ids Array of UUIDs IDs of the `acs_system`s for which you want to retrieve all `acs_encoder`s. - -*** - -### `limit` - -Type: `number` -Required: No +
limit Number Number of `acs_encoders` to return. - -*** - -## Return Type - -Array<[acs\_encoder](./)> +
+ +## Response + +Array of [acs\_encoders](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_encoder +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/acs/encoders/scan_credential.md b/docs/api/acs/encoders/scan_credential.md index ec39e3698..325ebef6b 100644 --- a/docs/api/acs/encoders/scan_credential.md +++ b/docs/api/acs/encoders/scan_credential.md @@ -1,58 +1,54 @@ # Scan a Credential +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Scans an encoded [acs_credential](../../../capability-guides/access-systems/managing-credentials.md) from a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/encoders/scan_credential ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Scans an encoded [acs_credential](../../../capability-guides/access-systems/managing-credentials.md) from a plastic card placed on the specified [encoder](../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_encoder_id` +## Request Parameters -Type: `string` -Required: Yes + + + + +
ParameterDescription
acs_encoder_id String (Required) ID of the `acs_encoder` to use for the scan. +
-*** - -## Return Type +## Response [action\_attempt](./) -### `SCAN_CREDENTIAL` - -Reading credential data from physical encoder. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- - +**`SCAN_CREDENTIAL`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/acs/encoders/simulate/README.md b/docs/api/acs/encoders/simulate/README.md index adf033739..4df937f80 100644 --- a/docs/api/acs/encoders/simulate/README.md +++ b/docs/api/acs/encoders/simulate/README.md @@ -1,16 +1,29 @@ # Encoder Simulations + + ## Endpoints -### [`/acs/encoders/simulate/next_credential_encode_will_fail`](./next_credential_encode_will_fail.md) + + + + + + + + + + + + + + + + -Simulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). -### [`/acs/encoders/simulate/next_credential_encode_will_succeed`](./next_credential_encode_will_succeed.md) -Simulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). -### [`/acs/encoders/simulate/next_credential_scan_will_fail`](./next_credential_scan_will_fail.md) + -Simulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). -### [`/acs/encoders/simulate/next_credential_scan_will_succeed`](./next_credential_scan_will_succeed.md) + -Simulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). +
EndpointDescription
/acs/encoders/simulate/next_credential_encode_will_failSimulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces).
/acs/encoders/simulate/next_credential_encode_will_succeedSimulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces).
/acs/encoders/simulate/next_credential_scan_will_failSimulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces).
/acs/encoders/simulate/next_credential_scan_will_succeedSimulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces).
diff --git a/docs/api/acs/encoders/simulate/next_credential_encode_will_fail.md b/docs/api/acs/encoders/simulate/next_credential_encode_will_fail.md index 5f919c365..30001a343 100644 --- a/docs/api/acs/encoders/simulate/next_credential_encode_will_fail.md +++ b/docs/api/acs/encoders/simulate/next_credential_encode_will_fail.md @@ -1,46 +1,51 @@ # Simulate that the Next Credential Encoding Will Fail +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Simulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/encoders/simulate/next_credential_encode_will_fail ⇒ void ``` +{% endtab %} +{% endtabs %} -Simulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_encoder_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + + + +
ParameterDescription
acs_encoder_id String (Required) ID of the `acs_encoder` that will be used in the next request to encode the `acs_credential`. - -*** - -### `acs_credential_id` - -Type: `string` -Required: No +
acs_credential_id String ID of the `acs_credential` that will fail to be encoded onto a card in the next request. - -*** - -### `error_code` - -Type: `string` -Required: No +
error_code String Code of the error to simulate. +
-*** - -## Return Type +## Response void diff --git a/docs/api/acs/encoders/simulate/next_credential_encode_will_succeed.md b/docs/api/acs/encoders/simulate/next_credential_encode_will_succeed.md index dd3a7fbee..6ff10987c 100644 --- a/docs/api/acs/encoders/simulate/next_credential_encode_will_succeed.md +++ b/docs/api/acs/encoders/simulate/next_credential_encode_will_succeed.md @@ -1,37 +1,46 @@ # Simulate that the Next Credential Encoding Will Succeed +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Simulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/encoders/simulate/next_credential_encode_will_succeed ⇒ void ``` +{% endtab %} +{% endtabs %} -Simulates that the next attempt to encode a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_encoder_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + +
ParameterDescription
acs_encoder_id String (Required) ID of the `acs_encoder` that will be used in the next request to encode the `acs_credential`. - -*** - -### `scenario` - -Type: `string` -Required: No +
scenario String Scenario to simulate. +
-*** - -## Return Type +## Response void diff --git a/docs/api/acs/encoders/simulate/next_credential_scan_will_fail.md b/docs/api/acs/encoders/simulate/next_credential_scan_will_fail.md index 8a3333506..9d855ba60 100644 --- a/docs/api/acs/encoders/simulate/next_credential_scan_will_fail.md +++ b/docs/api/acs/encoders/simulate/next_credential_scan_will_fail.md @@ -1,46 +1,47 @@ # Simulate that the Next Credential Scan Will Fail +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Simulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/encoders/simulate/next_credential_scan_will_fail ⇒ void ``` +{% endtab %} +{% endtabs %} -Simulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will fail. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_encoder_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + + + +
ParameterDescription
acs_encoder_id String (Required) ID of the `acs_encoder` that will fail to scan the `acs_credential` in the next request. - -*** - -### `acs_credential_id_on_seam` - -Type: `string` -Required: No - - - -*** - -### `error_code` - -Type: `string` -Required: No - - - -*** - -## Return Type +
acs_credential_id_on_seam String +
error_code String +
+ +## Response void diff --git a/docs/api/acs/encoders/simulate/next_credential_scan_will_succeed.md b/docs/api/acs/encoders/simulate/next_credential_scan_will_succeed.md index 92f05df53..7e59f22dc 100644 --- a/docs/api/acs/encoders/simulate/next_credential_scan_will_succeed.md +++ b/docs/api/acs/encoders/simulate/next_credential_scan_will_succeed.md @@ -1,46 +1,51 @@ # Simulate that the Next Credential Scan Will Succeed +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Simulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/encoders/simulate/next_credential_scan_will_succeed ⇒ void ``` +{% endtab %} +{% endtabs %} -Simulates that the next attempt to scan a [credential](../../../../capability-guides/access-systems/managing-credentials.md) using the specified [encoder](../../../../capability-guides/access-systems/working-with-card-encoders-and-scanners/README.md) will succeed. You can only perform this action within a [sandbox workspace](../../../../core-concepts/workspaces/README.md#sandbox-workspaces). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_encoder_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + + + +
ParameterDescription
acs_encoder_id String (Required) ID of the `acs_encoder` that will be used in the next request to scan the `acs_credential`. - -*** - -### `acs_credential_id_on_seam` - -Type: `string` -Required: No +
acs_credential_id_on_seam String ID of the Seam `acs_credential` that matches the `acs_credential` on the encoder in this simulation. - -*** - -### `scenario` - -Type: `string` -Required: No +
scenario String Scenario to simulate. +
-*** - -## Return Type +## Response void diff --git a/docs/api/acs/entrances/README.md b/docs/api/acs/entrances/README.md index b1f5a2df2..1847765df 100644 --- a/docs/api/acs/entrances/README.md +++ b/docs/api/acs/entrances/README.md @@ -1,349 +1,443 @@ # Entrances -## `acs_entrance` +## The acs_entrance Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + Represents an [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md) within an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). In an access control system, an entrance is a secured door, gate, zone, or other method of entry. You can list details for all the `acs_entrance` resources in your workspace or get these details for a specific `acs_entrance`. You can also list all entrances associated with a specific credential, and you can list all credentials associated with a specific entrance. -### `acs_entrance_id` +{% tabs %} +{% tab title="JSON" %} +```json +{ + acs_entrance_id: [example value], + acs_system_id: [example value], + assa_abloy_vostio_metadata: [example value], + created_at: [example value], + display_name: [example value], + dormakaba_community_metadata: [example value], + errors: [example value], + latch_metadata: [example value], + salto_ks_metadata: [example value], + salto_space_metadata: [example value], + visionline_metadata: [example value] +} +``` +{% endtab %} +{% endtabs %} -Format: `UUID` +--- -ID of the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). +## Properties ---- + + + + + + + + + + + + + + + + + + + + + + + + -Returns a specified [ACS entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). -### [`/acs/entrances/grant_access`](./grant_access.md) +
PropertyDescription
acs_entrance_id UUID +ID of the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). -### `acs_system_id` -Format: `UUID` +
acs_system_id UUID ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) that contains the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). ---- -### `assa_abloy_vostio_metadata` - -Format: `Object` +
assa_abloy_vostio_metadata Object ASSA ABLOY Vostio-specific metadata associated with the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-door_name Format: String -
-
+Child Properties -door_number Format: Number -
-
+- door_name String + + + +- door_number Number + + + +- door_type Enum -door_type Format: Enum -Possible enum values: -- `CommonDoor` -- `EntranceDoor` -- `GuestDoor` -- `Elevator` -
-pms_id Format: String +Enum values: + + - `CommonDoor` + - `EntranceDoor` + - `GuestDoor` + - `Elevator`
-
-stand_open Format: Boolean + + +- pms_id String + + + +- stand_open Boolean + +
---- -### `created_at` -Format: `Datetime` +
created_at Datetime Date and time at which the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md) was created. ---- -### `display_name` - -Format: `String` +
display_name String Display name for the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). ---- - -### `dormakaba_community_metadata` -Format: `Object` +
dormakaba_community_metadata Object dormakaba Community-specific metadata associated with the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-access_point_name Format: String -
---- +Child Properties + +- access_point_name String -### `errors` -Format: `List` + + -Item format: `Object` +
errors List of Objects Errors associated with the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-error_code Format: String +Child Object Properties + +- error_code String + + Unique identifier of the type of error. Enables quick recognition and categorization of the issue. + -Unique identifier of the type of error. Enables quick recognition and categorization of the issue. -
-
-message Format: String +- message String + + Detailed description of the error. Provides insights into the issue and potentially how to rectify it. + -Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
---- -### `latch_metadata` -Format: `Object` +
latch_metadata Object Latch-specific metadata associated with the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-accessibility_type Format: String -
-
+Child Properties -door_name Format: String -
-
+- accessibility_type String + + + +- door_name String + + + +- door_type String + + + +- is_connected Boolean -door_type Format: String -
-
-is_connected Format: Boolean
---- -### `salto_ks_metadata` -Format: `Object` +
salto_ks_metadata Object Salto KS-specific metadata associated with the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-battery_level Format: String -
-
+Child Properties -door_name Format: String -
-
+- battery_level String -intrusion_alarm Format: Boolean -
-
-left_open_alarm Format: Boolean -
-
-lock_type Format: String -
-
+- door_name String -locked_state Format: String -
-
-online Format: Boolean -
-
-privacy_mode Format: Boolean +- intrusion_alarm Boolean + + + +- left_open_alarm Boolean + + + +- lock_type String + + + +- locked_state String + + + +- online Boolean + + + +- privacy_mode Boolean + +
---- -### `salto_space_metadata` -Format: `Object` +
salto_space_metadata Object Salto Space-specific metadata associated with the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-door_description Format: String -
-
+Child Properties + +- door_description String + + + +- door_name String + + + +- ext_door_id String -door_name Format: String -
-
-ext_door_id Format: String
---- -### `visionline_metadata` -Format: `Object` +
visionline_metadata Object Visionline-specific metadata associated with the [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-door_category Format: Enum +Child Properties + +- door_category Enum + -Possible enum values: -- `entrance` -- `guest` -- `elevator reader` -- `common` -- `common (PMS)` -
-door_name Format: String +Enum values: + + - `entrance` + - `guest` + - `elevator reader` + - `common` + - `common (PMS)`
-
-profiles Format: List Item format: Object -- visionline_door_profile_id Format: String + +- door_name String + + + +- profiles List of Objects + + +- visionline_door_profile_id String -- visionline_door_profile_type Format: Enum - Possible enum values: +- visionline_door_profile_type Enum + + +
+ +Enum values: + - `BLE` - `commonDoor` - `touch` +
+ +
---- -## Endpoints -### [`/acs/entrances/get`](./get.md) +
+## Events -### [`/acs/entrances/list`](./list.md) + + + + + + +
EventDescription
acs_entrance.added +An [ACS entrance](https://docs.seam.co/latest/capability-guides/retrieving-entrance-details) was added. -Returns a list of all [ACS entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md). -### [`/acs/entrances/list_credentials_with_access`](./list_credentials_with_access.md) +
-Returns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md) with access to a specified [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). +Properties ---- +- acs_entrance_id UUID -## Events -### `acs_entrance.added` -An [ACS entrance](https://docs.seam.co/latest/capability-guides/retrieving-entrance-details) was added. +- acs_system_id UUID -
+ ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -acs_entrance_id Format: UUID -
-
-acs_system_id Format: UUID -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
+- connected_account_id UUID -connected_account_id Format: UUID + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
-created_at Format: Datetime -Date and time at which the event was created. -
-
+- created_at Datetime -event_id Format: UUID + Date and time at which the event was created. -ID of the event. -
-
-event_type Format: String -
-
-occurred_at Format: Datetime +- event_id UUID -Date and time at which the event occurred. -
-
+ ID of the event. -workspace_id Format: UUID -ID of the [workspace](../../../core-concepts/workspaces/README.md). -
---- -### `acs_entrance.removed` +- event_type String -An [ACS entrance](https://docs.seam.co/latest/capability-guides/retrieving-entrance-details) was removed. -
-acs_entrance_id Format: UUID -
-
+- occurred_at Datetime -acs_system_id Format: UUID + Date and time at which the event occurred. -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
-connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
+- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). -created_at Format: Datetime -Date and time at which the event was created.
-
-event_id Format: UUID +
acs_entrance.removed +An [ACS entrance](https://docs.seam.co/latest/capability-guides/retrieving-entrance-details) was removed. -ID of the event. -
-event_type Format: String -
-
+Properties -occurred_at Format: Datetime +- acs_entrance_id UUID + + + +- acs_system_id UUID + + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). + + + +- connected_account_id UUID + + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- event_id UUID + + ID of the event. -Date and time at which the event occurred. -
-
-workspace_id Format: UUID -ID of the [workspace](../../../core-concepts/workspaces/README.md). +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). + +
---- +
+ +## Endpoints + + + + + + + + + + + + + + + + + + + + + + + +
EndpointDescription
/acs/entrances/getReturns a specified [ACS entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
/acs/entrances/grant_access
/acs/entrances/listReturns a list of all [ACS entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md).
/acs/entrances/list_credentials_with_accessReturns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md) with access to a specified [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md).
diff --git a/docs/api/acs/entrances/get.md b/docs/api/acs/entrances/get.md index b4bbbbdf4..e9df09a57 100644 --- a/docs/api/acs/entrances/get.md +++ b/docs/api/acs/entrances/get.md @@ -1,14 +1,62 @@ # Get an Entrance +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [ACS entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/entrances/get ⇒ { acs_entrance } ``` +{% endtab %} +{% endtabs %} -Returns a specified [ACS entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). +
+ +Authentication Methods + +- API key +- Client session token + +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
+ +## Request Parameters + + + + + +
ParameterDescription
acs_entrance_id String (Required) +
+ +## Response + +[acs\_entrance](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_entrance +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get an entrance + +Specify the `acs_entrance_id` of the entrance that you want to retrieve. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.entrances.get({ @@ -16,7 +64,7 @@ await seam.acs.entrances.get({ }); ``` -#### Response +#### Output ```javascript { @@ -29,13 +77,13 @@ await seam.acs.entrances.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.entrances.get(acs_entrance_id="123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```python AcsEntrance( @@ -48,13 +96,13 @@ AcsEntrance( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.entrances.get(acs_entrance_id: "123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```ruby { @@ -67,7 +115,7 @@ seam.acs.entrances.get(acs_entrance_id: "123e4567-e89b-12d3-a456-426614174000") {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->entrances->get( ); ``` -#### Response +#### Output ```php acs->entrances->get( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs entrances get --acs_entrance_id "123e4567-e89b-12d3-a456-426614174000" ``` -#### Response +#### Output ```seam_cli { @@ -109,7 +157,7 @@ seam acs entrances get --acs_entrance_id "123e4567-e89b-12d3-a456-426614174000" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -127,7 +175,7 @@ func main() { } ``` -#### Response +#### Output ```go api.AcsEntrance{AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", AcsEntranceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z", DisplayName: "text"} @@ -136,22 +184,4 @@ api.AcsEntrance{AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", AcsEntrance {% endtabs %} -## Authentication Methods - -- API key -- Client session token -## Request Parameters - -### `acs_entrance_id` - -Type: `string` -Required: Yes - - - -*** - -## Return Type - -[acs\_entrance](./) diff --git a/docs/api/acs/entrances/grant_access.md b/docs/api/acs/entrances/grant_access.md index 8ea04aa67..a87247caf 100644 --- a/docs/api/acs/entrances/grant_access.md +++ b/docs/api/acs/entrances/grant_access.md @@ -1,37 +1,42 @@ # Grant an ACS User Access to an Entrance +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + + + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/entrances/grant_access ⇒ void ``` +{% endtab %} +{% endtabs %} +
- -## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters - -### `acs_entrance_id` - -Type: `string` -Required: Yes - +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
+## Request Parameters -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - - - -*** - -## Return Type + + + + + + +
ParameterDescription
acs_entrance_id String (Required) +
acs_user_id String (Required) +
+ +## Response void diff --git a/docs/api/acs/entrances/list.md b/docs/api/acs/entrances/list.md index acf540d23..406b23565 100644 --- a/docs/api/acs/entrances/list.md +++ b/docs/api/acs/entrances/list.md @@ -1,20 +1,73 @@ # List Entrances +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [ACS entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/entrances/list ⇒ { acs_entrances: [acs_entrance, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [ACS entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md). +
+ +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 + + + + + + + +
ParameterDescription
acs_credential_id String +
acs_system_id String +
+ +## Response + +Array of [acs\_entrances](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_entrance +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List entrances + +To filter the list of entrances, specify the desired `acs_system_id` or `acs_user_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.entrances.list(); ``` -#### Response +#### Output ```javascript [ @@ -29,13 +82,13 @@ await seam.acs.entrances.list(); {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.entrances.list() ``` -#### Response +#### Output ```python [ @@ -50,13 +103,13 @@ seam.acs.entrances.list() {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.entrances.list() ``` -#### Response +#### Output ```ruby [ @@ -71,14 +124,14 @@ seam.acs.entrances.list() {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->entrances->list(); ``` -#### Response +#### Output ```php acs->entrances->list(); {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs entrances list ``` -#### Response +#### Output ```seam_cli [ @@ -115,7 +168,7 @@ seam acs entrances list {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -125,7 +178,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsEntrance{api.AcsEntrance{AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", AcsEntranceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z", DisplayName: "text"}} @@ -134,33 +187,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_credential_id` - -Type: `string` -Required: No - - - -*** - -### `acs_system_id` - -Type: `string` -Required: No - - - -*** - -## Return Type -Array<[acs\_entrance](./)> diff --git a/docs/api/acs/entrances/list_credentials_with_access.md b/docs/api/acs/entrances/list_credentials_with_access.md index 6cd85a7bf..d722225c9 100644 --- a/docs/api/acs/entrances/list_credentials_with_access.md +++ b/docs/api/acs/entrances/list_credentials_with_access.md @@ -1,14 +1,74 @@ # List Credentials with Access to an Entrance +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md) with access to a specified [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/entrances/list_credentials_with_access ⇒ { acs_credentials: [acs_credential, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [credentials](../../../capability-guides/access-systems/managing-credentials.md) with access to a specified [entrance](../../../capability-guides/access-systems/retrieving-entrance-details.md). +
+ +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 + + + + + + + +
ParameterDescription
acs_entrance_id String (Required) +
include_if Array of Enums +
+ +Enum values + +Possible enum values: +- `visionline_metadata.is_valid` +
+
+ +## Response + +Array of [acs\_credentials](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_credential +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List credentials with access to an entrance + +Specify the `acs_entrance_id` to return all credentials that grant access to the specified entrance. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.entrances.listCredentialsWithAccess({ @@ -16,7 +76,7 @@ await seam.acs.entrances.listCredentialsWithAccess({ }); ``` -#### Response +#### Output ```javascript [ @@ -47,7 +107,7 @@ await seam.acs.entrances.listCredentialsWithAccess({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.entrances.list_credentials_with_access( @@ -55,7 +115,7 @@ seam.acs.entrances.list_credentials_with_access( ) ``` -#### Response +#### Output ```python [ @@ -86,7 +146,7 @@ seam.acs.entrances.list_credentials_with_access( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.entrances.list_credentials_with_access( @@ -94,7 +154,7 @@ seam.acs.entrances.list_credentials_with_access( ) ``` -#### Response +#### Output ```ruby [ @@ -125,7 +185,7 @@ seam.acs.entrances.list_credentials_with_access( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->entrances->list_credentials_with_access( ); ``` -#### Response +#### Output ```php acs->entrances->list_credentials_with_access( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs entrances list-credentials-with-access --acs_entrance_id "123e4567-e89b-12d3-a456-426614174000" ``` -#### Response +#### Output ```seam_cli [ @@ -204,7 +264,7 @@ seam acs entrances list-credentials-with-access --acs_entrance_id "123e4567-e89b {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -222,7 +282,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsCredential{api.AcsCredential{AcsCredentialId: "123e4567-e89b-12d3-a456-426614174000", AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsCredentialPoolId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", ParentAcsCredentialId: "123e4567-e89b-12d3-a456-426614174000", DisplayName: "text", Code: "text", CardNumber: "text", IsIssued: false, IssuedAt: "2024-10-15T12:54:04.155Z", AccessMethod: "code", ExternalType: "pti_card", ExternalTypeDisplayName: "text", CreatedAt: "2024-10-15T12:54:04.155Z", WorkspaceId: "123e4567-e89b-12d3-a456-426614174000", StartsAt: "text", EndsAt: "text", IsMultiPhoneSyncCredential: false, IsLatestDesiredStateSyncedWithProvider: false, LatestDesiredStateSyncedWithProviderAt: "2024-10-15T12:54:04.155Z"}} @@ -231,33 +291,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_entrance_id` - -Type: `string` -Required: Yes - - - -*** - -### `include_if` - -Type: `array` -Required: No - - - -*** - -## Return Type -Array<[acs\_credential](./)> diff --git a/docs/api/acs/systems/README.md b/docs/api/acs/systems/README.md index bd7e6ecd5..7080d861a 100644 --- a/docs/api/acs/systems/README.md +++ b/docs/api/acs/systems/README.md @@ -1,6 +1,13 @@ # Systems -## `acs_system` +## The acs_system Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + Represents an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -8,101 +15,137 @@ Within an `acs_system`, create [`acs_user`s](https://docs.seam.co/latest/api/acs For details about the resources associated with an access control system, see the [access control systems namespace](https://docs.seam.co/latest/api/acs). -### `acs_system_id` - -Format: `UUID` - +{% tabs %} +{% tab title="JSON" %} +```json +{ + acs_access_group_count: [example value], + acs_system_id: [example value], + acs_user_count: [example value], + can_add_acs_users_to_acs_access_groups: [example value], + can_automate_enrollment: [example value], + can_create_acs_access_groups: [example value], + can_remove_acs_users_from_acs_access_groups: [example value], + connected_account_id: [example value], + connected_account_ids: [example value], + created_at: [example value], + default_credential_manager_acs_system_id: [example value], + errors: [example value], + external_type: [example value], + external_type_display_name: [example value], + image_alt_text: [example value], + image_url: [example value], + is_credential_manager: [example value], + location: [example value], + name: [example value], + system_type: [example value], + system_type_display_name: [example value], + visionline_metadata: [example value], + warnings: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Properties + + + + + + + + -Format: `Boolean` + + ---- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -### `visionline_metadata` + + + + + + + + +
PropertyDescription
acs_access_group_count Number + +
acs_system_id UUID ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- -### `can_add_acs_users_to_acs_access_groups` +
acs_user_count Number -Indicates whether the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) supports [adding users to access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups#add-an-acs-user-to-an-access-group). See also [Access Group-based Access Control Systems](https://docs.seam.co/latest/capability-guides/access-systems/understanding-access-control-system-differences#access-group-based-access-control-systems). +
can_add_acs_users_to_acs_access_groups Boolean +Indicates whether the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) supports [adding users to access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups#add-an-acs-user-to-an-access-group). See also [Access Group-based Access Control Systems](https://docs.seam.co/latest/capability-guides/access-systems/understanding-access-control-system-differences#access-group-based-access-control-systems). -### `can_automate_enrollment` -Format: `Boolean` +
can_automate_enrollment Boolean Indicates whether it is possible to [launch enrollment automations](../../../capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system.md#prepare-the-phones-for-a-user-identity-to-start-receiving-mobile-credentials-using-an-enrollment-aut) for the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- -### `can_create_acs_access_groups` - -Format: `Boolean` +
can_create_acs_access_groups Boolean Indicates whether the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) supports creating [access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). See also [Access Group-based Access Control Systems](https://docs.seam.co/latest/capability-guides/access-systems/understanding-access-control-system-differences#access-group-based-access-control-systems). ---- - -### `can_remove_acs_users_from_acs_access_groups` -Format: `Boolean` +
can_remove_acs_users_from_acs_access_groups Boolean Indicates whether the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) supports [removing users from access groups](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups#remove-an-acs-user-from-an-access-group). See also [Access Group-based Access Control Systems](https://docs.seam.co/latest/capability-guides/access-systems/understanding-access-control-system-differences#access-group-based-access-control-systems). ---- - -### `connected_account_id` -Format: `UUID` +
connected_account_id UUID ID of the [connected account](../../../core-concepts/connected-accounts/README.md) associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- -### `connected_account_ids` +
connected_account_ids List of UUIDs +IDs of the [connected accounts](../../../core-concepts/connected-accounts/README.md) associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). {% hint style="warning" %} **Deprecated**. Use `connected_account_id`. {% endhint %} -Format: `List` - -Item format: `UUID` - -IDs of the [connected accounts](../../../core-concepts/connected-accounts/README.md) associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). - ---- -### `created_at` - -Format: `Datetime` +
created_at Datetime Date and time at which the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) was created. ---- - -### `default_credential_manager_acs_system_id` -Format: `UUID` +
default_credential_manager_acs_system_id UUID ID of the default credential manager `acs_system` for this [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- - -### [`errors`](./#errors-1) - -Format: `List` -Item format: `Object` +
errors List of Objects Errors associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- - -### `external_type` -Format: `Enum` +
external_type Enum Brand-specific terminology for the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) type. -Possible enum values: +
+ +Enum values + - `pti_site` - `alta_org` - `salto_ks_site` @@ -116,70 +159,72 @@ Possible enum values: - `legic_connect_credential_service` - `assa_abloy_vostio` - `assa_abloy_vostio_credential_service` +
---- - -### `external_type_display_name` -Format: `String` +
external_type_display_name String Display name that corresponds to the brand-specific terminology for the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) type. ---- - -### `image_alt_text` -Format: `String` +
image_alt_text String Alternative text for the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) image. ---- - -### `image_url` -Format: `String` +
image_url String URL for the image that represents the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- -### `is_credential_manager` - -Format: `Boolean` +
is_credential_manager Boolean Indicates whether the `acs_system` is a credential manager. ---- -### `location` - -Format: `Object` +
location Object
-time_zone Format: String +Child Properties + +- time_zone String + + Time zone in which the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) is located. + -Time zone in which the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) is located.
---- -### `name` -Format: `String` +
name String Name of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- -### `system_type` +
system_type Enum {% hint style="warning" %} **Deprecated**. Use `external_type`. {% endhint %} -Format: `Enum` +
+ +Enum values -Possible enum values: - `pti_site` - `alta_org` - `salto_ks_site` @@ -193,269 +238,290 @@ Possible enum values: - `legic_connect_credential_service` - `assa_abloy_vostio` - `assa_abloy_vostio_credential_service` +
---- -### `system_type_display_name` +
system_type_display_name String {% hint style="warning" %} **Deprecated**. Use `external_type_display_name`. {% endhint %} -Format: `String` ---- +
visionline_metadata Object +
-Format: `Object` +Child Properties -
+- lan_address String -lan_address Format: String + IP address or hostname of the main Visionline server relative to [Seam Bridge](../../../capability-guides/seam-bridge.md) on the local network. -IP address or hostname of the main Visionline server relative to [Seam Bridge](../../../capability-guides/seam-bridge.md) on the local network. -
-
-mobile_access_uuid Format: String -Keyset loaded into a reader. Mobile keys and reader administration tools securely authenticate only with readers programmed with a matching keyset. -
-
+- mobile_access_uuid String -system_id Format: String + Keyset loaded into a reader. Mobile keys and reader administration tools securely authenticate only with readers programmed with a matching keyset. -Unique ID assigned by the ASSA ABLOY licensing team that identifies each hotel in your credential manager. -
---- -### [`warnings`](./#warnings-1) -Format: `List` +- system_id String -Item format: `Object` + Unique ID assigned by the ASSA ABLOY licensing team that identifies each hotel in your credential manager. -Warnings associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- +
+ + +
warnings List of Objects +Warnings associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). -### `workspace_id` -Format: `UUID` +
workspace_id UUID ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). ---- + +
## Errors -### `seam_bridge_disconnected` + + + -Indicates that the Seam API cannot communicate with [Seam Bridge](../../../capability-guides/seam-bridge.md), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. + + + ---- + + + -### `visionline_instance_unreachable` - -Indicates that [Seam Bridge](../../../capability-guides/seam-bridge.md) is functioning correctly and the Seam API can communicate with Seam Bridge, but the Seam API cannot connect to the on-premises [Visionline access control system](https://docs.seam.co/latest/device-and-system-integration-guides/assa-abloy-visionline-access-control-system). + + + ---- + + + -### `salto_ks_subscription_limit_exceeded` + + + -Indicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit. + + + ---- + + +
ErrorDescription
seam_bridge_disconnectedIndicates that the Seam API cannot communicate with [Seam Bridge](../../../capability-guides/seam-bridge.md), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. This error might also occur if Seam Bridge is connected to the wrong [workspace](../../../core-concepts/workspaces/README.md). - See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/capability-guides/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.seam_bridge_disconnected). + See also [Troubleshooting Your Access Control System](../../../capability-guides/access-systems/troubleshooting-your-access-control-system.md#acs_system.errors.seam_bridge_disconnected).
bridge_disconnectedIndicates that the Seam API cannot communicate with [Seam Bridge](../../../capability-guides/seam-bridge.md), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. + See also [Troubleshooting Your Access Control System](../../../capability-guides/access-systems/troubleshooting-your-access-control-system.md#acs_system.errors.seam_bridge_disconnected).
visionline_instance_unreachableIndicates that [Seam Bridge](../../../capability-guides/seam-bridge.md) is functioning correctly and the Seam API can communicate with Seam Bridge, but the Seam API cannot connect to the on-premises [Visionline access control system](https://docs.seam.co/latest/device-and-system-integration-guides/assa-abloy-visionline-access-control-system). For example, the IP address of the on-premises access control system may be set incorrectly within the Seam [workspace](../../../core-concepts/workspaces/README.md). - See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/capability-guides/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.visionline_instance_unreachable). + See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/capability-guides/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.visionline_instance_unreachable).
salto_ks_subscription_limit_exceededIndicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit.
acs_system_disconnectedIndicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has been disconnected. See [Troubleshooting Your Access Control System](../../../capability-guides/access-systems/troubleshooting-your-access-control-system.md) to resolve the issue.
account_disconnectedIndicates that the login credentials are invalid. Reconnect the account using a [Connect Webview](https://docs.seam.co/latest/ui-components/connect-webviews) to restore access.
salto_ks_certification_expiredIndicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has lost its Salto KS certification. Contact [support](mailto:support@seam.co) to regain access.
-### `acs_system_disconnected` +## Warnings -Indicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has been disconnected. See [Troubleshooting Your Access Control System](../../../capability-guides/access-systems/troubleshooting-your-access-control-system.md) to resolve the issue. + + + ---- + + + -### `account_disconnected` + + +
WarningDescription
salto_ks_subscription_limit_almost_reachedIndicates that the Salto KS site has exceeded 80% of the maximum number of allowed users. Increase your subscription limit or delete some users from your site to rectify the issue.
time_zone_does_not_match_locationIndicates the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) time zone could not be determined because the reported physical location does not match the time zone configured on the physical [ACS entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md).
-Indicates that the login credentials are invalid. Reconnect the account using a [Connect Webview](https://docs.seam.co/latest/ui-components/connect-webviews) to restore access. +## Events ---- + + + + + + + + +
EventDescription
acs_system.connected +An [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) was connected. -### `salto_ks_certification_expired` +
-Indicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has lost its Salto KS certification. Contact [support](mailto:support@seam.co) to regain access. +Properties ---- +- acs_system_id UUID -## Warnings + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -### `salto_ks_subscription_limit_almost_reached` -Indicates that the Salto KS site has exceeded 80% of the maximum number of allowed users. Increase your subscription limit or delete some users from your site to rectify the issue. ---- +- connected_account_id UUID -### `time_zone_does_not_match_location` + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -Indicates the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) time zone could not be determined because the reported physical location does not match the time zone configured on the physical [ACS entrances](../../../capability-guides/access-systems/retrieving-entrance-details.md). ---- -## Endpoints +- created_at Datetime -### [`/acs/systems/get`](./get.md) + Date and time at which the event was created. -Returns a specified [access control system](https://docs.seam.co/latest/capability-guides/access-systems). -### [`/acs/systems/list`](./list.md) -Returns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems). -### [`/acs/systems/list_compatible_credential_manager_acs_systems`](./list_compatible_credential_manager_acs_systems.md) -Returns a list of all credential manager ACS systems that are compatible with a specified -[access control system](https://docs.seam.co/latest/capability-guides/access-systems). +- event_id UUID ---- + ID of the event. -## Events -### `acs_system.connected` -An [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) was connected. +- event_type String -
-acs_system_id Format: UUID -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
+- occurred_at Datetime -connected_account_id Format: UUID + Date and time at which the event occurred. -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
-created_at Format: Datetime -Date and time at which the event was created. -
-
+- workspace_id UUID -event_id Format: UUID + ID of the [workspace](../../../core-concepts/workspaces/README.md). -ID of the event. -
-
-event_type Format: String
-
-occurred_at Format: Datetime +
acs_system.added +An [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) was added. -Date and time at which the event occurred. -
-workspace_id Format: UUID +Properties -ID of the [workspace](../../../core-concepts/workspaces/README.md). -
---- +- acs_system_id UUID -### `acs_system.added` + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -An [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) was added. -
-acs_system_id Format: UUID +- connected_account_id UUID -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
+ ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
-created_at Format: Datetime +- created_at Datetime -Date and time at which the event was created. -
-
+ Date and time at which the event was created. -event_id Format: UUID -ID of the event. -
-
-event_type Format: String -
-
+- event_id UUID -occurred_at Format: Datetime + ID of the event. -Date and time at which the event occurred. -
-
-workspace_id Format: UUID -ID of the [workspace](../../../core-concepts/workspaces/README.md). -
---- +- event_type String -### `acs_system.disconnected` -An [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) was disconnected. -
+- occurred_at Datetime -acs_system_id Format: UUID + Date and time at which the event occurred. -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -
-
-connected_account_id Format: UUID -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -
-
+- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). -created_at Format: Datetime -Date and time at which the event was created.
-
-event_id Format: UUID +
acs_system.disconnected +An [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) was disconnected. -ID of the event. -
-event_type Format: String -
-
+Properties -occurred_at Format: Datetime +- acs_system_id UUID -Date and time at which the event occurred. -
-
+ ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). + + + +- connected_account_id UUID + + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). + + + +- created_at Datetime + + Date and time at which the event was created. + + + +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). -workspace_id Format: UUID -ID of the [workspace](../../../core-concepts/workspaces/README.md).
---- +
+ +## Endpoints + + + + + + + + + + + + + + + + + + +
EndpointDescription
/acs/systems/getReturns a specified [access control system](https://docs.seam.co/latest/capability-guides/access-systems).
/acs/systems/listReturns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems).
/acs/systems/list_compatible_credential_manager_acs_systemsReturns a list of all credential manager ACS systems that are compatible with a specified [access control system](https://docs.seam.co/latest/capability-guides/access-systems).
diff --git a/docs/api/acs/systems/get.md b/docs/api/acs/systems/get.md index a4c54c150..0755aa5b4 100644 --- a/docs/api/acs/systems/get.md +++ b/docs/api/acs/systems/get.md @@ -1,16 +1,67 @@ # Get an ACS System +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [access control system](https://docs.seam.co/latest/capability-guides/access-systems). + +Specify the desired access control system by including the corresponding `acs_system_id` in the request body. + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/systems/get ⇒ { acs_system } ``` +{% endtab %} +{% endtabs %} -Returns a specified [access control system](https://docs.seam.co/latest/capability-guides/access-systems). +
-Specify the desired access control system by including the corresponding `acs_system_id` in the request body. +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 + + + + + +
ParameterDescription
acs_system_id String (Required) + +ID of the desired access control system. +
+ +## Response + +[acs\_system](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_system +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get a Specific ACS system + +Specify the `acs_system_id` of the ACS system that you want to retrieve. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.systems.get({ @@ -18,7 +69,7 @@ await seam.acs.systems.get({ }); ``` -#### Response +#### Output ```javascript [{ "acs_system_id": "8d7e0b3a-b889-49a7-9164-4b71a0506a33" }] @@ -26,13 +77,13 @@ await seam.acs.systems.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.systems.get(acs_system_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```python [AcsSystem(acs_system_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33")] @@ -40,13 +91,13 @@ seam.acs.systems.get(acs_system_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33") {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.systems.get(acs_system_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```ruby [{ "acs_system_id" => "8d7e0b3a-b889-49a7-9164-4b71a0506a33" }] @@ -54,14 +105,14 @@ seam.acs.systems.get(acs_system_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33") {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->systems->get(acs_system_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"); ``` -#### Response +#### Output ```php acs->systems->get(acs_system_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"); {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs systems get --acs_system_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" ``` -#### Response +#### Output ```seam_cli [{ "acs_system_id": "8d7e0b3a-b889-49a7-9164-4b71a0506a33" }] @@ -84,7 +135,7 @@ seam acs systems get --acs_system_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -102,7 +153,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsSystem{api.AcsSystem{AcsSystemId: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"}} @@ -111,23 +162,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_system_id` - -Type: `string` -Required: Yes -ID of the desired access control system. - -*** - -## Return Type - -[acs\_system](./) diff --git a/docs/api/acs/systems/list.md b/docs/api/acs/systems/list.md index 8efeb348a..59d1eaa70 100644 --- a/docs/api/acs/systems/list.md +++ b/docs/api/acs/systems/list.md @@ -1,16 +1,68 @@ # List ACS Systems +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems). + +To filter the list of returned access control systems by a specific connected account ID, include the `connected_account_id` in the request body. If you omit the `connected_account_id` parameter, the response includes all access control systems connected to your workspace. + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/systems/list ⇒ { acs_systems: [acs_system, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems). +
-To filter the list of returned access control systems by a specific connected account ID, include the `connected_account_id` in the request body. If you omit the `connected_account_id` parameter, the response includes all access control systems connected to your workspace. +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 + + + + + +
ParameterDescription
connected_account_id String + +ID of the connected account by which to filter the list of returned access control systems. +
+ +## Response + +Array of [acs\_systems](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_system +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List ACS systems by connected account + +To filter the list of ACS systems, include a `connected_account_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.systems.list({ @@ -18,7 +70,7 @@ await seam.acs.systems.list({ }); ``` -#### Response +#### Output ```javascript [{ "acs_system_id": "8d7e0b3a-b889-49a7-9164-4b71a0506a33" }] @@ -26,13 +78,13 @@ await seam.acs.systems.list({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.systems.list(connected_account_id="123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```python [AcsSystem(acs_system_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33")] @@ -40,13 +92,13 @@ seam.acs.systems.list(connected_account_id="123e4567-e89b-12d3-a456-426614174000 {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.systems.list(connected_account_id: "123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```ruby [{ "acs_system_id" => "8d7e0b3a-b889-49a7-9164-4b71a0506a33" }] @@ -54,7 +106,7 @@ seam.acs.systems.list(connected_account_id: "123e4567-e89b-12d3-a456-42661417400 {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->systems->list( ); ``` -#### Response +#### Output ```php acs->systems->list( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs systems list --connected_account_id "123e4567-e89b-12d3-a456-426614174000" ``` -#### Response +#### Output ```seam_cli [{ "acs_system_id": "8d7e0b3a-b889-49a7-9164-4b71a0506a33" }] @@ -86,7 +138,7 @@ seam acs systems list --connected_account_id "123e4567-e89b-12d3-a456-4266141740 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -104,7 +156,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsSystem{api.AcsSystem{AcsSystemId: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"}} @@ -113,24 +165,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `connected_account_id` - -Type: `string` -Required: No - -ID of the connected account by which to filter the list of returned access control systems. - -*** - -## Return Type -Array<[acs\_system](./)> diff --git a/docs/api/acs/systems/list_compatible_credential_manager_acs_systems.md b/docs/api/acs/systems/list_compatible_credential_manager_acs_systems.md index 64204002a..3ab345ffb 100644 --- a/docs/api/acs/systems/list_compatible_credential_manager_acs_systems.md +++ b/docs/api/acs/systems/list_compatible_credential_manager_acs_systems.md @@ -1,18 +1,67 @@ # List Compatible Credential Manager ACS Systems +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all credential manager ACS systems that are compatible with a specified [access control system](https://docs.seam.co/latest/capability-guides/access-systems). + +Specify the ACS system for which you want to retrieve all compatible credential manager ACS systems by including the corresponding `acs_system_id` in the request body. + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/systems/list_compatible_credential_manager_acs_systems ⇒ { acs_systems: [acs_system, …] } ``` +{% 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 + + + + + +
ParameterDescription
acs_system_id String (Required) + +ID of the ACS system for which you want to retrieve all compatible credential manager ACS systems. +
+ +## Response + +Array of [acs\_systems](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_system +} +``` +{% endtab %} +{% endtabs %} + +--- -Returns a list of all credential manager ACS systems that are compatible with a specified -[access control system](https://docs.seam.co/latest/capability-guides/access-systems). +## Examples + +### List compatible credential manager ACS systems -Specify the ACS system for which you want to retrieve all compatible credential manager ACS -systems by including the corresponding `acs_system_id` in the request body. +Specify the `acs_system_id` for which you want to retrieve all compatible credential manager ACS systems. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.systems.listCompatibleCredentialManagerAcsSystems({ @@ -20,7 +69,7 @@ await seam.acs.systems.listCompatibleCredentialManagerAcsSystems({ }); ``` -#### Response +#### Output ```javascript [{ "acs_system_id": "aczp0sgx-gl9f-nygd-r11e-7pc1zufn55z4" }] @@ -28,7 +77,7 @@ await seam.acs.systems.listCompatibleCredentialManagerAcsSystems({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.systems.list_compatible_credential_manager_acs_systems( @@ -36,7 +85,7 @@ seam.acs.systems.list_compatible_credential_manager_acs_systems( ) ``` -#### Response +#### Output ```python [AcsSystem(acs_system_id="aczp0sgx-gl9f-nygd-r11e-7pc1zufn55z4")] @@ -44,7 +93,7 @@ seam.acs.systems.list_compatible_credential_manager_acs_systems( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.systems.list_compatible_credential_manager_acs_systems( @@ -52,7 +101,7 @@ seam.acs.systems.list_compatible_credential_manager_acs_systems( ) ``` -#### Response +#### Output ```ruby [{ "acs_system_id" => "aczp0sgx-gl9f-nygd-r11e-7pc1zufn55z4" }] @@ -60,7 +109,7 @@ seam.acs.systems.list_compatible_credential_manager_acs_systems( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->systems->list_compatible_credential_manager_acs_systems( ); ``` -#### Response +#### Output ```php acs->systems->list_compatible_credential_manager_acs_systems( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs systems list-compatible-credential-manager-acs-systems --acs_system_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" ``` -#### Response +#### Output ```seam_cli [{ "acs_system_id": "aczp0sgx-gl9f-nygd-r11e-7pc1zufn55z4" }] @@ -92,7 +141,7 @@ seam acs systems list-compatible-credential-manager-acs-systems --acs_system_id {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +159,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsSystem{api.AcsSystem{AcsSystemId: "aczp0sgx-gl9f-nygd-r11e-7pc1zufn55z4"}} @@ -119,23 +168,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_system_id` - -Type: `string` -Required: Yes - -ID of the ACS system for which you want to retrieve all compatible credential manager ACS systems. - -*** - -## Return Type -Array<[acs\_system](./)> diff --git a/docs/api/acs/users/README.md b/docs/api/acs/users/README.md index d30a590f5..e91ec4722 100644 --- a/docs/api/acs/users/README.md +++ b/docs/api/acs/users/README.md @@ -1,6 +1,13 @@ # ACS Users -## `acs_user` +## The acs_user Object + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + Represents a [user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in an [access control system](https://docs.seam.co/latest/capability-guides/access-systems). @@ -8,93 +15,125 @@ An `acs_user` typically refers to an individual who requires access, like an emp For details about how to configure `acs_user`s in your access control system, see the corresponding [system integration guide](../../../device-and-system-integration-guides/overview.md#access-control-systems). -### `access_schedule` +{% tabs %} +{% tab title="JSON" %} +```json +{ + access_schedule: [example value], + acs_system_id: [example value], + acs_user_id: [example value], + created_at: [example value], + display_name: [example value], + email: [example value], + email_address: [example value], + errors: [example value], + external_type: [example value], + external_type_display_name: [example value], + full_name: [example value], + hid_acs_system_id: [example value], + is_managed: [example value], + is_suspended: [example value], + phone_number: [example value], + user_identity_email_address: [example value], + user_identity_full_name: [example value], + user_identity_id: [example value], + user_identity_phone_number: [example value], + warnings: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- -Format: `Object` +## Properties + + + + + + + + + + + + + + + + + + + + + + + + -Format: `UUID` + + -### `is_managed` + + ---- + + -Indicates whether the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) is currently [suspended](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users). + + -Format: `String` + + -### `user_identity_email_address` + + ---- + + -Full name of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + + -Format: `String` + + + + + -Phone number of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). +
PropertyDescription
access_schedule Object `starts_at` and `ends_at` timestamps for the [ACS user's](https://docs.seam.co/latest/capability-guides/access-systems/user-management) access.
-ends_at Format: Datetime +Child Properties -Date and time at which the user's access ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. -
-
+- ends_at Datetime + + Date and time at which the user's access ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. + + + +- starts_at Datetime + + Date and time at which the user's access starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. -starts_at Format: Datetime -Date and time at which the user's access starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.
---- -### `acs_system_id` -Format: `UUID` +
acs_system_id UUID ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) that contains the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). ---- - -### `acs_user_id` -Format: `UUID` +
acs_user_id UUID ID of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). ---- - -### `created_at` -Format: `Datetime` +
created_at Datetime Date and time at which the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was created. ---- - -### `display_name` -Format: `String` +
display_name String Display name for the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). ---- -### `email` +
email String {% hint style="warning" %} **Deprecated**. use email_address. {% endhint %} -Format: `String` - ---- - -### `email_address` -Format: `String` +
email_address String Email address of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). ---- - -### [`errors`](./#errors-1) - -Format: `List` -Item format: `Object` +
errors List of Objects Errors associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). ---- - -### `external_type` -Format: `Enum` +
external_type Enum Brand-specific terminology for the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) type. -Possible enum values: +
+ +Enum values + - `pti_user` - `brivo_user` - `hid_credential_manager_user` @@ -102,242 +141,254 @@ Possible enum values: - `latch_user` - `dormakaba_community_user` - `salto_space_user` +
---- - -### `external_type_display_name` -Format: `String` +
external_type_display_name String Display name that corresponds to the brand-specific terminology for the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) type. ---- - -### `full_name` -Format: `String` +
full_name String Full name of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). ---- -### `hid_acs_system_id` +
hid_acs_system_id UUID ---- +
is_managed Boolean -Format: `Boolean` +
is_suspended Boolean +Indicates whether the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) is currently [suspended](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users). -### `is_suspended` -Format: `Boolean` +
phone_number String +Phone number of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). ---- -### `phone_number` +
user_identity_email_address String +Email address of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -Phone number of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). ---- +
user_identity_full_name String +Full name of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -Format: `String` -Email address of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
user_identity_id String +ID of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### `user_identity_full_name` -Format: `String` +
user_identity_phone_number String +Phone number of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). ---- -### `user_identity_id` +
warnings List of Objects +Warnings associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -ID of the user identity associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). ---- +
workspace_id UUID +ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### `user_identity_phone_number` -Format: `String` +
---- +## Errors -### [`warnings`](./#warnings-1) + + + -Format: `List` + + + -Item format: `Object` + + + -Warnings associated with the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + + + ---- + + + + + + +
ErrorDescription
deleted_externallyIndicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was deleted from the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) outside of Seam.
salto_ks_subscription_limit_exceededIndicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) could not be subscribed on Salto KS because the subscription limit has been exceeded.
failed_to_create_on_acs_systemIndicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was not created on the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is likely due to an internal unexpected error. Contact Seam [support](mailto:support@seam.co).
failed_to_update_on_acs_systemIndicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was not updated on the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is likely due to an internal unexpected error. Contact Seam [support](mailto:support@seam.co).
failed_to_delete_on_acs_systemIndicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was not deleted on the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is likely due to an internal unexpected error. Contact Seam [support](mailto:support@seam.co).
-### `workspace_id` +## Warnings -Format: `UUID` + + + -ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + + + ---- + + + -## Errors + + +
WarningDescription
being_deletedIndicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) is being deleted from the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is a temporary state, and the ACS user will be deleted shortly.
salto_ks_user_not_subscribedIndicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) is not subscribed on Salto KS, so they cannot unlock doors or perform any actions. This occurs when the their access schedule hasn’t started yet, if their access schedule has ended, if the site has reached its limit for active users (subscription slots), or if they have been manually unsubscribed.
unknown_issue_with_acs_userAn unknown issue occurred while syncing the state of this [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) with the provider. This issue may affect the proper functioning of this user.
-### `deleted_externally` +## Events -Indicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was deleted from the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) outside of Seam. + + + + +
EventDescription
acs_user.deleted +An [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was deleted. ---- +
-### `salto_ks_subscription_limit_exceeded` +Properties -Indicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) could not be subscribed on Salto KS because the subscription limit has been exceeded. +- acs_system_id UUID ---- + ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). -### `failed_to_create_on_acs_system` -Indicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was not created on the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is likely due to an internal unexpected error. Contact Seam [support](mailto:support@seam.co). ---- +- acs_user_id UUID -### `failed_to_update_on_acs_system` -Indicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was not updated on the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is likely due to an internal unexpected error. Contact Seam [support](mailto:support@seam.co). ---- +- connected_account_id UUID -### `failed_to_delete_on_acs_system` + ID of the [connected account](../../../core-concepts/connected-accounts/README.md). -Indicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was not deleted on the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is likely due to an internal unexpected error. Contact Seam [support](mailto:support@seam.co). ---- -## Warnings +- created_at Datetime -### `being_deleted` + Date and time at which the event was created. -Indicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) is being deleted from the [access control system](https://docs.seam.co/latest/capability-guides/access-systems). This is a temporary state, and the ACS user will be deleted shortly. ---- -### `salto_ks_user_not_subscribed` +- event_id UUID -Indicates that the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) is not subscribed on Salto KS, so they cannot unlock doors or perform any actions. This occurs when the their access schedule hasn’t started yet, if their access schedule has ended, if the site has reached its limit for active users (subscription slots), or if they have been manually unsubscribed. + ID of the event. ---- -### `unknown_issue_with_acs_user` -An unknown issue occurred while syncing the state of this [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) with the provider. This issue may affect the proper functioning of this user. +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + ---- + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). + + +
+ +
## Endpoints -### [`/acs/users/add_to_access_group`](./add_to_access_group.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). -### [`/acs/users/create`](./create.md) + -Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### [`/acs/users/delete`](./delete.md) + -Deletes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) and invalidates the ACS user's [credentials](../../../capability-guides/access-systems/managing-credentials.md). -### [`/acs/users/get`](./get.md) -Returns a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### [`/acs/users/list`](./list.md) + -Returns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### [`/acs/users/list_accessible_entrances`](./list_accessible_entrances.md) + -Lists the [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) has access. -### [`/acs/users/remove_from_access_group`](./remove_from_access_group.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). -### [`/acs/users/revoke_access_to_all_entrances`](./revoke_access_to_all_entrances.md) + -Revokes access to all [entrances](https://docs.seam.co/latest/api/acs/entrances) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). -### [`/acs/users/suspend`](./suspend.md) + -[Suspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#suspend-an-acs-user) a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). Suspending an ACS user revokes their access temporarily. To restore an ACS user's access, you can [unsuspend](https://docs.seam.co/latest/api/acs/users/unsuspend) them. -### [`/acs/users/unsuspend`](./unsuspend.md) -[Unsuspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#unsuspend-an-acs-user) a specified suspended [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). While [suspending an ACS user](https://docs.seam.co/latest/api/acs/users/suspend) revokes their access temporarily, unsuspending the ACS user restores their access. -### [`/acs/users/update`](./update.md) + -Updates the properties of a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + ---- -## Events + -### `acs_user.deleted` + -An [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) was deleted. -
+
-acs_system_id Format: UUID + -ID of the [ACS system](https://docs.seam.co/latest/capability-guides/access-systems). - -
-acs_user_id Format: UUID -
-
+
-connected_account_id Format: UUID + -ID of the [connected account](../../../core-concepts/connected-accounts/README.md). - -
-created_at Format: Datetime +
-Date and time at which the event was created. - -
+
-event_id Format: UUID -ID of the event. - -
+
-event_type Format: String - -
+
-occurred_at Format: Datetime -Date and time at which the event occurred. - -
+
-workspace_id Format: UUID + -ID of the [workspace](../../../core-concepts/workspaces/README.md). - ---- + + + + +
EndpointDescription
/acs/users/add_to_access_groupAdds 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).
/acs/users/createCreates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
/acs/users/deleteDeletes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) and invalidates the ACS user's [credentials](../../../capability-guides/access-systems/managing-credentials.md).
/acs/users/getReturns a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
/acs/users/listReturns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
/acs/users/list_accessible_entrancesLists the [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) has access.
/acs/users/remove_from_access_groupRemoves 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).
/acs/users/revoke_access_to_all_entrancesRevokes access to all [entrances](https://docs.seam.co/latest/api/acs/entrances) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
/acs/users/suspend[Suspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#suspend-an-acs-user) a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). Suspending an ACS user revokes their access temporarily. To restore an ACS user's access, you can [unsuspend](https://docs.seam.co/latest/api/acs/users/unsuspend) them.
/acs/users/unsuspend[Unsuspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#unsuspend-an-acs-user) a specified suspended [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). While [suspending an ACS user](https://docs.seam.co/latest/api/acs/users/suspend) revokes their access temporarily, unsuspending the ACS user restores their access.
/acs/users/updateUpdates the properties of a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).
diff --git a/docs/api/acs/users/add_to_access_group.md b/docs/api/acs/users/add_to_access_group.md index 220fea9d0..029a0aff4 100644 --- a/docs/api/acs/users/add_to_access_group.md +++ b/docs/api/acs/users/add_to_access_group.md @@ -1,14 +1,61 @@ # Add an ACS User to an Access Group +- [Request Parameters](./#request-parameters) +- [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). + +{% tabs %} +{% tab title="Signature" %} ``` PUT /acs/users/add_to_access_group ⇒ void ``` +{% 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 + + + + + + + +
ParameterDescription
acs_access_group_id String (Required) + +ID of the desired access group. +
acs_user_id String (Required) + +ID of the desired `acs_user`. +
+ +## Response + +void + +--- + +## Examples + +### Add an ACS user to an access group 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). {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.addToAccessGroup({ @@ -17,7 +64,7 @@ await seam.acs.users.addToAccessGroup({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.acs.users.addToAccessGroup({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.add_to_access_group( @@ -34,7 +81,7 @@ seam.acs.users.add_to_access_group( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.add_to_access_group( @@ -51,7 +98,7 @@ seam.acs.users.add_to_access_group( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->add_to_access_group( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users add-to-access-group --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" --acs_access_group_id "123e4567-e89b-12d3-a456-426614174000" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam acs users add-to-access-group --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +157,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -119,32 +166,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_access_group_id` - -Type: `string` -Required: Yes -ID of the desired access group. - -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the desired `acs_user`. - -*** - -## Return Type - -void diff --git a/docs/api/acs/users/create.md b/docs/api/acs/users/create.md index 6137a24e7..ce0f1599a 100644 --- a/docs/api/acs/users/create.md +++ b/docs/api/acs/users/create.md @@ -1,14 +1,98 @@ # Create an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/create ⇒ { acs_user } ``` +{% 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 + + + + + + + + + + + + + + + + + + + +
ParameterDescription
acs_system_id String (Required) + +ID of the `acs_system` to which to add the new `acs_user`. +
full_name String (Required) + +Full name of the new `acs_user`. +
access_schedule Object + +`starts_at` and `ends_at` timestamps for the new `acs_user`'s access. If you specify an `access_schedule`, you may include both `starts_at` and `ends_at`. `starts_at` defaults to the current time if not provided. `ends_at` is optional and must be a time in the future and after `starts_at`. +
acs_access_group_ids Array of UUIDs + +Array of `access_group_id`s to indicate the access groups to which to add the new `acs_user`. +
email String +
email_address String + +Email address of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
phone_number String + +Phone number of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). +
user_identity_id String + +ID of the user identity with which to associate the new `acs_user`. +
+ +## Response + +[acs\_user](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_user +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Create a new ACS user Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.create({ @@ -16,11 +100,10 @@ await seam.acs.users.create({ full_name: "Jane Doe", email_address: "jane@example.com", phone_number: "+15555550100", - acs_access_group_ids: ["123e4567-e89b-12d3-a456-426614174000"], }); ``` -#### Response +#### Output ```javascript { @@ -37,7 +120,7 @@ await seam.acs.users.create({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.create( @@ -45,11 +128,10 @@ seam.acs.users.create( full_name="Jane Doe", email_address="jane@example.com", phone_number="+15555550100", - acs_access_group_ids=["123e4567-e89b-12d3-a456-426614174000"], ) ``` -#### Response +#### Output ```python AcsUser( @@ -66,7 +148,7 @@ AcsUser( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.create( @@ -74,11 +156,10 @@ seam.acs.users.create( full_name: "Jane Doe", email_address: "jane@example.com", phone_number: "+15555550100", - acs_access_group_ids: ["123e4567-e89b-12d3-a456-426614174000"], ) ``` -#### Response +#### Output ```ruby { @@ -95,7 +176,7 @@ seam.acs.users.create( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->create( acs_system_id: "123e4567-e89b-12d3-a456-426614174000", full_name: "Jane Doe", email_address: "jane@example.com", - phone_number: "+15555550100", - acs_access_group_ids: ["123e4567-e89b-12d3-a456-426614174000"] + phone_number: "+15555550100" ); ``` -#### Response +#### Output ```php acs->users->create( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli -seam acs users create --acs_system_id "123e4567-e89b-12d3-a456-426614174000" --full_name "Jane Doe" --email_address "jane@example.com" --phone_number "+15555550100" --acs_access_group_ids ["123e4567-e89b-12d3-a456-426614174000"] +seam acs users create --acs_system_id "123e4567-e89b-12d3-a456-426614174000" --full_name "Jane Doe" --email_address "jane@example.com" --phone_number "+15555550100" ``` -#### Response +#### Output ```seam_cli { @@ -149,7 +229,7 @@ seam acs users create --acs_system_id "123e4567-e89b-12d3-a456-426614174000" --f {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -161,17 +241,16 @@ func main() { client.Acs.Users.Create( context.Background(), users.UsersCreateRequest{ - AcsSystemId: api.String("123e4567-e89b-12d3-a456-426614174000"), - FullName: api.String("Jane Doe"), - EmailAddress: api.String("jane@example.com"), - PhoneNumber: api.String("+15555550100"), - AcsAccessGroupIds: [1]string{api.String("123e4567-e89b-12d3-a456-426614174000")}, + AcsSystemId: api.String("123e4567-e89b-12d3-a456-426614174000"), + FullName: api.String("Jane Doe"), + EmailAddress: api.String("jane@example.com"), + PhoneNumber: api.String("+15555550100"), }, ) } ``` -#### Response +#### Output ```go api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", WorkspaceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z", DisplayName: "Jane Doe", FullName: "Jane Doe", EmailAddress: "jane@example.com", PhoneNumber: "+15555550100"} @@ -180,86 +259,370 @@ api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123 {% endtabs %} -## Authentication Methods -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. +### Create a new ACS user -## Request Parameters +Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) with an access schedule. -### `acs_system_id` +{% tabs %} +{% tab title="JavaScript" %} +#### Code -Type: `string` -Required: Yes +```javascript +await seam.acs.users.create({ + acs_system_id: "123e4567-e89b-12d3-a456-426614174000", + full_name: "Jane Doe", + email_address: "jane@example.com", + phone_number: "+15555550100", + access_schedule: { + starts_at: "2024-11-01T15:00:00.000Z", + ends_at: "2024-11-04T11:00:00.000Z", + }, +}); +``` -ID of the `acs_system` to which to add the new `acs_user`. +#### Output + +```javascript +{ + "acs_user_id": "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id": "123e4567-e89b-12d3-a456-426614174000", + "workspace_id": "123e4567-e89b-12d3-a456-426614174000", + "created_at": "2024-04-05T07:57:05.323Z", + "display_name": "Jane Doe", + "full_name": "Jane Doe", + "email_address": "jane@example.com", + "phone_number": "+15555550100" +} +``` +{% endtab %} + +{% tab title="Python" %} +#### Code + +```python +seam.acs.users.create( + acs_system_id="123e4567-e89b-12d3-a456-426614174000", + full_name="Jane Doe", + email_address="jane@example.com", + phone_number="+15555550100", + access_schedule={ + "starts_at": "2024-11-01T15:00:00.000Z", + "ends_at": "2024-11-04T11:00:00.000Z", + }, +) +``` -*** +#### Output -### `full_name` +```python +AcsUser( + acs_user_id="123e4567-e89b-12d3-a456-426614174000", + acs_system_id="123e4567-e89b-12d3-a456-426614174000", + workspace_id="123e4567-e89b-12d3-a456-426614174000", + created_at="2024-04-05T07:57:05.323Z", + display_name="Jane Doe", + full_name="Jane Doe", + email_address="jane@example.com", + phone_number="+15555550100", +) +``` +{% endtab %} -Type: `string` -Required: Yes +{% tab title="Ruby" %} +#### Code -Full name of the new `acs_user`. +```ruby +seam.acs.users.create( + acs_system_id: "123e4567-e89b-12d3-a456-426614174000", + full_name: "Jane Doe", + email_address: "jane@example.com", + phone_number: "+15555550100", + access_schedule: { + starts_at: "2024-11-01T15:00:00.000Z", + ends_at: "2024-11-04T11:00:00.000Z", + }, +) +``` + +#### Output + +```ruby +{ + "acs_user_id" => "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id" => "123e4567-e89b-12d3-a456-426614174000", + "workspace_id" => "123e4567-e89b-12d3-a456-426614174000", + "created_at" => "2024-04-05T07:57:05.323Z", + "display_name" => "Jane Doe", + "full_name" => "Jane Doe", + "email_address" => "jane@example.com", + "phone_number" => "+15555550100", +} +``` +{% endtab %} -*** +{% tab title="PHP" %} +#### Code -### `access_schedule` +```php +acs->users->create( + acs_system_id: "123e4567-e89b-12d3-a456-426614174000", + full_name: "Jane Doe", + email_address: "jane@example.com", + phone_number: "+15555550100", + access_schedule: [ + "starts_at" => "2024-11-01T15:00:00.000Z", + "ends_at" => "2024-11-04T11:00:00.000Z", + ] +); +``` -Type: `object` -Required: No +#### Output -`starts_at` and `ends_at` timestamps for the new `acs_user`'s access. If you specify an `access_schedule`, you may include both `starts_at` and `ends_at`. `starts_at` defaults to the current time if not provided. `ends_at` is optional and must be a time in the future and after `starts_at`. +```php + "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id" => "123e4567-e89b-12d3-a456-426614174000", + "workspace_id" => "123e4567-e89b-12d3-a456-426614174000", + "created_at" => "2024-04-05T07:57:05.323Z", + "display_name" => "Jane Doe", + "full_name" => "Jane Doe", + "email_address" => "jane@example.com", + "phone_number" => "+15555550100", +]; +``` +{% endtab %} -*** +{% tab title="Seam CLI" %} +#### Code -### `acs_access_group_ids` +```seam_cli +seam acs users create --acs_system_id "123e4567-e89b-12d3-a456-426614174000" --full_name "Jane Doe" --email_address "jane@example.com" --phone_number "+15555550100" --access_schedule {"starts_at":"2024-11-01T15:00:00.000Z","ends_at":"2024-11-04T11:00:00.000Z"} +``` -Type: `array` -Required: No +#### Output -Array of `access_group_id`s to indicate the access groups to which to add the new `acs_user`. +```seam_cli +{ + "acs_user_id": "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id": "123e4567-e89b-12d3-a456-426614174000", + "workspace_id": "123e4567-e89b-12d3-a456-426614174000", + "created_at": "2024-04-05T07:57:05.323Z", + "display_name": "Jane Doe", + "full_name": "Jane Doe", + "email_address": "jane@example.com", + "phone_number": "+15555550100" +} +``` +{% endtab %} -*** +{% tab title="Go" %} +#### Code -### `email` +```go +package main -Type: `string` -Required: No +import api "github.com/seamapi/go" +import users "github.com/seamapi/go/users" +func main() { + client.Acs.Users.Create( + context.Background(), + users.UsersCreateRequest{ + AcsSystemId: api.String("123e4567-e89b-12d3-a456-426614174000"), + FullName: api.String("Jane Doe"), + EmailAddress: api.String("jane@example.com"), + PhoneNumber: api.String("+15555550100"), + AccessSchedule: users.UsersCreateRequestAccessSchedule{StartsAt: api.String("2024-11-01T15:00:00.000Z"), EndsAt: api.String("2024-11-04T11:00:00.000Z")}, + }, + ) +} +``` +#### Output -*** +```go +api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", WorkspaceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z", DisplayName: "Jane Doe", FullName: "Jane Doe", EmailAddress: "jane@example.com", PhoneNumber: "+15555550100"} +``` +{% endtab %} -### `email_address` +{% endtabs %} +### Create a new ACS user in an access group -Type: `string` -Required: No +Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) and assigns the new user to an [access group](../../../capability-guides/access-systems/user-management/assigning-users-to-access-groups.md). -Email address of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +{% tabs %} +{% tab title="JavaScript" %} +#### Code -*** +```javascript +await seam.acs.users.create({ + acs_system_id: "123e4567-e89b-12d3-a456-426614174000", + full_name: "Jane Doe", + email_address: "jane@example.com", + phone_number: "+15555550100", + acs_access_group_ids: ["123e4567-e89b-12d3-a456-426614174000"], +}); +``` -### `phone_number` +#### Output -Type: `string` -Required: No +```javascript +{ + "acs_user_id": "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id": "123e4567-e89b-12d3-a456-426614174000", + "workspace_id": "123e4567-e89b-12d3-a456-426614174000", + "created_at": "2024-04-05T07:57:05.323Z", + "display_name": "Jane Doe", + "full_name": "Jane Doe", + "email_address": "jane@example.com", + "phone_number": "+15555550100" +} +``` +{% endtab %} -Phone number of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). +{% tab title="Python" %} +#### Code -*** +```python +seam.acs.users.create( + acs_system_id="123e4567-e89b-12d3-a456-426614174000", + full_name="Jane Doe", + email_address="jane@example.com", + phone_number="+15555550100", + acs_access_group_ids=["123e4567-e89b-12d3-a456-426614174000"], +) +``` -### `user_identity_id` +#### Output -Type: `string` -Required: No +```python +AcsUser( + acs_user_id="123e4567-e89b-12d3-a456-426614174000", + acs_system_id="123e4567-e89b-12d3-a456-426614174000", + workspace_id="123e4567-e89b-12d3-a456-426614174000", + created_at="2024-04-05T07:57:05.323Z", + display_name="Jane Doe", + full_name="Jane Doe", + email_address="jane@example.com", + phone_number="+15555550100", +) +``` +{% endtab %} -ID of the user identity with which to associate the new `acs_user`. +{% tab title="Ruby" %} +#### Code -*** +```ruby +seam.acs.users.create( + acs_system_id: "123e4567-e89b-12d3-a456-426614174000", + full_name: "Jane Doe", + email_address: "jane@example.com", + phone_number: "+15555550100", + acs_access_group_ids: ["123e4567-e89b-12d3-a456-426614174000"], +) +``` -## Return Type +#### Output -[acs\_user](./) +```ruby +{ + "acs_user_id" => "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id" => "123e4567-e89b-12d3-a456-426614174000", + "workspace_id" => "123e4567-e89b-12d3-a456-426614174000", + "created_at" => "2024-04-05T07:57:05.323Z", + "display_name" => "Jane Doe", + "full_name" => "Jane Doe", + "email_address" => "jane@example.com", + "phone_number" => "+15555550100", +} +``` +{% endtab %} + +{% tab title="PHP" %} +#### Code + +```php +acs->users->create( + acs_system_id: "123e4567-e89b-12d3-a456-426614174000", + full_name: "Jane Doe", + email_address: "jane@example.com", + phone_number: "+15555550100", + acs_access_group_ids: ["123e4567-e89b-12d3-a456-426614174000"] +); +``` + +#### Output + +```php + "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id" => "123e4567-e89b-12d3-a456-426614174000", + "workspace_id" => "123e4567-e89b-12d3-a456-426614174000", + "created_at" => "2024-04-05T07:57:05.323Z", + "display_name" => "Jane Doe", + "full_name" => "Jane Doe", + "email_address" => "jane@example.com", + "phone_number" => "+15555550100", +]; +``` +{% endtab %} + +{% tab title="Seam CLI" %} +#### Code + +```seam_cli +seam acs users create --acs_system_id "123e4567-e89b-12d3-a456-426614174000" --full_name "Jane Doe" --email_address "jane@example.com" --phone_number "+15555550100" --acs_access_group_ids ["123e4567-e89b-12d3-a456-426614174000"] +``` + +#### Output + +```seam_cli +{ + "acs_user_id": "123e4567-e89b-12d3-a456-426614174000", + "acs_system_id": "123e4567-e89b-12d3-a456-426614174000", + "workspace_id": "123e4567-e89b-12d3-a456-426614174000", + "created_at": "2024-04-05T07:57:05.323Z", + "display_name": "Jane Doe", + "full_name": "Jane Doe", + "email_address": "jane@example.com", + "phone_number": "+15555550100" +} +``` +{% endtab %} + +{% tab title="Go" %} +#### Code + +```go +package main + +import api "github.com/seamapi/go" +import users "github.com/seamapi/go/users" + +func main() { + client.Acs.Users.Create( + context.Background(), + users.UsersCreateRequest{ + AcsSystemId: api.String("123e4567-e89b-12d3-a456-426614174000"), + FullName: api.String("Jane Doe"), + EmailAddress: api.String("jane@example.com"), + PhoneNumber: api.String("+15555550100"), + AcsAccessGroupIds: [1]string{api.String("123e4567-e89b-12d3-a456-426614174000")}, + }, + ) +} +``` + +#### Output + +```go +api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", WorkspaceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z", DisplayName: "Jane Doe", FullName: "Jane Doe", EmailAddress: "jane@example.com", PhoneNumber: "+15555550100"} +``` +{% endtab %} + +{% endtabs %} diff --git a/docs/api/acs/users/delete.md b/docs/api/acs/users/delete.md index fcae60e5b..12dcb04a6 100644 --- a/docs/api/acs/users/delete.md +++ b/docs/api/acs/users/delete.md @@ -1,14 +1,56 @@ # Delete an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) and invalidates the ACS user's [credentials](../../../capability-guides/access-systems/managing-credentials.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/delete ⇒ void ``` +{% 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 + + + + + +
ParameterDescription
acs_user_id String (Required) + +ID of the desired `acs_user`. +
+ +## Response + +void + +--- + +## Examples + +### Delete an ACS user Deletes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) and invalidates the ACS user's [credentials](../../../capability-guides/access-systems/managing-credentials.md). {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.delete({ @@ -16,7 +58,7 @@ await seam.acs.users.delete({ }); ``` -#### Response +#### Output ```javascript // void @@ -24,13 +66,13 @@ await seam.acs.users.delete({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.delete(acs_user_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```python None @@ -38,13 +80,13 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.delete(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```ruby nil @@ -52,14 +94,14 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->delete(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"); ``` -#### Response +#### Output ```php null @@ -67,13 +109,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users delete --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" ``` -#### Response +#### Output ```seam_cli {} @@ -81,7 +123,7 @@ seam acs users delete --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -99,7 +141,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -108,23 +150,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_user_id` -Type: `string` -Required: Yes - -ID of the desired `acs_user`. - -*** - -## Return Type - -void diff --git a/docs/api/acs/users/get.md b/docs/api/acs/users/get.md index 997149da3..5f47b7d94 100644 --- a/docs/api/acs/users/get.md +++ b/docs/api/acs/users/get.md @@ -1,14 +1,65 @@ # Get an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/get ⇒ { acs_user } ``` +{% endtab %} +{% endtabs %} -Returns a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
+ +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 + + + + + +
ParameterDescription
acs_user_id String (Required) + +ID of the desired `acs_user`. +
+ +## Response + +[acs\_user](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_user +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get a specific ACS user + +Specify the `acs_user_id` of the specific [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to retrieve. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.get({ @@ -16,7 +67,7 @@ await seam.acs.users.get({ }); ``` -#### Response +#### Output ```javascript { @@ -33,13 +84,13 @@ await seam.acs.users.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.get(acs_user_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```python AcsUser( @@ -56,13 +107,13 @@ AcsUser( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.get(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```ruby { @@ -79,14 +130,14 @@ seam.acs.users.get(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33") {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->get(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"); ``` -#### Response +#### Output ```php acs->users->get(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"); {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users get --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" ``` -#### Response +#### Output ```seam_cli { @@ -127,7 +178,7 @@ seam acs users get --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -145,7 +196,7 @@ func main() { } ``` -#### Response +#### Output ```go api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", WorkspaceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z", DisplayName: "Jane Doe", FullName: "Jane Doe", EmailAddress: "jane@example.com", PhoneNumber: "+15555550100"} @@ -154,23 +205,4 @@ api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123 {% endtabs %} -## Authentication Methods -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the desired `acs_user`. - -*** - -## Return Type - -[acs\_user](./) diff --git a/docs/api/acs/users/list.md b/docs/api/acs/users/list.md index b23c5a49e..c3ec145ac 100644 --- a/docs/api/acs/users/list.md +++ b/docs/api/acs/users/list.md @@ -1,20 +1,105 @@ # List ACS Users +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/list ⇒ { acs_users: [acs_user, …] } ``` +{% 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 + + + + + + + + + + + + + + + + + + + +
ParameterDescription
acs_system_id String + +ID of the `acs_system` for which you want to retrieve all `acs_user`s. +
created_before String +
limit Number + +Maximum number of records to return per page. +
page_cursor String + +Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. +
search String + +String for which to search. Filters returned `acs_user`s to include all records that satisfy a partial match using `full_name`, `phone_number`, `email_address`, `acs_user_id`, `user_identity_id`, `user_identity_full_name` or `user_identity_phone_number`. +
user_identity_email_address String + +Email address of the user identity for which you want to retrieve all `acs_user`s. +
user_identity_id String + +ID of the user identity for which you want to retrieve all `acs_user`s. +
user_identity_phone_number String + +Phone number of the user identity for which you want to retrieve all `acs_user`s, in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, `+15555550100`). +
+ +## Response + +Array of [acs\_users](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_user +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List all ACS users Returns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management). {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.list(); ``` -#### Response +#### Output ```javascript { @@ -31,13 +116,13 @@ await seam.acs.users.list(); {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.list() ``` -#### Response +#### Output ```python AcsUser( @@ -54,13 +139,13 @@ AcsUser( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.list() ``` -#### Response +#### Output ```ruby { @@ -77,14 +162,14 @@ seam.acs.users.list() {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->list(); ``` -#### Response +#### Output ```php acs->users->list(); {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users list ``` -#### Response +#### Output ```seam_cli { @@ -125,7 +210,7 @@ seam acs users list {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -135,7 +220,7 @@ func main() { } ``` -#### Response +#### Output ```go api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123e4567-e89b-12d3-a456-426614174000", WorkspaceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z", DisplayName: "Jane Doe", FullName: "Jane Doe", EmailAddress: "jane@example.com", PhoneNumber: "+15555550100"} @@ -144,87 +229,4 @@ api.AcsUser{AcsUserId: "123e4567-e89b-12d3-a456-426614174000", AcsSystemId: "123 {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_system_id` - -Type: `string` -Required: No - -ID of the `acs_system` for which you want to retrieve all `acs_user`s. - -*** - -### `created_before` - -Type: `string` -Required: No - - - -*** - -### `limit` - -Type: `number` -Required: No - -Maximum number of records to return per page. - -*** - -### `page_cursor` - -Type: `string` -Required: No - -Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. - -*** - -### `search` - -Type: `string` -Required: No - -String for which to search. Filters returned `acs_user`s to include all records that satisfy a partial match using `full_name`, `phone_number`, or `email_address`. - -*** - -### `user_identity_email_address` - -Type: `string` -Required: No - -Email address of the user identity for which you want to retrieve all `acs_user`s. - -*** - -### `user_identity_id` - -Type: `string` -Required: No - -ID of the user identity for which you want to retrieve all `acs_user`s. - -*** - -### `user_identity_phone_number` - -Type: `string` -Required: No - -Phone number of the user identity for which you want to retrieve all `acs_user`s, in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, `+15555550100`). - -*** - -## Return Type -Array<[acs\_user](./)> diff --git a/docs/api/acs/users/list_accessible_entrances.md b/docs/api/acs/users/list_accessible_entrances.md index c5c4ad636..c31f3d097 100644 --- a/docs/api/acs/users/list_accessible_entrances.md +++ b/docs/api/acs/users/list_accessible_entrances.md @@ -1,29 +1,51 @@ # List ACS User-Accessible Entrances +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Lists the [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) has access. + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/list_accessible_entrances ⇒ { acs_entrances: [acs_entrance, …] } ``` +{% endtab %} +{% endtabs %} -Lists the [entrances](https://docs.seam.co/latest/api/acs/entrances) to which a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) has access. +
-## Authentication Methods +Authentication Methods - API key - Client session token - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_user_id` +## Request Parameters -Type: `string` -Required: Yes + + + + +
ParameterDescription
acs_user_id String (Required) ID of the desired `acs_user`. - -*** - -## Return Type - -Array<[acs\_entrance](./)> +
+ +## Response + +Array of [acs\_entrances](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_entrance +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/acs/users/remove_from_access_group.md b/docs/api/acs/users/remove_from_access_group.md index 7a5808809..0d46d115c 100644 --- a/docs/api/acs/users/remove_from_access_group.md +++ b/docs/api/acs/users/remove_from_access_group.md @@ -1,14 +1,61 @@ # Remove an ACS User from an Access Group +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +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). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/remove_from_access_group ⇒ void ``` +{% endtab %} +{% endtabs %} -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). +
+ +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 + + + + + + + +
ParameterDescription
acs_access_group_id String (Required) + +ID of the desired access group. +
acs_user_id String (Required) + +ID of the desired `acs_user`. +
+ +## Response + +void + +--- + +## Examples + +### Remove an ACS user from an access group + +Removes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) from an [access group](https://docs.seam.co/latest/capability-guides/access-systems/assigning-users-to-access-groups). {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.removeFromAccessGroup({ @@ -17,7 +64,7 @@ await seam.acs.users.removeFromAccessGroup({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.acs.users.removeFromAccessGroup({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.remove_from_access_group( @@ -34,7 +81,7 @@ seam.acs.users.remove_from_access_group( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.remove_from_access_group( @@ -51,7 +98,7 @@ seam.acs.users.remove_from_access_group( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->remove_from_access_group( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users remove-from-access-group --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" --acs_access_group_id "123e4567-e89b-12d3-a456-426614174000" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam acs users remove-from-access-group --acs_user_id "8d7e0b3a-b889-49a7-9164-4 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +157,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -119,32 +166,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_access_group_id` -Type: `string` -Required: Yes - -ID of the desired access group. - -*** - -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the desired `acs_user`. - -*** - -## Return Type - -void diff --git a/docs/api/acs/users/revoke_access_to_all_entrances.md b/docs/api/acs/users/revoke_access_to_all_entrances.md index 8a5357160..06616ac05 100644 --- a/docs/api/acs/users/revoke_access_to_all_entrances.md +++ b/docs/api/acs/users/revoke_access_to_all_entrances.md @@ -1,28 +1,41 @@ # Revoke ACS User Access to All Entrances +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Revokes access to all [entrances](https://docs.seam.co/latest/api/acs/entrances) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/revoke_access_to_all_entrances ⇒ void ``` +{% endtab %} +{% endtabs %} -Revokes access to all [entrances](https://docs.seam.co/latest/api/acs/entrances) for a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_user_id` +## Request Parameters -Type: `string` -Required: Yes + + + + +
ParameterDescription
acs_user_id String (Required) ID of the desired `acs_user`. +
-*** - -## Return Type +## Response void diff --git a/docs/api/acs/users/suspend.md b/docs/api/acs/users/suspend.md index 3e7988c69..4448fa0e5 100644 --- a/docs/api/acs/users/suspend.md +++ b/docs/api/acs/users/suspend.md @@ -1,14 +1,56 @@ # Suspend an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +[Suspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#suspend-an-acs-user) a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). Suspending an ACS user revokes their access temporarily. To restore an ACS user's access, you can [unsuspend](https://docs.seam.co/latest/api/acs/users/unsuspend) them. + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/suspend ⇒ void ``` +{% 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 + + + + + +
ParameterDescription
acs_user_id String (Required) + +ID of the desired `acs_user`. +
+ +## Response + +void + +--- + +## Examples + +### Suspend an ACS user [Suspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#suspend-an-acs-user) a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). Suspending an ACS user revokes their access temporarily. To restore an ACS user's access, you can [unsuspend](https://docs.seam.co/latest/api/acs/users/unsuspend) them. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.suspend({ @@ -16,7 +58,7 @@ await seam.acs.users.suspend({ }); ``` -#### Response +#### Output ```javascript // void @@ -24,13 +66,13 @@ await seam.acs.users.suspend({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.suspend(acs_user_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```python None @@ -38,13 +80,13 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.suspend(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```ruby nil @@ -52,14 +94,14 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->suspend(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33"); ``` -#### Response +#### Output ```php null @@ -67,13 +109,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users suspend --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" ``` -#### Response +#### Output ```seam_cli {} @@ -81,7 +123,7 @@ seam acs users suspend --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -99,7 +141,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -108,23 +150,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_user_id` -Type: `string` -Required: Yes - -ID of the desired `acs_user`. - -*** - -## Return Type - -void diff --git a/docs/api/acs/users/unsuspend.md b/docs/api/acs/users/unsuspend.md index e2f624dd0..d1c218e0b 100644 --- a/docs/api/acs/users/unsuspend.md +++ b/docs/api/acs/users/unsuspend.md @@ -1,14 +1,56 @@ # Unsuspend an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +[Unsuspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#unsuspend-an-acs-user) a specified suspended [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). While [suspending an ACS user](https://docs.seam.co/latest/api/acs/users/suspend) revokes their access temporarily, unsuspending the ACS user restores their access. + +{% tabs %} +{% tab title="Signature" %} ``` POST /acs/users/unsuspend ⇒ void ``` +{% 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 + + + + + +
ParameterDescription
acs_user_id String (Required) + +ID of the desired `acs_user`. +
+ +## Response + +void + +--- + +## Examples + +### Unsuspend an ACS user [Unsuspends](https://docs.seam.co/latest/capability-guides/access-systems/user-management/suspending-and-unsuspending-users#unsuspend-an-acs-user) a specified suspended [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). While [suspending an ACS user](https://docs.seam.co/latest/api/acs/users/suspend) revokes their access temporarily, unsuspending the ACS user restores their access. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.unsuspend({ @@ -16,7 +58,7 @@ await seam.acs.users.unsuspend({ }); ``` -#### Response +#### Output ```javascript // void @@ -24,13 +66,13 @@ await seam.acs.users.unsuspend({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.unsuspend(acs_user_id="8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```python None @@ -38,13 +80,13 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.unsuspend(acs_user_id: "8d7e0b3a-b889-49a7-9164-4b71a0506a33") ``` -#### Response +#### Output ```ruby nil @@ -52,7 +94,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->unsuspend( ); ``` -#### Response +#### Output ```php null @@ -69,13 +111,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users unsuspend --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" ``` -#### Response +#### Output ```seam_cli {} @@ -83,7 +125,7 @@ seam acs users unsuspend --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -101,7 +143,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -110,23 +152,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_user_id` -Type: `string` -Required: Yes - -ID of the desired `acs_user`. - -*** - -## Return Type - -void diff --git a/docs/api/acs/users/update.md b/docs/api/acs/users/update.md index dccb7c8af..2698ab88a 100644 --- a/docs/api/acs/users/update.md +++ b/docs/api/acs/users/update.md @@ -1,14 +1,82 @@ # Update an ACS User +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Updates the properties of a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /acs/users/update ⇒ void ``` +{% endtab %} +{% endtabs %} -Updates the properties of a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
+ +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 + + + + + + + + + + + + + + + + + +
ParameterDescription
acs_user_id String (Required) + +ID of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
access_schedule Object + +`starts_at` and `ends_at` timestamps for the `acs_user`'s access. If you specify an `access_schedule`, you must include both `starts_at` and `ends_at`. `ends_at` must be a time in the future and after `starts_at`. +
email String +
email_address String + +Email address of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
full_name String + +Full name of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). +
hid_acs_system_id String +
phone_number String + +Phone number of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). +
+ +## Response + +void + +--- + +## Examples + +### Update an ACS user + +Update the properties of a specific [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.acs.users.update({ @@ -17,7 +85,7 @@ await seam.acs.users.update({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +93,7 @@ await seam.acs.users.update({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.acs.users.update( @@ -33,7 +101,7 @@ seam.acs.users.update( ) ``` -#### Response +#### Output ```python None @@ -41,7 +109,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.acs.users.update( @@ -50,7 +118,7 @@ seam.acs.users.update( ) ``` -#### Response +#### Output ```ruby nil @@ -58,7 +126,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php acs->users->update( ); ``` -#### Response +#### Output ```php null @@ -76,13 +144,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam acs users update --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" --phone_number "+15555550222" ``` -#### Response +#### Output ```seam_cli {} @@ -90,7 +158,7 @@ seam acs users update --acs_user_id "8d7e0b3a-b889-49a7-9164-4b71a0506a33" --pho {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -109,7 +177,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -118,77 +186,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters -### `acs_user_id` - -Type: `string` -Required: Yes - -ID of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). - -*** - -### `access_schedule` - -Type: `object` -Required: No - -`starts_at` and `ends_at` timestamps for the `acs_user`'s access. If you specify an `access_schedule`, you must include both `starts_at` and `ends_at`. `ends_at` must be a time in the future and after `starts_at`. - -*** - -### `email` - -Type: `string` -Required: No - - - -*** - -### `email_address` - -Type: `string` -Required: No - -Email address of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). - -*** - -### `full_name` - -Type: `string` -Required: No - -Full name of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). - -*** - -### `hid_acs_system_id` - -Type: `string` -Required: No - - - -*** - -### `phone_number` - -Type: `string` -Required: No - -Phone number of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) in E.164 format (for example, `+15555550100`). - -*** - -## Return Type - -void diff --git a/docs/api/phones/README.md b/docs/api/phones/README.md index e6ebc2971..7692358da 100644 --- a/docs/api/phones/README.md +++ b/docs/api/phones/README.md @@ -1,206 +1,261 @@ # Phones -## `phone` +## The phone Object -Represents an app user's mobile phone. +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) -### `created_at` -Format: `Datetime` +Represents an app user's mobile phone. -Date and time at which the `phone` was created. +{% tabs %} +{% tab title="JSON" %} +```json +{ + created_at: [example value], + custom_metadata: [example value], + device_id: [example value], + device_type: [example value], + display_name: [example value], + errors: [example value], + nickname: [example value], + properties: [example value], + warnings: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} --- -### `custom_metadata` +## Properties -Format: `Record` + + + + -### `device_id` + + ---- + + + + + + + + + + + + + + + -Returns a list of all phones. To filter the list of returned phones by a specific owner user identity or credential, include the `owner_user_identity_id` or `acs_credential_id`, respectively, in the request body. + + -### `phone.deactivated` +
PropertyDescription
created_at Datetime +Date and time at which the `phone` was created. -Optional [custom metadata](../../core-concepts/devices/adding-custom-metadata-to-a-device.md) for the phone. ---- +
custom_metadata Record +Optional [custom metadata](../../core-concepts/devices/adding-custom-metadata-to-a-device.md) for the phone. -Format: `UUID` -ID of the `phone`. +
device_id UUID +ID of the `phone`. -### `device_type` -Format: `Enum` +
device_type Enum Type of phone. -Possible enum values: +
+ +Enum values + - `ios_phone` - `android_phone` +
---- - -### `display_name` -Format: `String` +
display_name String Display name of the phone. Defaults to `nickname` (if it is set) or `properties.appearance.name` otherwise. Enables administrators and users to identify the phone easily, especially when there are numerous phones. ---- - -### `errors` - -Format: `List` -Item format: `Object` +
errors List of Objects Errors associated with the `phone`.
-error_code Format: String -
-
+Child Object Properties + +- error_code String + + + +- message String + -message Format: String
---- -### `nickname` -Format: `String` +
nickname String Optional nickname to describe the phone, settable through Seam. ---- - -### `properties` -Format: `Object` +
properties Object Properties of the phone.
-assa_abloy_credential_service_metadata Format: Object +Child Properties -ASSA ABLOY Credential Service metadata for the phone. -
-
+- assa_abloy_credential_service_metadata Object + + ASSA ABLOY Credential Service metadata for the phone. -assa_abloy_credential_service_metadata.endpoints Format: List Item format: Object -Endpoints associated with the phone. -- endpoint_id Format: String +- assa_abloy_credential_service_metadata.endpoints List of Objects + + Endpoints associated with the phone. + + +- endpoint_id String ID of the associated endpoint. -- is_active Format: Boolean + +- is_active Boolean Indicated whether the endpoint is active. -
-
-assa_abloy_credential_service_metadata.has_active_endpoint Format: Boolean -Indicates whether the credential service has active endpoints associated with the phone. -
-
-salto_space_credential_service_metadata Format: Object +- assa_abloy_credential_service_metadata.has_active_endpoint Boolean -Salto Space credential service metadata for the phone. -
-
+ Indicates whether the credential service has active endpoints associated with the phone. -salto_space_credential_service_metadata.has_active_phone Format: Boolean -Indicates whether the credential service has an active associated phone. -
---- -### `warnings` +- salto_space_credential_service_metadata Object -Format: `List` + Salto Space credential service metadata for the phone. -Item format: `Object` -Warnings associated with the `phone`. -
+- salto_space_credential_service_metadata.has_active_phone Boolean + + Indicates whether the credential service has an active associated phone. + -message Format: String
+ + +
warnings List of Objects +Warnings associated with the `phone`. +
-warning_code Format: String -
---- +Child Object Properties -### `workspace_id` +- message String -Format: `UUID` -ID of the [workspace](../../core-concepts/workspaces/README.md) that contains the `phone`. ---- +- warning_code String -## Endpoints -### [`/phones/deactivate`](./deactivate.md) + -Deactivates a phone, which is useful, for example, if a user has lost their phone. For more information, see [App User Lost Phone Process](../../capability-guides/mobile-access/managing-phones-for-a-user-identity.md#app-user-lost-phone-process). -### [`/phones/get`](./get.md) -Returns a single phone entry matching the provided `device_id`. -### [`/phones/list`](./list.md) +
workspace_id UUID +ID of the [workspace](../../core-concepts/workspaces/README.md) that contains the `phone`. ---- -## Events +
+## Events + + + + + +
EventDescription
phone.deactivated A phone device was deactivated.
-created_at Format: Datetime +Properties -Date and time at which the event was created. -
-
+- created_at Datetime -device_id Format: UUID + Date and time at which the event was created. -ID of the [device](../../core-concepts/devices/README.md). -
-
-event_id Format: UUID -ID of the event. -
-
+- device_id UUID -event_type Format: String -
-
+ ID of the [device](../../core-concepts/devices/README.md). -occurred_at Format: Datetime -Date and time at which the event occurred. -
-
-workspace_id Format: UUID +- event_id UUID + + ID of the event. + + + +- event_type String + + + +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../core-concepts/workspaces/README.md). + -ID of the [workspace](../../core-concepts/workspaces/README.md).
---- +
+ +## Endpoints + + + + + + + + + + + + + + + + + + +
EndpointDescription
/phones/deactivateDeactivates a phone, which is useful, for example, if a user has lost their phone. For more information, see [App User Lost Phone Process](../../capability-guides/mobile-access/managing-phones-for-a-user-identity.md#app-user-lost-phone-process).
/phones/getReturns a single phone entry matching the provided `device_id`.
/phones/listReturns a list of all phones. To filter the list of returned phones by a specific owner user identity or credential, include the `owner_user_identity_id` or `acs_credential_id`, respectively, in the request body.
diff --git a/docs/api/phones/deactivate.md b/docs/api/phones/deactivate.md index 00de709b3..2d50a95d3 100644 --- a/docs/api/phones/deactivate.md +++ b/docs/api/phones/deactivate.md @@ -1,29 +1,42 @@ # Deactivate a Phone +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deactivates a phone, which is useful, for example, if a user has lost their phone. For more information, see [App User Lost Phone Process](../../capability-guides/mobile-access/managing-phones-for-a-user-identity.md#app-user-lost-phone-process). + +{% tabs %} +{% tab title="Signature" %} ``` POST /phones/deactivate ⇒ void ``` +{% endtab %} +{% endtabs %} -Deactivates a phone, which is useful, for example, if a user has lost their phone. For more information, see [App User Lost Phone Process](../../capability-guides/mobile-access/managing-phones-for-a-user-identity.md#app-user-lost-phone-process). +
-## Authentication Methods +Authentication Methods - API key - Client session token - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `device_id` +## Request Parameters -Type: `string` -Required: Yes + + + + +
ParameterDescription
device_id String (Required) Device ID of the desired phone. +
-*** - -## Return Type +## Response void diff --git a/docs/api/phones/get.md b/docs/api/phones/get.md index 1c06ba47a..328bc1042 100644 --- a/docs/api/phones/get.md +++ b/docs/api/phones/get.md @@ -1,28 +1,50 @@ # Get Phone +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a single phone entry matching the provided `device_id`. + +{% tabs %} +{% tab title="Signature" %} ``` POST /phones/get ⇒ { phone } ``` +{% endtab %} +{% endtabs %} -Returns a single phone entry matching the provided `device_id`. +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `device_id` +## Request Parameters -Type: `string` -Required: Yes + + + + +
ParameterDescription
device_id String (Required) Device ID of the desired phone. +
-*** - -## Return Type +## Response [phone](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of phone +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/phones/list.md b/docs/api/phones/list.md index d0e79e40a..cf767bf36 100644 --- a/docs/api/phones/list.md +++ b/docs/api/phones/list.md @@ -1,37 +1,55 @@ # List Phones +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all phones. To filter the list of returned phones by a specific owner user identity or credential, include the `owner_user_identity_id` or `acs_credential_id`, respectively, in the request body. + +{% tabs %} +{% tab title="Signature" %} ``` POST /phones/list ⇒ { phones: [phone, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all phones. To filter the list of returned phones by a specific owner user identity or credential, include the `owner_user_identity_id` or `acs_credential_id`, respectively, in the request body. +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `acs_credential_id` +## Request Parameters -Type: `string` -Required: No + + + + + + +
ParameterDescription
acs_credential_id String ID of the [credential](../../capability-guides/access-systems/managing-credentials.md) by which to filter the list of returned phones. - -*** - -### `owner_user_identity_id` - -Type: `string` -Required: No +
owner_user_identity_id String ID of the user identity that represents the owner by which to filter the list of returned phones. - -*** - -## Return Type - -Array<[phone](./)> +
+ +## Response + +Array of [phones](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of phone +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/phones/simulate/README.md b/docs/api/phones/simulate/README.md index e361df769..890a45075 100644 --- a/docs/api/phones/simulate/README.md +++ b/docs/api/phones/simulate/README.md @@ -1,7 +1,14 @@ # Phone Simulations + + ## Endpoints -### [`/phones/simulate/create_sandbox_phone`](./create_sandbox_phone.md) + + + + + + -Creates a new simulated phone in a [sandbox workspace](../../../core-concepts/workspaces/README.md#sandbox-workspaces). For more information, see [Creating a Simulated Phone for a User Identity](../../../capability-guides/mobile-access/developing-in-a-sandbox-workspace.md#creating-a-simulated-phone-for-a-user-identity). +
EndpointDescription
/phones/simulate/create_sandbox_phoneCreates a new simulated phone in a [sandbox workspace](../../../core-concepts/workspaces/README.md#sandbox-workspaces). For more information, see [Creating a Simulated Phone for a User Identity](../../../capability-guides/mobile-access/developing-in-a-sandbox-workspace.md#creating-a-simulated-phone-for-a-user-identity).
diff --git a/docs/api/phones/simulate/create_sandbox_phone.md b/docs/api/phones/simulate/create_sandbox_phone.md index a1e393a65..f384d4cb2 100644 --- a/docs/api/phones/simulate/create_sandbox_phone.md +++ b/docs/api/phones/simulate/create_sandbox_phone.md @@ -1,55 +1,65 @@ # Create a Sandbox Phone +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates a new simulated phone in a [sandbox workspace](../../../core-concepts/workspaces/README.md#sandbox-workspaces). For more information, see [Creating a Simulated Phone for a User Identity](../../../capability-guides/mobile-access/developing-in-a-sandbox-workspace.md#creating-a-simulated-phone-for-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /phones/simulate/create_sandbox_phone ⇒ { phone } ``` +{% endtab %} +{% endtabs %} -Creates a new simulated phone in a [sandbox workspace](../../../core-concepts/workspaces/README.md#sandbox-workspaces). For more information, see [Creating a Simulated Phone for a User Identity](../../../capability-guides/mobile-access/developing-in-a-sandbox-workspace.md#creating-a-simulated-phone-for-a-user-identity). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `user_identity_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + + + + + +
ParameterDescription
user_identity_id String (Required) ID of the user identity to associate with the simulated phone. - -*** - -### `assa_abloy_metadata` - -Type: `object` -Required: No +
assa_abloy_metadata Object ASSA ABLOY metadata to associate with the simulated phone. - -*** - -### `custom_sdk_installation_id` - -Type: `string` -Required: No +
custom_sdk_installation_id String ID of the custom SDK installation to use for the simulated phone. - -*** - -### `phone_metadata` - -Type: `object` -Required: No +
phone_metadata Object Metadata to associate with the simulated phone. +
-*** - -## Return Type +## Response [phone](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of phone +} +``` +{% endtab %} +{% endtabs %} diff --git a/docs/api/thermostats/README.md b/docs/api/thermostats/README.md index 66d5e32cc..1e2814bc5 100644 --- a/docs/api/thermostats/README.md +++ b/docs/api/thermostats/README.md @@ -1,43 +1,74 @@ # Thermostats + + ## Endpoints -### [`/thermostats/activate_climate_preset`](./activate_climate_preset.md) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -Activates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/cool`](./cool.md) -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [cool mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). -### [`/thermostats/create_climate_preset`](./create_climate_preset.md) + -Creates a [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/delete_climate_preset`](./delete_climate_preset.md) + -Deletes a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/heat`](./heat.md) -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). -### [`/thermostats/heat_cool`](./heat_cool.md) + -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat-cool ("auto") mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). -### [`/thermostats/list`](./list.md) + -Returns a list of all [thermostats](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/off`](./off.md) -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to ["off" mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). -### [`/thermostats/set_fallback_climate_preset`](./set_fallback_climate_preset.md) + -Sets a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) as the ["fallback"](../../capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset.md) preset for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/set_fan_mode`](./set_fan_mode.md) + -Sets the [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/set_hvac_mode`](./set_hvac_mode.md) -Sets the [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/set_temperature_threshold`](./set_temperature_threshold.md) + -Sets a [temperature threshold](../../capability-guides/thermostats/setting-and-monitoring-temperature-thresholds.md) for a specified thermostat. Seam emits a `thermostat.temperature_threshold_exceeded` event and adds a warning on a thermostat if it reports a temperature outside the threshold range. -### [`/thermostats/update_climate_preset`](./update_climate_preset.md) + -Updates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
EndpointDescription
/thermostats/activate_climate_presetActivates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/coolSets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [cool mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).
/thermostats/create_climate_presetCreates a [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/delete_climate_presetDeletes a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/heatSets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).
/thermostats/heat_coolSets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat-cool ("auto") mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).
/thermostats/listReturns a list of all [thermostats](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/offSets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to ["off" mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).
/thermostats/set_fallback_climate_presetSets a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) as the ["fallback"](../../capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset.md) preset for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/set_fan_modeSets the [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/set_hvac_modeSets the [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/set_temperature_thresholdSets a [temperature threshold](../../capability-guides/thermostats/setting-and-monitoring-temperature-thresholds.md) for a specified thermostat. Seam emits a `thermostat.temperature_threshold_exceeded` event and adds a warning on a thermostat if it reports a temperature outside the threshold range.
/thermostats/update_climate_presetUpdates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
diff --git a/docs/api/thermostats/activate_climate_preset.md b/docs/api/thermostats/activate_climate_preset.md index 54efb64e9..67edb3f37 100644 --- a/docs/api/thermostats/activate_climate_preset.md +++ b/docs/api/thermostats/activate_climate_preset.md @@ -1,14 +1,74 @@ # Activate a Climate Preset +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Activates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/activate_climate_preset ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Activates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + +
ParameterDescription
climate_preset_key String (Required) + +Climate preset key of the desired climate preset. +
device_id String (Required) + +ID of the desired thermostat device. +
+ +## Response + +[action\_attempt](./) + +**`ACTIVATE_CLIMATE_PRESET`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Activate a climate preset + +Specify the `device_id` of the desired thermostat and the `climate_preset_key` of the desired climate preset. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.activateClimatePreset({ @@ -17,7 +77,7 @@ await seam.thermostats.activateClimatePreset({ }); ``` -#### Response +#### Output ```javascript { @@ -29,7 +89,7 @@ await seam.thermostats.activateClimatePreset({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.activate_climate_preset( @@ -37,7 +97,7 @@ seam.thermostats.activate_climate_preset( ) ``` -#### Response +#### Output ```python ActionAttempt( @@ -49,7 +109,7 @@ ActionAttempt( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.activate_climate_preset( @@ -58,7 +118,7 @@ seam.thermostats.activate_climate_preset( ) ``` -#### Response +#### Output ```ruby { @@ -70,7 +130,7 @@ seam.thermostats.activate_climate_preset( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->activate_climate_preset( ); ``` -#### Response +#### Output ```php thermostats->activate_climate_preset( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats activate-climate-preset --device_id "123e4567-e89b-12d3-a456-426614174000" --climate_preset_key "occupied" ``` -#### Response +#### Output ```seam_cli { @@ -111,7 +171,7 @@ seam thermostats activate-climate-preset --device_id "123e4567-e89b-12d3-a456-42 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -129,7 +189,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ActionAttempt{ActionAttemptId: "05de2295-d1dc-4748-aae3-9931658bde20", Status: "pending", ActionType: "ACTIVATE_CLIMATE_PRESET"} @@ -138,62 +198,4 @@ api.ActionAttempt{ActionAttemptId: "05de2295-d1dc-4748-aae3-9931658bde20", Statu {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `climate_preset_key` - -Type: `string` -Required: Yes - -Climate preset key of the desired climate preset. - -*** - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -## Return Type - -[action\_attempt](./) - -### `ACTIVATE_CLIMATE_PRESET` - -Activating climate preset. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- diff --git a/docs/api/thermostats/cool.md b/docs/api/thermostats/cool.md index 5879fe407..8a2618ed4 100644 --- a/docs/api/thermostats/cool.md +++ b/docs/api/thermostats/cool.md @@ -1,14 +1,80 @@ # Set to Cool Mode +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [cool mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/cool ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [cool mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). +
+ +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 + + + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired thermostat device. +
cooling_set_point_celsius Number + +Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `cooling_set_point` parameters. +
cooling_set_point_fahrenheit Number + +Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `cooling_set_point` parameters. +
+ +## Response + +[action\_attempt](./) + +**`SET_HVAC_MODE`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Set to cool mode + +Specify the desired cooling set point in °C or °F. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.cool({ @@ -17,7 +83,7 @@ await seam.thermostats.cool({ }); ``` -#### Response +#### Output ```javascript { @@ -29,7 +95,7 @@ await seam.thermostats.cool({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.cool( @@ -37,7 +103,7 @@ seam.thermostats.cool( ) ``` -#### Response +#### Output ```python ActionAttempt( @@ -49,7 +115,7 @@ ActionAttempt( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.cool( @@ -58,7 +124,7 @@ seam.thermostats.cool( ) ``` -#### Response +#### Output ```ruby { @@ -70,7 +136,7 @@ seam.thermostats.cool( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->cool( ); ``` -#### Response +#### Output ```php thermostats->cool( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats cool --device_id "123e4567-e89b-12d3-a456-426614174000" --cooling_set_point_celsius 25 ``` -#### Response +#### Output ```seam_cli { @@ -111,7 +177,7 @@ seam thermostats cool --device_id "123e4567-e89b-12d3-a456-426614174000" --cooli {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -129,7 +195,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Status: "pending", ActionType: "SET_COOL"} @@ -138,72 +204,4 @@ api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Statu {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `cooling_set_point_celsius` - -Type: `number` -Required: No - -Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `cooling_set_point` parameters. - -*** - -### `cooling_set_point_fahrenheit` - -Type: `number` -Required: No - -Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `cooling_set_point` parameters. - -*** - -## Return Type - -[action\_attempt](./) - -### `SET_HVAC_MODE` - -Setting HVAC mode. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- diff --git a/docs/api/thermostats/create_climate_preset.md b/docs/api/thermostats/create_climate_preset.md index 069c4b3c5..6c37f59ca 100644 --- a/docs/api/thermostats/create_climate_preset.md +++ b/docs/api/thermostats/create_climate_preset.md @@ -1,14 +1,102 @@ # Create a Climate Preset +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates a [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/create_climate_preset ⇒ void ``` +{% endtab %} +{% endtabs %} -Creates a [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
climate_preset_key String (Required) + +Unique key to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). +
device_id String (Required) + +ID of the desired thermostat device. +
cooling_set_point_celsius Number + +Temperature to which the thermostat should cool (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
cooling_set_point_fahrenheit Number + +Temperature to which the thermostat should cool (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
fan_mode_setting String + +Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`. +
heating_set_point_celsius Number + +Temperature to which the thermostat should heat (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
heating_set_point_fahrenheit Number + +Temperature to which the thermostat should heat (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
hvac_mode_setting String + +Desired [HVAC mode](../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) setting, such as `heat`, `cool`, `heat_cool`, or `off`. +
manual_override_allowed Boolean + +Indicates whether a person at the thermostat or using the API can change the thermostat's settings. +
name String + +User-friendly name to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). +
+ +## Response + +void + +--- + +## Examples + +### Create a climate preset + +Specify the `device_id` of the desired thermostat, along with the desired settings for the climate preset, including `manual_override_allowed`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.createClimatePreset({ @@ -23,7 +111,7 @@ await seam.thermostats.createClimatePreset({ }); ``` -#### Response +#### Output ```javascript // void @@ -31,7 +119,7 @@ await seam.thermostats.createClimatePreset({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.create_climate_preset( @@ -46,7 +134,7 @@ seam.thermostats.create_climate_preset( ) ``` -#### Response +#### Output ```python None @@ -54,7 +142,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.create_climate_preset( @@ -69,7 +157,7 @@ seam.thermostats.create_climate_preset( ) ``` -#### Response +#### Output ```ruby nil @@ -77,7 +165,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->create_climate_preset( ); ``` -#### Response +#### Output ```php null @@ -101,13 +189,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats create-climate-preset --device_id "123e4567-e89b-12d3-a456-426614174000" --climate_preset_key "occupied" --name "Occupied" --fan_mode_setting "auto" --hvac_mode_setting "heat_cool" --cooling_set_point_celsius 25 --heating_set_point_celsius 20 --manual_override_allowed true ``` -#### Response +#### Output ```seam_cli {} @@ -115,7 +203,7 @@ seam thermostats create-climate-preset --device_id "123e4567-e89b-12d3-a456-4266 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -139,7 +227,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -148,105 +236,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `climate_preset_key` -Type: `string` -Required: Yes - -Unique key to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). - -*** - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `cooling_set_point_celsius` - -Type: `number` -Required: No - -Temperature to which the thermostat should cool (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `cooling_set_point_fahrenheit` - -Type: `number` -Required: No - -Temperature to which the thermostat should cool (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `fan_mode_setting` - -Type: `string` -Required: No - -Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`. - -*** - -### `heating_set_point_celsius` - -Type: `number` -Required: No - -Temperature to which the thermostat should heat (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `heating_set_point_fahrenheit` - -Type: `number` -Required: No - -Temperature to which the thermostat should heat (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `hvac_mode_setting` - -Type: `string` -Required: No - -Desired [HVAC mode](../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) setting, such as `heat`, `cool`, `heat_cool`, or `off`. - -*** - -### `manual_override_allowed` - -Type: `boolean` -Required: No - -Indicates whether a person at the thermostat or using the API can change the thermostat's settings. - -*** - -### `name` - -Type: `string` -Required: No - -User-friendly name to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). - -*** - -## Return Type - -void diff --git a/docs/api/thermostats/delete_climate_preset.md b/docs/api/thermostats/delete_climate_preset.md index 570123781..8fcb98cd1 100644 --- a/docs/api/thermostats/delete_climate_preset.md +++ b/docs/api/thermostats/delete_climate_preset.md @@ -1,14 +1,62 @@ # Delete a Climate Preset +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/delete_climate_preset ⇒ void ``` +{% endtab %} +{% endtabs %} -Deletes a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + +
ParameterDescription
climate_preset_key String (Required) + +Climate preset key of the desired climate preset. +
device_id String (Required) + +ID of the desired thermostat device. +
+ +## Response + +void + +--- + +## Examples + +### Delete a climate preset + +Specify the `device_id` of the desired thermostat and the `climate_preset_key` of the desired climate preset. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.deleteClimatePreset({ @@ -17,7 +65,7 @@ await seam.thermostats.deleteClimatePreset({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +73,7 @@ await seam.thermostats.deleteClimatePreset({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.delete_climate_preset( @@ -33,7 +81,7 @@ seam.thermostats.delete_climate_preset( ) ``` -#### Response +#### Output ```python None @@ -41,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.delete_climate_preset( @@ -50,7 +98,7 @@ seam.thermostats.delete_climate_preset( ) ``` -#### Response +#### Output ```ruby nil @@ -58,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->delete_climate_preset( ); ``` -#### Response +#### Output ```php null @@ -76,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats delete-climate-preset --device_id "123e4567-e89b-12d3-a456-426614174000" --climate_preset_key "occupied" ``` -#### Response +#### Output ```seam_cli {} @@ -90,7 +138,7 @@ seam thermostats delete-climate-preset --device_id "123e4567-e89b-12d3-a456-4266 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -108,7 +156,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -117,33 +165,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `climate_preset_key` -Type: `string` -Required: Yes - -Climate preset key of the desired climate preset. - -*** - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -## Return Type - -void diff --git a/docs/api/thermostats/heat.md b/docs/api/thermostats/heat.md index 5b9d14db9..8ed88552b 100644 --- a/docs/api/thermostats/heat.md +++ b/docs/api/thermostats/heat.md @@ -1,14 +1,80 @@ # Set to Heat Mode +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/heat ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). +
+ +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 + + + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired thermostat device. +
heating_set_point_celsius Number + +Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `heating_set_point` parameters. +
heating_set_point_fahrenheit Number + +Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `heating_set_point` parameters. +
+ +## Response + +[action\_attempt](./) + +**`SET_HVAC_MODE`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Set to heat mode + +Specify the desired heating set point in °C or °F. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.heat({ @@ -17,7 +83,7 @@ await seam.thermostats.heat({ }); ``` -#### Response +#### Output ```javascript { @@ -29,7 +95,7 @@ await seam.thermostats.heat({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.heat( @@ -37,7 +103,7 @@ seam.thermostats.heat( ) ``` -#### Response +#### Output ```python ActionAttempt( @@ -49,7 +115,7 @@ ActionAttempt( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.heat( @@ -58,7 +124,7 @@ seam.thermostats.heat( ) ``` -#### Response +#### Output ```ruby { @@ -70,7 +136,7 @@ seam.thermostats.heat( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->heat( ); ``` -#### Response +#### Output ```php thermostats->heat( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats heat --device_id "123e4567-e89b-12d3-a456-426614174000" --heating_set_point_celsius 20 ``` -#### Response +#### Output ```seam_cli { @@ -111,7 +177,7 @@ seam thermostats heat --device_id "123e4567-e89b-12d3-a456-426614174000" --heati {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -129,7 +195,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Status: "pending", ActionType: "SET_HEAT"} @@ -138,72 +204,4 @@ api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Statu {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `heating_set_point_celsius` - -Type: `number` -Required: No - -Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `heating_set_point` parameters. - -*** - -### `heating_set_point_fahrenheit` - -Type: `number` -Required: No - -Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `heating_set_point` parameters. - -*** - -## Return Type - -[action\_attempt](./) - -### `SET_HVAC_MODE` - -Setting HVAC mode. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- diff --git a/docs/api/thermostats/heat_cool.md b/docs/api/thermostats/heat_cool.md index 35d1f5cc5..baf80d57b 100644 --- a/docs/api/thermostats/heat_cool.md +++ b/docs/api/thermostats/heat_cool.md @@ -1,14 +1,90 @@ # Set to Heat-Cool (Auto) Mode +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat-cool ("auto") mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/heat_cool ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat-cool ("auto") mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). +
+ +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 + + + + + + + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired thermostat device. +
cooling_set_point_celsius Number + +Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `cooling_set_point` parameters. +
cooling_set_point_fahrenheit Number + +Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `cooling_set_point` parameters. +
heating_set_point_celsius Number + +Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `heating_set_point` parameters. +
heating_set_point_fahrenheit Number + +Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `heating_set_point` parameters. +
+ +## Response + +[action\_attempt](./) + +**`SET_HVAC_MODE`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Set to heat-cool (auto) mode + +Specify the desired heating set point in °C or °F. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.heatCool({ @@ -18,7 +94,7 @@ await seam.thermostats.heatCool({ }); ``` -#### Response +#### Output ```javascript { @@ -30,7 +106,7 @@ await seam.thermostats.heatCool({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.heat_cool( @@ -40,7 +116,7 @@ seam.thermostats.heat_cool( ) ``` -#### Response +#### Output ```python ActionAttempt( @@ -52,7 +128,7 @@ ActionAttempt( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.heat_cool( @@ -62,7 +138,7 @@ seam.thermostats.heat_cool( ) ``` -#### Response +#### Output ```ruby { @@ -74,7 +150,7 @@ seam.thermostats.heat_cool( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->heat_cool( ); ``` -#### Response +#### Output ```php thermostats->heat_cool( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats heat-cool --device_id "123e4567-e89b-12d3-a456-426614174000" --cooling_set_point_celsius 25 --heating_set_point_celsius 20 ``` -#### Response +#### Output ```seam_cli { @@ -116,7 +192,7 @@ seam thermostats heat-cool --device_id "123e4567-e89b-12d3-a456-426614174000" -- {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -135,7 +211,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Status: "pending", ActionType: "SET_HEAT_COOL"} @@ -144,90 +220,4 @@ api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Statu {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `cooling_set_point_celsius` - -Type: `number` -Required: No - -Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `cooling_set_point` parameters. - -*** - -### `cooling_set_point_fahrenheit` - -Type: `number` -Required: No - -Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `cooling_set_point` parameters. - -*** - -### `heating_set_point_celsius` - -Type: `number` -Required: No - -Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `heating_set_point` parameters. - -*** - -### `heating_set_point_fahrenheit` - -Type: `number` -Required: No - -Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `heating_set_point` parameters. - -*** - -## Return Type - -[action\_attempt](./) - -### `SET_HVAC_MODE` - -Setting HVAC mode. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- diff --git a/docs/api/thermostats/list.md b/docs/api/thermostats/list.md index f0adedbe6..1e1b90af6 100644 --- a/docs/api/thermostats/list.md +++ b/docs/api/thermostats/list.md @@ -1,20 +1,133 @@ # List Thermostats +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [thermostats](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/list ⇒ { devices: [device, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [thermostats](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
connect_webview_id String + +ID of the Connect Webview by which to filter devices. +
connected_account_id String + +ID of the connected account by which to filter. +
connected_account_ids Array of UUIDs + +Array of IDs of the connected accounts by which to filter devices. +
created_before String + +Date threshold for devices to return. If specified, returns only devices created before the specified date. +
custom_metadata_has Object + +Set of key:value [custom metadata](../../core-concepts/devices/adding-custom-metadata-to-a-device.md) pairs by which you want to filter devices. +
device_ids Array of UUIDs + +Array of device IDs by which to filter devices. +
device_type String + +Device type by which to filter devices. +
device_types Array of Enums + +Array of device types by which to filter devices. +
+ +Enum values + +Possible enum values: +- `ecobee_thermostat` +- `nest_thermostat` +- `honeywell_resideo_thermostat` +- `tado_thermostat` +- `sensi_thermostat` +
+
limit Number + +Numerical limit on the number of devices to return. +
manufacturer String + +Manufacturer by which to filter devices. +
user_identifier_key String + +Your own internal user ID for the user by which to filter devices. +
+ +## Response + +Array of [devices](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of device +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List thermostats + +To filter the list of returned thermostats, specify the desired parameters. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.list(); ``` -#### Response +#### Output ```javascript [ @@ -45,13 +158,13 @@ await seam.thermostats.list(); {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.list() ``` -#### Response +#### Output ```python [ @@ -82,13 +195,13 @@ seam.thermostats.list() {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.list() ``` -#### Response +#### Output ```ruby [ @@ -119,14 +232,14 @@ seam.thermostats.list() {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->list(); ``` -#### Response +#### Output ```php thermostats->list(); {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats list ``` -#### Response +#### Output ```seam_cli [ @@ -200,7 +313,7 @@ seam thermostats list {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -210,7 +323,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.Device{api.Device{DeviceId: "123e4567-e89b-12d3-a456-426614174000", DeviceType: "ecobee_thermostat", CapabilitiesSupported: []string{"thermostat"}, Properties: api.DeviceProperties{Name: "Entryway", Online: "true,", RelativeHumidity: 0.36, TemperatureFarenheit: 70, AvailableHvacModeSettings: []string{"cool", "heat", "heat_cool", "off"}, CurrentClimateSetting: api.DevicePropertiesCurrentClimateSetting{HvacModeSetting: "heat_cool", CoolingSetPointFarenheit: 75, HeatingSetPointFarenheit: 65, ManualOverrideAllowed: false}, Location: nil, ConnectedAccountId: "123e4567-e89b-12d3-a456-426614174000", WorkspaceId: "123e4567-e89b-12d3-a456-426614174000", CreatedAt: "2024-04-05T07:57:05.323Z"}}} @@ -219,114 +332,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `connect_webview_id` - -Type: `string` -Required: No - -ID of the Connect Webview by which to filter devices. - -*** - -### `connected_account_id` - -Type: `string` -Required: No - -ID of the connected account by which to filter. - -*** - -### `connected_account_ids` - -Type: `array` -Required: No - -Array of IDs of the connected accounts by which to filter devices. - -*** - -### `created_before` - -Type: `string` -Required: No - -Date threshold for devices to return. If specified, returns only devices created before the specified date. - -*** - -### `custom_metadata_has` - -Type: `object` -Required: No - -Set of key:value [custom metadata](../../core-concepts/devices/adding-custom-metadata-to-a-device.md) pairs by which you want to filter devices. - -*** - -### `device_ids` - -Type: `array` -Required: No - -Array of device IDs by which to filter devices. - -*** - -### `device_type` - -Type: `string` -Required: No - -Device type by which to filter devices. - -*** - -### `device_types` - -Type: `array` -Required: No - -Array of device types by which to filter devices. - -*** - -### `limit` - -Type: `number` -Required: No - -Numerical limit on the number of devices to return. - -*** - -### `manufacturer` - -Type: `string` -Required: No - -Manufacturer by which to filter devices. - -*** - -### `user_identifier_key` - -Type: `string` -Required: No - -Your own internal user ID for the user by which to filter devices. - -*** - -## Return Type -Array<[device](./)> diff --git a/docs/api/thermostats/off.md b/docs/api/thermostats/off.md index a00040173..1615f8e76 100644 --- a/docs/api/thermostats/off.md +++ b/docs/api/thermostats/off.md @@ -1,14 +1,70 @@ # Set to Off Mode +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to ["off" mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/off ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to ["off" mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings). +
+ +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 + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired thermostat device. +
+ +## Response + +[action\_attempt](./) + +**`SET_HVAC_MODE`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Set to off mode + +Specify the `device_id` of the thermostat that you want to set to off mode. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.off({ @@ -16,7 +72,7 @@ await seam.thermostats.off({ }); ``` -#### Response +#### Output ```javascript { @@ -28,13 +84,13 @@ await seam.thermostats.off({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.off(device_id="123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```python ActionAttempt( @@ -46,13 +102,13 @@ ActionAttempt( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.off(device_id: "123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```ruby { @@ -64,14 +120,14 @@ seam.thermostats.off(device_id: "123e4567-e89b-12d3-a456-426614174000") {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->off(device_id: "123e4567-e89b-12d3-a456-426614174000"); ``` -#### Response +#### Output ```php thermostats->off(device_id: "123e4567-e89b-12d3-a456-426614174000"); {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats off --device_id "123e4567-e89b-12d3-a456-426614174000" ``` -#### Response +#### Output ```seam_cli { @@ -102,7 +158,7 @@ seam thermostats off --device_id "123e4567-e89b-12d3-a456-426614174000" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -119,7 +175,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Status: "pending", ActionType: "SET_THERMOSTAT_OFF"} @@ -128,54 +184,4 @@ api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Statu {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -## Return Type - -[action\_attempt](./) - -### `SET_HVAC_MODE` - -Setting HVAC mode. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- diff --git a/docs/api/thermostats/schedules/README.md b/docs/api/thermostats/schedules/README.md index 3323b4adf..240108195 100644 --- a/docs/api/thermostats/schedules/README.md +++ b/docs/api/thermostats/schedules/README.md @@ -1,109 +1,150 @@ # Thermostat Schedules -## `thermostat_schedule` +## The thermostat_schedule Object -Represents a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) that activates a configured [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) on a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) at a specified starting time and deactivates the climate preset at a specified ending time. +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) -### `climate_preset_key` -Format: `String` +Represents a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) that activates a configured [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) on a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) at a specified starting time and deactivates the climate preset at a specified ending time. -Key of the [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) to use for the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). +{% tabs %} +{% tab title="JSON" %} +```json +{ + climate_preset_key: [example value], + created_at: [example value], + device_id: [example value], + ends_at: [example value], + errors: [example value], + max_override_period_minutes: [example value], + name: [example value], + starts_at: [example value], + thermostat_schedule_id: [example value] +} +``` +{% endtab %} +{% endtabs %} --- -### `created_at` +## Properties -Format: `Datetime` + + + + -### `device_id` + + ---- + + + + + + + + + + + + + + + +
PropertyDescription
climate_preset_key String +Key of the [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) to use for the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). -Date and time at which the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) was created. ---- +
created_at Datetime +Date and time at which the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) was created. -Format: `UUID` -ID of the desired [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) device. +
device_id UUID +ID of the desired [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) device. -### `ends_at` -Format: `Datetime` +
ends_at Datetime Date and time at which the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. ---- - -### `errors` - -Format: `List` -Item format: `Object` +
errors List of Objects Errors associated with the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md).
-error_code Format: String +Child Object Properties -Unique identifier of the type of error. Enables quick recognition and categorization of the issue. -
-
+- error_code String + + Unique identifier of the type of error. Enables quick recognition and categorization of the issue. + + + +- message String + + Detailed description of the error. Provides insights into the issue and potentially how to rectify it. -message Format: String -Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
---- -### `max_override_period_minutes` -Format: `Number` +
max_override_period_minutes Number Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). ---- - -### `name` -Format: `String` +
name String User-friendly name to identify the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). ---- - -### `starts_at` -Format: `Datetime` +
starts_at Datetime Date and time at which the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. ---- - -### `thermostat_schedule_id` -Format: `UUID` +
thermostat_schedule_id UUID ID of the [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). ---- + +
+ ## Endpoints -### [`/thermostats/schedules/create`](./create.md) + + + + + + + + + + + + + + + + + + + -Creates a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/schedules/delete`](./delete.md) + -Deletes a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/schedules/get`](./get.md) -Returns a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). -### [`/thermostats/schedules/list`](./list.md) + -Returns a list of all [thermostat schedules](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). -### [`/thermostats/schedules/update`](./update.md) + -Updates a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). +
EndpointDescription
/thermostats/schedules/createCreates a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/schedules/deleteDeletes a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/schedules/getReturns a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md).
/thermostats/schedules/listReturns a list of all [thermostat schedules](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).
/thermostats/schedules/updateUpdates a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md).
diff --git a/docs/api/thermostats/schedules/create.md b/docs/api/thermostats/schedules/create.md index 834ad88a1..f026d1c41 100644 --- a/docs/api/thermostats/schedules/create.md +++ b/docs/api/thermostats/schedules/create.md @@ -1,14 +1,96 @@ # Create a Thermostat Schedule +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/schedules/create ⇒ { thermostat_schedule } ``` +{% endtab %} +{% endtabs %} -Creates a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + + + + + + + + + + + +
ParameterDescription
climate_preset_key String (Required) + +Key of the [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) to use for the thermostat schedule. +
device_id String (Required) + +ID of the desired thermostat device. +
ends_at String (Required) + +Date and time at which the thermostat schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
starts_at String (Required) + +Date and time at which the thermostat schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
is_override_allowed Boolean + +Indicates whether a person at the thermostat or using the API can change the thermostat's settings while the schedule is active. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). +
max_override_period_minutes Number + +Number of minutes for which a person at the thermostat or using the API can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). +
name String + +User-friendly name to identify the thermostat schedule. +
+ +## Response + +[thermostat\_schedule](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of thermostat_schedule +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Create a thermostat schedule + +Specify the `device_id` of the desired thermostat and the `climate_preset_key` of the desired climate preset, as well as the desired `starts_at` and `ends_at` times. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.schedules.create({ @@ -21,7 +103,7 @@ await seam.thermostats.schedules.create({ }); ``` -#### Response +#### Output ```javascript { @@ -37,7 +119,7 @@ await seam.thermostats.schedules.create({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.schedules.create( @@ -50,7 +132,7 @@ seam.thermostats.schedules.create( ) ``` -#### Response +#### Output ```python ThermostatSchedule( @@ -66,7 +148,7 @@ ThermostatSchedule( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.schedules.create( @@ -79,7 +161,7 @@ seam.thermostats.schedules.create( ) ``` -#### Response +#### Output ```ruby { @@ -95,7 +177,7 @@ seam.thermostats.schedules.create( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->schedules->create( ); ``` -#### Response +#### Output ```php thermostats->schedules->create( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats schedules create --device_id "123e4567-e89b-12d3-a456-426614174000" --name "Reservation 1" --climate_preset_key "occupied" --starts_at "2024-11-01T15:00:00Z" --ends_at "2024-11-05T12:00:00Z" --max_override_period_minutes 90 ``` -#### Response +#### Output ```seam_cli { @@ -148,7 +230,7 @@ seam thermostats schedules create --device_id "123e4567-e89b-12d3-a456-426614174 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -171,7 +253,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ThermostatSchedule{ThermostatScheduleId: "56d29fcf-0674-4db5-8e03-b2370a77460a", Name: "Reservation 1", DeviceId: "2d488679-6f07-4810-aed2-e726872c1dd5", ClimatePresetKey: "occupied", StartsAt: "2024-11-01T15:00:00.000Z", EndsAt: "2024-11-05T12:00:00.000Z", MaxOverridePeriodMinutes: 90} @@ -180,78 +262,4 @@ api.ThermostatSchedule{ThermostatScheduleId: "56d29fcf-0674-4db5-8e03-b2370a7746 {% endtabs %} -## Authentication Methods -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `climate_preset_key` - -Type: `string` -Required: Yes - -Key of the [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) to use for the thermostat schedule. - -*** - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `ends_at` - -Type: `string` -Required: Yes - -Date and time at which the thermostat schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. - -*** - -### `starts_at` - -Type: `string` -Required: Yes - -Date and time at which the thermostat schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. - -*** - -### `is_override_allowed` - -Type: `boolean` -Required: No - -Indicates whether a person at the thermostat or using the API can change the thermostat's settings while the schedule is active. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). - -*** - -### `max_override_period_minutes` - -Type: `number` -Required: No - -Number of minutes for which a person at the thermostat or using the API can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). - -*** - -### `name` - -Type: `string` -Required: No - -User-friendly name to identify the thermostat schedule. - -*** - -## Return Type - -[thermostat\_schedule](./) diff --git a/docs/api/thermostats/schedules/delete.md b/docs/api/thermostats/schedules/delete.md index ca4fc4575..23b727c8f 100644 --- a/docs/api/thermostats/schedules/delete.md +++ b/docs/api/thermostats/schedules/delete.md @@ -1,14 +1,57 @@ # Delete a Thermostat Schedule +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/schedules/delete ⇒ void ``` +{% endtab %} +{% endtabs %} -Deletes a [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + +
ParameterDescription
thermostat_schedule_id String (Required) + +ID of the desired thermostat schedule. +
+ +## Response + +void + +--- + +## Examples + +### Delete a thermostat schedule + +Specify the `thermostat_schedule_id` of the desired thermostat schedule. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.schedules.delete({ @@ -16,7 +59,7 @@ await seam.thermostats.schedules.delete({ }); ``` -#### Response +#### Output ```javascript // void @@ -24,7 +67,7 @@ await seam.thermostats.schedules.delete({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.schedules.delete( @@ -32,7 +75,7 @@ seam.thermostats.schedules.delete( ) ``` -#### Response +#### Output ```python None @@ -40,13 +83,13 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.schedules.delete(thermostat_schedule_id: "89d3507e-60e3-4101-bd1b-ba066ec30ad4") ``` -#### Response +#### Output ```ruby nil @@ -54,7 +97,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->schedules->delete( ); ``` -#### Response +#### Output ```php null @@ -71,13 +114,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats schedules delete --thermostat_schedule_id "89d3507e-60e3-4101-bd1b-ba066ec30ad4" ``` -#### Response +#### Output ```seam_cli {} @@ -85,7 +128,7 @@ seam thermostats schedules delete --thermostat_schedule_id "89d3507e-60e3-4101-b {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -103,7 +146,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -112,24 +155,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. -## Request Parameters - -### `thermostat_schedule_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat schedule. - -*** - -## Return Type - -void diff --git a/docs/api/thermostats/schedules/get.md b/docs/api/thermostats/schedules/get.md index 1534426d7..5259e81ba 100644 --- a/docs/api/thermostats/schedules/get.md +++ b/docs/api/thermostats/schedules/get.md @@ -1,14 +1,66 @@ # Get a Thermostat Schedule +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/schedules/get ⇒ { thermostat_schedule } ``` +{% endtab %} +{% endtabs %} -Returns a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). +
+ +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 + + + + + +
ParameterDescription
thermostat_schedule_id String (Required) + +ID of the desired thermostat schedule. +
+ +## Response + +[thermostat\_schedule](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of thermostat_schedule +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get a specific thermostat schedule + +Specify the `thermostat_schedule_id` of the desired thermostat schedule. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.schedules.get({ @@ -16,7 +68,7 @@ await seam.thermostats.schedules.get({ }); ``` -#### Response +#### Output ```javascript { @@ -32,7 +84,7 @@ await seam.thermostats.schedules.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.schedules.get( @@ -40,7 +92,7 @@ seam.thermostats.schedules.get( ) ``` -#### Response +#### Output ```python ThermostatSchedule( @@ -56,13 +108,13 @@ ThermostatSchedule( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.schedules.get(thermostat_schedule_id: "89d3507e-60e3-4101-bd1b-ba066ec30ad4") ``` -#### Response +#### Output ```ruby { @@ -78,7 +130,7 @@ seam.thermostats.schedules.get(thermostat_schedule_id: "89d3507e-60e3-4101-bd1b- {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->schedules->get( ); ``` -#### Response +#### Output ```php thermostats->schedules->get( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats schedules get --thermostat_schedule_id "89d3507e-60e3-4101-bd1b-ba066ec30ad4" ``` -#### Response +#### Output ```seam_cli { @@ -126,7 +178,7 @@ seam thermostats schedules get --thermostat_schedule_id "89d3507e-60e3-4101-bd1b {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -144,7 +196,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ThermostatSchedule{ThermostatScheduleId: "89d3507e-60e3-4101-bd1b-ba066ec30ad4", Name: "Reservation 2", DeviceId: "2d488679-6f07-4810-aed2-e726872c1dd5", ClimatePresetKey: "occupied", StartsAt: "2024-11-10T15:00:00.000Z", EndsAt: "2024-11-15T12:00:00.000Z", MaxOverridePeriodMinutes: 90} @@ -153,24 +205,4 @@ api.ThermostatSchedule{ThermostatScheduleId: "89d3507e-60e3-4101-bd1b-ba066ec30a {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `thermostat_schedule_id` - -Type: `string` -Required: Yes -ID of the desired thermostat schedule. - -*** - -## Return Type - -[thermostat\_schedule](./) diff --git a/docs/api/thermostats/schedules/list.md b/docs/api/thermostats/schedules/list.md index 3ee8d7463..8240342ef 100644 --- a/docs/api/thermostats/schedules/list.md +++ b/docs/api/thermostats/schedules/list.md @@ -1,14 +1,71 @@ # List Thermostat Schedules +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [thermostat schedules](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/schedules/list ⇒ { thermostat_schedules: [thermostat_schedule, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [thermostat schedules](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired thermostat device. +
user_identifier_key String + +User identifier key by which to filter the list of returned thermostat schedules. +
+ +## Response + +Array of [thermostat\_schedules](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of thermostat_schedule +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List thermostat schedules for a thermostat + +Specify the `device_id` of the desired thermostat. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.schedules.list({ @@ -16,7 +73,7 @@ await seam.thermostats.schedules.list({ }); ``` -#### Response +#### Output ```javascript [ @@ -43,13 +100,13 @@ await seam.thermostats.schedules.list({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.schedules.list(device_id="123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```python [ @@ -76,13 +133,13 @@ seam.thermostats.schedules.list(device_id="123e4567-e89b-12d3-a456-426614174000" {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.schedules.list(device_id: "123e4567-e89b-12d3-a456-426614174000") ``` -#### Response +#### Output ```ruby [ @@ -109,7 +166,7 @@ seam.thermostats.schedules.list(device_id: "123e4567-e89b-12d3-a456-426614174000 {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->schedules->list( ); ``` -#### Response +#### Output ```php thermostats->schedules->list( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats schedules list --device_id "123e4567-e89b-12d3-a456-426614174000" ``` -#### Response +#### Output ```seam_cli [ @@ -179,7 +236,7 @@ seam thermostats schedules list --device_id "123e4567-e89b-12d3-a456-42661417400 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -197,7 +254,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.ThermostatSchedule{api.ThermostatSchedule{ThermostatScheduleId: "89d3507e-60e3-4101-bd1b-ba066ec30ad4", Name: "Reservation 2", DeviceId: "2d488679-6f07-4810-aed2-e726872c1dd5", ClimatePresetKey: "occupied", StartsAt: "2024-11-10T15:00:00.000Z", EndsAt: "2024-11-15T12:00:00.000Z", MaxOverridePeriodMinutes: 90}, api.ThermostatSchedule{ThermostatScheduleId: "665553d1-94f9-4e92-9739-06ac6362c959", Name: "Reservation 3", DeviceId: "2d488679-6f07-4810-aed2-e726872c1dd5", ClimatePresetKey: "occupied", StartsAt: "2024-11-16T15:00:00.000Z", EndsAt: "2024-11-18T12:00:00.000Z", MaxOverridePeriodMinutes: 90}} @@ -206,33 +263,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `user_identifier_key` - -Type: `string` -Required: No - -User identifier key by which to filter the list of returned thermostat schedules. - -*** - -## Return Type -Array<[thermostat\_schedule](./)> diff --git a/docs/api/thermostats/schedules/update.md b/docs/api/thermostats/schedules/update.md index 3c72f533a..3f640f9a8 100644 --- a/docs/api/thermostats/schedules/update.md +++ b/docs/api/thermostats/schedules/update.md @@ -1,14 +1,87 @@ # Update a Thermostat Schedule +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Updates a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /thermostats/schedules/update ⇒ void ``` +{% endtab %} +{% endtabs %} -Updates a specified [thermostat schedule](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md). +
+ +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 + + + + + + + + + + + + + + + + + +
ParameterDescription
thermostat_schedule_id String (Required) + +ID of the desired thermostat schedule. +
climate_preset_key String + +Key of the [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) to use for the thermostat schedule. +
ends_at String + +Date and time at which the thermostat schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
is_override_allowed Boolean + +Indicates whether a person at the thermostat or using the API can change the thermostat's settings while the schedule is active. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). +
max_override_period_minutes Number + +Number of minutes for which a person at the thermostat or using the API can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). +
name String + +User-friendly name to identify the thermostat schedule. +
starts_at String + +Date and time at which the thermostat schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. +
+ +## Response + +void + +--- + +## Examples + +### Update a thermostat schedule + +Specify the `thermostat_schedule_id` of the desired thermostat schedule, along with the desired updated settings for the thermostat schedule. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.schedules.update({ @@ -17,7 +90,7 @@ await seam.thermostats.schedules.update({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +98,7 @@ await seam.thermostats.schedules.update({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.schedules.update( @@ -34,7 +107,7 @@ seam.thermostats.schedules.update( ) ``` -#### Response +#### Output ```python None @@ -42,7 +115,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.schedules.update( @@ -51,7 +124,7 @@ seam.thermostats.schedules.update( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +132,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->schedules->update( ); ``` -#### Response +#### Output ```php null @@ -77,13 +150,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats schedules update --thermostat_schedule_id "89d3507e-60e3-4101-bd1b-ba066ec30ad4" --ends_at "2024-11-15T15:00:00Z" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +164,7 @@ seam thermostats schedules update --thermostat_schedule_id "89d3507e-60e3-4101-b {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -110,7 +183,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -119,78 +192,4 @@ nil {% endtabs %} -## Authentication Methods -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `thermostat_schedule_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat schedule. - -*** - -### `climate_preset_key` - -Type: `string` -Required: No - -Key of the [climate preset](../../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) to use for the thermostat schedule. - -*** - -### `ends_at` - -Type: `string` -Required: No - -Date and time at which the thermostat schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. - -*** - -### `is_override_allowed` - -Type: `boolean` -Required: No - -Indicates whether a person at the thermostat or using the API can change the thermostat's settings while the schedule is active. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). - -*** - -### `max_override_period_minutes` - -Type: `number` -Required: No - -Number of minutes for which a person at the thermostat or using the API can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](../../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). - -*** - -### `name` - -Type: `string` -Required: No - -User-friendly name to identify the thermostat schedule. - -*** - -### `starts_at` - -Type: `string` -Required: No - -Date and time at which the thermostat schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. - -*** - -## Return Type - -void diff --git a/docs/api/thermostats/set_fallback_climate_preset.md b/docs/api/thermostats/set_fallback_climate_preset.md index 2cbfe3e09..410f600f0 100644 --- a/docs/api/thermostats/set_fallback_climate_preset.md +++ b/docs/api/thermostats/set_fallback_climate_preset.md @@ -1,14 +1,61 @@ # Set the Fallback Climate Preset +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) as the ["fallback"](../../capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset.md) preset for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/set_fallback_climate_preset ⇒ void ``` +{% endtab %} +{% endtabs %} -Sets a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) as the ["fallback"](../../capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset.md) preset for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + +
ParameterDescription
climate_preset_key String (Required) + +Climate preset key of the desired climate preset. +
device_id String (Required) + +ID of the desired thermostat device. +
+ +## Response + +void + +--- + +## Examples + +### Set the fallback climate preset + +Specify the `device_id` of the desired thermostat and the `climate_preset_key` of the desired fallback climate preset. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.setFallbackClimatePreset({ @@ -17,7 +64,7 @@ await seam.thermostats.setFallbackClimatePreset({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.thermostats.setFallbackClimatePreset({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.set_fallback_climate_preset( @@ -33,7 +80,7 @@ seam.thermostats.set_fallback_climate_preset( ) ``` -#### Response +#### Output ```python None @@ -41,7 +88,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.set_fallback_climate_preset( @@ -50,7 +97,7 @@ seam.thermostats.set_fallback_climate_preset( ) ``` -#### Response +#### Output ```ruby nil @@ -58,7 +105,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->set_fallback_climate_preset( ); ``` -#### Response +#### Output ```php null @@ -76,13 +123,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats set-fallback-climate-preset --device_id "123e4567-e89b-12d3-a456-426614174000" --climate_preset_key "eco" ``` -#### Response +#### Output ```seam_cli {} @@ -90,7 +137,7 @@ seam thermostats set-fallback-climate-preset --device_id "123e4567-e89b-12d3-a45 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -108,7 +155,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -117,32 +164,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `climate_preset_key` -Type: `string` -Required: Yes - -Climate preset key of the desired climate preset. - -*** - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -## Return Type - -void diff --git a/docs/api/thermostats/set_fan_mode.md b/docs/api/thermostats/set_fan_mode.md index 5ceb92167..bd78f303c 100644 --- a/docs/api/thermostats/set_fan_mode.md +++ b/docs/api/thermostats/set_fan_mode.md @@ -1,14 +1,76 @@ # Set the Fan Mode Setting +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets the [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/set_fan_mode ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Sets the [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + + + +
ParameterDescription
device_id String (Required) +
fan_mode String +
fan_mode_setting String + +Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for the thermostat. +
+ +## Response + +[action\_attempt](./) + +**`SET_FAN_MODE`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Set fan mode setting + +Specify the desired fan mode setting. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.setFanMode({ @@ -17,7 +79,7 @@ await seam.thermostats.setFanMode({ }); ``` -#### Response +#### Output ```javascript { @@ -29,7 +91,7 @@ await seam.thermostats.setFanMode({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.set_fan_mode( @@ -37,7 +99,7 @@ seam.thermostats.set_fan_mode( ) ``` -#### Response +#### Output ```python ActionAttempt( @@ -49,7 +111,7 @@ ActionAttempt( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.set_fan_mode( @@ -58,7 +120,7 @@ seam.thermostats.set_fan_mode( ) ``` -#### Response +#### Output ```ruby { @@ -70,7 +132,7 @@ seam.thermostats.set_fan_mode( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->set_fan_mode( ); ``` -#### Response +#### Output ```php thermostats->set_fan_mode( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats set-fan-mode --device_id "123e4567-e89b-12d3-a456-426614174000" --fan_mode_setting "auto" ``` -#### Response +#### Output ```seam_cli { @@ -111,7 +173,7 @@ seam thermostats set-fan-mode --device_id "123e4567-e89b-12d3-a456-426614174000" {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -129,7 +191,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Status: "pending", ActionType: "SET_FAN_MODE"} @@ -138,72 +200,4 @@ api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Statu {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - - - -*** - -### `fan_mode` - -Type: `string` -Required: No - - - -*** - -### `fan_mode_setting` - -Type: `string` -Required: No - -Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for the thermostat. - -*** - -## Return Type - -[action\_attempt](./) - -### `SET_FAN_MODE` - -Setting fan mode. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- diff --git a/docs/api/thermostats/set_hvac_mode.md b/docs/api/thermostats/set_hvac_mode.md index f1e05acfd..a34ca05e8 100644 --- a/docs/api/thermostats/set_hvac_mode.md +++ b/docs/api/thermostats/set_hvac_mode.md @@ -1,14 +1,93 @@ # Set the HVAC Mode +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets the [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/set_hvac_mode ⇒ { action_attempt } ``` +{% endtab %} +{% endtabs %} -Sets the [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + + + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired thermostat device. +
hvac_mode_setting String (Required) +
cooling_set_point_celsius Number + +Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `cooling_set_point` parameters. +
cooling_set_point_fahrenheit Number + +Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `cooling_set_point` parameters. +
heating_set_point_celsius Number + +Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `heating_set_point` parameters. +
heating_set_point_fahrenheit Number + +Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `heating_set_point` parameters. +
+ +## Response + +[action\_attempt](./) + +**`SET_HVAC_MODE`** +{% tabs %} +{% tab title="JSON" %} +```json +{ + action_attempt_id: [example value], + action_type: [example value], + status: [example value] +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Set HVAC mode + +Specify the desired heating and cooling set points in °C or °F. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.setHvacMode({ @@ -19,7 +98,7 @@ await seam.thermostats.setHvacMode({ }); ``` -#### Response +#### Output ```javascript { @@ -31,7 +110,7 @@ await seam.thermostats.setHvacMode({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.set_hvac_mode( @@ -42,7 +121,7 @@ seam.thermostats.set_hvac_mode( ) ``` -#### Response +#### Output ```python ActionAttempt( @@ -54,7 +133,7 @@ ActionAttempt( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.set_hvac_mode( @@ -65,7 +144,7 @@ seam.thermostats.set_hvac_mode( ) ``` -#### Response +#### Output ```ruby { @@ -77,7 +156,7 @@ seam.thermostats.set_hvac_mode( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->set_hvac_mode( ); ``` -#### Response +#### Output ```php thermostats->set_hvac_mode( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats set-hvac-mode --device_id "123e4567-e89b-12d3-a456-426614174000" --hvac_mode_setting "heat_cool" --heating_set_point_celsius 20 --cooling_set_point_celsius 25 ``` -#### Response +#### Output ```seam_cli { @@ -120,7 +199,7 @@ seam thermostats set-hvac-mode --device_id "123e4567-e89b-12d3-a456-426614174000 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -140,7 +219,7 @@ func main() { } ``` -#### Response +#### Output ```go api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Status: "success", ActionType: "SET_HVAC_MODE"} @@ -149,99 +228,4 @@ api.ActionAttempt{ActionAttemptId: "123e4567-e89b-12d3-a456-426614174000", Statu {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `hvac_mode_setting` - -Type: `string` -Required: Yes - - - -*** - -### `cooling_set_point_celsius` - -Type: `number` -Required: No - -Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `cooling_set_point` parameters. - -*** - -### `cooling_set_point_fahrenheit` - -Type: `number` -Required: No - -Desired [cooling set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `cooling_set_point` parameters. - -*** - -### `heating_set_point_celsius` - -Type: `number` -Required: No - -Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set one of the `heating_set_point` parameters. - -*** - -### `heating_set_point_fahrenheit` - -Type: `number` -Required: No - -Desired [heating set point](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set one of the `heating_set_point` parameters. - -*** - -## Return Type - -[action\_attempt](./) - -### `SET_HVAC_MODE` - -Setting HVAC mode. - -#### `action_attempt_id` - -Format: `UUID` - -ID of the action attempt. - ---- - -#### `action_type` - -Format: `String` - ---- - -#### `status` - -Format: `Enum` - -Possible enum values: -- `success` -- `pending` -- `error` - ---- diff --git a/docs/api/thermostats/set_temperature_threshold.md b/docs/api/thermostats/set_temperature_threshold.md index ca66a4ecc..31120c6b1 100644 --- a/docs/api/thermostats/set_temperature_threshold.md +++ b/docs/api/thermostats/set_temperature_threshold.md @@ -1,14 +1,76 @@ # Set a Temperature Threshold +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets a [temperature threshold](../../capability-guides/thermostats/setting-and-monitoring-temperature-thresholds.md) for a specified thermostat. Seam emits a `thermostat.temperature_threshold_exceeded` event and adds a warning on a thermostat if it reports a temperature outside the threshold range. + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /thermostats/set_temperature_threshold ⇒ void ``` +{% endtab %} +{% endtabs %} -Sets a [temperature threshold](../../capability-guides/thermostats/setting-and-monitoring-temperature-thresholds.md) for a specified thermostat. Seam emits a `thermostat.temperature_threshold_exceeded` event and adds a warning on a thermostat if it reports a temperature outside the threshold range. +
+ +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 + + + + + + + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired thermostat device. +
lower_limit_celsius Number + +Lower temperature limit in in °C. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both. +
lower_limit_fahrenheit Number + +Lower temperature limit in in °F. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both. +
upper_limit_celsius Number + +Upper temperature limit in in °C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both. +
upper_limit_fahrenheit Number + +Upper temperature limit in in °C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both. +
+ +## Response + +void + +--- + +## Examples + +### Set a temperature threshold + +Specify the `device_id` of the desired thermostat, along with the desired upper and lower limits in °C or °F. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.setTemperatureThreshold({ @@ -18,7 +80,7 @@ await seam.thermostats.setTemperatureThreshold({ }); ``` -#### Response +#### Output ```javascript // void @@ -26,7 +88,7 @@ await seam.thermostats.setTemperatureThreshold({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.set_temperature_threshold( @@ -36,7 +98,7 @@ seam.thermostats.set_temperature_threshold( ) ``` -#### Response +#### Output ```python None @@ -44,7 +106,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.set_temperature_threshold( @@ -54,7 +116,7 @@ seam.thermostats.set_temperature_threshold( ) ``` -#### Response +#### Output ```ruby nil @@ -62,7 +124,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->set_temperature_threshold( ); ``` -#### Response +#### Output ```php null @@ -81,13 +143,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats set-temperature-threshold --device_id "123e4567-e89b-12d3-a456-426614174000" --lower_limit_celsius 4 --upper_limit_celsius 30 ``` -#### Response +#### Output ```seam_cli {} @@ -95,7 +157,7 @@ seam thermostats set-temperature-threshold --device_id "123e4567-e89b-12d3-a456- {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -114,7 +176,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -123,59 +185,4 @@ nil {% endtabs %} -## Authentication Methods -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `lower_limit_celsius` - -Type: `number` -Required: No - -Lower temperature limit in in °C. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both. - -*** - -### `lower_limit_fahrenheit` - -Type: `number` -Required: No - -Lower temperature limit in in °F. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both. - -*** - -### `upper_limit_celsius` - -Type: `number` -Required: No - -Upper temperature limit in in °C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both. - -*** - -### `upper_limit_fahrenheit` - -Type: `number` -Required: No - -Upper temperature limit in in °C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both. - -*** - -## Return Type - -void diff --git a/docs/api/thermostats/simulate/README.md b/docs/api/thermostats/simulate/README.md index 55ddf5a83..aac910f76 100644 --- a/docs/api/thermostats/simulate/README.md +++ b/docs/api/thermostats/simulate/README.md @@ -1,10 +1,19 @@ # Thermostat Simulations + + ## Endpoints -### [`/thermostats/simulate/hvac_mode_adjusted`](./hvac_mode_adjusted.md) + + + + + + + + + -Simulates having adjusted the [HVAC mode](../../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) for a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md). -### [`/thermostats/simulate/temperature_reached`](./temperature_reached.md) + -Simulates a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) reaching a specified temperature. Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md). +
EndpointDescription
/thermostats/simulate/hvac_mode_adjustedSimulates having adjusted the [HVAC mode](../../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) for a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md).
/thermostats/simulate/temperature_reachedSimulates a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) reaching a specified temperature. Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md).
diff --git a/docs/api/thermostats/simulate/hvac_mode_adjusted.md b/docs/api/thermostats/simulate/hvac_mode_adjusted.md index 490f7e8a4..b083c1a60 100644 --- a/docs/api/thermostats/simulate/hvac_mode_adjusted.md +++ b/docs/api/thermostats/simulate/hvac_mode_adjusted.md @@ -1,73 +1,66 @@ # HVAC Mode Adjusted +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Simulates having adjusted the [HVAC mode](../../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) for a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/simulate/hvac_mode_adjusted ⇒ void ``` +{% endtab %} +{% endtabs %} -Simulates having adjusted the [HVAC mode](../../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) for a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `device_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + + + + + + + + + +
ParameterDescription
device_id String (Required) ID of the desired thermostat device. - -*** - -### `hvac_mode` - -Type: `string` -Required: Yes +
hvac_mode String (Required) Desired [HVAC mode](../../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) to simulate. - -*** - -### `cooling_set_point_celsius` - -Type: `number` -Required: No +
cooling_set_point_celsius Number Desired simulated cooling [set point](../../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set `cooling_set_point_celsius` or `cooling_set_point_fahrenheit`. - -*** - -### `cooling_set_point_fahrenheit` - -Type: `number` -Required: No +
cooling_set_point_fahrenheit Number Desired simulated cooling [set point](../../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set `cooling_set_point_fahrenheit` or `cooling_set_point_celsius`. - -*** - -### `heating_set_point_celsius` - -Type: `number` -Required: No +
heating_set_point_celsius Number Desired simulated heating [set point](../../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °C. You must set `heating_set_point_celsius` or `heating_set_point_fahrenheit`. - -*** - -### `heating_set_point_fahrenheit` - -Type: `number` -Required: No +
heating_set_point_fahrenheit Number Desired simulated heating [set point](../../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md) in °F. You must set `heating_set_point_fahrenheit` or `heating_set_point_celsius`. +
-*** - -## Return Type +## Response void diff --git a/docs/api/thermostats/simulate/temperature_reached.md b/docs/api/thermostats/simulate/temperature_reached.md index 467b35d50..06a82dff0 100644 --- a/docs/api/thermostats/simulate/temperature_reached.md +++ b/docs/api/thermostats/simulate/temperature_reached.md @@ -1,46 +1,51 @@ # Temperature Reached +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Simulates a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) reaching a specified temperature. Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md). + +{% tabs %} +{% tab title="Signature" %} ``` POST /thermostats/simulate/temperature_reached ⇒ void ``` +{% endtab %} +{% endtabs %} -Simulates a [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) reaching a specified temperature. Only applicable for [sandbox devices](../../../core-concepts/workspaces/README.md#sandbox-workspaces). See also [Testing Your Thermostat App with Simulate Endpoints](../../../capability-guides/thermostats/testing-your-thermostat-app-with-simulate-endpoints.md). +
-## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `device_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + + + +
ParameterDescription
device_id String (Required) ID of the desired thermostat device. - -*** - -### `temperature_celsius` - -Type: `number` -Required: No +
temperature_celsius Number Desired simulated temperature in °C. You must set `temperature_celsius` or `temperature_fahrenheit`. - -*** - -### `temperature_fahrenheit` - -Type: `number` -Required: No +
temperature_fahrenheit Number Desired simulated temperature in °F. You must set `temperature_fahrenheit` or `temperature_celsius`. +
-*** - -## Return Type +## Response void diff --git a/docs/api/thermostats/update_climate_preset.md b/docs/api/thermostats/update_climate_preset.md index 777f9bc9e..ae7df3fd8 100644 --- a/docs/api/thermostats/update_climate_preset.md +++ b/docs/api/thermostats/update_climate_preset.md @@ -1,14 +1,102 @@ # Update a Climate Preset +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Updates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /thermostats/update_climate_preset ⇒ void ``` +{% endtab %} +{% endtabs %} -Updates a specified [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). +
+ +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 + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
climate_preset_key String (Required) + +Unique key to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). +
device_id String (Required) + +ID of the desired thermostat device. +
manual_override_allowed Boolean (Required) + +Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). +
cooling_set_point_celsius Number + +Temperature to which the thermostat should cool (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
cooling_set_point_fahrenheit Number + +Temperature to which the thermostat should cool (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
fan_mode_setting String + +Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`. +
heating_set_point_celsius Number + +Temperature to which the thermostat should heat (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
heating_set_point_fahrenheit Number + +Temperature to which the thermostat should heat (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). +
hvac_mode_setting String + +Desired [HVAC mode](../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) setting, such as `heat`, `cool`, `heat_cool`, or `off`. +
name String + +User-friendly name to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). +
+ +## Response + +void + +--- + +## Examples + +### Update a climate preset + +Specify the `device_id` of the desired thermostat and the `climate_preset_key` of the desired climate preset, along with the desired updated settings for the climate preset, including `manual_override_allowed`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.thermostats.updateClimatePreset({ @@ -19,7 +107,7 @@ await seam.thermostats.updateClimatePreset({ }); ``` -#### Response +#### Output ```javascript // void @@ -27,7 +115,7 @@ await seam.thermostats.updateClimatePreset({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.thermostats.update_climate_preset( @@ -38,7 +126,7 @@ seam.thermostats.update_climate_preset( ) ``` -#### Response +#### Output ```python None @@ -46,7 +134,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.thermostats.update_climate_preset( @@ -57,7 +145,7 @@ seam.thermostats.update_climate_preset( ) ``` -#### Response +#### Output ```ruby nil @@ -65,7 +153,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php thermostats->update_climate_preset( ); ``` -#### Response +#### Output ```php null @@ -85,13 +173,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam thermostats update-climate-preset --device_id "123e4567-e89b-12d3-a456-426614174000" --climate_preset_key "occupied" --cooling_set_point_celsius 24 --manual_override_allowed true ``` -#### Response +#### Output ```seam_cli {} @@ -99,7 +187,7 @@ seam thermostats update-climate-preset --device_id "123e4567-e89b-12d3-a456-4266 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -119,7 +207,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -128,105 +216,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `climate_preset_key` -Type: `string` -Required: Yes - -Unique key to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). - -*** - -### `device_id` - -Type: `string` -Required: Yes - -ID of the desired thermostat device. - -*** - -### `manual_override_allowed` - -Type: `boolean` -Required: Yes - -Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](../../capability-guides/thermostats/creating-and-managing-thermostat-schedules.md#specifying-manual-override-permissions). - -*** - -### `cooling_set_point_celsius` - -Type: `number` -Required: No - -Temperature to which the thermostat should cool (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `cooling_set_point_fahrenheit` - -Type: `number` -Required: No - -Temperature to which the thermostat should cool (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `fan_mode_setting` - -Type: `string` -Required: No - -Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`. - -*** - -### `heating_set_point_celsius` - -Type: `number` -Required: No - -Temperature to which the thermostat should heat (in °C). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `heating_set_point_fahrenheit` - -Type: `number` -Required: No - -Temperature to which the thermostat should heat (in °F). See also [Set Points](../../capability-guides/thermostats/understanding-thermostat-concepts/set-points.md). - -*** - -### `hvac_mode_setting` - -Type: `string` -Required: No - -Desired [HVAC mode](../../capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode.md) setting, such as `heat`, `cool`, `heat_cool`, or `off`. - -*** - -### `name` - -Type: `string` -Required: No - -User-friendly name to identify the [climate preset](../../capability-guides/thermostats/creating-and-managing-climate-presets/README.md). - -*** - -## Return Type - -void diff --git a/docs/api/user_identities/README.md b/docs/api/user_identities/README.md index 1ef7a3ddf..9b891a767 100644 --- a/docs/api/user_identities/README.md +++ b/docs/api/user_identities/README.md @@ -1,104 +1,156 @@ # User Identities -## `user_identity` +## The user_identity Object -Represents a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) associated with an application user account. +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) -### `created_at` -Format: `Datetime` +Represents a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) associated with an application user account. -Date and time at which the user identity was created. +{% tabs %} +{% tab title="JSON" %} +```json +{ + created_at: [example value], + display_name: [example value], + email_address: [example value], + full_name: [example value], + phone_number: [example value], + user_identity_id: [example value], + user_identity_key: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} --- -### `display_name` +## Properties -Format: `String` + + + + -Format: `String` + + ---- + + ---- + + + + + + + + + + + +
PropertyDescription
created_at Datetime +Date and time at which the user identity was created. ---- -### `email_address` +
display_name String -Unique email address for the user identity. +
email_address String +Unique email address for the user identity. -### `full_name` -Format: `String` +
full_name String -### `phone_number` - -Format: `String` +
phone_number String Unique phone number for the user identity in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, +15555550100). ---- -### `user_identity_id` - -Format: `UUID` +
user_identity_id UUID ID of the user identity. ---- - -### `user_identity_key` -Format: `String` +
user_identity_key String Unique key for the user identity. ---- - -### `workspace_id` -Format: `UUID` +
workspace_id UUID ID of the [workspace](../../core-concepts/workspaces/README.md) that contains the user identity. ---- + +
+ ## Endpoints -### [`/user_identities/add_acs_user`](./add_acs_user.md) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -Adds a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/create`](./create.md) -Creates a new [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/delete`](./delete.md) + -Deletes a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). To delete a user identity, you must first delete any [ACS credentials](https://docs.seam.co/latest/api/access-control-systems/credentials) and [enrollment automations](https://docs.seam.co/latest/api/user_identities/enrollment_automations/delete) associated with the user identity. You must also deactivate any associated phones. -### [`/user_identities/get`](./get.md) + -Returns a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/grant_access_to_device`](./grant_access_to_device.md) -Grants a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) access to a specified [device](../../core-concepts/devices/README.md). -### [`/user_identities/list`](./list.md) + -Returns a list of all [user identities](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/list_accessible_devices`](./list_accessible_devices.md) + -Returns a list of all [devices](../../core-concepts/devices/README.md) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/list_acs_systems`](./list_acs_systems.md) -Returns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/list_acs_users`](./list_acs_users.md) + -Returns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management) assigned to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/remove_acs_user`](./remove_acs_user.md) + -Removes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/revoke_access_to_device`](./revoke_access_to_device.md) -Revokes access to a specified [device](../../core-concepts/devices/README.md) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). -### [`/user_identities/update`](./update.md) + + +
EndpointDescription
/user_identities/add_acs_userAdds a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/createCreates a new [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/deleteDeletes a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). To delete a user identity, you must first delete any [ACS credentials](https://docs.seam.co/latest/api/access-control-systems/credentials) and [enrollment automations](https://docs.seam.co/latest/api/user_identities/enrollment_automations/delete) associated with the user identity. You must also deactivate any associated phones.
/user_identities/getReturns a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/grant_access_to_deviceGrants a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) access to a specified [device](../../core-concepts/devices/README.md).
/user_identities/listReturns a list of all [user identities](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/list_accessible_devicesReturns a list of all [devices](../../core-concepts/devices/README.md) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/list_acs_systemsReturns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/list_acs_usersReturns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management) assigned to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/remove_acs_userRemoves a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/revoke_access_to_deviceRevokes access to a specified [device](../../core-concepts/devices/README.md) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
/user_identities/update
diff --git a/docs/api/user_identities/add_acs_user.md b/docs/api/user_identities/add_acs_user.md index af928ae44..81742a474 100644 --- a/docs/api/user_identities/add_acs_user.md +++ b/docs/api/user_identities/add_acs_user.md @@ -1,14 +1,61 @@ # Add an ACS User to a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Adds a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` PUT /user_identities/add_acs_user ⇒ void ``` +{% endtab %} +{% endtabs %} -Adds a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + + + +
ParameterDescription
acs_user_id String (Required) + +ID of the desired ACS user. +
user_identity_id String (Required) + +ID of the desired user identity. +
+ +## Response + +void + +--- + +## Examples + +### Add an ACS user to a user identity + +Specify the desired `acs_user_id` and `user_identity_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.addAcsUser({ @@ -17,7 +64,7 @@ await seam.userIdentities.addAcsUser({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.userIdentities.addAcsUser({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.add_acs_user( @@ -34,7 +81,7 @@ seam.user_identities.add_acs_user( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.add_acs_user( @@ -51,7 +98,7 @@ seam.user_identities.add_acs_user( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->add_acs_user( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities add-acs-user --user_identity_id "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a" --acs_user_id "4d223973-0874-4831-8630-bfcb29e6bce0" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam user-identities add-acs-user --user_identity_id "48500a8e-5e7e-4bde-b7e5-0b {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -109,7 +156,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -118,32 +165,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_user_id` -Type: `string` -Required: Yes - -ID of the desired ACS user. - -*** - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the desired user identity. - -*** - -## Return Type - -void diff --git a/docs/api/user_identities/create.md b/docs/api/user_identities/create.md index 817473e5c..b725a98ef 100644 --- a/docs/api/user_identities/create.md +++ b/docs/api/user_identities/create.md @@ -1,14 +1,80 @@ # Create a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Creates a new [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/create ⇒ { user_identity } ``` +{% endtab %} +{% endtabs %} -Creates a new [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + + + + + + + +
ParameterDescription
email_address String + +Unique email address for the user identity. +
full_name String + +Full name of the user associated with the user identity. +
phone_number String + +Unique phone number for the user identity in E.164 format (for example, +15555550100). +
user_identity_key String + +Unique key for the user identity. +
+ +## Response + +[user\_identity](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of user_identity +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Create a user identity + +Specify one or more of the unique `user_identity_key`, `email_address`, or `phone_number`. You can also specify the `full_name` of the user associated with the `user_identity`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.create({ @@ -19,7 +85,7 @@ await seam.userIdentities.create({ }); ``` -#### Response +#### Output ```javascript { @@ -36,7 +102,7 @@ await seam.userIdentities.create({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.create( @@ -47,7 +113,7 @@ seam.user_identities.create( ) ``` -#### Response +#### Output ```python UserIdentity( @@ -64,7 +130,7 @@ UserIdentity( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.create( @@ -75,7 +141,7 @@ seam.user_identities.create( ) ``` -#### Response +#### Output ```ruby { @@ -92,7 +158,7 @@ seam.user_identities.create( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->create( ); ``` -#### Response +#### Output ```php user_identities->create( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities create --user_identity_key "jean_doe" --email_address "jean@example.com" --phone_number "+15555550110" --full_name "Jean Doe" ``` -#### Response +#### Output ```seam_cli { @@ -145,7 +211,7 @@ seam user-identities create --user_identity_key "jean_doe" --email_address "jean {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -165,7 +231,7 @@ func main() { } ``` -#### Response +#### Output ```go api.UserIdentity{UserIdentityId: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a", UserIdentityKey: "jean_doe", EmailAddress: "jean@example.com", PhoneNumber: "+15555550110", DisplayName: "Jean Doe", FullName: "Jean Doe", CreatedAt: "2024-01-11T05:37:50.264Z", WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be"} @@ -174,50 +240,4 @@ api.UserIdentity{UserIdentityId: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a", UserIde {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `email_address` - -Type: `string` -Required: No - -Unique email address for the user identity. - -*** - -### `full_name` -Type: `string` -Required: No - -Full name of the user associated with the user identity. - -*** - -### `phone_number` - -Type: `string` -Required: No - -Unique phone number for the user identity in E.164 format (for example, +15555550100). - -*** - -### `user_identity_key` - -Type: `string` -Required: No - -Unique key for the user identity. - -*** - -## Return Type - -[user\_identity](./) diff --git a/docs/api/user_identities/delete.md b/docs/api/user_identities/delete.md index 2bdc55ac5..6de316ede 100644 --- a/docs/api/user_identities/delete.md +++ b/docs/api/user_identities/delete.md @@ -1,14 +1,56 @@ # Delete a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). To delete a user identity, you must first delete any [ACS credentials](https://docs.seam.co/latest/api/access-control-systems/credentials) and [enrollment automations](https://docs.seam.co/latest/api/user_identities/enrollment_automations/delete) associated with the user identity. You must also deactivate any associated phones. + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/delete ⇒ void ``` +{% endtab %} +{% endtabs %} -Deletes a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). To delete a user identity, you must first delete any [ACS credentials](https://docs.seam.co/latest/api/access-control-systems/credentials) and [enrollment automations](https://docs.seam.co/latest/api/user_identities/enrollment_automations/delete) associated with the user identity. You must also deactivate any associated phones. +
+ +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 + + + + + +
ParameterDescription
user_identity_id String (Required) + +ID of the desired user identity. +
+ +## Response + +void + +--- + +## Examples + +### Delete a user identity + +Specify the desired `user_identity_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.delete({ @@ -16,7 +58,7 @@ await seam.userIdentities.delete({ }); ``` -#### Response +#### Output ```javascript // void @@ -24,13 +66,13 @@ await seam.userIdentities.delete({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.delete(user_identity_id="44d48b20-0dbe-419d-91ca-ab8bceecd135") ``` -#### Response +#### Output ```python None @@ -38,13 +80,13 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.delete(user_identity_id: "44d48b20-0dbe-419d-91ca-ab8bceecd135") ``` -#### Response +#### Output ```ruby nil @@ -52,7 +94,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->delete( ); ``` -#### Response +#### Output ```php null @@ -69,13 +111,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities delete --user_identity_id "44d48b20-0dbe-419d-91ca-ab8bceecd135" ``` -#### Response +#### Output ```seam_cli {} @@ -83,7 +125,7 @@ seam user-identities delete --user_identity_id "44d48b20-0dbe-419d-91ca-ab8bceec {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -100,7 +142,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -109,23 +151,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `user_identity_id` -Type: `string` -Required: Yes - -ID of the desired user identity. - -*** - -## Return Type - -void diff --git a/docs/api/user_identities/enrollment_automations/README.md b/docs/api/user_identities/enrollment_automations/README.md index 04899ddf7..449887a78 100644 --- a/docs/api/user_identities/enrollment_automations/README.md +++ b/docs/api/user_identities/enrollment_automations/README.md @@ -1,105 +1,145 @@ # Enrollment Automations -## `enrollment_automation` +## The enrollment_automation Object -Represents an [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) within the [Seam mobile access solution](https://docs.seam.co/latest/capability-guides/mobile-access-in-development). +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) -### `created_at` -Format: `Datetime` +Represents an [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) within the [Seam mobile access solution](https://docs.seam.co/latest/capability-guides/mobile-access-in-development). -Date and time at which the enrollment automation was created. +{% tabs %} +{% tab title="JSON" %} +```json +{ + created_at: [example value], + credential_manager_acs_system_id: [example value], + enrollment_automation_id: [example value], + user_identity_id: [example value], + workspace_id: [example value] +} +``` +{% endtab %} +{% endtabs %} --- -### `credential_manager_acs_system_id` +## Properties -Format: `UUID` + + + + + + + + + + + + + -### [`/user_identities/enrollment_automations/delete`](./delete.md) +
PropertyDescription
created_at Datetime +Date and time at which the enrollment automation was created. -ID of the associated [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) that serves as the credential manager. ---- +
credential_manager_acs_system_id UUID +ID of the associated [ACS system](https://docs.seam.co/latest/capability-guides/access-systems) that serves as the credential manager. -### `enrollment_automation_id` -Format: `UUID` +
enrollment_automation_id UUID ID of the enrollment automation. ---- - -### `user_identity_id` -Format: `UUID` +
user_identity_id UUID ID of the associated [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). ---- -### `workspace_id` - -Format: `UUID` +
workspace_id UUID ID of the [workspace](../../../core-concepts/workspaces/README.md) that contains the enrollment automation. ---- -## Endpoints +
-Deletes a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). You must delete all enrollment automations associated with a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) before [deleting the user identity](https://docs.seam.co/latest/api/user_identities/delete). -### [`/user_identities/enrollment_automations/get`](./get.md) +## Events -Returns a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). -### [`/user_identities/enrollment_automations/launch`](./launch.md) + + + + +
EventDescription
enrollment_automation.deleted +An [enrollment automation](../../../capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system.md#prepare-the-phones-for-a-user-identity-to-start-receiving-mobile-credentials-using-an-enrollment-aut) was deleted. -Sets up a new [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) with a specified [credential manager](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). -### [`/user_identities/enrollment_automations/list`](./list.md) +
-Returns a list of all [enrollment automations](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +Properties ---- +- created_at Datetime -## Events + Date and time at which the event was created. -### `enrollment_automation.deleted` -An [enrollment automation](../../../capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system.md#prepare-the-phones-for-a-user-identity-to-start-receiving-mobile-credentials-using-an-enrollment-aut) was deleted. -
+- enrollment_automation_id UUID -created_at Format: Datetime + ID of the [enrollment automation](../../../capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system.md#prepare-the-phones-for-a-user-identity-to-start-receiving-mobile-credentials-using-an-enrollment-aut). -Date and time at which the event was created. -
-
-enrollment_automation_id Format: UUID -ID of the [enrollment automation](../../../capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system.md#prepare-the-phones-for-a-user-identity-to-start-receiving-mobile-credentials-using-an-enrollment-aut). -
-
+- event_id UUID -event_id Format: UUID + ID of the event. -ID of the event. -
-
-event_type Format: String -
-
-occurred_at Format: Datetime +- event_type String -Date and time at which the event occurred. -
-
-workspace_id Format: UUID -ID of the [workspace](../../../core-concepts/workspaces/README.md). +- occurred_at Datetime + + Date and time at which the event occurred. + + + +- workspace_id UUID + + ID of the [workspace](../../../core-concepts/workspaces/README.md). + +
---- +
+ +## Endpoints + + + + + + + + + + + + + + + + + + + + + + + +
EndpointDescription
/user_identities/enrollment_automations/deleteDeletes a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). You must delete all enrollment automations associated with a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) before [deleting the user identity](https://docs.seam.co/latest/api/user_identities/delete).
/user_identities/enrollment_automations/getReturns a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system).
/user_identities/enrollment_automations/launchSets up a new [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) with a specified [credential manager](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system).
/user_identities/enrollment_automations/listReturns a list of all [enrollment automations](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity).
diff --git a/docs/api/user_identities/enrollment_automations/delete.md b/docs/api/user_identities/enrollment_automations/delete.md index 2e1962b93..19e236a4a 100644 --- a/docs/api/user_identities/enrollment_automations/delete.md +++ b/docs/api/user_identities/enrollment_automations/delete.md @@ -1,14 +1,56 @@ # Delete an Enrollment Automation +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Deletes a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). You must delete all enrollment automations associated with a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) before [deleting the user identity](https://docs.seam.co/latest/api/user_identities/delete). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/enrollment_automations/delete ⇒ void ``` +{% endtab %} +{% endtabs %} -Deletes a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). You must delete all enrollment automations associated with a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) before [deleting the user identity](https://docs.seam.co/latest/api/user_identities/delete). +
+ +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 + + + + + +
ParameterDescription
enrollment_automation_id String (Required) + +ID of the desired enrollment automation. +
+ +## Response + +void + +--- + +## Examples + +### Delete an enrollment automation + +Specify the desired `enrollment_automation_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.enrollmentAutomations.delete({ @@ -16,7 +58,7 @@ await seam.userIdentities.enrollmentAutomations.delete({ }); ``` -#### Response +#### Output ```javascript // void @@ -24,7 +66,7 @@ await seam.userIdentities.enrollmentAutomations.delete({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.enrollment_automations.delete( @@ -32,7 +74,7 @@ seam.user_identities.enrollment_automations.delete( ) ``` -#### Response +#### Output ```python None @@ -40,7 +82,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.enrollment_automations.delete( @@ -48,7 +90,7 @@ seam.user_identities.enrollment_automations.delete( ) ``` -#### Response +#### Output ```ruby nil @@ -56,7 +98,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->enrollment_automations->delete( ); ``` -#### Response +#### Output ```php null @@ -73,13 +115,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities enrollment-automations delete --enrollment_automation_id "05505650-aa57-49ab-8f19-429738758895" ``` -#### Response +#### Output ```seam_cli {} @@ -87,7 +129,7 @@ seam user-identities enrollment-automations delete --enrollment_automation_id "0 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -105,7 +147,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -114,23 +156,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `enrollment_automation_id` -Type: `string` -Required: Yes - -ID of the desired enrollment automation. - -*** - -## Return Type - -void diff --git a/docs/api/user_identities/enrollment_automations/get.md b/docs/api/user_identities/enrollment_automations/get.md index b53917f31..38c583fe2 100644 --- a/docs/api/user_identities/enrollment_automations/get.md +++ b/docs/api/user_identities/enrollment_automations/get.md @@ -1,14 +1,66 @@ # Get an Enrollment Automation +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/enrollment_automations/get ⇒ { enrollment_automation } ``` +{% endtab %} +{% endtabs %} -Returns a specified [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). +
+ +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 + + + + + +
ParameterDescription
enrollment_automation_id String (Required) + +ID of the desired enrollment automation. +
+ +## Response + +[enrollment\_automation](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of enrollment_automation +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get an enrollment automation + +Specify the desired `enrollment_automation_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.enrollmentAutomations.get({ @@ -16,7 +68,7 @@ await seam.userIdentities.enrollmentAutomations.get({ }); ``` -#### Response +#### Output ```javascript { @@ -32,7 +84,7 @@ await seam.userIdentities.enrollmentAutomations.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.enrollment_automations.get( @@ -40,7 +92,7 @@ seam.user_identities.enrollment_automations.get( ) ``` -#### Response +#### Output ```python EnrollmentAutomation( @@ -56,7 +108,7 @@ EnrollmentAutomation( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.enrollment_automations.get( @@ -64,7 +116,7 @@ seam.user_identities.enrollment_automations.get( ) ``` -#### Response +#### Output ```ruby { @@ -80,7 +132,7 @@ seam.user_identities.enrollment_automations.get( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->enrollment_automations->get( ); ``` -#### Response +#### Output ```php user_identities->enrollment_automations->get( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities enrollment-automations get --enrollment_automation_id "05505650-aa57-49ab-8f19-429738758895" ``` -#### Response +#### Output ```seam_cli { @@ -130,7 +182,7 @@ seam user-identities enrollment-automations get --enrollment_automation_id "0550 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -148,7 +200,7 @@ func main() { } ``` -#### Response +#### Output ```go api.EnrollmentAutomation{UserIdentityId: "5c945ab5-c75e-4bcb-8e5f-9410061c401f", EnrollmentAutomationId: "05505650-aa57-49ab-8f19-429738758895", AcsCredentialProvisioningAutomationId: "05505650-aa57-49ab-8f19-429738758895", CredentialManagerAcsSystemId: "6737e186-8d54-48ce-a7da-a0be4d252172", IsRunning: true, WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be", CreatedAt: "2024-01-09T05:45:33.068Z"} @@ -157,24 +209,4 @@ api.EnrollmentAutomation{UserIdentityId: "5c945ab5-c75e-4bcb-8e5f-9410061c401f", {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `enrollment_automation_id` - -Type: `string` -Required: Yes -ID of the desired enrollment automation. - -*** - -## Return Type - -[enrollment\_automation](./) diff --git a/docs/api/user_identities/enrollment_automations/launch.md b/docs/api/user_identities/enrollment_automations/launch.md index 5dc340903..961d7ef5c 100644 --- a/docs/api/user_identities/enrollment_automations/launch.md +++ b/docs/api/user_identities/enrollment_automations/launch.md @@ -1,14 +1,85 @@ # Launch an Enrollment Automation +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Sets up a new [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) with a specified [credential manager](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/enrollment_automations/launch ⇒ { enrollment_automation } ``` +{% endtab %} +{% endtabs %} -Sets up a new [enrollment automation](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) with a specified [credential manager](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system). +
+ +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 + + + + + + + + + + + + + +
ParameterDescription
credential_manager_acs_system_id String (Required) + +ID of the desired ACS system that serves as the credential manager. +
user_identity_id String (Required) + +ID of the desired user identity. +
acs_credential_pool_id String + +ID of the ACS credential pool from which to obtain credentials for the user identity. +
create_credential_manager_user Boolean + +Indicates whether to create an associated credential manager user. If you set `create_credential_manager_user` to `true`, you cannot specify a `credential_manager_acs_user_id`. +
credential_manager_acs_user_id String + +ID of the associated ACS user within the credential manager. If you specify a `credential_manager_acs_user_id`, you cannot set `create_credential_manager_user` to `true`. +
+ +## Response + +[unknown](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of unknown +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Launch an enrollment automation + +Specify the desired `user_identity_id` and `credential_manager_acs_system_id`. You can also specify an `acs_credential_pool_id`. Either set `create_credential_manager_user` to `true` or specify the `credential_manager_acs_user_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.enrollmentAutomations.launch({ @@ -19,7 +90,7 @@ await seam.userIdentities.enrollmentAutomations.launch({ }); ``` -#### Response +#### Output ```javascript { @@ -35,7 +106,7 @@ await seam.userIdentities.enrollmentAutomations.launch({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.enrollment_automations.launch( @@ -46,7 +117,7 @@ seam.user_identities.enrollment_automations.launch( ) ``` -#### Response +#### Output ```python Unknown( @@ -62,7 +133,7 @@ Unknown( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.enrollment_automations.launch( @@ -73,7 +144,7 @@ seam.user_identities.enrollment_automations.launch( ) ``` -#### Response +#### Output ```ruby { @@ -89,7 +160,7 @@ seam.user_identities.enrollment_automations.launch( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->enrollment_automations->launch( ); ``` -#### Response +#### Output ```php user_identities->enrollment_automations->launch( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities enrollment-automations launch --user_identity_id "5c945ab5-c75e-4bcb-8e5f-9410061c401f" --credential_manager_acs_system_id "6737e186-8d54-48ce-a7da-a0be4d252172" --acs_credential_pool_id "3fa85f64-5717-4562-b3fc-2c963f66afa6" --create_credential_manager_user true ``` -#### Response +#### Output ```seam_cli { @@ -142,7 +213,7 @@ seam user-identities enrollment-automations launch --user_identity_id "5c945ab5- {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -163,7 +234,7 @@ func main() { } ``` -#### Response +#### Output ```go api.Unknown{UserIdentityId: "5c945ab5-c75e-4bcb-8e5f-9410061c401f", EnrollmentAutomationId: "05505650-aa57-49ab-8f19-429738758895", AcsCredentialProvisioningAutomationId: "05505650-aa57-49ab-8f19-429738758895", CredentialManagerAcsSystemId: "6737e186-8d54-48ce-a7da-a0be4d252172", IsRunning: true, WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be", CreatedAt: "2024-01-09T05:45:33.068Z"} @@ -172,59 +243,4 @@ api.Unknown{UserIdentityId: "5c945ab5-c75e-4bcb-8e5f-9410061c401f", EnrollmentAu {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `credential_manager_acs_system_id` - -Type: `string` -Required: Yes - -ID of the desired ACS system that serves as the credential manager. - -*** - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the desired user identity. - -*** -### `acs_credential_pool_id` - -Type: `string` -Required: No - -ID of the ACS credential pool from which to obtain credentials for the user identity. - -*** - -### `create_credential_manager_user` - -Type: `boolean` -Required: No - -Indicates whether to create an associated credential manager user. If you set `create_credential_manager_user` to `true`, you cannot specify a `credential_manager_acs_user_id`. - -*** - -### `credential_manager_acs_user_id` - -Type: `string` -Required: No - -ID of the associated ACS user within the credential manager. If you specify a `credential_manager_acs_user_id`, you cannot set `create_credential_manager_user` to `true`. - -*** - -## Return Type - -[unknown](./) diff --git a/docs/api/user_identities/enrollment_automations/list.md b/docs/api/user_identities/enrollment_automations/list.md index 8ed1a89c7..132a4f563 100644 --- a/docs/api/user_identities/enrollment_automations/list.md +++ b/docs/api/user_identities/enrollment_automations/list.md @@ -1,14 +1,66 @@ # List Enrollment Automations +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [enrollment automations](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/enrollment_automations/list ⇒ { enrollment_automations: [enrollment_automation, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [enrollment automations](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/issuing-mobile-credentials-from-an-access-control-system) for a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + +
ParameterDescription
user_identity_id String (Required) + +ID of the user identity for which you want to retrieve all enrollment automations. +
+ +## Response + +Array of [enrollment\_automations](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of enrollment_automation +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List enrollment automations + +Specify the desired `user_identity_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.enrollmentAutomations.list({ @@ -16,7 +68,7 @@ await seam.userIdentities.enrollmentAutomations.list({ }); ``` -#### Response +#### Output ```javascript [ @@ -34,7 +86,7 @@ await seam.userIdentities.enrollmentAutomations.list({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.enrollment_automations.list( @@ -42,7 +94,7 @@ seam.user_identities.enrollment_automations.list( ) ``` -#### Response +#### Output ```python [ @@ -60,7 +112,7 @@ seam.user_identities.enrollment_automations.list( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.enrollment_automations.list( @@ -68,7 +120,7 @@ seam.user_identities.enrollment_automations.list( ) ``` -#### Response +#### Output ```ruby [ @@ -86,7 +138,7 @@ seam.user_identities.enrollment_automations.list( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->enrollment_automations->list( ); ``` -#### Response +#### Output ```php user_identities->enrollment_automations->list( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities enrollment-automations list --user_identity_id "5c945ab5-c75e-4bcb-8e5f-9410061c401f" ``` -#### Response +#### Output ```seam_cli [ @@ -140,7 +192,7 @@ seam user-identities enrollment-automations list --user_identity_id "5c945ab5-c7 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -158,7 +210,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.EnrollmentAutomation{api.EnrollmentAutomation{UserIdentityId: "5c945ab5-c75e-4bcb-8e5f-9410061c401f", EnrollmentAutomationId: "05505650-aa57-49ab-8f19-429738758895", AcsCredentialProvisioningAutomationId: "05505650-aa57-49ab-8f19-429738758895", CredentialManagerAcsSystemId: "6737e186-8d54-48ce-a7da-a0be4d252172", IsRunning: true, WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be", CreatedAt: "2024-01-09T05:45:33.068Z"}} @@ -167,24 +219,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the user identity for which you want to retrieve all enrollment automations. - -*** - -## Return Type -Array<[enrollment\_automation](./)> diff --git a/docs/api/user_identities/get.md b/docs/api/user_identities/get.md index a76dbf454..cae80e087 100644 --- a/docs/api/user_identities/get.md +++ b/docs/api/user_identities/get.md @@ -1,14 +1,68 @@ # Get a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/get ⇒ { user_identity } ``` +{% endtab %} +{% endtabs %} -Returns a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + + + +
ParameterDescription
user_identity_id String + +ID of the desired user identity. +
user_identity_key String +
+ +## Response + +[user\_identity](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of user_identity +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### Get a user identity + +Specify the `user_identity_id` of the user identity that you want to retrieve. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.get({ @@ -16,7 +70,7 @@ await seam.userIdentities.get({ }); ``` -#### Response +#### Output ```javascript { @@ -33,13 +87,13 @@ await seam.userIdentities.get({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.get(user_identity_id="48500a8e-5e7e-4bde-b7e5-0be97cae5d7a") ``` -#### Response +#### Output ```python UserIdentity( @@ -56,13 +110,13 @@ UserIdentity( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.get(user_identity_id: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a") ``` -#### Response +#### Output ```ruby { @@ -79,7 +133,7 @@ seam.user_identities.get(user_identity_id: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->get( ); ``` -#### Response +#### Output ```php user_identities->get( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities get --user_identity_id "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a" ``` -#### Response +#### Output ```seam_cli { @@ -129,7 +183,7 @@ seam user-identities get --user_identity_id "48500a8e-5e7e-4bde-b7e5-0be97cae5d7 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -146,7 +200,7 @@ func main() { } ``` -#### Response +#### Output ```go api.UserIdentity{UserIdentityId: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a", UserIdentityKey: "jean_doe", EmailAddress: "jean@example.com", PhoneNumber: "+15555550110", DisplayName: "Jean Doe", FullName: "Jean Doe", CreatedAt: "2024-01-11T05:37:50.264Z", WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be"} @@ -155,32 +209,4 @@ api.UserIdentity{UserIdentityId: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a", UserIde {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `user_identity_id` - -Type: `string` -Required: No - -ID of the desired user identity. - -*** - -### `user_identity_key` -Type: `string` -Required: No - - - -*** - -## Return Type - -[user\_identity](./) diff --git a/docs/api/user_identities/grant_access_to_device.md b/docs/api/user_identities/grant_access_to_device.md index b5121cc74..0a53051a5 100644 --- a/docs/api/user_identities/grant_access_to_device.md +++ b/docs/api/user_identities/grant_access_to_device.md @@ -1,14 +1,61 @@ # Grant a User Identity Access to a Device +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Grants a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) access to a specified [device](../../core-concepts/devices/README.md). + +{% tabs %} +{% tab title="Signature" %} ``` PUT /user_identities/grant_access_to_device ⇒ void ``` +{% endtab %} +{% endtabs %} -Grants a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) access to a specified [device](../../core-concepts/devices/README.md). +
+ +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 + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired managed device. +
user_identity_id String (Required) + +ID of the desired user identity. +
+ +## Response + +void + +--- + +## Examples + +### Grant a user identity access to a device + +Specify the desired `user_identity_id` and `device_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.grantAccessToDevice({ @@ -17,7 +64,7 @@ await seam.userIdentities.grantAccessToDevice({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.userIdentities.grantAccessToDevice({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.grant_access_to_device( @@ -34,7 +81,7 @@ seam.user_identities.grant_access_to_device( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.grant_access_to_device( @@ -51,7 +98,7 @@ seam.user_identities.grant_access_to_device( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->grant_access_to_device( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities grant-access-to-device --user_identity_id "f3a328b4-dd04-4370-9000-d52b7a01b0bf" --device_id "054765c8-a2fc-4599-b486-14c19f462c45" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam user-identities grant-access-to-device --user_identity_id "f3a328b4-dd04-43 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -109,7 +156,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -118,32 +165,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` -Type: `string` -Required: Yes - -ID of the desired managed device. - -*** - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the desired user identity. - -*** - -## Return Type - -void diff --git a/docs/api/user_identities/list.md b/docs/api/user_identities/list.md index 7044c7aaa..ee3736123 100644 --- a/docs/api/user_identities/list.md +++ b/docs/api/user_identities/list.md @@ -1,20 +1,70 @@ # List User Identities +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [user identities](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/list ⇒ { user_identities: [user_identity, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [user identities](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + +
ParameterDescription
credential_manager_acs_system_id String +
+ +## Response + +Array of [user\_identitys](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of user_identity +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List user identities + +To filter the list of user identities, specify the desired `credential_manager_acs_system_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.list(); ``` -#### Response +#### Output ```javascript [ @@ -33,13 +83,13 @@ await seam.userIdentities.list(); {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.list() ``` -#### Response +#### Output ```python [ @@ -58,13 +108,13 @@ seam.user_identities.list() {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.list() ``` -#### Response +#### Output ```ruby [ @@ -83,14 +133,14 @@ seam.user_identities.list() {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->list(); ``` -#### Response +#### Output ```php user_identities->list(); {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities list ``` -#### Response +#### Output ```seam_cli [ @@ -135,7 +185,7 @@ seam user-identities list {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -145,7 +195,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.UserIdentity{api.UserIdentity{UserIdentityId: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a", UserIdentityKey: "jean_doe", EmailAddress: "jean@example.com", PhoneNumber: "+15555550110", DisplayName: "Jean Doe", FullName: "Jean Doe", CreatedAt: "2024-01-11T05:37:50.264Z", WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be"}} @@ -154,24 +204,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `credential_manager_acs_system_id` - -Type: `string` -Required: No - - - -*** - -## Return Type -Array<[user\_identity](./)> diff --git a/docs/api/user_identities/list_accessible_devices.md b/docs/api/user_identities/list_accessible_devices.md index e84acbefb..7f562a5ee 100644 --- a/docs/api/user_identities/list_accessible_devices.md +++ b/docs/api/user_identities/list_accessible_devices.md @@ -1,14 +1,65 @@ # List Accessible Devices for a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [devices](../../core-concepts/devices/README.md) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/list_accessible_devices ⇒ { devices: [device, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [devices](../../core-concepts/devices/README.md) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + +
ParameterDescription
user_identity_id String (Required) + +ID of the user identity for which you want to retrieve all accessible devices. +
+ +## Response + +Array of [devices](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of device +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List accessible devices for a user identity + +Specify the desired `user_identity_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.listAccessibleDevices({ @@ -16,7 +67,7 @@ await seam.userIdentities.listAccessibleDevices({ }); ``` -#### Response +#### Output ```javascript [ @@ -76,7 +127,7 @@ await seam.userIdentities.listAccessibleDevices({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.list_accessible_devices( @@ -84,7 +135,7 @@ seam.user_identities.list_accessible_devices( ) ``` -#### Response +#### Output ```python [ @@ -144,7 +195,7 @@ seam.user_identities.list_accessible_devices( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.list_accessible_devices( @@ -152,7 +203,7 @@ seam.user_identities.list_accessible_devices( ) ``` -#### Response +#### Output ```ruby [ @@ -216,7 +267,7 @@ seam.user_identities.list_accessible_devices( {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->list_accessible_devices( ); ``` -#### Response +#### Output ```php user_identities->list_accessible_devices( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities list-accessible-devices --user_identity_id "f3a328b4-dd04-4370-9000-d52b7a01b0bf" ``` -#### Response +#### Output ```seam_cli [ @@ -359,7 +410,7 @@ seam user-identities list-accessible-devices --user_identity_id "f3a328b4-dd04-4 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -376,7 +427,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.Device{api.Device{DeviceId: "054765c8-a2fc-4599-b486-14c19f462c45", Nickname: "", DisplayName: "Seam Thermostat", DeviceType: "nest_thermostat", CapabilitiesSupported: []string{"thermostat"}, Properties: api.DeviceProperties{Online: true, IsCooling: false, IsHeating: false, Manufacturer: "nest", NestMetadata: api.DevicePropertiesNestMetadata{CustomName: "", DeviceName: "enterprises/nest_project_id/devices/AVPHwEvjFcX-wRmGdXApyxON24SAI0S9oU13a2GSVFLPVehUKH1ATqlASyKi2N2dbJCVW-B6-VxgbhdjUyyjA-K3Vo5C9g", NestDeviceId: "bcca8c5f-1854-4906-9911-c877d513e00a"}, IsFanRunning: false, HasDirectPower: true, RelativeHumidity: 0.46, TemperatureCelsius: 24.64, TemperatureFahrenheit: 76.352, CurrentClimateSetting: api.DevicePropertiesCurrentClimateSetting{HvacModeSetting: "heat_cool", ManualOverrideAllowed: true, CoolingSetPointCelsius: 21.5, HeatingSetPointCelsius: 20, CoolingSetPointFahrenheit: 70.7, HeatingSetPointFahrenheit: 68}, AvailableHvacModeSettings: []string{"heat", "cool", "heat_cool", "off"}, IsTemporaryManualOverrideActive: false, Name: "", Appearance: api.DevicePropertiesAppearance{Name: ""}, Model: api.DevicePropertiesModel{DisplayName: "Thermostat", ManufacturerDisplayName: "Nest", AccessoryKeypadSupported: false}, ImageUrl: "https://connect.getseam.com/assets/images/devices/unknown-lock.png", ImageAltText: "Placeholder Lock Image", IsClimateSettingScheduleActive: false}, Location: nil, ConnectedAccountId: "44284499-a50b-4947-86c1-58264f014be5", WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be", CreatedAt: "2024-02-29T21:57:33.397Z", Errors: nil, Warnings: nil, IsManaged: true, CustomMetadata: struct{}{}}} @@ -385,23 +436,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the user identity for which you want to retrieve all accessible devices. - -*** - -## Return Type -Array<[device](./)> diff --git a/docs/api/user_identities/list_acs_systems.md b/docs/api/user_identities/list_acs_systems.md index 27b7403e1..7c290dc0e 100644 --- a/docs/api/user_identities/list_acs_systems.md +++ b/docs/api/user_identities/list_acs_systems.md @@ -1,14 +1,66 @@ # List ACS Systems Associated with a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/list_acs_systems ⇒ { acs_systems: [acs_system, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [access control systems](https://docs.seam.co/latest/capability-guides/access-systems) associated with a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + +
ParameterDescription
user_identity_id String (Required) + +ID of the user identity for which you want to retrieve all access control systems. +
+ +## Response + +Array of [acs\_systems](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_system +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List ACS systems associated with a user identity + +Specify the desired `user_identity_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.listAcsSystems({ @@ -16,7 +68,7 @@ await seam.userIdentities.listAcsSystems({ }); ``` -#### Response +#### Output ```javascript [ @@ -36,7 +88,7 @@ await seam.userIdentities.listAcsSystems({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.list_acs_systems( @@ -44,7 +96,7 @@ seam.user_identities.list_acs_systems( ) ``` -#### Response +#### Output ```python [ @@ -64,13 +116,13 @@ seam.user_identities.list_acs_systems( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.list_acs_systems(user_identity_id: "5c945ab5-c75e-4bcb-8e5f-9410061c401f") ``` -#### Response +#### Output ```ruby [ @@ -90,7 +142,7 @@ seam.user_identities.list_acs_systems(user_identity_id: "5c945ab5-c75e-4bcb-8e5f {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->list_acs_systems( ); ``` -#### Response +#### Output ```php user_identities->list_acs_systems( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities list-acs-systems --user_identity_id "5c945ab5-c75e-4bcb-8e5f-9410061c401f" ``` -#### Response +#### Output ```seam_cli [ @@ -146,7 +198,7 @@ seam user-identities list-acs-systems --user_identity_id "5c945ab5-c75e-4bcb-8e5 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -163,7 +215,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsSystem{api.AcsSystem{AcsSystemId: "6737e186-8d54-48ce-a7da-a0be4d252172", Name: "Assa Abloy Credential Service", WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be", CreatedAt: "2024-01-05T07:16:51.971Z", SystemType: "assa_abloy_credential_service", SystemTypeDisplayName: "Assa Abloy Credential Service", ExternalType: "assa_abloy_credential_service", ExternalTypeDisplayName: "Assa Abloy Credential Service", ConnectedAccountIds: []string{"dc08066f-d9b8-42f0-9c4b-c781cd900153"}}} @@ -172,24 +224,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Client session token -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the user identity for which you want to retrieve all access control systems. - -*** - -## Return Type -Array<[acs\_system](./)> diff --git a/docs/api/user_identities/list_acs_users.md b/docs/api/user_identities/list_acs_users.md index d585f3090..43399633d 100644 --- a/docs/api/user_identities/list_acs_users.md +++ b/docs/api/user_identities/list_acs_users.md @@ -1,14 +1,65 @@ # List ACS Users Associated with a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Returns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management) assigned to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/list_acs_users ⇒ { acs_users: [acs_user, …] } ``` +{% endtab %} +{% endtabs %} -Returns a list of all [ACS users](https://docs.seam.co/latest/capability-guides/access-systems/user-management) assigned to a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + +
ParameterDescription
user_identity_id String (Required) + +ID of the user identity for which you want to retrieve all ACS users. +
+ +## Response + +Array of [acs\_users](./) +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of acs_user +} +``` +{% endtab %} +{% endtabs %} + +--- + +## Examples + +### List ACS users for a user identity + +Specify the desired `user_identity_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.listAcsUsers({ @@ -16,7 +67,7 @@ await seam.userIdentities.listAcsUsers({ }); ``` -#### Response +#### Output ```javascript [ @@ -38,7 +89,7 @@ await seam.userIdentities.listAcsUsers({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.list_acs_users( @@ -46,7 +97,7 @@ seam.user_identities.list_acs_users( ) ``` -#### Response +#### Output ```python [ @@ -68,13 +119,13 @@ seam.user_identities.list_acs_users( {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.list_acs_users(user_identity_id: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a") ``` -#### Response +#### Output ```ruby [ @@ -96,7 +147,7 @@ seam.user_identities.list_acs_users(user_identity_id: "48500a8e-5e7e-4bde-b7e5-0 {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->list_acs_users( ); ``` -#### Response +#### Output ```php user_identities->list_acs_users( {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities list-acs-users --user_identity_id "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a" ``` -#### Response +#### Output ```seam_cli [ @@ -156,7 +207,7 @@ seam user-identities list-acs-users --user_identity_id "48500a8e-5e7e-4bde-b7e5- {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -173,7 +224,7 @@ func main() { } ``` -#### Response +#### Output ```go []api.AcsUser{api.AcsUser{AcsUserId: "4d223973-0874-4831-8630-bfcb29e6bce0", DisplayName: "Jean Doe", FullName: "Jean Doe", EmailAddress: "jean@example.com", AcsSystemId: "8aaa5fa0-9381-4463-a0ed-85f9c1fbcef4", WorkspaceId: "398d80b7-3f96-47c2-b85a-6f8ba21d07be", CreatedAt: "2024-01-11T05:45:41.349Z", IsSuspended: false, UserIdentityId: "48500a8e-5e7e-4bde-b7e5-0be97cae5d7a", UserIdentityEmailAddress: "jean@example.com", UserIdentityPhoneNumber: "+15555550110"}} @@ -182,23 +233,4 @@ func main() { {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the user identity for which you want to retrieve all ACS users. - -*** - -## Return Type -Array<[acs\_user](./)> diff --git a/docs/api/user_identities/remove_acs_user.md b/docs/api/user_identities/remove_acs_user.md index 9ddac01d2..63c36143e 100644 --- a/docs/api/user_identities/remove_acs_user.md +++ b/docs/api/user_identities/remove_acs_user.md @@ -1,14 +1,61 @@ # Remove an ACS User from a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Removes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/remove_acs_user ⇒ void ``` +{% endtab %} +{% endtabs %} -Removes a specified [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + + + +
ParameterDescription
acs_user_id String (Required) + +ID of the ACS user. +
user_identity_id String (Required) + +ID of the desired user identity. +
+ +## Response + +void + +--- + +## Examples + +### Remove an ACS user from a user identity + +Specify the desired `acs_user_id` and `user_identity_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.removeAcsUser({ @@ -17,7 +64,7 @@ await seam.userIdentities.removeAcsUser({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.userIdentities.removeAcsUser({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.remove_acs_user( @@ -34,7 +81,7 @@ seam.user_identities.remove_acs_user( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.remove_acs_user( @@ -51,7 +98,7 @@ seam.user_identities.remove_acs_user( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->remove_acs_user( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities remove-acs-user --user_identity_id "5c945ab5-c75e-4bcb-8e5f-9410061c401f" --acs_user_id "c0184e54-0d93-4bca-8a4e-47bbd2ee3bfe" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam user-identities remove-acs-user --user_identity_id "5c945ab5-c75e-4bcb-8e5f {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -109,7 +156,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -118,32 +165,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `acs_user_id` -Type: `string` -Required: Yes - -ID of the ACS user. - -*** - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the desired user identity. - -*** - -## Return Type - -void diff --git a/docs/api/user_identities/revoke_access_to_device.md b/docs/api/user_identities/revoke_access_to_device.md index bf09b47be..6dc47b0fe 100644 --- a/docs/api/user_identities/revoke_access_to_device.md +++ b/docs/api/user_identities/revoke_access_to_device.md @@ -1,14 +1,61 @@ # Revoke Access to a Device from a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + +Revokes access to a specified [device](../../core-concepts/devices/README.md) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). + +{% tabs %} +{% tab title="Signature" %} ``` POST /user_identities/revoke_access_to_device ⇒ void ``` +{% endtab %} +{% endtabs %} -Revokes access to a specified [device](../../core-concepts/devices/README.md) from a specified [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity). +
+ +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 + + + + + + + +
ParameterDescription
device_id String (Required) + +ID of the desired managed device. +
user_identity_id String (Required) + +ID of the desired user identity. +
+ +## Response + +void + +--- + +## Examples + +### Revoke access to a device from a user identity + +Specify the desired `user_identity_id` and `device_id`. {% tabs %} {% tab title="JavaScript" %} -#### Request +#### Code ```javascript await seam.userIdentities.revokeAccessToDevice({ @@ -17,7 +64,7 @@ await seam.userIdentities.revokeAccessToDevice({ }); ``` -#### Response +#### Output ```javascript // void @@ -25,7 +72,7 @@ await seam.userIdentities.revokeAccessToDevice({ {% endtab %} {% tab title="Python" %} -#### Request +#### Code ```python seam.user_identities.revoke_access_to_device( @@ -34,7 +81,7 @@ seam.user_identities.revoke_access_to_device( ) ``` -#### Response +#### Output ```python None @@ -42,7 +89,7 @@ None {% endtab %} {% tab title="Ruby" %} -#### Request +#### Code ```ruby seam.user_identities.revoke_access_to_device( @@ -51,7 +98,7 @@ seam.user_identities.revoke_access_to_device( ) ``` -#### Response +#### Output ```ruby nil @@ -59,7 +106,7 @@ nil {% endtab %} {% tab title="PHP" %} -#### Request +#### Code ```php user_identities->revoke_access_to_device( ); ``` -#### Response +#### Output ```php null @@ -77,13 +124,13 @@ null {% endtab %} {% tab title="Seam CLI" %} -#### Request +#### Code ```seam_cli seam user-identities revoke-access-to-device --user_identity_id "f3a328b4-dd04-4370-9000-d52b7a01b0bf" --device_id "054765c8-a2fc-4599-b486-14c19f462c45" ``` -#### Response +#### Output ```seam_cli {} @@ -91,7 +138,7 @@ seam user-identities revoke-access-to-device --user_identity_id "f3a328b4-dd04-4 {% endtab %} {% tab title="Go" %} -#### Request +#### Code ```go package main @@ -109,7 +156,7 @@ func main() { } ``` -#### Response +#### Output ```go nil @@ -118,32 +165,4 @@ nil {% endtabs %} -## Authentication Methods - -- API key -- Personal access token -
Must also include the `seam-workspace` header in the request. - -## Request Parameters - -### `device_id` -Type: `string` -Required: Yes - -ID of the desired managed device. - -*** - -### `user_identity_id` - -Type: `string` -Required: Yes - -ID of the desired user identity. - -*** - -## Return Type - -void diff --git a/docs/api/user_identities/update.md b/docs/api/user_identities/update.md index d5deb5c99..61b0566b6 100644 --- a/docs/api/user_identities/update.md +++ b/docs/api/user_identities/update.md @@ -1,64 +1,59 @@ # Update a User Identity +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) + + + +{% tabs %} +{% tab title="Signature" %} ``` PATCH /user_identities/update ⇒ void ``` +{% endtab %} +{% endtabs %} +
- -## Authentication Methods +Authentication Methods - API key - Personal access token
Must also include the `seam-workspace` header in the request. -## Request Parameters +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
-### `user_identity_id` +## Request Parameters -Type: `string` -Required: Yes + + + + + + + + + + + + +
ParameterDescription
user_identity_id String (Required) ID of the user identity. - -*** - -### `email_address` - -Type: `string` -Required: No +
email_address String Unique email address for the user identity. - -*** - -### `full_name` - -Type: `string` -Required: No - - - -*** - -### `phone_number` - -Type: `string` -Required: No +
full_name String +
phone_number String Unique phone number for the user identity in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, +15555550100). - -*** - -### `user_identity_key` - -Type: `string` -Required: No +
user_identity_key String Unique key for the user identity. +
-*** - -## Return Type +## Response void diff --git a/package-lock.json b/package-lock.json index 8d69f740a..20cdfa61d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,8 +13,8 @@ "@metalsmith/metadata": "^0.3.0", "@prettier/plugin-php": "^0.22.2", "@prettier/plugin-ruby": "^4.0.4", - "@seamapi/blueprint": "^0.37.1", - "@seamapi/types": "1.370.3", + "@seamapi/blueprint": "^0.38.0", + "@seamapi/types": "1.377.0", "change-case": "^5.4.4", "command-exists": "^1.2.9", "del": "^8.0.0", @@ -767,9 +767,9 @@ "peer": true }, "node_modules/@seamapi/blueprint": { - "version": "0.37.1", - "resolved": "https://registry.npmjs.org/@seamapi/blueprint/-/blueprint-0.37.1.tgz", - "integrity": "sha512-OSJqrWL3KzCWgNiw4gw+5Cp1PHCb+BudWFa6+7bd+RQDL/fzwC6RvlcFAp4Md3Fw2SYfxrH7uEwVTEhJYrPIjQ==", + "version": "0.38.0", + "resolved": "https://registry.npmjs.org/@seamapi/blueprint/-/blueprint-0.38.0.tgz", + "integrity": "sha512-NlmzFZgoWORyKIsrKpTUdwOwHLzyV421VsYbDEPD/s/2c4wZoQdunjLHc1qgdfqvb5602+XVFldyi6bs0ssRNA==", "license": "MIT", "dependencies": { "change-case": "^5.4.4", @@ -781,9 +781,9 @@ } }, "node_modules/@seamapi/types": { - "version": "1.370.3", - "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.370.3.tgz", - "integrity": "sha512-GrSejH90rJzuyZgWgD7T5nh+MtRt0B5ggj2oBzqCAiuitSth/EjTDJ55AzEEtvPtpDRfaKacSzYe7ME2jHyV/g==", + "version": "1.377.0", + "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.377.0.tgz", + "integrity": "sha512-EOdujTToK8AxrMn7TSL3Ju4X+3GeHB8RsrF4M8w5aIGjyOzJzPcxOMJHlhfCzB+x5A6r3VA50FIOsB8U9KmFiw==", "license": "MIT", "engines": { "node": ">=18.12.0", diff --git a/package.json b/package.json index a94e3a450..29274306b 100644 --- a/package.json +++ b/package.json @@ -33,8 +33,8 @@ "@metalsmith/metadata": "^0.3.0", "@prettier/plugin-php": "^0.22.2", "@prettier/plugin-ruby": "^4.0.4", - "@seamapi/blueprint": "^0.37.1", - "@seamapi/types": "1.370.3", + "@seamapi/blueprint": "^0.38.0", + "@seamapi/types": "1.377.0", "change-case": "^5.4.4", "command-exists": "^1.2.9", "del": "^8.0.0", diff --git a/src/data/code-sample-definitions/acs-users.yaml b/src/data/code-sample-definitions/acs-users.yaml index 77bd23cd8..c09f27b8c 100644 --- a/src/data/code-sample-definitions/acs-users.yaml +++ b/src/data/code-sample-definitions/acs-users.yaml @@ -1,6 +1,49 @@ --- - title: 'Create a new ACS user' description: 'Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management).' + request: + path: '/acs/users/create' + parameters: + acs_system_id: '123e4567-e89b-12d3-a456-426614174000' + full_name: 'Jane Doe' + email_address: 'jane@example.com' + phone_number: '+15555550100' + response: + body: + acs_user: + acs_user_id: '123e4567-e89b-12d3-a456-426614174000' + acs_system_id: '123e4567-e89b-12d3-a456-426614174000' + workspace_id: '123e4567-e89b-12d3-a456-426614174000' + created_at: '2024-04-05T07:57:05.323Z' + display_name: 'Jane Doe' + full_name: 'Jane Doe' + email_address: 'jane@example.com' + phone_number: '+15555550100' +- title: 'Create a new ACS user' + description: 'Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) with an access schedule.' + request: + path: '/acs/users/create' + parameters: + acs_system_id: '123e4567-e89b-12d3-a456-426614174000' + full_name: 'Jane Doe' + email_address: 'jane@example.com' + phone_number: '+15555550100' + access_schedule: + starts_at: '2024-11-01T15:00:00.000Z' + ends_at: '2024-11-04T11:00:00.000Z' + response: + body: + acs_user: + acs_user_id: '123e4567-e89b-12d3-a456-426614174000' + acs_system_id: '123e4567-e89b-12d3-a456-426614174000' + workspace_id: '123e4567-e89b-12d3-a456-426614174000' + created_at: '2024-04-05T07:57:05.323Z' + display_name: 'Jane Doe' + full_name: 'Jane Doe' + email_address: 'jane@example.com' + phone_number: '+15555550100' +- title: 'Create a new ACS user in an access group' + description: 'Creates a new [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management) and assigns the new user to an [access group](https://docs.seam.co/latest/capability-guides/access-systems/user-management/assigning-users-to-access-groups).' request: path: '/acs/users/create' parameters: diff --git a/src/data/paths.yaml b/src/data/paths.yaml index 4b9238aaa..f27f7831e 100644 --- a/src/data/paths.yaml +++ b/src/data/paths.yaml @@ -1,6 +1,6 @@ --- /acs: - title: Access Control Systems + title: Access Control Systems (ACS) description: Systems for managing and monitoring access to physical spaces overview: | Access control systems centralize access authorization for buildings, which means that you can use a single system to grant users access to one or more entrances. An access control system manages the following elements: @@ -80,3 +80,16 @@ title: Enrollment Automations resources: - enrollment_automation + +/access_codes: + title: Access Codes + resources: + - access_code + +/access_codes/unmanaged: + title: Unmanaged Access Code + resources: + - unmanaged_access_code + +/access_codes/simulate: + title: Access Code Simulations diff --git a/src/layouts/api-endpoint.hbs b/src/layouts/api-endpoint.hbs index 23df0a346..8997031a4 100644 --- a/src/layouts/api-endpoint.hbs +++ b/src/layouts/api-endpoint.hbs @@ -1,17 +1,23 @@ # {{title}} -``` -{{request.preferredMethod}} {{path}} ⇒ {{#if response.responseKey}}{{#if (eq response.responseType "resource_list")}}{ {{response.responseKey}}: [{{response.resourceType}}, …] }{{else}}{ {{response.responseKey}} }{{/if}}{{else}}void{{/if}} -``` +- [Request Parameters](./#request-parameters) +- [Response](./#response) +- [Examples](./#examples) {{{description}}} -{{#with primaryCodeSample}} -{{> code-sample }} +{% tabs %} +{% tab title="Signature" %} +``` +{{request.preferredMethod}} {{path}} ⇒ {{#if response.responseKey}}{{#if (eq response.responseType "resource_list")}}{ {{response.responseKey}}: [{{response.resourceType}}, …] }{{else}}{ {{response.responseKey}} }{{/if}}{{else}}void{{/if}} +``` +{% endtab %} +{% endtabs %} -{{/with}} {{#if authMethods}} -## Authentication Methods +
+ +Authentication Methods {{#each authMethods}} - {{this}} @@ -20,37 +26,79 @@ {{/if}} {{/each}} +To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication). +
{{/if}} + ## Request Parameters {{#if request.parameters.length}} + + {{#each request.parameters}} -### `{{this.name}}` - -Type: `{{this.jsonType}}` -Required: {{#if this.required}}Yes{{else}}No{{/if}} + + {{/each}} +
ParameterDescription
{{this.name}} {{this.jsonType}}{{#if this.itemFormat}} of {{this.itemFormat}}s{{/if}}{{#if this.required}} (Required){{/if}} +{{#if this.description}} {{this.description}} +{{/if}} +{{#if this.itemEnumValues}} +
-*** +Enum values +{{> enum-values enumValues=this.itemEnumValues}} +
+{{/if}} +
{{else}} None {{/if}} -## Return Type -{{#if response.resourceType}}{{#if (eq response.responseType "resource_list")}}Array<[{{response.escapedResourceType}}](./)>{{else}}[{{response.escapedResourceType}}](./){{/if}}{{else}}void{{/if}} +## Response + +{{#if response.resourceType}}{{#if (eq response.responseType "resource_list")}}Array of [{{response.escapedResourceType}}s](./){{else}}[{{response.escapedResourceType}}](./){{/if}}{{else}}void{{/if}} {{#with response.actionAttempt}} -{{> api-resource headingOffset=true}} +**`{{name}}`** +{{> api-response-resource headingOffset=true}} +{{/with}} +{{#if response.resourceType}} +{{#unless response.actionAttempt}} +{% tabs %} +{% tab title="JSON" %} +```json +{ + JSON representation of {{response.resourceType}} +} +``` +{% endtab %} +{% endtabs %} +{{/unless}} +{{/if}} +{{#if primaryCodeSample}} + +--- + +## Examples + +{{#with primaryCodeSample}} +### {{this.title}} + +{{this.description}} + +{{> code-sample }} + {{/with}} -{{#if addtionalCodeSamples.length}} -## Additional Code Samples +{{#each additionalCodeSamples}} +### {{this.title}} + +{{this.description}} -{{#each addtionalCodeSamples}} {{> code-sample }} {{/each}} {{/if}} diff --git a/src/layouts/api-namespace.hbs b/src/layouts/api-namespace.hbs index 49d72cada..a17c63491 100644 --- a/src/layouts/api-namespace.hbs +++ b/src/layouts/api-namespace.hbs @@ -8,8 +8,11 @@ description: {{description}} ## Resources +The {{title}} namespace contains the following resources: + {{#each resources}} ### [`{{name}}`]({{link}}) {{description}} +--- {{/each}} diff --git a/src/layouts/api-route.hbs b/src/layouts/api-route.hbs index e84975e6f..0d07a138d 100644 --- a/src/layouts/api-route.hbs +++ b/src/layouts/api-route.hbs @@ -3,55 +3,70 @@ {{#each resources}} {{> api-resource }} {{#if errors.length}} + ## Errors + + {{#each errors}} -### `{{name}}` - -{{description}} - ---- + + + {{/each}} +
ErrorDescription
{{name}}{{description}}
{{/if}} {{#if warnings.length}} + ## Warnings + + {{#each warnings}} -### `{{name}}` - -{{description}} - ---- + + + {{/each}} +
WarningDescription
{{name}}{{description}}
{{/if}} {{/each}} -## Endpoints - -{{#each endpoints}} -### [`{{path}}`](./{{name}}.md) - -{{description}} -{{/each}} {{#if events.length}} ---- - ## Events + + {{#each events}} -### `{{name}}` - + + {{/each}} {{/if}} +
EventDescription
{{name}} {{#if description}} {{description}} {{/if}} +
+ +Properties {{#each properties}} -{{> property-collapsible this}} +- {{> property-nested this}} {{/each}} ---- +
+
+ +## Endpoints + + + +{{#each endpoints}} + + + + + +{{/each}} +
EndpointDescription
{{path}}{{description}}
diff --git a/src/layouts/partials/api-resource.hbs b/src/layouts/partials/api-resource.hbs index 6f432d754..bf3248493 100644 --- a/src/layouts/partials/api-resource.hbs +++ b/src/layouts/partials/api-resource.hbs @@ -1,58 +1,97 @@ {{#if headingOffset}} -### `{{name}}` +### The {{name}} Object {{else}} -## `{{name}}` +## The {{name}} Object {{/if}} + +- [Properties](./#properties) +- [Errors](./#errors) +- [Warnings](./#warnings) +- [Events](./#events) +- [Endpoints](./#endpoints) + {{#if description}} {{description}} {{/if}} +{% tabs %} +{% tab title="JSON" %} +```json +{ {{#each properties}} -{{#if ../headingOffset}} -#### {{#if linkTarget}}[`{{name}}`]({{linkTarget}}){{else}}`{{name}}`{{/if}} +{{#if @last}} + {{name}}: [example value] {{else}} -### {{#if linkTarget}}[`{{name}}`]({{linkTarget}}){{else}}`{{name}}`{{/if}} + {{name}}: [example value], {{/if}} -{{#if isDeprecated}} +{{/each}} +} +``` +{% endtab %} +{% endtabs %} -{{> deprecated-warning}} +--- + +{{#if headingOffset}} +### Properties +{{else}} +## Properties {{/if}} -Format: `{{format}}` -{{#if listItemFormat}} + + +{{#each properties}} + + {{/each}} +
PropertyDescription
{{#if linkTarget}}{{name}}{{else}}{{name}}{{/if}} {{format}}{{#if listItemFormat}} of {{listItemFormat}}s{{/if}} +{{#if description}} +{{description}} -Item format: `{{listItemFormat}}` {{/if}} -{{#if description}} +{{#if isDeprecated}} +{{> deprecated-warning}} -{{description}} {{/if}} {{#if enumValues}} +
+ +Enum values -Possible enum values: {{#each enumValues}} - `{{this}}` {{/each}} +
+ {{/if}} {{#unless (eq objectProperties undefined)}} {{#if (eq objectProperties.length 0)}} This object has no properties. {{else}} +
+ +Child Properties {{#each objectProperties}} -{{> property-collapsible this}} +- {{> property-nested this}} {{/each}} +
+ {{/if}} {{/unless}} {{#if listProperties}} +
+ +Child Object Properties {{#each listProperties}} -{{> property-collapsible this}} +- {{> property-nested this}} {{/each}} +
+ {{/if}} ---- +
diff --git a/src/layouts/partials/api-response-resource.hbs b/src/layouts/partials/api-response-resource.hbs new file mode 100644 index 000000000..05d1a512d --- /dev/null +++ b/src/layouts/partials/api-response-resource.hbs @@ -0,0 +1,15 @@ +{% tabs %} +{% tab title="JSON" %} +```json +{ +{{#each properties}} +{{#if @last}} + {{name}}: [example value] +{{else}} + {{name}}: [example value], +{{/if}} +{{/each}} +} +``` +{% endtab %} +{% endtabs %} diff --git a/src/layouts/partials/code-sample.hbs b/src/layouts/partials/code-sample.hbs index 73ef267e6..5302b5f86 100644 --- a/src/layouts/partials/code-sample.hbs +++ b/src/layouts/partials/code-sample.hbs @@ -1,13 +1,13 @@ {% tabs %} {{#each this.code}} {% tab title="{{this.title}}" %} -#### Request +#### Code ```{{@key}} {{this.request}} ``` -#### Response +#### Output ```{{@key}} {{this.response}} diff --git a/src/layouts/partials/enum-values.hbs b/src/layouts/partials/enum-values.hbs new file mode 100644 index 000000000..b055f3682 --- /dev/null +++ b/src/layouts/partials/enum-values.hbs @@ -0,0 +1,4 @@ +{{#if indentationOffset}}{{indentationOffset}}{{/if}}Possible enum values: +{{#each enumValues}} +{{#if ../indentationOffset}}{{../indentationOffset}}{{/if}}- `{{this}}` +{{/each}} \ No newline at end of file diff --git a/src/layouts/partials/property-collapsible.hbs b/src/layouts/partials/property-collapsible.hbs index 7db38f980..174e0f618 100644 --- a/src/layouts/partials/property-collapsible.hbs +++ b/src/layouts/partials/property-collapsible.hbs @@ -1,5 +1,5 @@
-{{name}} Format: {{format}}{{#if listItemFormat}} Item format: {{listItemFormat}}{{/if}} +{{name}} {{format}}{{#if listItemFormat}} of {{listItemFormat}}s{{/if}} {{> property-content}} -
\ No newline at end of file + diff --git a/src/layouts/partials/property-content.hbs b/src/layouts/partials/property-content.hbs index 07866a381..7c392d42a 100644 --- a/src/layouts/partials/property-content.hbs +++ b/src/layouts/partials/property-content.hbs @@ -1,21 +1,25 @@ -{{#if isDeprecated}} - -{{> deprecated-warning}} -{{/if}} {{#if description}} {{description}} {{/if}} +{{#if isDeprecated}} + +{{> deprecated-warning}} +{{/if}} {{#if enumValues}} +
+ +Enum values: -Possible enum values: {{#each enumValues}} - `{{this}}` {{/each}} +
+ {{/if}} {{#if listProperties}} {{#each listProperties}} - {{> property-nested this}} {{/each}} -{{/if}} \ No newline at end of file +{{/if}} diff --git a/src/layouts/partials/property-nested-internal.hbs b/src/layouts/partials/property-nested-internal.hbs index 4b59f0076..c33659d37 100644 --- a/src/layouts/partials/property-nested-internal.hbs +++ b/src/layouts/partials/property-nested-internal.hbs @@ -1,15 +1,21 @@ +{{#if description}} + + {{description}} +{{/if}} {{#if isDeprecated}} {{> deprecated-warning}} {{/if}} -{{#if description}} - {{description}} -{{/if}} {{#if enumValues}} - Possible enum values: +
+ +Enum values: + {{#each enumValues}} - `{{this}}` {{/each}} -{{/if}} \ No newline at end of file +
+ +{{/if}} diff --git a/src/layouts/partials/property-nested.hbs b/src/layouts/partials/property-nested.hbs index 92689d8b6..7b4fc98e0 100644 --- a/src/layouts/partials/property-nested.hbs +++ b/src/layouts/partials/property-nested.hbs @@ -1,8 +1,8 @@ -{{name}} Format: {{format}}{{#if listItemFormat}} Item format: {{listItemFormat}}{{/if}} +{{name}} {{format}}{{#if listItemFormat}} of {{listItemFormat}}s{{/if}} {{> property-nested-internal}} {{#if listProperties}} {{#each listProperties}} - {{> property-nested this}} {{/each}} -{{/if}} \ No newline at end of file +{{/if}} diff --git a/src/lib/layout/api-endpoint.ts b/src/lib/layout/api-endpoint.ts index 36f82ac58..4f9d41e1e 100644 --- a/src/lib/layout/api-endpoint.ts +++ b/src/lib/layout/api-endpoint.ts @@ -10,6 +10,7 @@ import type { CodeSample } from 'node_modules/@seamapi/blueprint/dist/index.cjs' import { type ApiRouteResource, mapBlueprintPropertyToRouteProperty, + normalizePropertyFormatForDocs, } from './api-route.js' const supportedSdks: CodeSampleSdk[] = [ @@ -34,6 +35,8 @@ export interface ApiEndpointLayoutContext { required: boolean description: string jsonType: string + itemFormat?: string + itemEnumValues?: string[] }> } response: { @@ -45,7 +48,7 @@ export interface ApiEndpointLayoutContext { actionAttempt?: ApiRouteResource } primaryCodeSample: CodeSampleContext | null - addtionalCodeSamples: CodeSampleContext[] + additionalCodeSamples: CodeSampleContext[] } interface CodeSampleContext { @@ -105,7 +108,13 @@ export function setEndpointLayoutContext( name: param.name, required: param.isRequired, description: param.description, - jsonType: param.jsonType, + jsonType: normalizePropertyFormatForDocs(param.jsonType), + ...(param.jsonType === 'array' && { + itemFormat: normalizePropertyFormatForDocs(param.itemFormat), + ...(param.itemFormat === 'enum' && { + itemEnumValues: param.itemEnumValues.map(({ name }) => name), + }), + }), })) .sort((a, b) => { if (a.required && !b.required) return -1 @@ -153,10 +162,10 @@ export function setEndpointLayoutContext( } } - const [primaryCodeSample, ...addtionalCodeSamples] = endpoint.codeSamples + const [primaryCodeSample, ...additionalCodeSamples] = endpoint.codeSamples file.primaryCodeSample = primaryCodeSample == null ? null : mapCodeSample(primaryCodeSample) - file.addtionalCodeSamples = addtionalCodeSamples.map(mapCodeSample) + file.additionalCodeSamples = additionalCodeSamples.map(mapCodeSample) } const mapCodeSample = (sample: CodeSample): CodeSampleContext => { diff --git a/src/lib/layout/api-route.ts b/src/lib/layout/api-route.ts index d3249a699..8cb4bc49d 100644 --- a/src/lib/layout/api-route.ts +++ b/src/lib/layout/api-route.ts @@ -250,7 +250,9 @@ export const mapBlueprintPropertyToRouteProperty = ( type PropertyFormat = Property['format'] | ListProperty['itemFormat'] type ListProperty = Extract -const normalizePropertyFormatForDocs = (format: PropertyFormat): string => { +export const normalizePropertyFormatForDocs = ( + format: PropertyFormat, +): string => { const formatMap: Partial> = { id: 'UUID', discriminated_object: 'Object', @@ -289,8 +291,8 @@ function addLinkTargetsToProperties( sections: { errors: boolean; warnings: boolean }, ): void { const linkableProperties: Record = { - errors: sections.errors ? './#errors-1' : undefined, - warnings: sections.warnings ? './#warnings-1' : undefined, + errors: sections.errors ? './#errors' : undefined, + warnings: sections.warnings ? './#warnings' : undefined, } for (const prop of properties) { diff --git a/src/lib/reference.ts b/src/lib/reference.ts index b6da756fa..0ebf2e09a 100644 --- a/src/lib/reference.ts +++ b/src/lib/reference.ts @@ -56,7 +56,8 @@ export const reference = ( !route.path.startsWith('/acs') && !route.path.startsWith('/thermostats') && !route.path.startsWith('/phones') && - !route.path.startsWith('/user_identities') + !route.path.startsWith('/user_identities') && + !route.path.startsWith('/access_codes') ) { continue }