stytch 10.27.0 → 10.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/stytch/b2b_client.rb +2 -2
- data/lib/stytch/b2b_discovery.rb +18 -2
- data/lib/stytch/b2b_idp.rb +272 -32
- data/lib/stytch/b2b_magic_links.rb +9 -1
- data/lib/stytch/b2b_oauth.rb +9 -1
- data/lib/stytch/b2b_organizations.rb +9 -3
- data/lib/stytch/b2b_otp.rb +18 -2
- data/lib/stytch/b2b_passwords.rb +36 -4
- data/lib/stytch/b2b_recovery_codes.rb +9 -1
- data/lib/stytch/b2b_sessions.rb +32 -8
- data/lib/stytch/b2b_sso.rb +9 -1
- data/lib/stytch/b2b_totps.rb +9 -1
- data/lib/stytch/client.rb +2 -2
- data/lib/stytch/crypto_wallets.rb +9 -1
- data/lib/stytch/idp.rb +258 -32
- data/lib/stytch/magic_links.rb +9 -1
- data/lib/stytch/oauth.rb +9 -1
- data/lib/stytch/otps.rb +9 -1
- data/lib/stytch/passwords.rb +47 -6
- data/lib/stytch/sessions.rb +27 -3
- data/lib/stytch/totps.rb +18 -2
- data/lib/stytch/users.rb +3 -0
- data/lib/stytch/version.rb +1 -1
- data/lib/stytch/webauthn.rb +18 -2
- metadata +2 -2
data/lib/stytch/sessions.rb
CHANGED
@@ -192,6 +192,9 @@ module Stytch
|
|
192
192
|
#
|
193
193
|
# Custom claims made with reserved claims ("iss", "sub", "aud", "exp", "nbf", "iat", "jti") will be ignored. Total custom claims size cannot exceed four kilobytes.
|
194
194
|
# The type of this field is nilable +object+.
|
195
|
+
# telemetry_id::
|
196
|
+
# If the `telemetry_id` is passed, as part of this request, Stytch will call the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) and store the associated fingerprints and IPGEO information for the User. Your workspace must be enabled for Device Fingerprinting to use this feature.
|
197
|
+
# The type of this field is nilable +String+.
|
195
198
|
#
|
196
199
|
# == Returns:
|
197
200
|
# An object with the following fields:
|
@@ -219,10 +222,14 @@ module Stytch
|
|
219
222
|
# See [Session object](https://stytch.com/docs/api/session-object) for complete response fields.
|
220
223
|
#
|
221
224
|
# The type of this field is nilable +Session+ (+object+).
|
225
|
+
# user_device::
|
226
|
+
# If a valid `telemetry_id` was passed in the request and the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) returned results, the `user_device` response field will contain information about the user's device attributes.
|
227
|
+
# The type of this field is nilable +DeviceInfo+ (+object+).
|
222
228
|
def migrate(
|
223
229
|
session_token:,
|
224
230
|
session_duration_minutes: nil,
|
225
|
-
session_custom_claims: nil
|
231
|
+
session_custom_claims: nil,
|
232
|
+
telemetry_id: nil
|
226
233
|
)
|
227
234
|
headers = {}
|
228
235
|
request = {
|
@@ -230,6 +237,7 @@ module Stytch
|
|
230
237
|
}
|
231
238
|
request[:session_duration_minutes] = session_duration_minutes unless session_duration_minutes.nil?
|
232
239
|
request[:session_custom_claims] = session_custom_claims unless session_custom_claims.nil?
|
240
|
+
request[:telemetry_id] = telemetry_id unless telemetry_id.nil?
|
233
241
|
|
234
242
|
post_request('/v1/sessions/migrate', request, headers)
|
235
243
|
end
|
@@ -261,6 +269,9 @@ module Stytch
|
|
261
269
|
#
|
262
270
|
# Custom claims made with reserved claims ("iss", "sub", "aud", "exp", "nbf", "iat", "jti") will be ignored. Total custom claims size cannot exceed four kilobytes.
|
263
271
|
# The type of this field is nilable +object+.
|
272
|
+
# telemetry_id::
|
273
|
+
# If the `telemetry_id` is passed, as part of this request, Stytch will call the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) and store the associated fingerprints and IPGEO information for the User. Your workspace must be enabled for Device Fingerprinting to use this feature.
|
274
|
+
# The type of this field is nilable +String+.
|
264
275
|
#
|
265
276
|
# == Returns:
|
266
277
|
# An object with the following fields:
|
@@ -288,10 +299,14 @@ module Stytch
|
|
288
299
|
# See [Session object](https://stytch.com/docs/api/session-object) for complete response fields.
|
289
300
|
#
|
290
301
|
# The type of this field is nilable +Session+ (+object+).
|
302
|
+
# user_device::
|
303
|
+
# If a valid `telemetry_id` was passed in the request and the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) returned results, the `user_device` response field will contain information about the user's device attributes.
|
304
|
+
# The type of this field is nilable +DeviceInfo+ (+object+).
|
291
305
|
def exchange_access_token(
|
292
306
|
access_token:,
|
293
307
|
session_duration_minutes: nil,
|
294
|
-
session_custom_claims: nil
|
308
|
+
session_custom_claims: nil,
|
309
|
+
telemetry_id: nil
|
295
310
|
)
|
296
311
|
headers = {}
|
297
312
|
request = {
|
@@ -299,6 +314,7 @@ module Stytch
|
|
299
314
|
}
|
300
315
|
request[:session_duration_minutes] = session_duration_minutes unless session_duration_minutes.nil?
|
301
316
|
request[:session_custom_claims] = session_custom_claims unless session_custom_claims.nil?
|
317
|
+
request[:telemetry_id] = telemetry_id unless telemetry_id.nil?
|
302
318
|
|
303
319
|
post_request('/v1/sessions/exchange_access_token', request, headers)
|
304
320
|
end
|
@@ -371,6 +387,9 @@ module Stytch
|
|
371
387
|
# session_jwt::
|
372
388
|
# The `session_jwt` for the session that you wish to add the trusted auth token authentication factor to.
|
373
389
|
# The type of this field is nilable +String+.
|
390
|
+
# telemetry_id::
|
391
|
+
# If the `telemetry_id` is passed, as part of this request, Stytch will call the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) and store the associated fingerprints and IPGEO information for the User. Your workspace must be enabled for Device Fingerprinting to use this feature.
|
392
|
+
# The type of this field is nilable +String+.
|
374
393
|
#
|
375
394
|
# == Returns:
|
376
395
|
# An object with the following fields:
|
@@ -398,13 +417,17 @@ module Stytch
|
|
398
417
|
# See [Session object](https://stytch.com/docs/api/session-object) for complete response fields.
|
399
418
|
#
|
400
419
|
# The type of this field is nilable +Session+ (+object+).
|
420
|
+
# user_device::
|
421
|
+
# If a valid `telemetry_id` was passed in the request and the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) returned results, the `user_device` response field will contain information about the user's device attributes.
|
422
|
+
# The type of this field is nilable +DeviceInfo+ (+object+).
|
401
423
|
def attest(
|
402
424
|
profile_id:,
|
403
425
|
token:,
|
404
426
|
session_duration_minutes: nil,
|
405
427
|
session_custom_claims: nil,
|
406
428
|
session_token: nil,
|
407
|
-
session_jwt: nil
|
429
|
+
session_jwt: nil,
|
430
|
+
telemetry_id: nil
|
408
431
|
)
|
409
432
|
headers = {}
|
410
433
|
request = {
|
@@ -415,6 +438,7 @@ module Stytch
|
|
415
438
|
request[:session_custom_claims] = session_custom_claims unless session_custom_claims.nil?
|
416
439
|
request[:session_token] = session_token unless session_token.nil?
|
417
440
|
request[:session_jwt] = session_jwt unless session_jwt.nil?
|
441
|
+
request[:telemetry_id] = telemetry_id unless telemetry_id.nil?
|
418
442
|
|
419
443
|
post_request('/v1/sessions/attest', request, headers)
|
420
444
|
end
|
data/lib/stytch/totps.rb
CHANGED
@@ -96,6 +96,9 @@ module Stytch
|
|
96
96
|
#
|
97
97
|
# Custom claims made with reserved claims ("iss", "sub", "aud", "exp", "nbf", "iat", "jti") will be ignored. Total custom claims size cannot exceed four kilobytes.
|
98
98
|
# The type of this field is nilable +object+.
|
99
|
+
# telemetry_id::
|
100
|
+
# If the `telemetry_id` is passed, as part of this request, Stytch will call the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) and store the associated fingerprints and IPGEO information for the User. Your workspace must be enabled for Device Fingerprinting to use this feature.
|
101
|
+
# The type of this field is nilable +String+.
|
99
102
|
#
|
100
103
|
# == Returns:
|
101
104
|
# An object with the following fields:
|
@@ -126,13 +129,17 @@ module Stytch
|
|
126
129
|
# See [Session object](https://stytch.com/docs/api/session-object) for complete response fields.
|
127
130
|
#
|
128
131
|
# The type of this field is nilable +Session+ (+object+).
|
132
|
+
# user_device::
|
133
|
+
# If a valid `telemetry_id` was passed in the request and the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) returned results, the `user_device` response field will contain information about the user's device attributes.
|
134
|
+
# The type of this field is nilable +DeviceInfo+ (+object+).
|
129
135
|
def authenticate(
|
130
136
|
user_id:,
|
131
137
|
totp_code:,
|
132
138
|
session_token: nil,
|
133
139
|
session_duration_minutes: nil,
|
134
140
|
session_jwt: nil,
|
135
|
-
session_custom_claims: nil
|
141
|
+
session_custom_claims: nil,
|
142
|
+
telemetry_id: nil
|
136
143
|
)
|
137
144
|
headers = {}
|
138
145
|
request = {
|
@@ -143,6 +150,7 @@ module Stytch
|
|
143
150
|
request[:session_duration_minutes] = session_duration_minutes unless session_duration_minutes.nil?
|
144
151
|
request[:session_jwt] = session_jwt unless session_jwt.nil?
|
145
152
|
request[:session_custom_claims] = session_custom_claims unless session_custom_claims.nil?
|
153
|
+
request[:telemetry_id] = telemetry_id unless telemetry_id.nil?
|
146
154
|
|
147
155
|
post_request('/v1/totps/authenticate', request, headers)
|
148
156
|
end
|
@@ -210,6 +218,9 @@ module Stytch
|
|
210
218
|
#
|
211
219
|
# Custom claims made with reserved claims ("iss", "sub", "aud", "exp", "nbf", "iat", "jti") will be ignored. Total custom claims size cannot exceed four kilobytes.
|
212
220
|
# The type of this field is nilable +object+.
|
221
|
+
# telemetry_id::
|
222
|
+
# If the `telemetry_id` is passed, as part of this request, Stytch will call the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) and store the associated fingerprints and IPGEO information for the User. Your workspace must be enabled for Device Fingerprinting to use this feature.
|
223
|
+
# The type of this field is nilable +String+.
|
213
224
|
#
|
214
225
|
# == Returns:
|
215
226
|
# An object with the following fields:
|
@@ -240,13 +251,17 @@ module Stytch
|
|
240
251
|
# See [Session object](https://stytch.com/docs/api/session-object) for complete response fields.
|
241
252
|
#
|
242
253
|
# The type of this field is nilable +Session+ (+object+).
|
254
|
+
# user_device::
|
255
|
+
# If a valid `telemetry_id` was passed in the request and the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) returned results, the `user_device` response field will contain information about the user's device attributes.
|
256
|
+
# The type of this field is nilable +DeviceInfo+ (+object+).
|
243
257
|
def recover(
|
244
258
|
user_id:,
|
245
259
|
recovery_code:,
|
246
260
|
session_token: nil,
|
247
261
|
session_duration_minutes: nil,
|
248
262
|
session_jwt: nil,
|
249
|
-
session_custom_claims: nil
|
263
|
+
session_custom_claims: nil,
|
264
|
+
telemetry_id: nil
|
250
265
|
)
|
251
266
|
headers = {}
|
252
267
|
request = {
|
@@ -257,6 +272,7 @@ module Stytch
|
|
257
272
|
request[:session_duration_minutes] = session_duration_minutes unless session_duration_minutes.nil?
|
258
273
|
request[:session_jwt] = session_jwt unless session_jwt.nil?
|
259
274
|
request[:session_custom_claims] = session_custom_claims unless session_custom_claims.nil?
|
275
|
+
request[:telemetry_id] = telemetry_id unless telemetry_id.nil?
|
260
276
|
|
261
277
|
post_request('/v1/totps/recover', request, headers)
|
262
278
|
end
|
data/lib/stytch/users.rb
CHANGED
@@ -173,6 +173,9 @@ module Stytch
|
|
173
173
|
get_request(request, headers)
|
174
174
|
end
|
175
175
|
|
176
|
+
#
|
177
|
+
# **Warning**: This endpoint is not recommended for use in login flows. Scaling issues may occur, as search performance may vary from ~150 milliseconds to 9 seconds depending on query complexity and rate limits are set to 150 requests/second.
|
178
|
+
#
|
176
179
|
# Search for Users within your Stytch Project.
|
177
180
|
#
|
178
181
|
# Use the `query` object to filter by different fields. See the `query.operands.filter_value` documentation below for a list of available filters.
|
data/lib/stytch/version.rb
CHANGED
data/lib/stytch/webauthn.rb
CHANGED
@@ -128,6 +128,9 @@ module Stytch
|
|
128
128
|
#
|
129
129
|
# Custom claims made with reserved claims ("iss", "sub", "aud", "exp", "nbf", "iat", "jti") will be ignored. Total custom claims size cannot exceed four kilobytes.
|
130
130
|
# The type of this field is nilable +object+.
|
131
|
+
# telemetry_id::
|
132
|
+
# If the `telemetry_id` is passed, as part of this request, Stytch will call the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) and store the associated fingerprints and IPGEO information for the User. Your workspace must be enabled for Device Fingerprinting to use this feature.
|
133
|
+
# The type of this field is nilable +String+.
|
131
134
|
#
|
132
135
|
# == Returns:
|
133
136
|
# An object with the following fields:
|
@@ -158,13 +161,17 @@ module Stytch
|
|
158
161
|
# See [Session object](https://stytch.com/docs/api/session-object) for complete response fields.
|
159
162
|
#
|
160
163
|
# The type of this field is nilable +Session+ (+object+).
|
164
|
+
# user_device::
|
165
|
+
# If a valid `telemetry_id` was passed in the request and the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) returned results, the `user_device` response field will contain information about the user's device attributes.
|
166
|
+
# The type of this field is nilable +DeviceInfo+ (+object+).
|
161
167
|
def register(
|
162
168
|
user_id:,
|
163
169
|
public_key_credential:,
|
164
170
|
session_token: nil,
|
165
171
|
session_duration_minutes: nil,
|
166
172
|
session_jwt: nil,
|
167
|
-
session_custom_claims: nil
|
173
|
+
session_custom_claims: nil,
|
174
|
+
telemetry_id: nil
|
168
175
|
)
|
169
176
|
headers = {}
|
170
177
|
request = {
|
@@ -175,6 +182,7 @@ module Stytch
|
|
175
182
|
request[:session_duration_minutes] = session_duration_minutes unless session_duration_minutes.nil?
|
176
183
|
request[:session_jwt] = session_jwt unless session_jwt.nil?
|
177
184
|
request[:session_custom_claims] = session_custom_claims unless session_custom_claims.nil?
|
185
|
+
request[:telemetry_id] = telemetry_id unless telemetry_id.nil?
|
178
186
|
|
179
187
|
post_request('/v1/webauthn/register', request, headers)
|
180
188
|
end
|
@@ -258,6 +266,9 @@ module Stytch
|
|
258
266
|
#
|
259
267
|
# Custom claims made with reserved claims ("iss", "sub", "aud", "exp", "nbf", "iat", "jti") will be ignored. Total custom claims size cannot exceed four kilobytes.
|
260
268
|
# The type of this field is nilable +object+.
|
269
|
+
# telemetry_id::
|
270
|
+
# If the `telemetry_id` is passed, as part of this request, Stytch will call the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) and store the associated fingerprints and IPGEO information for the User. Your workspace must be enabled for Device Fingerprinting to use this feature.
|
271
|
+
# The type of this field is nilable +String+.
|
261
272
|
#
|
262
273
|
# == Returns:
|
263
274
|
# An object with the following fields:
|
@@ -288,12 +299,16 @@ module Stytch
|
|
288
299
|
# See [Session object](https://stytch.com/docs/api/session-object) for complete response fields.
|
289
300
|
#
|
290
301
|
# The type of this field is nilable +Session+ (+object+).
|
302
|
+
# user_device::
|
303
|
+
# If a valid `telemetry_id` was passed in the request and the [Fingerprint Lookup API](https://stytch.com/docs/fraud/api/fingerprint-lookup) returned results, the `user_device` response field will contain information about the user's device attributes.
|
304
|
+
# The type of this field is nilable +DeviceInfo+ (+object+).
|
291
305
|
def authenticate(
|
292
306
|
public_key_credential:,
|
293
307
|
session_token: nil,
|
294
308
|
session_duration_minutes: nil,
|
295
309
|
session_jwt: nil,
|
296
|
-
session_custom_claims: nil
|
310
|
+
session_custom_claims: nil,
|
311
|
+
telemetry_id: nil
|
297
312
|
)
|
298
313
|
headers = {}
|
299
314
|
request = {
|
@@ -303,6 +318,7 @@ module Stytch
|
|
303
318
|
request[:session_duration_minutes] = session_duration_minutes unless session_duration_minutes.nil?
|
304
319
|
request[:session_jwt] = session_jwt unless session_jwt.nil?
|
305
320
|
request[:session_custom_claims] = session_custom_claims unless session_custom_claims.nil?
|
321
|
+
request[:telemetry_id] = telemetry_id unless telemetry_id.nil?
|
306
322
|
|
307
323
|
post_request('/v1/webauthn/authenticate', request, headers)
|
308
324
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stytch
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 10.
|
4
|
+
version: 10.29.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- stytch
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-08-
|
11
|
+
date: 2025-08-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|