prelude-sdk 0.1.0.pre.alpha.2

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.
Files changed (125) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +352 -0
  4. data/README.md +217 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/prelude_sdk/client.rb +87 -0
  7. data/lib/prelude_sdk/errors.rb +214 -0
  8. data/lib/prelude_sdk/file_part.rb +55 -0
  9. data/lib/prelude_sdk/internal/transport/base_client.rb +555 -0
  10. data/lib/prelude_sdk/internal/transport/pooled_net_requester.rb +209 -0
  11. data/lib/prelude_sdk/internal/type/array_of.rb +167 -0
  12. data/lib/prelude_sdk/internal/type/base_model.rb +536 -0
  13. data/lib/prelude_sdk/internal/type/base_page.rb +55 -0
  14. data/lib/prelude_sdk/internal/type/boolean.rb +77 -0
  15. data/lib/prelude_sdk/internal/type/converter.rb +300 -0
  16. data/lib/prelude_sdk/internal/type/enum.rb +131 -0
  17. data/lib/prelude_sdk/internal/type/file_input.rb +108 -0
  18. data/lib/prelude_sdk/internal/type/hash_of.rb +187 -0
  19. data/lib/prelude_sdk/internal/type/request_parameters.rb +42 -0
  20. data/lib/prelude_sdk/internal/type/union.rb +235 -0
  21. data/lib/prelude_sdk/internal/type/unknown.rb +81 -0
  22. data/lib/prelude_sdk/internal/util.rb +914 -0
  23. data/lib/prelude_sdk/internal.rb +20 -0
  24. data/lib/prelude_sdk/models/lookup_lookup_params.rb +37 -0
  25. data/lib/prelude_sdk/models/lookup_lookup_response.rb +236 -0
  26. data/lib/prelude_sdk/models/transactional_send_params.rb +84 -0
  27. data/lib/prelude_sdk/models/transactional_send_response.rb +81 -0
  28. data/lib/prelude_sdk/models/verification_check_params.rb +69 -0
  29. data/lib/prelude_sdk/models/verification_check_response.rb +67 -0
  30. data/lib/prelude_sdk/models/verification_create_params.rb +388 -0
  31. data/lib/prelude_sdk/models/verification_create_response.rb +148 -0
  32. data/lib/prelude_sdk/models/watch_predict_params.rb +191 -0
  33. data/lib/prelude_sdk/models/watch_predict_response.rb +50 -0
  34. data/lib/prelude_sdk/models/watch_send_events_params.rb +100 -0
  35. data/lib/prelude_sdk/models/watch_send_events_response.rb +41 -0
  36. data/lib/prelude_sdk/models/watch_send_feedbacks_params.rb +229 -0
  37. data/lib/prelude_sdk/models/watch_send_feedbacks_response.rb +41 -0
  38. data/lib/prelude_sdk/models.rb +55 -0
  39. data/lib/prelude_sdk/request_options.rb +77 -0
  40. data/lib/prelude_sdk/resources/lookup.rb +42 -0
  41. data/lib/prelude_sdk/resources/transactional.rb +53 -0
  42. data/lib/prelude_sdk/resources/verification.rb +76 -0
  43. data/lib/prelude_sdk/resources/watch.rb +91 -0
  44. data/lib/prelude_sdk/version.rb +5 -0
  45. data/lib/prelude_sdk.rb +71 -0
  46. data/manifest.yaml +15 -0
  47. data/rbi/prelude_sdk/client.rbi +59 -0
  48. data/rbi/prelude_sdk/errors.rbi +178 -0
  49. data/rbi/prelude_sdk/file_part.rbi +37 -0
  50. data/rbi/prelude_sdk/internal/transport/base_client.rbi +296 -0
  51. data/rbi/prelude_sdk/internal/transport/pooled_net_requester.rbi +80 -0
  52. data/rbi/prelude_sdk/internal/type/array_of.rbi +104 -0
  53. data/rbi/prelude_sdk/internal/type/base_model.rbi +304 -0
  54. data/rbi/prelude_sdk/internal/type/base_page.rbi +42 -0
  55. data/rbi/prelude_sdk/internal/type/boolean.rbi +58 -0
  56. data/rbi/prelude_sdk/internal/type/converter.rbi +162 -0
  57. data/rbi/prelude_sdk/internal/type/enum.rbi +82 -0
  58. data/rbi/prelude_sdk/internal/type/file_input.rbi +59 -0
  59. data/rbi/prelude_sdk/internal/type/hash_of.rbi +104 -0
  60. data/rbi/prelude_sdk/internal/type/request_parameters.rbi +29 -0
  61. data/rbi/prelude_sdk/internal/type/union.rbi +121 -0
  62. data/rbi/prelude_sdk/internal/type/unknown.rbi +58 -0
  63. data/rbi/prelude_sdk/internal/util.rbi +487 -0
  64. data/rbi/prelude_sdk/internal.rbi +18 -0
  65. data/rbi/prelude_sdk/models/lookup_lookup_params.rbi +78 -0
  66. data/rbi/prelude_sdk/models/lookup_lookup_response.rbi +520 -0
  67. data/rbi/prelude_sdk/models/transactional_send_params.rbi +126 -0
  68. data/rbi/prelude_sdk/models/transactional_send_response.rbi +113 -0
  69. data/rbi/prelude_sdk/models/verification_check_params.rbi +140 -0
  70. data/rbi/prelude_sdk/models/verification_check_response.rbi +149 -0
  71. data/rbi/prelude_sdk/models/verification_create_params.rbi +805 -0
  72. data/rbi/prelude_sdk/models/verification_create_response.rbi +336 -0
  73. data/rbi/prelude_sdk/models/watch_predict_params.rbi +382 -0
  74. data/rbi/prelude_sdk/models/watch_predict_response.rbi +96 -0
  75. data/rbi/prelude_sdk/models/watch_send_events_params.rbi +245 -0
  76. data/rbi/prelude_sdk/models/watch_send_events_response.rbi +82 -0
  77. data/rbi/prelude_sdk/models/watch_send_feedbacks_params.rbi +500 -0
  78. data/rbi/prelude_sdk/models/watch_send_feedbacks_response.rbi +86 -0
  79. data/rbi/prelude_sdk/models.rbi +17 -0
  80. data/rbi/prelude_sdk/request_options.rbi +59 -0
  81. data/rbi/prelude_sdk/resources/lookup.rbi +33 -0
  82. data/rbi/prelude_sdk/resources/transactional.rbi +50 -0
  83. data/rbi/prelude_sdk/resources/verification.rbi +61 -0
  84. data/rbi/prelude_sdk/resources/watch.rbi +67 -0
  85. data/rbi/prelude_sdk/version.rbi +5 -0
  86. data/sig/prelude_sdk/client.rbs +32 -0
  87. data/sig/prelude_sdk/errors.rbs +110 -0
  88. data/sig/prelude_sdk/file_part.rbs +21 -0
  89. data/sig/prelude_sdk/internal/transport/base_client.rbs +131 -0
  90. data/sig/prelude_sdk/internal/transport/pooled_net_requester.rbs +45 -0
  91. data/sig/prelude_sdk/internal/type/array_of.rbs +48 -0
  92. data/sig/prelude_sdk/internal/type/base_model.rbs +102 -0
  93. data/sig/prelude_sdk/internal/type/base_page.rbs +24 -0
  94. data/sig/prelude_sdk/internal/type/boolean.rbs +26 -0
  95. data/sig/prelude_sdk/internal/type/converter.rbs +62 -0
  96. data/sig/prelude_sdk/internal/type/enum.rbs +32 -0
  97. data/sig/prelude_sdk/internal/type/file_input.rbs +25 -0
  98. data/sig/prelude_sdk/internal/type/hash_of.rbs +48 -0
  99. data/sig/prelude_sdk/internal/type/request_parameters.rbs +19 -0
  100. data/sig/prelude_sdk/internal/type/union.rbs +52 -0
  101. data/sig/prelude_sdk/internal/type/unknown.rbs +26 -0
  102. data/sig/prelude_sdk/internal/util.rbs +185 -0
  103. data/sig/prelude_sdk/internal.rbs +9 -0
  104. data/sig/prelude_sdk/models/lookup_lookup_params.rbs +38 -0
  105. data/sig/prelude_sdk/models/lookup_lookup_response.rbs +179 -0
  106. data/sig/prelude_sdk/models/transactional_send_params.rbs +73 -0
  107. data/sig/prelude_sdk/models/transactional_send_response.rbs +66 -0
  108. data/sig/prelude_sdk/models/verification_check_params.rbs +61 -0
  109. data/sig/prelude_sdk/models/verification_check_response.rbs +67 -0
  110. data/sig/prelude_sdk/models/verification_create_params.rbs +345 -0
  111. data/sig/prelude_sdk/models/verification_create_response.rbs +136 -0
  112. data/sig/prelude_sdk/models/watch_predict_params.rbs +180 -0
  113. data/sig/prelude_sdk/models/watch_predict_response.rbs +41 -0
  114. data/sig/prelude_sdk/models/watch_send_events_params.rbs +98 -0
  115. data/sig/prelude_sdk/models/watch_send_events_response.rbs +35 -0
  116. data/sig/prelude_sdk/models/watch_send_feedbacks_params.rbs +211 -0
  117. data/sig/prelude_sdk/models/watch_send_feedbacks_response.rbs +35 -0
  118. data/sig/prelude_sdk/models.rbs +15 -0
  119. data/sig/prelude_sdk/request_options.rbs +36 -0
  120. data/sig/prelude_sdk/resources/lookup.rbs +13 -0
  121. data/sig/prelude_sdk/resources/transactional.rbs +19 -0
  122. data/sig/prelude_sdk/resources/verification.rbs +22 -0
  123. data/sig/prelude_sdk/resources/watch.rbs +25 -0
  124. data/sig/prelude_sdk/version.rbs +3 -0
  125. metadata +182 -0
