zyphr 0.1.55 → 0.1.56
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/docs/AuthPasswordResetApi.md +1 -1
- data/docs/InviteEndUser200ResponseData.md +3 -1
- data/lib/zyphr/api/auth_password_reset_api.rb +2 -2
- data/lib/zyphr/models/invite_end_user200_response_data.rb +14 -4
- data/spec/api/auth_password_reset_api_spec.rb +1 -1
- data/spec/models/invite_end_user200_response_data_spec.rb +6 -0
- data/zyphr.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: de2fcdf8ab6779134bd46363a7c5fc6b458c05c72444a679bf6f0feba7de9bbd
|
|
4
|
+
data.tar.gz: 792f4f9353a0f31fd809afbcde76127e1a02e10f84ebc67236d33cc53e843e4d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 700ea510741ee07471d0cc8d8128dcfed02f39b84df08eb6dd92bcaadd666d99176cd46b885e5296b751e86a96c4b8e2ec5c185ffc94e3ac55931a5934a6fc85
|
|
7
|
+
data.tar.gz: aa49c456517da6f54590d7c0fe374721b93875e4dfee83032b1b20553aa2f4260811a0484470e6e80dae518a43af092718ba5b2582d5ab3183ba0ac58d4ae896
|
|
@@ -15,7 +15,7 @@ All URIs are relative to *https://api.zyphr.dev/v1*
|
|
|
15
15
|
|
|
16
16
|
Request a password reset
|
|
17
17
|
|
|
18
|
-
Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration.
|
|
18
|
+
Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration — the response is identical whether or not the address is registered. An identity with **no password set** still receives a link, which sets a first password. This covers users migrated from a provider that cannot export password hashes. The one case where no email is sent (beyond an unknown address) is an identity that has no password but *does* have another way in — a linked OAuth provider and/or a passkey. Those users are not locked out, so no set-password link is sent; the attempt is recorded as a suppressed message visible via `GET /emails`.
|
|
19
19
|
|
|
20
20
|
### Examples
|
|
21
21
|
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
| **user_id** | **String** | | [optional] |
|
|
8
8
|
| **created** | **Boolean** | True when a new user was provisioned; false when an existing user was reused (idempotent on email). | [optional] |
|
|
9
9
|
| **link_sent** | **Boolean** | True when a magic-link or password-reset email was successfully dispatched. | [optional] |
|
|
10
|
+
| **link_suppressed_reason** | **String** | Present only when `send_link` was requested and `link_sent` is false — explains why, so a caller can distinguish \"suppressed by design\" from \"delivery failed\". Known values: - `identity_has_other_auth_methods` — the identity has no password but does have a linked OAuth provider and/or a passkey, so it is not locked out and no set-password link is sent. The attempt is recorded as a suppressed message, visible via `GET /emails`. - `user_not_found_in_environment` — the identity could not be resolved in the calling environment (a race; it was created or resolved immediately prior). - `recipient_not_allowlisted` — the application's `test_recipients` allowlist blocked the recipient. - `send_failed` — dispatch was attempted and failed with no more specific code. Not a closed set: a mail-provider error code may be surfaced verbatim, so treat an unrecognised value as a generic failure rather than an error. | [optional] |
|
|
10
11
|
|
|
11
12
|
## Example
|
|
12
13
|
|
|
@@ -16,7 +17,8 @@ require 'zyphr'
|
|
|
16
17
|
instance = Zyphr::InviteEndUser200ResponseData.new(
|
|
17
18
|
user_id: null,
|
|
18
19
|
created: null,
|
|
19
|
-
link_sent: null
|
|
20
|
+
link_sent: null,
|
|
21
|
+
link_suppressed_reason: identity_has_other_auth_methods
|
|
20
22
|
)
|
|
21
23
|
```
|
|
22
24
|
|
|
@@ -20,7 +20,7 @@ module Zyphr
|
|
|
20
20
|
@api_client = api_client
|
|
21
21
|
end
|
|
22
22
|
# Request a password reset
|
|
23
|
-
# Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration.
|
|
23
|
+
# Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration — the response is identical whether or not the address is registered. An identity with **no password set** still receives a link, which sets a first password. This covers users migrated from a provider that cannot export password hashes. The one case where no email is sent (beyond an unknown address) is an identity that has no password but *does* have another way in — a linked OAuth provider and/or a passkey. Those users are not locked out, so no set-password link is sent; the attempt is recorded as a suppressed message visible via `GET /emails`.
|
|
24
24
|
# @param forgot_password_request [ForgotPasswordRequest]
|
|
25
25
|
# @param [Hash] opts the optional parameters
|
|
26
26
|
# @return [SuccessResult]
|
|
@@ -30,7 +30,7 @@ module Zyphr
|
|
|
30
30
|
end
|
|
31
31
|
|
|
32
32
|
# Request a password reset
|
|
33
|
-
# Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration.
|
|
33
|
+
# Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration — the response is identical whether or not the address is registered. An identity with **no password set** still receives a link, which sets a first password. This covers users migrated from a provider that cannot export password hashes. The one case where no email is sent (beyond an unknown address) is an identity that has no password but *does* have another way in — a linked OAuth provider and/or a passkey. Those users are not locked out, so no set-password link is sent; the attempt is recorded as a suppressed message visible via `GET /emails`.
|
|
34
34
|
# @param forgot_password_request [ForgotPasswordRequest]
|
|
35
35
|
# @param [Hash] opts the optional parameters
|
|
36
36
|
# @return [Array<(SuccessResult, Integer, Hash)>] SuccessResult data, response status code and response headers
|
|
@@ -23,12 +23,16 @@ module Zyphr
|
|
|
23
23
|
# True when a magic-link or password-reset email was successfully dispatched.
|
|
24
24
|
attr_accessor :link_sent
|
|
25
25
|
|
|
26
|
+
# Present only when `send_link` was requested and `link_sent` is false — explains why, so a caller can distinguish \"suppressed by design\" from \"delivery failed\". Known values: - `identity_has_other_auth_methods` — the identity has no password but does have a linked OAuth provider and/or a passkey, so it is not locked out and no set-password link is sent. The attempt is recorded as a suppressed message, visible via `GET /emails`. - `user_not_found_in_environment` — the identity could not be resolved in the calling environment (a race; it was created or resolved immediately prior). - `recipient_not_allowlisted` — the application's `test_recipients` allowlist blocked the recipient. - `send_failed` — dispatch was attempted and failed with no more specific code. Not a closed set: a mail-provider error code may be surfaced verbatim, so treat an unrecognised value as a generic failure rather than an error.
|
|
27
|
+
attr_accessor :link_suppressed_reason
|
|
28
|
+
|
|
26
29
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
27
30
|
def self.attribute_map
|
|
28
31
|
{
|
|
29
32
|
:'user_id' => :'user_id',
|
|
30
33
|
:'created' => :'created',
|
|
31
|
-
:'link_sent' => :'link_sent'
|
|
34
|
+
:'link_sent' => :'link_sent',
|
|
35
|
+
:'link_suppressed_reason' => :'link_suppressed_reason'
|
|
32
36
|
}
|
|
33
37
|
end
|
|
34
38
|
|
|
@@ -47,7 +51,8 @@ module Zyphr
|
|
|
47
51
|
{
|
|
48
52
|
:'user_id' => :'String',
|
|
49
53
|
:'created' => :'Boolean',
|
|
50
|
-
:'link_sent' => :'Boolean'
|
|
54
|
+
:'link_sent' => :'Boolean',
|
|
55
|
+
:'link_suppressed_reason' => :'String'
|
|
51
56
|
}
|
|
52
57
|
end
|
|
53
58
|
|
|
@@ -84,6 +89,10 @@ module Zyphr
|
|
|
84
89
|
if attributes.key?(:'link_sent')
|
|
85
90
|
self.link_sent = attributes[:'link_sent']
|
|
86
91
|
end
|
|
92
|
+
|
|
93
|
+
if attributes.key?(:'link_suppressed_reason')
|
|
94
|
+
self.link_suppressed_reason = attributes[:'link_suppressed_reason']
|
|
95
|
+
end
|
|
87
96
|
end
|
|
88
97
|
|
|
89
98
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -108,7 +117,8 @@ module Zyphr
|
|
|
108
117
|
self.class == o.class &&
|
|
109
118
|
user_id == o.user_id &&
|
|
110
119
|
created == o.created &&
|
|
111
|
-
link_sent == o.link_sent
|
|
120
|
+
link_sent == o.link_sent &&
|
|
121
|
+
link_suppressed_reason == o.link_suppressed_reason
|
|
112
122
|
end
|
|
113
123
|
|
|
114
124
|
# @see the `==` method
|
|
@@ -120,7 +130,7 @@ module Zyphr
|
|
|
120
130
|
# Calculates hash code according to all attributes.
|
|
121
131
|
# @return [Integer] Hash code
|
|
122
132
|
def hash
|
|
123
|
-
[user_id, created, link_sent].hash
|
|
133
|
+
[user_id, created, link_sent, link_suppressed_reason].hash
|
|
124
134
|
end
|
|
125
135
|
|
|
126
136
|
# Builds the object from hash
|
|
@@ -34,7 +34,7 @@ describe 'AuthPasswordResetApi' do
|
|
|
34
34
|
|
|
35
35
|
# unit tests for forgot_password
|
|
36
36
|
# Request a password reset
|
|
37
|
-
# Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration.
|
|
37
|
+
# Request a password reset email. Creates a reset token and sends an email to the user. Always returns success to prevent email enumeration — the response is identical whether or not the address is registered. An identity with **no password set** still receives a link, which sets a first password. This covers users migrated from a provider that cannot export password hashes. The one case where no email is sent (beyond an unknown address) is an identity that has no password but *does* have another way in — a linked OAuth provider and/or a passkey. Those users are not locked out, so no set-password link is sent; the attempt is recorded as a suppressed message visible via `GET /emails`.
|
|
38
38
|
# @param forgot_password_request
|
|
39
39
|
# @param [Hash] opts the optional parameters
|
|
40
40
|
# @return [SuccessResult]
|
|
@@ -45,4 +45,10 @@ describe Zyphr::InviteEndUser200ResponseData do
|
|
|
45
45
|
end
|
|
46
46
|
end
|
|
47
47
|
|
|
48
|
+
describe 'test attribute "link_suppressed_reason"' do
|
|
49
|
+
it 'should work' do
|
|
50
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
|
|
48
54
|
end
|
data/zyphr.gemspec
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: zyphr
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.56
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Zyphr
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-08-
|
|
11
|
+
date: 2026-08-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: faraday
|