From 013fba10b8951a34218558a05eb0be442ad1ecaf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Aug 2026 06:13:01 +0000 Subject: [PATCH 1/2] feat(deps-dev): bump @seamapi/types in the seam group Bumps the seam group with 1 update: [@seamapi/types](https://github.com/seamapi/types). Updates `@seamapi/types` from 1.1001.0 to 1.1016.0 - [Release notes](https://github.com/seamapi/types/releases) - [Commits](https://github.com/seamapi/types/compare/v1.1001.0...v1.1016.0) --- updated-dependencies: - dependency-name: "@seamapi/types" dependency-version: 1.1016.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: seam ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index e8c43ab..308abf7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "@seamapi/blueprint": "^1.8.0", "@seamapi/fake-seam-connect": "2.0.4", "@seamapi/smith": "^1.1.0", - "@seamapi/types": "1.1001.0", + "@seamapi/types": "1.1016.0", "change-case": "^5.4.4", "markdown-toc": "^1.2.0", "prettier": "^3.2.5" @@ -854,9 +854,9 @@ } }, "node_modules/@seamapi/types": { - "version": "1.1001.0", - "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.1001.0.tgz", - "integrity": "sha512-pwIEqMYCdOLlIHUzzLlMq/4K6QwAM3kWXooSxNWOlPyCeWk21SvrbTN/joXwZtky504g3unLPKMbFad1mlQyfQ==", + "version": "1.1016.0", + "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.1016.0.tgz", + "integrity": "sha512-yMVKcpA8NK+PVrSxvvqEDnsBdzXJ5A0LBPclYqNynt+BPIw93ZNLDStViKEmpY7PvWRzXUhe//1il2tkhSpkYw==", "dev": true, "license": "MIT", "engines": { diff --git a/package.json b/package.json index c127bec..8255497 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@seamapi/blueprint": "^1.8.0", "@seamapi/fake-seam-connect": "2.0.4", "@seamapi/smith": "^1.1.0", - "@seamapi/types": "1.1001.0", + "@seamapi/types": "1.1016.0", "change-case": "^5.4.4", "markdown-toc": "^1.2.0", "prettier": "^3.2.5" From 00ca655960f5d4dc4f58d553abd4c646da6ed5fb Mon Sep 17 00:00:00 2001 From: Seam Bot Date: Fri, 21 Aug 2026 06:13:55 +0000 Subject: [PATCH 2/2] ci: Generate code --- lib/seam/resources/access_code.rb | 20 +++++++++++++++++ lib/seam/resources/access_grant.rb | 3 +++ lib/seam/resources/access_method.rb | 3 +++ lib/seam/resources/action_attempt.rb | 3 +++ lib/seam/resources/connect_webview.rb | 2 +- lib/seam/resources/connected_account.rb | 2 +- lib/seam/resources/device.rb | 2 +- lib/seam/resources/unmanaged_access_code.rb | 20 +++++++++++++++++ lib/seam/resources/unmanaged_access_method.rb | 3 +++ lib/seam/resources/unmanaged_device.rb | 2 +- lib/seam/resources/unmanaged_user_identity.rb | 6 +++++ lib/seam/resources/user_identity.rb | 6 +++++ lib/seam/routes/acs_credentials.rb | 8 +++---- lib/seam/routes/acs_encoders.rb | 6 ++--- lib/seam/routes/connect_webviews.rb | 4 ++-- lib/seam/routes/connected_accounts.rb | 4 ++-- lib/seam/routes/devices.rb | 4 ++-- lib/seam/routes/devices_unmanaged.rb | 2 +- lib/seam/routes/events.rb | 2 +- lib/seam/routes/user_identities.rb | 22 +++++++++++++++++++ 20 files changed, 105 insertions(+), 19 deletions(-) diff --git a/lib/seam/resources/access_code.rb b/lib/seam/resources/access_code.rb index 1b17d67..9072a87 100644 --- a/lib/seam/resources/access_code.rb +++ b/lib/seam/resources/access_code.rb @@ -194,6 +194,24 @@ class AccessCodeInactive < Errors date_accessor :created_at end + # The code cannot be set on the device because it violates the device's code constraints (for example, its length, digits, or a too-simple value). The code will not be retried until you change it. See the device's `code_constraints` and `supported_code_lengths`. + class CodeConstraintsViolated < Errors + # Unique identifier of the type of error. Enables quick recognition and categorization of the issue. + # @return [String] + # Known values: + # - `code_constraints_violated` + attr_accessor :error_code + # Indicates that this is an access code error. + # @return [TrueClass] + attr_accessor :is_access_code_error + # Detailed description of the error. Provides insights into the issue and potentially how to rectify it. + # @return [String] + attr_accessor :message + # Date and time at which Seam created the error. + # @return [Time, nil] + date_accessor :created_at + end + # Indicates that the account is disconnected. class AccountDisconnected < Errors # Unique identifier of the type of error. Enables quick recognition and categorization of the issue. @@ -471,6 +489,7 @@ class BridgeDisconnected < Errors # - `no_space_for_access_code_on_device` # - `conflicting_external_modification` # - `access_code_inactive` + # - `code_constraints_violated` # - `account_disconnected` # - `salto_ks_subscription_limit_exceeded` # - `insufficient_permissions` @@ -501,6 +520,7 @@ class BridgeDisconnected < Errors "no_space_for_access_code_on_device" => NoSpaceForAccessCodeOnDevice, "conflicting_external_modification" => ConflictingExternalModification, "access_code_inactive" => AccessCodeInactive, + "code_constraints_violated" => CodeConstraintsViolated, "account_disconnected" => AccountDisconnected, "salto_ks_subscription_limit_exceeded" => SaltoKsSubscriptionLimitExceeded, "insufficient_permissions" => InsufficientPermissions, diff --git a/lib/seam/resources/access_grant.rb b/lib/seam/resources/access_grant.rb index 616827e..b0684bd 100644 --- a/lib/seam/resources/access_grant.rb +++ b/lib/seam/resources/access_grant.rb @@ -320,6 +320,9 @@ class DeviceTimeConstraintsViolated < Warnings # Display name of the Access Grant. # @return [String] attr_accessor :display_name + # Human-readable sentence answering whether the user can currently get in, for example `Awaiting encoding` on an access method or `Upcoming` here. For display only. The wording is not stable and is not an enumeration — it may change at any time, so never compare against or branch on it. To make decisions, read `starts_at`, `ends_at`, `errors`, and the access methods' own fields. + # @return [String] + attr_accessor :display_status # Instant Key URL. Only returned if the Access Grant has a single mobile_key access_method. # @return [String, nil] attr_accessor :instant_key_url diff --git a/lib/seam/resources/access_method.rb b/lib/seam/resources/access_method.rb index 4cef0f9..ae3d79e 100644 --- a/lib/seam/resources/access_method.rb +++ b/lib/seam/resources/access_method.rb @@ -189,6 +189,9 @@ class DelayInIssuing < Warnings # Display name of the access method. # @return [String] attr_accessor :display_name + # Human-readable sentence describing where the access method sits in its relationship with the device or access system, for example `Awaiting encoding`. For display only. The wording is not stable and is not an enumeration — it may change at any time, so never compare against or branch on it. To make decisions, read `is_issued`, `errors`, and `pending_mutations`. + # @return [String] + attr_accessor :display_status # URL of the Instant Key for mobile key access methods. # @return [String, nil] attr_accessor :instant_key_url diff --git a/lib/seam/resources/action_attempt.rb b/lib/seam/resources/action_attempt.rb index 6f526cd..3abf3e8 100644 --- a/lib/seam/resources/action_attempt.rb +++ b/lib/seam/resources/action_attempt.rb @@ -1017,6 +1017,9 @@ class Warnings < BaseResource # Display name of the access method. # @return [String] attr_accessor :display_name + # Human-readable sentence describing where the access method sits in its relationship with the device or access system, for example `Awaiting encoding`. For display only. The wording is not stable and is not an enumeration — it may change at any time, so never compare against or branch on it. To make decisions, read `is_issued`, `errors`, and `pending_mutations`. + # @return [String] + attr_accessor :display_status # URL of the Instant Key for mobile key access methods. # @return [String, nil] attr_accessor :instant_key_url diff --git a/lib/seam/resources/connect_webview.rb b/lib/seam/resources/connect_webview.rb index 9133e5e..9a2e448 100644 --- a/lib/seam/resources/connect_webview.rb +++ b/lib/seam/resources/connect_webview.rb @@ -38,7 +38,7 @@ class ConnectWebview < BaseResource # ID of the connected account associated with the Connect Webview. # @return [String, nil] attr_accessor :connected_account_id - # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. + # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. Keys set to `null` or to an empty string are omitted. # @return [Hash{String => String, Boolean}] attr_accessor :custom_metadata # URL to which the Connect Webview should redirect when an unexpected error occurs. diff --git a/lib/seam/resources/connected_account.rb b/lib/seam/resources/connected_account.rb index e27b758..b4e45e7 100644 --- a/lib/seam/resources/connected_account.rb +++ b/lib/seam/resources/connected_account.rb @@ -368,7 +368,7 @@ class DormakabaSitesUnapproved < Warnings # ID of the connected account. # @return [String] attr_accessor :connected_account_id - # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. + # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. Keys set to `null` or to an empty string are omitted. # @return [Hash{String => String, Boolean}] attr_accessor :custom_metadata # Your unique key for the customer associated with this connected account. diff --git a/lib/seam/resources/device.rb b/lib/seam/resources/device.rb index 70431f0..a8d29a7 100644 --- a/lib/seam/resources/device.rb +++ b/lib/seam/resources/device.rb @@ -2654,7 +2654,7 @@ class MaxAccessCodesReached < Warnings # Unique identifier for the account associated with the device. # @return [String] attr_accessor :connected_account_id - # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. + # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. Keys set to `null` or to an empty string are omitted. # @return [Hash{String => String, Boolean}] attr_accessor :custom_metadata # ID of the device. diff --git a/lib/seam/resources/unmanaged_access_code.rb b/lib/seam/resources/unmanaged_access_code.rb index 9fd2051..3582159 100644 --- a/lib/seam/resources/unmanaged_access_code.rb +++ b/lib/seam/resources/unmanaged_access_code.rb @@ -196,6 +196,24 @@ class AccessCodeInactive < Errors date_accessor :created_at end + # The code cannot be set on the device because it violates the device's code constraints (for example, its length, digits, or a too-simple value). The code will not be retried until you change it. See the device's `code_constraints` and `supported_code_lengths`. + class CodeConstraintsViolated < Errors + # Unique identifier of the type of error. Enables quick recognition and categorization of the issue. + # @return [String] + # Known values: + # - `code_constraints_violated` + attr_accessor :error_code + # Indicates that this is an access code error. + # @return [TrueClass] + attr_accessor :is_access_code_error + # Detailed description of the error. Provides insights into the issue and potentially how to rectify it. + # @return [String] + attr_accessor :message + # Date and time at which Seam created the error. + # @return [Time, nil] + date_accessor :created_at + end + # Indicates that the account is disconnected. class AccountDisconnected < Errors # Unique identifier of the type of error. Enables quick recognition and categorization of the issue. @@ -473,6 +491,7 @@ class BridgeDisconnected < Errors # - `no_space_for_access_code_on_device` # - `conflicting_external_modification` # - `access_code_inactive` + # - `code_constraints_violated` # - `account_disconnected` # - `salto_ks_subscription_limit_exceeded` # - `insufficient_permissions` @@ -503,6 +522,7 @@ class BridgeDisconnected < Errors "no_space_for_access_code_on_device" => NoSpaceForAccessCodeOnDevice, "conflicting_external_modification" => ConflictingExternalModification, "access_code_inactive" => AccessCodeInactive, + "code_constraints_violated" => CodeConstraintsViolated, "account_disconnected" => AccountDisconnected, "salto_ks_subscription_limit_exceeded" => SaltoKsSubscriptionLimitExceeded, "insufficient_permissions" => InsufficientPermissions, diff --git a/lib/seam/resources/unmanaged_access_method.rb b/lib/seam/resources/unmanaged_access_method.rb index 714c31b..5f7a18a 100644 --- a/lib/seam/resources/unmanaged_access_method.rb +++ b/lib/seam/resources/unmanaged_access_method.rb @@ -183,6 +183,9 @@ class DelayInIssuing < Warnings # Display name of the access method. # @return [String] attr_accessor :display_name + # Human-readable sentence describing where the access method sits in its relationship with the device or access system, for example `Awaiting encoding`. For display only. The wording is not stable and is not an enumeration — it may change at any time, so never compare against or branch on it. To make decisions, read `is_issued`, `errors`, and `pending_mutations`. + # @return [String] + attr_accessor :display_status # Indicates whether an existing card credential must be assigned to this access method before it can be issued. Only applies to card-mode access methods on systems that support credential assignment. # @return [Boolean, nil] attr_accessor :is_assignment_required diff --git a/lib/seam/resources/unmanaged_device.rb b/lib/seam/resources/unmanaged_device.rb index 2b109b1..ada8d79 100644 --- a/lib/seam/resources/unmanaged_device.rb +++ b/lib/seam/resources/unmanaged_device.rb @@ -990,7 +990,7 @@ class MaxAccessCodesReached < Warnings # Unique identifier for the account associated with the device. # @return [String] attr_accessor :connected_account_id - # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. + # Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. Keys set to `null` or to an empty string are omitted. # @return [Hash{String => String, Boolean}] attr_accessor :custom_metadata # ID of the device. diff --git a/lib/seam/resources/unmanaged_user_identity.rb b/lib/seam/resources/unmanaged_user_identity.rb index cdce717..29d8d4e 100644 --- a/lib/seam/resources/unmanaged_user_identity.rb +++ b/lib/seam/resources/unmanaged_user_identity.rb @@ -119,6 +119,12 @@ class AcsUserProfileDoesNotMatchUserIdentity < Warnings # Full name of the user associated with the user identity. # @return [String, nil] attr_accessor :full_name + # IDs that other user identities used to have before they were merged into this user identity. Looking up any of them returns this user identity. + # @return [Array] + attr_accessor :merged_user_identity_ids + # Keys that other user identities used to have before they were merged into this user identity. Looking up any of them returns this user identity. + # @return [Array] + attr_accessor :merged_user_identity_keys # Unique phone number for the user identity in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, +15555550100). # @return [String, nil] attr_accessor :phone_number diff --git a/lib/seam/resources/user_identity.rb b/lib/seam/resources/user_identity.rb index cd69919..0713553 100644 --- a/lib/seam/resources/user_identity.rb +++ b/lib/seam/resources/user_identity.rb @@ -119,6 +119,12 @@ class AcsUserProfileDoesNotMatchUserIdentity < Warnings # Full name of the user associated with the user identity. # @return [String, nil] attr_accessor :full_name + # IDs that other user identities used to have before they were merged into this user identity. Looking up any of them returns this user identity. + # @return [Array] + attr_accessor :merged_user_identity_ids + # Keys that other user identities used to have before they were merged into this user identity. Looking up any of them returns this user identity. + # @return [Array] + attr_accessor :merged_user_identity_keys # Unique phone number for the user identity in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, +15555550100). # @return [String, nil] attr_accessor :phone_number diff --git a/lib/seam/routes/acs_credentials.rb b/lib/seam/routes/acs_credentials.rb index 5c70928..3047aeb 100644 --- a/lib/seam/routes/acs_credentials.rb +++ b/lib/seam/routes/acs_credentials.rb @@ -59,17 +59,17 @@ def get(acs_credential_id:) end # Returns a list of all [credentials](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). - # @param acs_user_id [String, nil] ID of the access system user for which you want to retrieve all credentials. # @param acs_system_id [String, nil] ID of the access system for which you want to retrieve all credentials. - # @param user_identity_id [String, nil] ID of the user identity for which you want to retrieve all credentials. + # @param acs_user_id [String, nil] ID of the access system user for which you want to retrieve all credentials. # @param created_before [Time, nil] 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. # @param is_multi_phone_sync_credential [Boolean, nil] Indicates whether you want to retrieve only multi-phone sync credentials or non-multi-phone sync credentials. # @param limit [Float, nil] Number of credentials to return. # @param page_cursor [String, Seam::Null, nil] Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. # @param search [String, nil] String for which to search. Filters returned credentials to include all records that satisfy a partial match using `display_name`, `code`, `card_number`, `acs_user_id` or `acs_credential_id`. + # @param user_identity_id [String, nil] ID of the user identity for which you want to retrieve all credentials. # @return [Seam::Resources::AcsCredential] OK - def list(acs_user_id: nil, acs_system_id: nil, user_identity_id: nil, created_before: nil, is_multi_phone_sync_credential: nil, limit: nil, page_cursor: nil, search: nil) - res = @client.get("/acs/credentials/list", {acs_user_id: acs_user_id, acs_system_id: acs_system_id, user_identity_id: user_identity_id, created_before: created_before, is_multi_phone_sync_credential: is_multi_phone_sync_credential, limit: limit, page_cursor: page_cursor, search: search}.compact) + def list(acs_system_id: nil, acs_user_id: nil, created_before: nil, is_multi_phone_sync_credential: nil, limit: nil, page_cursor: nil, search: nil, user_identity_id: nil) + res = @client.get("/acs/credentials/list", {acs_system_id: acs_system_id, acs_user_id: acs_user_id, created_before: created_before, is_multi_phone_sync_credential: is_multi_phone_sync_credential, limit: limit, page_cursor: page_cursor, search: search, user_identity_id: user_identity_id}.compact) Seam::Resources::AcsCredential.load_from_response(res.body["acs_credentials"]) end diff --git a/lib/seam/routes/acs_encoders.rb b/lib/seam/routes/acs_encoders.rb index 00ecaad..c97d8a6 100644 --- a/lib/seam/routes/acs_encoders.rb +++ b/lib/seam/routes/acs_encoders.rb @@ -37,14 +37,14 @@ def get(acs_encoder_id:) end # Returns a list of all [encoders](https://docs.seam.co/low-level-apis/access-systems/working-with-card-encoders-and-scanners). + # @param acs_encoder_ids [Array, nil] IDs of the encoders that you want to retrieve. # @param acs_system_id [String, nil] ID of the access system for which you want to retrieve all encoders. # @param acs_system_ids [Array, nil] IDs of the access systems for which you want to retrieve all encoders. - # @param acs_encoder_ids [Array, nil] IDs of the encoders that you want to retrieve. # @param limit [Float, nil] Number of encoders to return. # @param page_cursor [String, Seam::Null, nil] Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. # @return [Seam::Resources::AcsEncoder] OK - def list(acs_system_id: nil, acs_system_ids: nil, acs_encoder_ids: nil, limit: nil, page_cursor: nil) - res = @client.get("/acs/encoders/list", {acs_system_id: acs_system_id, acs_system_ids: acs_system_ids, acs_encoder_ids: acs_encoder_ids, limit: limit, page_cursor: page_cursor}.compact) + def list(acs_encoder_ids: nil, acs_system_id: nil, acs_system_ids: nil, limit: nil, page_cursor: nil) + res = @client.get("/acs/encoders/list", {acs_encoder_ids: acs_encoder_ids, acs_system_id: acs_system_id, acs_system_ids: acs_system_ids, limit: limit, page_cursor: page_cursor}.compact) Seam::Resources::AcsEncoder.load_from_response(res.body["acs_encoders"]) end diff --git a/lib/seam/routes/connect_webviews.rb b/lib/seam/routes/connect_webviews.rb index 3f22f0c..1676332 100644 --- a/lib/seam/routes/connect_webviews.rb +++ b/lib/seam/routes/connect_webviews.rb @@ -18,7 +18,7 @@ def initialize(client:, defaults:) # @param accepted_capabilities [Array, nil] List of accepted device capabilities that restrict the types of devices that can be connected through the Connect Webview. If not provided, defaults will be determined based on the accepted providers. # @param accepted_providers [Array, nil] Accepted device provider keys as an alternative to `provider_category`. Use this parameter to specify accepted providers explicitly. See [Customize the Brands to Display in Your Connect Webviews](https://docs.seam.co/core-concepts/connect-webviews/customizing-connect-webviews#customize-the-brands-to-display-in-your-connect-webviews). To list all provider keys, use [`/devices/list_device_providers`](https://docs.seam.co/api/devices/list_device_providers) with no filters. # @param automatically_manage_new_devices [Boolean, nil] Indicates whether newly-added devices should appear as [managed devices](https://docs.seam.co/core-concepts/devices/managed-and-unmanaged-devices). See also: [Customize the Behavior Settings of Your Connect Webviews](https://docs.seam.co/core-concepts/connect-webviews/customizing-connect-webviews#customize-the-behavior-settings-of-your-connect-webviews). - # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the Connect Webview. Supports up to 50 JSON key:value pairs. [Adding custom metadata to a Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview) enables you to store custom information, like customer details or internal IDs from your application. The custom metadata is then transferred to any [connected accounts](https://docs.seam.co/core-concepts/connected-accounts) that were connected using the Connect Webview, making it easy to find and filter these resources in your [workspace](https://docs.seam.co/core-concepts/workspaces). You can also [filter Connect Webviews by custom metadata](https://docs.seam.co/core-concepts/connect-webviews/filtering-connect-webviews-by-custom-metadata). + # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the Connect Webview. Supports up to 50 JSON key:value pairs, with key names up to 40 characters long that cannot contain a period (.). [Adding custom metadata to a Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview) enables you to store custom information, like customer details or internal IDs from your application. The custom metadata is then transferred to any [connected accounts](https://docs.seam.co/core-concepts/connected-accounts) that were connected using the Connect Webview, making it easy to find and filter these resources in your [workspace](https://docs.seam.co/core-concepts/workspaces). You can also [filter Connect Webviews by custom metadata](https://docs.seam.co/core-concepts/connect-webviews/filtering-connect-webviews-by-custom-metadata). Set a key to `null` or to an empty string to remove that key from the custom metadata. # @param custom_redirect_failure_url [String, nil] Alternative URL that you want to redirect the user to on an error. If you do not set this parameter, the Connect Webview falls back to the `custom_redirect_url`. # @param custom_redirect_url [String, nil] URL that you want to redirect the user to after the provider login is complete. # @param customer_key [String, nil] Associate the Connect Webview, the connected account, and all resources under the connected account with a customer. If the connected account already exists, it will be associated with the customer. If the connected account already exists, but is already associated with a customer, the Connect Webview will show an error. @@ -55,7 +55,7 @@ def get(connect_webview_id:) end # Returns a list of all [Connect Webviews](https://docs.seam.co/core-concepts/connect-webviews). - # @param custom_metadata_has [Hash{String => String, Boolean}, nil] Custom metadata pairs by which you want to [filter Connect Webviews](https://docs.seam.co/core-concepts/connect-webviews/filtering-connect-webviews-by-custom-metadata). Returns Connect Webviews with `custom_metadata` that contains all of the provided key:value pairs. + # @param custom_metadata_has [Hash{String => String, Boolean}, nil] Custom metadata pairs by which you want to [filter Connect Webviews](https://docs.seam.co/core-concepts/connect-webviews/filtering-connect-webviews-by-custom-metadata). Returns Connect Webviews with `custom_metadata` that contains all of the provided key:value pairs. Key names cannot contain a period (.). Specify an empty string to match a key that is unset or set to an empty string. # @param customer_key [String, nil] Customer key for which you want to list connect webviews. # @param limit [Float, nil] Maximum number of records to return per page. # @param page_cursor [String, Seam::Null, nil] Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. diff --git a/lib/seam/routes/connected_accounts.rb b/lib/seam/routes/connected_accounts.rb index ccfe407..ad34031 100644 --- a/lib/seam/routes/connected_accounts.rb +++ b/lib/seam/routes/connected_accounts.rb @@ -40,7 +40,7 @@ def get(connected_account_id: nil, email: nil) end # Returns a list of all [connected accounts](https://docs.seam.co/core-concepts/connected-accounts). - # @param custom_metadata_has [Hash{String => String, Boolean}, nil] Custom metadata pairs by which you want to filter connected accounts. Returns connected accounts with `custom_metadata` that contains all of the provided key:value pairs. + # @param custom_metadata_has [Hash{String => String, Boolean}, nil] Custom metadata pairs by which you want to filter connected accounts. Returns connected accounts with `custom_metadata` that contains all of the provided key:value pairs. Key names cannot contain a period (.). Specify an empty string to match a key that is unset or set to an empty string. # @param customer_key [String, nil] Customer key by which you want to filter connected accounts. # @param limit [Integer, nil] Maximum number of records to return per page. # @param page_cursor [String, Seam::Null, nil] Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. @@ -67,7 +67,7 @@ def sync(connected_account_id:) # @param connected_account_id [String] ID of the connected account that you want to update. # @param accepted_capabilities [Array, nil] List of accepted device capabilities that restrict the types of devices that can be connected through this connected account. Valid values are `lock`, `thermostat`, `noise_sensor`, and `access_control`. # @param automatically_manage_new_devices [Boolean, nil] Indicates whether newly-added devices should appear as [managed devices](https://docs.seam.co/core-concepts/devices/managed-and-unmanaged-devices). - # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the connected account. Entirely replaces the existing custom metadata object. If a new Connect Webview contains custom metadata and is used to reconnect a connected account, the custom metadata from the Connect Webview will entirely replace the entire custom metadata object on the connected account. Supports up to 50 JSON key:value pairs. [Adding custom metadata to a connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account) enables you to store custom information, like customer details or internal IDs from your application. Then, you can [filter connected accounts by the desired metadata](https://docs.seam.co/core-concepts/connected-accounts/filtering-connected-accounts-by-custom-metadata). + # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the connected account. Entirely replaces the existing custom metadata object. If a new Connect Webview contains custom metadata and is used to reconnect a connected account, the custom metadata from the Connect Webview will entirely replace the entire custom metadata object on the connected account. Supports up to 50 JSON key:value pairs, with key names up to 40 characters long that cannot contain a period (.). [Adding custom metadata to a connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account) enables you to store custom information, like customer details or internal IDs from your application. Then, you can [filter connected accounts by the desired metadata](https://docs.seam.co/core-concepts/connected-accounts/filtering-connected-accounts-by-custom-metadata). Set a key to `null` or to an empty string to remove that key from the custom metadata. # @param customer_key [String, nil] The customer key to associate with this connected account. If provided, the connected account and all resources under the connected account will be moved to this customer. May only be provided if the connected account is not already associated with a customer. # @param display_name [String, nil] Human-readable name for the connected account, shown in the dashboard. For example, `Booking from Airbnb House 1`. # @return [nil] OK diff --git a/lib/seam/routes/devices.rb b/lib/seam/routes/devices.rb index 9248a15..bbe5204 100644 --- a/lib/seam/routes/devices.rb +++ b/lib/seam/routes/devices.rb @@ -37,7 +37,7 @@ def get(device_id: nil, name: nil) # @param connected_account_id [String, nil] ID of the connected account for which you want to list devices. # @param connected_account_ids [Array, nil] Array of IDs of the connected accounts for which you want to list devices. # @param created_before [Time, nil] Timestamp by which to limit returned devices. Returns devices created before this timestamp. - # @param custom_metadata_has [Hash{String => String, Boolean}, nil] Set of key:value [custom metadata](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device) pairs for which you want to list devices. + # @param custom_metadata_has [Hash{String => String, Boolean}, nil] Set of key:value [custom metadata](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device) pairs for which you want to list devices. Key names cannot contain a period (.). Specify an empty string to match a key that is unset or set to an empty string. # @param customer_key [String, nil] Customer key for which you want to list devices. # @param device_ids [Array, nil] Array of device IDs for which you want to list devices. # @param device_type [String, nil] Device type for which you want to list devices. @@ -84,7 +84,7 @@ def report_provider_metadata(devices:) # You can add or change [custom metadata](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device) for a device, change the device's name, or [convert a managed device to unmanaged](https://docs.seam.co/core-concepts/devices/managed-and-unmanaged-devices). # @param device_id [String] ID of the device that you want to update. # @param backup_access_code_pool_enabled [Boolean, nil] Indicates whether the device's [backup access code pool](https://docs.seam.co/low-level-apis/smart-locks/access-codes/backup-access-codes) is enabled. Set to `false` to disable the pool: Seam stops refilling it and removes any backup codes that have not yet been pulled into active use. - # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the device. Supports up to 50 JSON key:value pairs. [Adding custom metadata to a device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device) enables you to store custom information, like customer details or internal IDs from your application. Then, you can [filter devices by the desired metadata](https://docs.seam.co/core-concepts/devices/filtering-devices-by-custom-metadata). + # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the device. Supports up to 50 JSON key:value pairs, with key names up to 40 characters long that cannot contain a period (.). [Adding custom metadata to a device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device) enables you to store custom information, like customer details or internal IDs from your application. Then, you can [filter devices by the desired metadata](https://docs.seam.co/core-concepts/devices/filtering-devices-by-custom-metadata). Set a key to `null` or to an empty string to remove that key from the custom metadata. # @param is_managed [Boolean, nil] Indicates whether the device is managed. To unmanage a device, set `is_managed` to `false`. # @param name [String, Seam::Null, nil] Name for the device. # @param properties [Hash, nil] diff --git a/lib/seam/routes/devices_unmanaged.rb b/lib/seam/routes/devices_unmanaged.rb index a960905..4c8186b 100644 --- a/lib/seam/routes/devices_unmanaged.rb +++ b/lib/seam/routes/devices_unmanaged.rb @@ -52,7 +52,7 @@ def list(connect_webview_id: nil, connected_account_id: nil, connected_account_i # # An unmanaged device has a limited set of visible properties and a subset of supported events. You cannot control an unmanaged device. Any [access codes](https://docs.seam.co/low-level-apis/smart-locks/access-codes/migrating-existing-access-codes) on an unmanaged device are unmanaged. To control an unmanaged device with Seam, [convert it to a managed device](https://docs.seam.co/core-concepts/devices/managed-and-unmanaged-devices#convert-an-unmanaged-device-to-managed). # @param device_id [String] ID of the unmanaged device that you want to update. - # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the device. Supports up to 50 JSON key:value pairs. + # @param custom_metadata [Hash{String => String, Boolean}, nil] Custom metadata that you want to associate with the device. Supports up to 50 JSON key:value pairs, with key names up to 40 characters long that cannot contain a period (.). Set a key to `null` or to an empty string to remove that key from the custom metadata. # @param is_managed [TrueClass, nil] Indicates whether the device is managed. Set this parameter to `true` to convert an unmanaged device to managed. # @return [nil] OK def update(device_id:, custom_metadata: nil, is_managed: nil) diff --git a/lib/seam/routes/events.rb b/lib/seam/routes/events.rb index 714b4f2..dc0486a 100644 --- a/lib/seam/routes/events.rb +++ b/lib/seam/routes/events.rb @@ -37,7 +37,7 @@ def get(event_id: nil, device_id: nil, event_type: nil) # @param acs_system_id [String, nil] ID of the access system for which you want to list events. # @param acs_system_ids [Array, nil] IDs of the access systems for which you want to list events. # @param acs_user_id [String, nil] ID of the ACS user for which you want to list events. - # @param between [Array