Module: Seam
- Defined in:
- lib/seam/strict_url_search_params_serializer.rb,
lib/seam.rb,
lib/seam/auth.rb,
lib/seam/http.rb,
lib/seam/null.rb,
lib/seam/token.rb,
lib/seam/options.rb,
lib/seam/request.rb,
lib/seam/version.rb,
lib/seam/webhook.rb,
lib/seam/defaults.rb,
lib/seam/paginator.rb,
lib/seam/routes/acs.rb,
lib/seam/routes/locks.rb,
lib/seam/base_resource.rb,
lib/seam/parse_options.rb,
lib/seam/routes/events.rb,
lib/seam/routes/phones.rb,
lib/seam/routes/routes.rb,
lib/seam/routes/spaces.rb,
lib/seam/routes/devices.rb,
lib/seam/resources/batch.rb,
lib/seam/resources/event.rb,
lib/seam/resources/phone.rb,
lib/seam/resources/space.rb,
lib/seam/routes/webhooks.rb,
lib/seam/resources/device.rb,
lib/seam/routes/acs_users.rb,
lib/seam/routes/customers.rb,
lib/seam/resources/webhook.rb,
lib/seam/routes/workspaces.rb,
lib/seam/url_search_params.rb,
lib/seam/deep_hash_accessor.rb,
lib/seam/resources/acs_user.rb,
lib/seam/routes/acs_systems.rb,
lib/seam/routes/thermostats.rb,
lib/seam/resources/workspace.rb,
lib/seam/routes/access_codes.rb,
lib/seam/routes/acs_encoders.rb,
lib/seam/routes/instant_keys.rb,
lib/seam/resources/acs_system.rb,
lib/seam/resources/pagination.rb,
lib/seam/routes/access_grants.rb,
lib/seam/routes/acs_entrances.rb,
lib/seam/routes/noise_sensors.rb,
lib/seam/http_single_workspace.rb,
lib/seam/resources/access_code.rb,
lib/seam/resources/acs_encoder.rb,
lib/seam/resources/instant_key.rb,
lib/seam/routes/access_methods.rb,
lib/seam/routes/locks_simulate.rb,
lib/seam/http_without_workspace.rb,
lib/seam/resources/access_grant.rb,
lib/seam/resources/acs_entrance.rb,
lib/seam/routes/acs_credentials.rb,
lib/seam/routes/action_attempts.rb,
lib/seam/routes/client_sessions.rb,
lib/seam/routes/phones_simulate.rb,
lib/seam/routes/user_identities.rb,
lib/seam/action_attempt_resolver.rb,
lib/seam/resources/access_method.rb,
lib/seam/resources/user_identity.rb,
lib/seam/routes/connect_webviews.rb,
lib/seam/routes/devices_simulate.rb,
lib/seam/wait_for_action_attempt.rb,
lib/seam/resources/acs_credential.rb,
lib/seam/resources/action_attempt.rb,
lib/seam/resources/client_session.rb,
lib/seam/routes/acs_access_groups.rb,
lib/seam/routes/devices_unmanaged.rb,
lib/seam/resources/connect_webview.rb,
lib/seam/resources/customer_portal.rb,
lib/seam/resources/device_provider.rb,
lib/seam/resources/noise_threshold.rb,
lib/seam/routes/connected_accounts.rb,
lib/seam/resources/acs_access_group.rb,
lib/seam/resources/unmanaged_device.rb,
lib/seam/resources/connected_account.rb,
lib/seam/routes/thermostats_simulate.rb,
lib/seam/routes/access_codes_simulate.rb,
lib/seam/routes/acs_encoders_simulate.rb,
lib/seam/routes/thermostats_schedules.rb,
lib/seam/url_search_params_serializer.rb,
lib/seam/resources/thermostat_schedule.rb,
lib/seam/routes/access_codes_unmanaged.rb,
lib/seam/routes/noise_sensors_simulate.rb,
lib/seam/routes/access_grants_unmanaged.rb,
lib/seam/resources/unmanaged_access_code.rb,
lib/seam/routes/access_methods_unmanaged.rb,
lib/seam/resources/unmanaged_access_grant.rb,
lib/seam/routes/user_identities_unmanaged.rb,
lib/seam/resources/unmanaged_access_method.rb,
lib/seam/resources/unmanaged_user_identity.rb,
lib/seam/routes/thermostats_daily_programs.rb,
lib/seam/resources/thermostat_daily_program.rb,
lib/seam/routes/connected_accounts_simulate.rb,
lib/seam/routes/noise_sensors_noise_thresholds.rb
Overview
Strict serialization, used by the SDK itself: _strict=true is added to any non-empty query so the Seam API uses strict, schema-aware parsing.
Defined Under Namespace
Modules: Clients, Http, Resources, Routes, UrlSearchParamsSerializer Classes: ActionAttemptError, ActionAttemptFailedError, ActionAttemptResolver, ActionAttemptTimeoutError, DeepHashAccessor, Null, Pagination, PaginationContext, PaginationMiddleware, Paginator, UnserializableParamError, UrlSearchParams, Webhook
Constant Summary collapse
- NULL =
Sentinel for an explicit JSON null:
nilomits a parameter,Seam::NULLunsets its stored value. Only for parameters the API documents as nullable. Null.instance
- VERSION =
"2.141.1"- WebhookVerificationError =
Svix::WebhookVerificationError
- DEFAULT_ENDPOINT =
"https://connect.getseam.com"- DEFAULT_TIMEOUT =
30- THREAD_CONTEXT_KEY =
:seam_pagination_context
Class Method Summary collapse
- .from_api_key(api_key, endpoint: nil, wait_for_action_attempt: true, timeout: nil) ⇒ Object
- .from_personal_access_token(personal_access_token, workspace_id, endpoint: nil, wait_for_action_attempt: true, timeout: nil) ⇒ Object
- .new(**args) ⇒ Object
- .replace_null(value) ⇒ Object
-
.serialize_url_search_params(params) ⇒ String
The query string, without a leading
?. -
.update_url_search_params(search_params, params) ⇒ nil
Serializes parameters into an existing UrlSearchParams collection, preserving pairs it does not overwrite.
Class Method Details
.from_api_key(api_key, endpoint: nil, wait_for_action_attempt: true, timeout: nil) ⇒ Object
16 17 18 19 |
# File 'lib/seam.rb', line 16 def self.from_api_key(api_key, endpoint: nil, wait_for_action_attempt: true, timeout: nil) Seam::Http.from_api_key(api_key, endpoint: endpoint, wait_for_action_attempt: wait_for_action_attempt, timeout: timeout) end |
.from_personal_access_token(personal_access_token, workspace_id, endpoint: nil, wait_for_action_attempt: true, timeout: nil) ⇒ Object
21 22 23 |
# File 'lib/seam.rb', line 21 def self.from_personal_access_token(personal_access_token, workspace_id, endpoint: nil, wait_for_action_attempt: true, timeout: nil) Seam::Http.from_personal_access_token(personal_access_token, workspace_id, endpoint: endpoint, wait_for_action_attempt: wait_for_action_attempt, timeout: timeout) end |
.new(**args) ⇒ Object
12 13 14 |
# File 'lib/seam.rb', line 12 def self.new(**args) Seam::Http.new(**args) end |
.replace_null(value) ⇒ Object
18 19 20 21 22 23 24 25 |
# File 'lib/seam/url_search_params_serializer.rb', line 18 def self.replace_null(value) case value when Seam::Null then nil when Hash then value.transform_values { |v| replace_null(v) } when Array then value.map { |v| replace_null(v) } else value end end |
.serialize_url_search_params(params) ⇒ String
Returns The query string, without a leading ?.
9 10 11 |
# File 'lib/seam/strict_url_search_params_serializer.rb', line 9 def self.serialize_url_search_params(params) UrlSearchParamsSerializer.serialize_url_search_params(params, strict: true) end |
.update_url_search_params(search_params, params) ⇒ nil
Serializes parameters into an existing UrlSearchParams collection, preserving pairs it does not overwrite.
14 15 16 |
# File 'lib/seam/strict_url_search_params_serializer.rb', line 14 def self.update_url_search_params(search_params, params) UrlSearchParamsSerializer.update_url_search_params(search_params, params, strict: true) end |