@@ -0,0 +1,191 @@
1
+ # frozen_string_literal: true
2
+
3
+ module PreludeSDK
4
+ module Models
5
+ # @see PreludeSDK::Resources::Watch#predict
6
+ class WatchPredictParams < PreludeSDK::Internal::Type::BaseModel
7
+ extend PreludeSDK::Internal::Type::RequestParameters::Converter
8
+ include PreludeSDK::Internal::Type::RequestParameters
9
+
10
+ # @!attribute target
11
+ # The prediction target. Only supports phone numbers for now.
12
+ #
13
+ # @return [PreludeSDK::Models::WatchPredictParams::Target]
14
+ required :target, -> { PreludeSDK::WatchPredictParams::Target }
15
+
16
+ # @!attribute dispatch_id
17
+ # The identifier of the dispatch that came from the front-end SDK.
18
+ #
19
+ # @return [String, nil]
20
+ optional :dispatch_id, String
21
+
22
+ # @!attribute metadata
23
+ # The metadata for this prediction.
24
+ #
25
+ # @return [PreludeSDK::Models::WatchPredictParams::Metadata, nil]
26
+ optional :metadata, -> { PreludeSDK::WatchPredictParams::Metadata }
27
+
28
+ # @!attribute signals
29
+ # The signals used for anti-fraud. For more details, refer to
30
+ # [Signals](/verify/v2/documentation/prevent-fraud#signals).
31
+ #
32
+ # @return [PreludeSDK::Models::WatchPredictParams::Signals, nil]
33
+ optional :signals, -> { PreludeSDK::WatchPredictParams::Signals }
34
+
35
+ # @!method initialize(target:, dispatch_id: nil, metadata: nil, signals: nil, request_options: {})
36
+ # Some parameter documentations has been truncated, see
37
+ # {PreludeSDK::Models::WatchPredictParams} for more details.
38
+ #
39
+ # @param target [PreludeSDK::Models::WatchPredictParams::Target] The prediction target. Only supports phone numbers for now.
40
+ #
41
+ # @param dispatch_id [String] The identifier of the dispatch that came from the front-end SDK.
42
+ #
43
+ # @param metadata [PreludeSDK::Models::WatchPredictParams::Metadata] The metadata for this prediction.
44
+ #
45
+ # @param signals [PreludeSDK::Models::WatchPredictParams::Signals] The signals used for anti-fraud. For more details, refer to [Signals](/verify/v2
46
+ #
47
+ # @param request_options [PreludeSDK::RequestOptions, Hash{Symbol=>Object}]
48
+
49
+ class Target < PreludeSDK::Internal::Type::BaseModel
50
+ # @!attribute type
51
+ # The type of the target. Either "phone_number" or "email_address".
52
+ #
53
+ # @return [Symbol, PreludeSDK::Models::WatchPredictParams::Target::Type]
54
+ required :type, enum: -> { PreludeSDK::WatchPredictParams::Target::Type }
55
+
56
+ # @!attribute value
57
+ # An E.164 formatted phone number or an email address.
58
+ #
59
+ # @return [String]
60
+ required :value, String
61
+
62
+ # @!method initialize(type:, value:)
63
+ # The prediction target. Only supports phone numbers for now.
64
+ #
65
+ # @param type [Symbol, PreludeSDK::Models::WatchPredictParams::Target::Type] The type of the target. Either "phone_number" or "email_address".
66
+ #
67
+ # @param value [String] An E.164 formatted phone number or an email address.
68
+
69
+ # The type of the target. Either "phone_number" or "email_address".
70
+ #
71
+ # @see PreludeSDK::Models::WatchPredictParams::Target#type
72
+ module Type
73
+ extend PreludeSDK::Internal::Type::Enum
74
+
75
+ PHONE_NUMBER = :phone_number
76
+ EMAIL_ADDRESS = :email_address
77
+
78
+ # @!method self.values
79
+ # @return [Array<Symbol>]
80
+ end
81
+ end
82
+
83
+ class Metadata < PreludeSDK::Internal::Type::BaseModel
84
+ # @!attribute correlation_id
85
+ # A user-defined identifier to correlate this prediction with.
86
+ #
87
+ # @return [String, nil]
88
+ optional :correlation_id, String
89
+
90
+ # @!method initialize(correlation_id: nil)
91
+ # The metadata for this prediction.
92
+ #
93
+ # @param correlation_id [String] A user-defined identifier to correlate this prediction with.
94
+ end
95
+
96
+ class Signals < PreludeSDK::Internal::Type::BaseModel
97
+ # @!attribute app_version
98
+ # The version of your application.
99
+ #
100
+ # @return [String, nil]
101
+ optional :app_version, String
102
+
103
+ # @!attribute device_id
104
+ # The unique identifier for the user's device. For Android, this corresponds to
105
+ # the `ANDROID_ID` and for iOS, this corresponds to the `identifierForVendor`.
106
+ #
107
+ # @return [String, nil]
108
+ optional :device_id, String
109
+
110
+ # @!attribute device_model
111
+ # The model of the user's device.
112
+ #
113
+ # @return [String, nil]
114
+ optional :device_model, String
115
+
116
+ # @!attribute device_platform
117
+ # The type of the user's device.
118
+ #
119
+ # @return [Symbol, PreludeSDK::Models::WatchPredictParams::Signals::DevicePlatform, nil]
120
+ optional :device_platform, enum: -> { PreludeSDK::WatchPredictParams::Signals::DevicePlatform }
121
+
122
+ # @!attribute ip
123
+ # The IP address of the user's device.
124
+ #
125
+ # @return [String, nil]
126
+ optional :ip, String
127
+
128
+ # @!attribute is_trusted_user
129
+ # This signal should provide a higher level of trust, indicating that the user is
130
+ # genuine. Contact us to discuss your use case. For more details, refer to
131
+ # [Signals](/verify/v2/documentation/prevent-fraud#signals).
132
+ #
133
+ # @return [Boolean, nil]
134
+ optional :is_trusted_user, PreludeSDK::Internal::Type::Boolean
135
+
136
+ # @!attribute os_version
137
+ # The version of the user's device operating system.
138
+ #
139
+ # @return [String, nil]
140
+ optional :os_version, String
141
+
142
+ # @!attribute user_agent
143
+ # The user agent of the user's device. If the individual fields (os_version,
144
+ # device_platform, device_model) are provided, we will prioritize those values
145
+ # instead of parsing them from the user agent string.
146
+ #
147
+ # @return [String, nil]
148
+ optional :user_agent, String
149
+
150
+ # @!method initialize(app_version: nil, device_id: nil, device_model: nil, device_platform: nil, ip: nil, is_trusted_user: nil, os_version: nil, user_agent: nil)
151
+ # Some parameter documentations has been truncated, see
152
+ # {PreludeSDK::Models::WatchPredictParams::Signals} for more details.
153
+ #
154
+ # The signals used for anti-fraud. For more details, refer to
155
+ # [Signals](/verify/v2/documentation/prevent-fraud#signals).
156
+ #
157
+ # @param app_version [String] The version of your application.
158
+ #
159
+ # @param device_id [String] The unique identifier for the user's device. For Android, this corresponds to th
160
+ #
161
+ # @param device_model [String] The model of the user's device.
162
+ #
163
+ # @param device_platform [Symbol, PreludeSDK::Models::WatchPredictParams::Signals::DevicePlatform] The type of the user's device.
164
+ #
165
+ # @param ip [String] The IP address of the user's device.
166
+ #
167
+ # @param is_trusted_user [Boolean] This signal should provide a higher level of trust, indicating that the user is
168
+ #
169
+ # @param os_version [String] The version of the user's device operating system.
170
+ #
171
+ # @param user_agent [String] The user agent of the user's device. If the individual fields (os_version, devic
172
+
173
+ # The type of the user's device.
174
+ #
175
+ # @see PreludeSDK::Models::WatchPredictParams::Signals#device_platform
176
+ module DevicePlatform
177
+ extend PreludeSDK::Internal::Type::Enum
178
+
179
+ ANDROID = :android
180
+ IOS = :ios
181
+ IPADOS = :ipados
182
+ TVOS = :tvos
183
+ WEB = :web
184
+
185
+ # @!method self.values
186
+ # @return [Array<Symbol>]
187
+ end
188
+ end
189
+ end
190
+ end
191
+ end
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ module PreludeSDK
4
+ module Models
5
+ # @see PreludeSDK::Resources::Watch#predict
6
+ class WatchPredictResponse < PreludeSDK::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The prediction identifier.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute prediction
14
+ # The prediction outcome.
15
+ #
16
+ # @return [Symbol, PreludeSDK::Models::WatchPredictResponse::Prediction]
17
+ required :prediction, enum: -> { PreludeSDK::Models::WatchPredictResponse::Prediction }
18
+
19
+ # @!attribute request_id
20
+ # A string that identifies this specific request. Report it back to us to help us
21
+ # diagnose your issues.
22
+ #
23
+ # @return [String]
24
+ required :request_id, String
25
+
26
+ # @!method initialize(id:, prediction:, request_id:)
27
+ # Some parameter documentations has been truncated, see
28
+ # {PreludeSDK::Models::WatchPredictResponse} for more details.
29
+ #
30
+ # @param id [String] The prediction identifier.
31
+ #
32
+ # @param prediction [Symbol, PreludeSDK::Models::WatchPredictResponse::Prediction] The prediction outcome.
33
+ #
34
+ # @param request_id [String] A string that identifies this specific request. Report it back to us to help us
35
+
36
+ # The prediction outcome.
37
+ #
38
+ # @see PreludeSDK::Models::WatchPredictResponse#prediction
39
+ module Prediction
40
+ extend PreludeSDK::Internal::Type::Enum
41
+
42
+ LEGITIMATE = :legitimate
43
+ SUSPICIOUS = :suspicious
44
+
45
+ # @!method self.values
46
+ # @return [Array<Symbol>]
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ module PreludeSDK
4
+ module Models
5
+ # @see PreludeSDK::Resources::Watch#send_events
6
+ class WatchSendEventsParams < PreludeSDK::Internal::Type::BaseModel
7
+ extend PreludeSDK::Internal::Type::RequestParameters::Converter
8
+ include PreludeSDK::Internal::Type::RequestParameters
9
+
10
+ # @!attribute events
11
+ # A list of events to dispatch.
12
+ #
13
+ # @return [Array<PreludeSDK::Models::WatchSendEventsParams::Event>]
14
+ required :events, -> { PreludeSDK::Internal::Type::ArrayOf[PreludeSDK::WatchSendEventsParams::Event] }
15
+
16
+ # @!method initialize(events:, request_options: {})
17
+ # @param events [Array<PreludeSDK::Models::WatchSendEventsParams::Event>] A list of events to dispatch.
18
+ #
19
+ # @param request_options [PreludeSDK::RequestOptions, Hash{Symbol=>Object}]
20
+
21
+ class Event < PreludeSDK::Internal::Type::BaseModel
22
+ # @!attribute confidence
23
+ # A confidence level you want to assign to the event.
24
+ #
25
+ # @return [Symbol, PreludeSDK::Models::WatchSendEventsParams::Event::Confidence]
26
+ required :confidence, enum: -> { PreludeSDK::WatchSendEventsParams::Event::Confidence }
27
+
28
+ # @!attribute label
29
+ # A label to describe what the event refers to.
30
+ #
31
+ # @return [String]
32
+ required :label, String
33
+
34
+ # @!attribute target
35
+ # The event target. Only supports phone numbers for now.
36
+ #
37
+ # @return [PreludeSDK::Models::WatchSendEventsParams::Event::Target]
38
+ required :target, -> { PreludeSDK::WatchSendEventsParams::Event::Target }
39
+
40
+ # @!method initialize(confidence:, label:, target:)
41
+ # @param confidence [Symbol, PreludeSDK::Models::WatchSendEventsParams::Event::Confidence] A confidence level you want to assign to the event.
42
+ #
43
+ # @param label [String] A label to describe what the event refers to.
44
+ #
45
+ # @param target [PreludeSDK::Models::WatchSendEventsParams::Event::Target] The event target. Only supports phone numbers for now.
46
+
47
+ # A confidence level you want to assign to the event.
48
+ #
49
+ # @see PreludeSDK::Models::WatchSendEventsParams::Event#confidence
50
+ module Confidence
51
+ extend PreludeSDK::Internal::Type::Enum
52
+
53
+ MAXIMUM = :maximum
54
+ HIGH = :high
55
+ NEUTRAL = :neutral
56
+ LOW = :low
57
+ MINIMUM = :minimum
58
+
59
+ # @!method self.values
60
+ # @return [Array<Symbol>]
61
+ end
62
+
63
+ # @see PreludeSDK::Models::WatchSendEventsParams::Event#target
64
+ class Target < PreludeSDK::Internal::Type::BaseModel
65
+ # @!attribute type
66
+ # The type of the target. Either "phone_number" or "email_address".
67
+ #
68
+ # @return [Symbol, PreludeSDK::Models::WatchSendEventsParams::Event::Target::Type]
69
+ required :type, enum: -> { PreludeSDK::WatchSendEventsParams::Event::Target::Type }
70
+
71
+ # @!attribute value
72
+ # An E.164 formatted phone number or an email address.
73
+ #
74
+ # @return [String]
75
+ required :value, String
76
+
77
+ # @!method initialize(type:, value:)
78
+ # The event target. Only supports phone numbers for now.
79
+ #
80
+ # @param type [Symbol, PreludeSDK::Models::WatchSendEventsParams::Event::Target::Type] The type of the target. Either "phone_number" or "email_address".
81
+ #
82
+ # @param value [String] An E.164 formatted phone number or an email address.
83
+
84
+ # The type of the target. Either "phone_number" or "email_address".
85
+ #
86
+ # @see PreludeSDK::Models::WatchSendEventsParams::Event::Target#type
87
+ module Type
88
+ extend PreludeSDK::Internal::Type::Enum
89
+
90
+ PHONE_NUMBER = :phone_number
91
+ EMAIL_ADDRESS = :email_address
92
+
93
+ # @!method self.values
94
+ # @return [Array<Symbol>]
95
+ end
96
+ end
97
+ end
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module PreludeSDK
4
+ module Models
5
+ # @see PreludeSDK::Resources::Watch#send_events
6
+ class WatchSendEventsResponse < PreludeSDK::Internal::Type::BaseModel
7
+ # @!attribute request_id
8
+ # A string that identifies this specific request. Report it back to us to help us
9
+ # diagnose your issues.
10
+ #
11
+ # @return [String]
12
+ required :request_id, String
13
+
14
+ # @!attribute status
15
+ # The status of the events dispatch.
16
+ #
17
+ # @return [Symbol, PreludeSDK::Models::WatchSendEventsResponse::Status]
18
+ required :status, enum: -> { PreludeSDK::Models::WatchSendEventsResponse::Status }
19
+
20
+ # @!method initialize(request_id:, status:)
21
+ # Some parameter documentations has been truncated, see
22
+ # {PreludeSDK::Models::WatchSendEventsResponse} for more details.
23
+ #
24
+ # @param request_id [String] A string that identifies this specific request. Report it back to us to help us
25
+ #
26
+ # @param status [Symbol, PreludeSDK::Models::WatchSendEventsResponse::Status] The status of the events dispatch.
27
+
28
+ # The status of the events dispatch.
29
+ #
30
+ # @see PreludeSDK::Models::WatchSendEventsResponse#status
31
+ module Status
32
+ extend PreludeSDK::Internal::Type::Enum
33
+
34
+ SUCCESS = :success
35
+
36
+ # @!method self.values
37
+ # @return [Array<Symbol>]
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,229 @@
1
+ # frozen_string_literal: true
2
+
3
+ module PreludeSDK
4
+ module Models
5
+ # @see PreludeSDK::Resources::Watch#send_feedbacks
6
+ class WatchSendFeedbacksParams < PreludeSDK::Internal::Type::BaseModel
7
+ extend PreludeSDK::Internal::Type::RequestParameters::Converter
8
+ include PreludeSDK::Internal::Type::RequestParameters
9
+
10
+ # @!attribute feedbacks
11
+ # A list of feedbacks to send.
12
+ #
13
+ # @return [Array<PreludeSDK::Models::WatchSendFeedbacksParams::Feedback>]
14
+ required :feedbacks,
15
+ -> { PreludeSDK::Internal::Type::ArrayOf[PreludeSDK::WatchSendFeedbacksParams::Feedback] }
16
+
17
+ # @!method initialize(feedbacks:, request_options: {})
18
+ # @param feedbacks [Array<PreludeSDK::Models::WatchSendFeedbacksParams::Feedback>] A list of feedbacks to send.
19
+ #
20
+ # @param request_options [PreludeSDK::RequestOptions, Hash{Symbol=>Object}]
21
+
22
+ class Feedback < PreludeSDK::Internal::Type::BaseModel
23
+ # @!attribute target
24
+ # The feedback target. Only supports phone numbers for now.
25
+ #
26
+ # @return [PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Target]
27
+ required :target, -> { PreludeSDK::WatchSendFeedbacksParams::Feedback::Target }
28
+
29
+ # @!attribute type
30
+ # The type of feedback.
31
+ #
32
+ # @return [Symbol, PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Type]
33
+ required :type, enum: -> { PreludeSDK::WatchSendFeedbacksParams::Feedback::Type }
34
+
35
+ # @!attribute dispatch_id
36
+ # The identifier of the dispatch that came from the front-end SDK.
37
+ #
38
+ # @return [String, nil]
39
+ optional :dispatch_id, String
40
+
41
+ # @!attribute metadata
42
+ # The metadata for this feedback.
43
+ #
44
+ # @return [PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Metadata, nil]
45
+ optional :metadata, -> { PreludeSDK::WatchSendFeedbacksParams::Feedback::Metadata }
46
+
47
+ # @!attribute signals
48
+ # The signals used for anti-fraud. For more details, refer to
49
+ # [Signals](/verify/v2/documentation/prevent-fraud#signals).
50
+ #
51
+ # @return [PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Signals, nil]
52
+ optional :signals, -> { PreludeSDK::WatchSendFeedbacksParams::Feedback::Signals }
53
+
54
+ # @!method initialize(target:, type:, dispatch_id: nil, metadata: nil, signals: nil)
55
+ # Some parameter documentations has been truncated, see
56
+ # {PreludeSDK::Models::WatchSendFeedbacksParams::Feedback} for more details.
57
+ #
58
+ # @param target [PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Target] The feedback target. Only supports phone numbers for now.
59
+ #
60
+ # @param type [Symbol, PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Type] The type of feedback.
61
+ #
62
+ # @param dispatch_id [String] The identifier of the dispatch that came from the front-end SDK.
63
+ #
64
+ # @param metadata [PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Metadata] The metadata for this feedback.
65
+ #
66
+ # @param signals [PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Signals] The signals used for anti-fraud. For more details, refer to [Signals](/verify/v2
67
+
68
+ # @see PreludeSDK::Models::WatchSendFeedbacksParams::Feedback#target
69
+ class Target < PreludeSDK::Internal::Type::BaseModel
70
+ # @!attribute type
71
+ # The type of the target. Either "phone_number" or "email_address".
72
+ #
73
+ # @return [Symbol, PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Target::Type]
74
+ required :type, enum: -> { PreludeSDK::WatchSendFeedbacksParams::Feedback::Target::Type }
75
+
76
+ # @!attribute value
77
+ # An E.164 formatted phone number or an email address.
78
+ #
79
+ # @return [String]
80
+ required :value, String
81
+
82
+ # @!method initialize(type:, value:)
83
+ # The feedback target. Only supports phone numbers for now.
84
+ #
85
+ # @param type [Symbol, PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Target::Type] The type of the target. Either "phone_number" or "email_address".
86
+ #
87
+ # @param value [String] An E.164 formatted phone number or an email address.
88
+
89
+ # The type of the target. Either "phone_number" or "email_address".
90
+ #
91
+ # @see PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Target#type
92
+ module Type
93
+ extend PreludeSDK::Internal::Type::Enum
94
+
95
+ PHONE_NUMBER = :phone_number
96
+ EMAIL_ADDRESS = :email_address
97
+
98
+ # @!method self.values
99
+ # @return [Array<Symbol>]
100
+ end
101
+ end
102
+
103
+ # The type of feedback.
104
+ #
105
+ # @see PreludeSDK::Models::WatchSendFeedbacksParams::Feedback#type
106
+ module Type
107
+ extend PreludeSDK::Internal::Type::Enum
108
+
109
+ VERIFICATION_STARTED = :"verification.started"
110
+ VERIFICATION_COMPLETED = :"verification.completed"
111
+
112
+ # @!method self.values
113
+ # @return [Array<Symbol>]
114
+ end
115
+
116
+ # @see PreludeSDK::Models::WatchSendFeedbacksParams::Feedback#metadata
117
+ class Metadata < PreludeSDK::Internal::Type::BaseModel
118
+ # @!attribute correlation_id
119
+ # A user-defined identifier to correlate this feedback with.
120
+ #
121
+ # @return [String, nil]
122
+ optional :correlation_id, String
123
+
124
+ # @!method initialize(correlation_id: nil)
125
+ # The metadata for this feedback.
126
+ #
127
+ # @param correlation_id [String] A user-defined identifier to correlate this feedback with.
128
+ end
129
+
130
+ # @see PreludeSDK::Models::WatchSendFeedbacksParams::Feedback#signals
131
+ class Signals < PreludeSDK::Internal::Type::BaseModel
132
+ # @!attribute app_version
133
+ # The version of your application.
134
+ #
135
+ # @return [String, nil]
136
+ optional :app_version, String
137
+
138
+ # @!attribute device_id
139
+ # The unique identifier for the user's device. For Android, this corresponds to
140
+ # the `ANDROID_ID` and for iOS, this corresponds to the `identifierForVendor`.
141
+ #
142
+ # @return [String, nil]
143
+ optional :device_id, String
144
+
145
+ # @!attribute device_model
146
+ # The model of the user's device.
147
+ #
148
+ # @return [String, nil]
149
+ optional :device_model, String
150
+
151
+ # @!attribute device_platform
152
+ # The type of the user's device.
153
+ #
154
+ # @return [Symbol, PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Signals::DevicePlatform, nil]
155
+ optional :device_platform,
156
+ enum: -> { PreludeSDK::WatchSendFeedbacksParams::Feedback::Signals::DevicePlatform }
157
+
158
+ # @!attribute ip
159
+ # The IP address of the user's device.
160
+ #
161
+ # @return [String, nil]
162
+ optional :ip, String
163
+
164
+ # @!attribute is_trusted_user
165
+ # This signal should provide a higher level of trust, indicating that the user is
166
+ # genuine. Contact us to discuss your use case. For more details, refer to
167
+ # [Signals](/verify/v2/documentation/prevent-fraud#signals).
168
+ #
169
+ # @return [Boolean, nil]
170
+ optional :is_trusted_user, PreludeSDK::Internal::Type::Boolean
171
+
172
+ # @!attribute os_version
173
+ # The version of the user's device operating system.
174
+ #
175
+ # @return [String, nil]
176
+ optional :os_version, String
177
+
178
+ # @!attribute user_agent
179
+ # The user agent of the user's device. If the individual fields (os_version,
180
+ # device_platform, device_model) are provided, we will prioritize those values
181
+ # instead of parsing them from the user agent string.
182
+ #
183
+ # @return [String, nil]
184
+ optional :user_agent, String
185
+
186
+ # @!method initialize(app_version: nil, device_id: nil, device_model: nil, device_platform: nil, ip: nil, is_trusted_user: nil, os_version: nil, user_agent: nil)
187
+ # Some parameter documentations has been truncated, see
188
+ # {PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Signals} for more
189
+ # details.
190
+ #
191
+ # The signals used for anti-fraud. For more details, refer to
192
+ # [Signals](/verify/v2/documentation/prevent-fraud#signals).
193
+ #
194
+ # @param app_version [String] The version of your application.
195
+ #
196
+ # @param device_id [String] The unique identifier for the user's device. For Android, this corresponds to th
197
+ #
198
+ # @param device_model [String] The model of the user's device.
199
+ #
200
+ # @param device_platform [Symbol, PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Signals::DevicePlatform] The type of the user's device.
201
+ #
202
+ # @param ip [String] The IP address of the user's device.
203
+ #
204
+ # @param is_trusted_user [Boolean] This signal should provide a higher level of trust, indicating that the user is
205
+ #
206
+ # @param os_version [String] The version of the user's device operating system.
207
+ #
208
+ # @param user_agent [String] The user agent of the user's device. If the individual fields (os_version, devic
209
+
210
+ # The type of the user's device.
211
+ #
212
+ # @see PreludeSDK::Models::WatchSendFeedbacksParams::Feedback::Signals#device_platform
213
+ module DevicePlatform
214
+ extend PreludeSDK::Internal::Type::Enum
215
+
216
+ ANDROID = :android
217
+ IOS = :ios
218
+ IPADOS = :ipados
219
+ TVOS = :tvos
220
+ WEB = :web
221
+
222
+ # @!method self.values
223
+ # @return [Array<Symbol>]
224
+ end
225
+ end
226
+ end
227
+ end
228
+ end
229
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module PreludeSDK
4
+ module Models
5
+ # @see PreludeSDK::Resources::Watch#send_feedbacks
6
+ class WatchSendFeedbacksResponse < PreludeSDK::Internal::Type::BaseModel
7
+ # @!attribute request_id
8
+ # A string that identifies this specific request. Report it back to us to help us
9
+ # diagnose your issues.
10
+ #
11
+ # @return [String]
12
+ required :request_id, String
13
+
14
+ # @!attribute status
15
+ # The status of the feedbacks sending.
16
+ #
17
+ # @return [Symbol, PreludeSDK::Models::WatchSendFeedbacksResponse::Status]
18
+ required :status, enum: -> { PreludeSDK::Models::WatchSendFeedbacksResponse::Status }
19
+
20
+ # @!method initialize(request_id:, status:)
21
+ # Some parameter documentations has been truncated, see
22
+ # {PreludeSDK::Models::WatchSendFeedbacksResponse} for more details.
23
+ #
24
+ # @param request_id [String] A string that identifies this specific request. Report it back to us to help us
25
+ #
26
+ # @param status [Symbol, PreludeSDK::Models::WatchSendFeedbacksResponse::Status] The status of the feedbacks sending.
27
+
28
+ # The status of the feedbacks sending.
29
+ #
30
+ # @see PreludeSDK::Models::WatchSendFeedbacksResponse#status
31
+ module Status
32
+ extend PreludeSDK::Internal::Type::Enum
33
+
34
+ SUCCESS = :success
35
+
36
+ # @!method self.values
37
+ # @return [Array<Symbol>]
38
+ end
39
+ end
40
+ end
41
+ end