trinsic_api 2.0.2 → 2.1.0.pre.alpha1

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 (65) hide show
  1. checksums.yaml +4 -4
  2. data/docs/AttachmentsApi.md +2 -2
  3. data/docs/BangladeshNidInput.md +26 -0
  4. data/docs/BrazilDigitalCnhInput.md +1 -1
  5. data/docs/ContractField.md +20 -0
  6. data/docs/CreateAdvancedProviderSessionRequest.md +3 -3
  7. data/docs/CreateHostedProviderSessionRequest.md +1 -1
  8. data/docs/FieldAvailability.md +15 -0
  9. data/docs/HttpValidationProblemDetails.md +5 -5
  10. data/docs/NetworkApi.md +14 -9
  11. data/docs/ProblemDetails.md +5 -5
  12. data/docs/ProviderContract.md +6 -2
  13. data/docs/ProviderInfo.md +9 -1
  14. data/docs/ProviderInformation.md +16 -4
  15. data/docs/ProviderInput.md +13 -13
  16. data/docs/RecommendRequest.md +3 -1
  17. data/docs/RecommendResponse.md +3 -3
  18. data/docs/RefreshStepContentRequest.md +1 -1
  19. data/docs/Session.md +1 -1
  20. data/docs/SessionsApi.md +13 -13
  21. data/docs/SmartIdInput.md +3 -1
  22. data/docs/SubProviderMetadata.md +4 -2
  23. data/lib/trinsic_api/api/attachments_api.rb +3 -3
  24. data/lib/trinsic_api/api/network_api.rb +8 -5
  25. data/lib/trinsic_api/api/sessions_api.rb +11 -11
  26. data/lib/trinsic_api/models/bangladesh_nid_input.rb +350 -0
  27. data/lib/trinsic_api/models/brazil_digital_cnh_input.rb +1 -1
  28. data/lib/trinsic_api/models/{bangladesh_national_id_input.rb → contract_field.rb} +69 -36
  29. data/lib/trinsic_api/models/create_advanced_provider_session_request.rb +16 -16
  30. data/lib/trinsic_api/models/create_hosted_provider_session_request.rb +1 -1
  31. data/lib/trinsic_api/models/document_type.rb +2 -1
  32. data/lib/trinsic_api/models/field_availability.rb +41 -0
  33. data/lib/trinsic_api/models/http_validation_problem_details.rb +5 -0
  34. data/lib/trinsic_api/models/integration_capability.rb +2 -1
  35. data/lib/trinsic_api/models/problem_details.rb +5 -0
  36. data/lib/trinsic_api/models/provider_contract.rb +42 -2
  37. data/lib/trinsic_api/models/provider_info.rb +98 -4
  38. data/lib/trinsic_api/models/provider_information.rb +155 -4
  39. data/lib/trinsic_api/models/provider_input.rb +13 -13
  40. data/lib/trinsic_api/models/recommend_request.rb +16 -5
  41. data/lib/trinsic_api/models/recommend_response.rb +3 -3
  42. data/lib/trinsic_api/models/refresh_step_content_request.rb +26 -1
  43. data/lib/trinsic_api/models/session.rb +1 -1
  44. data/lib/trinsic_api/models/smart_id_input.rb +16 -5
  45. data/lib/trinsic_api/models/sub_provider_metadata.rb +29 -2
  46. data/lib/trinsic_api/version.rb +1 -1
  47. data/lib/trinsic_api.rb +3 -2
  48. data/spec/api/attachments_api_spec.rb +1 -1
  49. data/spec/api/network_api_spec.rb +2 -1
  50. data/spec/api/sessions_api_spec.rb +1 -1
  51. data/spec/models/{bangladesh_national_id_input_spec.rb → bangladesh_nid_input_spec.rb} +13 -7
  52. data/spec/models/contract_field_spec.rb +42 -0
  53. data/spec/models/create_advanced_provider_session_request_spec.rb +4 -4
  54. data/spec/models/field_availability_spec.rb +30 -0
  55. data/spec/models/provider_contract_spec.rb +12 -0
  56. data/spec/models/provider_info_spec.rb +24 -0
  57. data/spec/models/provider_information_spec.rb +36 -0
  58. data/spec/models/recommend_request_spec.rb +6 -0
  59. data/spec/models/smart_id_input_spec.rb +6 -0
  60. data/spec/models/sub_provider_metadata_spec.rb +6 -0
  61. metadata +67 -63
  62. data/docs/BangladeshNationalIdInput.md +0 -24
  63. data/docs/WellKnownApi.md +0 -71
  64. data/lib/trinsic_api/api/well_known_api.rb +0 -75
  65. data/spec/api/well_known_api_spec.rb +0 -44
@@ -14,26 +14,41 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module TrinsicApi
17
- class BangladeshNationalIdInput
18
- # The user's Bangladesh National ID number.
19
- attr_accessor :national_id_number
20
-
21
- # The user's date of birth, in `YYYY-MM-DD` format
22
- attr_accessor :date_of_birth
23
-
24
- # The user's full name
17
+ # Information about a field that a Provider will return in verification results.
18
+ class ContractField
19
+ # The name of the field as it appears in verification results.
25
20
  attr_accessor :name
26
21
 
27
- # The base64-encoded bytes of the photo collected from the user
28
- attr_accessor :photo_base64
22
+ # Indicates when this field will be present in verification results.
23
+ attr_accessor :outputted
24
+
25
+ class EnumAttributeValidator
26
+ attr_reader :datatype
27
+ attr_reader :allowable_values
28
+
29
+ def initialize(datatype, allowable_values)
30
+ @allowable_values = allowable_values.map do |value|
31
+ case datatype.to_s
32
+ when /Integer/i
33
+ value.to_i
34
+ when /Float/i
35
+ value.to_f
36
+ else
37
+ value
38
+ end
39
+ end
40
+ end
41
+
42
+ def valid?(value)
43
+ !value || allowable_values.include?(value)
44
+ end
45
+ end
29
46
 
30
47
  # Attribute mapping from ruby-style variable name to JSON key.
31
48
  def self.attribute_map
32
49
  {
33
- :'national_id_number' => :'nationalIdNumber',
34
- :'date_of_birth' => :'dateOfBirth',
35
50
  :'name' => :'name',
36
- :'photo_base64' => :'photoBase64'
51
+ :'outputted' => :'outputted'
37
52
  }
38
53
  end
39
54
 
@@ -50,20 +65,14 @@ module TrinsicApi
50
65
  # Attribute type mapping.
51
66
  def self.openapi_types
52
67
  {
53
- :'national_id_number' => :'String',
54
- :'date_of_birth' => :'Date',
55
68
  :'name' => :'String',
56
- :'photo_base64' => :'String'
69
+ :'outputted' => :'FieldAvailability'
57
70
  }
58
71
  end
59
72
 
60
73
  # List of attributes with nullable: true
61
74
  def self.openapi_nullable
62
75
  Set.new([
63
- :'national_id_number',
64
- :'date_of_birth',
65
- :'name',
66
- :'photo_base64'
67
76
  ])
68
77
  end
69
78
 
@@ -71,32 +80,28 @@ module TrinsicApi
71
80
  # @param [Hash] attributes Model attributes in the form of hash
72
81
  def initialize(attributes = {})
73
82
  if (!attributes.is_a?(Hash))
74
- fail ArgumentError, "The input argument (attributes) must be a hash in `TrinsicApi::BangladeshNationalIdInput` initialize method"
83
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TrinsicApi::ContractField` initialize method"
75
84
  end
76
85
 
77
86
  # check to see if the attribute exists and convert string to symbol for hash key
78
87
  acceptable_attribute_map = self.class.acceptable_attribute_map
79
88
  attributes = attributes.each_with_object({}) { |(k, v), h|
80
89
  if (!acceptable_attribute_map.key?(k.to_sym))
81
- fail ArgumentError, "`#{k}` is not a valid attribute in `TrinsicApi::BangladeshNationalIdInput`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
90
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TrinsicApi::ContractField`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
82
91
  end
83
92
  h[k.to_sym] = v
84
93
  }
85
94
 
86
- if attributes.key?(:'national_id_number')
87
- self.national_id_number = attributes[:'national_id_number']
88
- end
89
-
90
- if attributes.key?(:'date_of_birth')
91
- self.date_of_birth = attributes[:'date_of_birth']
92
- end
93
-
94
95
  if attributes.key?(:'name')
95
96
  self.name = attributes[:'name']
97
+ else
98
+ self.name = nil
96
99
  end
97
100
 
98
- if attributes.key?(:'photo_base64')
99
- self.photo_base64 = attributes[:'photo_base64']
101
+ if attributes.key?(:'outputted')
102
+ self.outputted = attributes[:'outputted']
103
+ else
104
+ self.outputted = nil
100
105
  end
101
106
  end
102
107
 
@@ -105,6 +110,14 @@ module TrinsicApi
105
110
  def list_invalid_properties
106
111
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
107
112
  invalid_properties = Array.new
113
+ if @name.nil?
114
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
115
+ end
116
+
117
+ if @outputted.nil?
118
+ invalid_properties.push('invalid value for "outputted", outputted cannot be nil.')
119
+ end
120
+
108
121
  invalid_properties
109
122
  end
110
123
 
@@ -112,18 +125,38 @@ module TrinsicApi
112
125
  # @return true if the model is valid
113
126
  def valid?
114
127
  warn '[DEPRECATED] the `valid?` method is obsolete'
128
+ return false if @name.nil?
129
+ return false if @outputted.nil?
115
130
  true
116
131
  end
117
132
 
133
+ # Custom attribute writer method with validation
134
+ # @param [Object] name Value to be assigned
135
+ def name=(name)
136
+ if name.nil?
137
+ fail ArgumentError, 'name cannot be nil'
138
+ end
139
+
140
+ @name = name
141
+ end
142
+
143
+ # Custom attribute writer method with validation
144
+ # @param [Object] outputted Value to be assigned
145
+ def outputted=(outputted)
146
+ if outputted.nil?
147
+ fail ArgumentError, 'outputted cannot be nil'
148
+ end
149
+
150
+ @outputted = outputted
151
+ end
152
+
118
153
  # Checks equality by comparing each attribute.
119
154
  # @param [Object] Object to be compared
120
155
  def ==(o)
121
156
  return true if self.equal?(o)
122
157
  self.class == o.class &&
123
- national_id_number == o.national_id_number &&
124
- date_of_birth == o.date_of_birth &&
125
158
  name == o.name &&
126
- photo_base64 == o.photo_base64
159
+ outputted == o.outputted
127
160
  end
128
161
 
129
162
  # @see the `==` method
@@ -135,7 +168,7 @@ module TrinsicApi
135
168
  # Calculates hash code according to all attributes.
136
169
  # @return [Integer] Hash code
137
170
  def hash
138
- [national_id_number, date_of_birth, name, photo_base64].hash
171
+ [name, outputted].hash
139
172
  end
140
173
 
141
174
  # Builds the object from hash
@@ -18,9 +18,6 @@ module TrinsicApi
18
18
  # The ID of the provider to launch
19
19
  attr_accessor :provider
20
20
 
21
- # Provider-specific input for those providers which require it.
22
- attr_accessor :provider_input
23
-
24
21
  # The Redirect URL to which the user should be sent after the session is complete. This field is required for providers which employ a redirect-based flow.
25
22
  attr_accessor :redirect_url
26
23
 
@@ -30,14 +27,17 @@ module TrinsicApi
30
27
  # Whether the session should fall back to a Trinsic-hosted UI in certain instances. Specifically, fallback will occur if any of the following are true: - You attempted to launch a provider which requires a capability you did not express support for - In this case, Trinsic's hosted UI will perform the necessary capability - You attempted to launch a provider which requires input, and the input was either not provided or incomplete - In this case, Trinsic's hosted UI will collect the necessary input from the user If fallback occurs, the session's NextStep will always be LaunchBrowser, and the CollectionMethod will always be CaptureRedirect. If this field is set to `true`, you must also: 1. Set the `RedirectUrl` field to a non-empty value 2. Include the `LaunchBrowser` and `CaptureRedirect` capabilities in the `Capabilities` field
31
28
  attr_accessor :fallback_to_hosted_ui
32
29
 
30
+ # Provider-specific input for those providers which require it.
31
+ attr_accessor :provider_input
32
+
33
33
  # Attribute mapping from ruby-style variable name to JSON key.
34
34
  def self.attribute_map
35
35
  {
36
36
  :'provider' => :'provider',
37
- :'provider_input' => :'providerInput',
38
37
  :'redirect_url' => :'redirectUrl',
39
38
  :'capabilities' => :'capabilities',
40
- :'fallback_to_hosted_ui' => :'fallbackToHostedUI'
39
+ :'fallback_to_hosted_ui' => :'fallbackToHostedUI',
40
+ :'provider_input' => :'providerInput'
41
41
  }
42
42
  end
43
43
 
@@ -55,19 +55,19 @@ module TrinsicApi
55
55
  def self.openapi_types
56
56
  {
57
57
  :'provider' => :'String',
58
- :'provider_input' => :'ProviderInput',
59
58
  :'redirect_url' => :'String',
60
59
  :'capabilities' => :'Array<IntegrationCapability>',
61
- :'fallback_to_hosted_ui' => :'Boolean'
60
+ :'fallback_to_hosted_ui' => :'Boolean',
61
+ :'provider_input' => :'ProviderInput'
62
62
  }
63
63
  end
64
64
 
65
65
  # List of attributes with nullable: true
66
66
  def self.openapi_nullable
67
67
  Set.new([
68
- :'provider_input',
69
68
  :'redirect_url',
70
- :'fallback_to_hosted_ui'
69
+ :'fallback_to_hosted_ui',
70
+ :'provider_input'
71
71
  ])
72
72
  end
73
73
 
@@ -93,10 +93,6 @@ module TrinsicApi
93
93
  self.provider = nil
94
94
  end
95
95
 
96
- if attributes.key?(:'provider_input')
97
- self.provider_input = attributes[:'provider_input']
98
- end
99
-
100
96
  if attributes.key?(:'redirect_url')
101
97
  self.redirect_url = attributes[:'redirect_url']
102
98
  end
@@ -112,6 +108,10 @@ module TrinsicApi
112
108
  if attributes.key?(:'fallback_to_hosted_ui')
113
109
  self.fallback_to_hosted_ui = attributes[:'fallback_to_hosted_ui']
114
110
  end
111
+
112
+ if attributes.key?(:'provider_input')
113
+ self.provider_input = attributes[:'provider_input']
114
+ end
115
115
  end
116
116
 
117
117
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -183,10 +183,10 @@ module TrinsicApi
183
183
  return true if self.equal?(o)
184
184
  self.class == o.class &&
185
185
  provider == o.provider &&
186
- provider_input == o.provider_input &&
187
186
  redirect_url == o.redirect_url &&
188
187
  capabilities == o.capabilities &&
189
- fallback_to_hosted_ui == o.fallback_to_hosted_ui
188
+ fallback_to_hosted_ui == o.fallback_to_hosted_ui &&
189
+ provider_input == o.provider_input
190
190
  end
191
191
 
192
192
  # @see the `==` method
@@ -198,7 +198,7 @@ module TrinsicApi
198
198
  # Calculates hash code according to all attributes.
199
199
  # @return [Integer] Hash code
200
200
  def hash
201
- [provider, provider_input, redirect_url, capabilities, fallback_to_hosted_ui].hash
201
+ [provider, redirect_url, capabilities, fallback_to_hosted_ui, provider_input].hash
202
202
  end
203
203
 
204
204
  # Builds the object from hash
@@ -21,7 +21,7 @@ module TrinsicApi
21
21
  # The Redirect URL to which the user should be sent after the session is complete.
22
22
  attr_accessor :redirect_url
23
23
 
24
- # Provider-specific input for those providers which require it.
24
+ # Provider-specific input for those providers which require it. <b>Deprecated:</b> In the future, Hosted Provider Sessions will not accept input on creation, and will instead always redirect the user to a hosted interface to collect input. If you need to collect input from the user yourself, please use the Create Advanced Session endpoint instead.
25
25
  attr_accessor :provider_input
26
26
 
27
27
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -19,9 +19,10 @@ module TrinsicApi
19
19
  DRIVERS_LICENSE = "DriversLicense".freeze
20
20
  NATIONAL_ID = "NationalId".freeze
21
21
  ID_CARD = "IdCard".freeze
22
+ OTHER = "Other".freeze
22
23
 
23
24
  def self.all_vars
24
- @all_vars ||= [PASSPORT, DRIVERS_LICENSE, NATIONAL_ID, ID_CARD].freeze
25
+ @all_vars ||= [PASSPORT, DRIVERS_LICENSE, NATIONAL_ID, ID_CARD, OTHER].freeze
25
26
  end
26
27
 
27
28
  # Builds the enum from string
@@ -0,0 +1,41 @@
1
+ =begin
2
+ #Trinsic API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: v1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.13.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TrinsicApi
17
+ class FieldAvailability
18
+ NEVER = "Never".freeze
19
+ SOMETIMES = "Sometimes".freeze
20
+ ALWAYS = "Always".freeze
21
+
22
+ def self.all_vars
23
+ @all_vars ||= [NEVER, SOMETIMES, ALWAYS].freeze
24
+ end
25
+
26
+ # Builds the enum from string
27
+ # @param [String] The enum value in the form of the string
28
+ # @return [String] The enum value
29
+ def self.build_from_hash(value)
30
+ new.build_from_hash(value)
31
+ end
32
+
33
+ # Builds the enum from string
34
+ # @param [String] The enum value in the form of the string
35
+ # @return [String] The enum value
36
+ def build_from_hash(value)
37
+ return value if FieldAvailability.all_vars.include?(value)
38
+ raise "Invalid ENUM value #{value} for class #FieldAvailability"
39
+ end
40
+ end
41
+ end
@@ -15,14 +15,19 @@ require 'time'
15
15
 
16
16
  module TrinsicApi
17
17
  class HttpValidationProblemDetails
18
+ # A URI reference that identifies the problem type.
18
19
  attr_accessor :type
19
20
 
21
+ # A short, human-readable summary of the error.
20
22
  attr_accessor :title
21
23
 
24
+ # The HTTP status code returned for the request.
22
25
  attr_accessor :status
23
26
 
27
+ # A human-readable explanation specific of the problem.
24
28
  attr_accessor :detail
25
29
 
30
+ # A URI reference that identifies the specific occurrence of the problem.
26
31
  attr_accessor :instance
27
32
 
28
33
  attr_accessor :errors
@@ -21,9 +21,10 @@ module TrinsicApi
21
21
  REFRESH_STEP_CONTENT = "RefreshStepContent".freeze
22
22
  CAPTURE_REDIRECT = "CaptureRedirect".freeze
23
23
  POLL_RESULT = "PollResult".freeze
24
+ POLL_AFTER_REDIRECT = "PollAfterRedirect".freeze
24
25
 
25
26
  def self.all_vars
26
- @all_vars ||= [LAUNCH_BROWSER, DEEPLINK_TO_MOBILE, SHOW_CONTENT, REFRESH_STEP_CONTENT, CAPTURE_REDIRECT, POLL_RESULT].freeze
27
+ @all_vars ||= [LAUNCH_BROWSER, DEEPLINK_TO_MOBILE, SHOW_CONTENT, REFRESH_STEP_CONTENT, CAPTURE_REDIRECT, POLL_RESULT, POLL_AFTER_REDIRECT].freeze
27
28
  end
28
29
 
29
30
  # Builds the enum from string
@@ -15,14 +15,19 @@ require 'time'
15
15
 
16
16
  module TrinsicApi
17
17
  class ProblemDetails
18
+ # A URI reference that identifies the problem type.
18
19
  attr_accessor :type
19
20
 
21
+ # A short, human-readable summary of the error.
20
22
  attr_accessor :title
21
23
 
24
+ # The HTTP status code returned for the request.
22
25
  attr_accessor :status
23
26
 
27
+ # A human-readable explanation specific of the problem.
24
28
  attr_accessor :detail
25
29
 
30
+ # A URI reference that identifies the specific occurrence of the problem.
26
31
  attr_accessor :instance
27
32
 
28
33
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -21,6 +21,9 @@ module TrinsicApi
21
21
  # The Provider's Name as it appears in Trinsic's Dashboard and Widget
22
22
  attr_accessor :name
23
23
 
24
+ # The Provider's subtext recommended to be shown next to the name. This is flavor text, not a full, human-readable description of the provider.
25
+ attr_accessor :subtext
26
+
24
27
  # The Provider's description as it appears in Trinsic's Widget. This is flavor text, not a full, human-readable description of the provider.
25
28
  attr_accessor :description
26
29
 
@@ -42,7 +45,7 @@ module TrinsicApi
42
45
  # Relevant only to Advanced Provider Sessions. The `CollectionMethod` which must be supported to launch the Provider Session in Advanced Provider Sessions.
43
46
  attr_accessor :collection_method
44
47
 
45
- # If `true`, then the results for this Provider may not be available immediately after the user is redirected back to your application. In this case, the `GetSessionResults` API must be called until results are available. This is an uncommon scenario, and typically only applies to Providers which use a biometric check or traditional document scan.
48
+ # If `true`, then the results for this Provider may not be available immediately after the user is redirected back to your application. In this case, the `GetSessionResults` API must be called until results are available. This is an uncommon scenario, and only applies to Providers which cannot guarantee the availability of results immediately after the user is redirected back to your application.
46
49
  attr_accessor :results_may_be_delayed_after_redirect
47
50
 
48
51
  # Relevant only to Advanced Provider Sessions. Whether the Provider requires the `RefreshStepContent` capability. For example, Samsung Wallet's deep links expire every 30 seconds, and must be refreshed periodically for a resilient user flow.
@@ -57,6 +60,9 @@ module TrinsicApi
57
60
  # Whether this Provider can be fully whitelabeled/OEMed through the Advanced Provider Sessions API. If `false`, the Provider may still be launched through Advanced Provider Sessions; however, it will necessarily require a Trinsic-hosted UI to function.
58
61
  attr_accessor :supports_advanced_provider_sessions
59
62
 
63
+ # Information about the fields that this Provider will return in verification results.
64
+ attr_accessor :available_fields
65
+
60
66
  # Metadata about the sub-providers which are available for this Provider. For example, Italy's SPID is a Provider which aggregates access to multiple sub-providers.
61
67
  attr_accessor :sub_providers
62
68
 
@@ -90,6 +96,7 @@ module TrinsicApi
90
96
  {
91
97
  :'id' => :'id',
92
98
  :'name' => :'name',
99
+ :'subtext' => :'subtext',
93
100
  :'description' => :'description',
94
101
  :'logo_url' => :'logoUrl',
95
102
  :'available' => :'available',
@@ -102,6 +109,7 @@ module TrinsicApi
102
109
  :'requires_input' => :'requiresInput',
103
110
  :'has_trinsic_interface' => :'hasTrinsicInterface',
104
111
  :'supports_advanced_provider_sessions' => :'supportsAdvancedProviderSessions',
112
+ :'available_fields' => :'availableFields',
105
113
  :'sub_providers' => :'subProviders',
106
114
  :'health' => :'health'
107
115
  }
@@ -122,6 +130,7 @@ module TrinsicApi
122
130
  {
123
131
  :'id' => :'String',
124
132
  :'name' => :'String',
133
+ :'subtext' => :'String',
125
134
  :'description' => :'String',
126
135
  :'logo_url' => :'String',
127
136
  :'available' => :'Boolean',
@@ -134,6 +143,7 @@ module TrinsicApi
134
143
  :'requires_input' => :'Boolean',
135
144
  :'has_trinsic_interface' => :'Boolean',
136
145
  :'supports_advanced_provider_sessions' => :'Boolean',
146
+ :'available_fields' => :'Array<ContractField>',
137
147
  :'sub_providers' => :'Array<SubProviderMetadata>',
138
148
  :'health' => :'ProviderHealth'
139
149
  }
@@ -142,6 +152,7 @@ module TrinsicApi
142
152
  # List of attributes with nullable: true
143
153
  def self.openapi_nullable
144
154
  Set.new([
155
+ :'available_fields',
145
156
  :'sub_providers',
146
157
  ])
147
158
  end
@@ -174,6 +185,12 @@ module TrinsicApi
174
185
  self.name = nil
175
186
  end
176
187
 
188
+ if attributes.key?(:'subtext')
189
+ self.subtext = attributes[:'subtext']
190
+ else
191
+ self.subtext = nil
192
+ end
193
+
177
194
  if attributes.key?(:'description')
178
195
  self.description = attributes[:'description']
179
196
  else
@@ -250,6 +267,12 @@ module TrinsicApi
250
267
  self.supports_advanced_provider_sessions = nil
251
268
  end
252
269
 
270
+ if attributes.key?(:'available_fields')
271
+ if (value = attributes[:'available_fields']).is_a?(Array)
272
+ self.available_fields = value
273
+ end
274
+ end
275
+
253
276
  if attributes.key?(:'sub_providers')
254
277
  if (value = attributes[:'sub_providers']).is_a?(Array)
255
278
  self.sub_providers = value
@@ -276,6 +299,10 @@ module TrinsicApi
276
299
  invalid_properties.push('invalid value for "name", name cannot be nil.')
277
300
  end
278
301
 
302
+ if @subtext.nil?
303
+ invalid_properties.push('invalid value for "subtext", subtext cannot be nil.')
304
+ end
305
+
279
306
  if @description.nil?
280
307
  invalid_properties.push('invalid value for "description", description cannot be nil.')
281
308
  end
@@ -337,6 +364,7 @@ module TrinsicApi
337
364
  warn '[DEPRECATED] the `valid?` method is obsolete'
338
365
  return false if @id.nil?
339
366
  return false if @name.nil?
367
+ return false if @subtext.nil?
340
368
  return false if @description.nil?
341
369
  return false if @logo_url.nil?
342
370
  return false if @available.nil?
@@ -373,6 +401,16 @@ module TrinsicApi
373
401
  @name = name
374
402
  end
375
403
 
404
+ # Custom attribute writer method with validation
405
+ # @param [Object] subtext Value to be assigned
406
+ def subtext=(subtext)
407
+ if subtext.nil?
408
+ fail ArgumentError, 'subtext cannot be nil'
409
+ end
410
+
411
+ @subtext = subtext
412
+ end
413
+
376
414
  # Custom attribute writer method with validation
377
415
  # @param [Object] description Value to be assigned
378
416
  def description=(description)
@@ -510,6 +548,7 @@ module TrinsicApi
510
548
  self.class == o.class &&
511
549
  id == o.id &&
512
550
  name == o.name &&
551
+ subtext == o.subtext &&
513
552
  description == o.description &&
514
553
  logo_url == o.logo_url &&
515
554
  available == o.available &&
@@ -522,6 +561,7 @@ module TrinsicApi
522
561
  requires_input == o.requires_input &&
523
562
  has_trinsic_interface == o.has_trinsic_interface &&
524
563
  supports_advanced_provider_sessions == o.supports_advanced_provider_sessions &&
564
+ available_fields == o.available_fields &&
525
565
  sub_providers == o.sub_providers &&
526
566
  health == o.health
527
567
  end
@@ -535,7 +575,7 @@ module TrinsicApi
535
575
  # Calculates hash code according to all attributes.
536
576
  # @return [Integer] Hash code
537
577
  def hash
538
- [id, name, description, logo_url, available, geography, regions, launch_method, collection_method, results_may_be_delayed_after_redirect, has_refreshable_content, requires_input, has_trinsic_interface, supports_advanced_provider_sessions, sub_providers, health].hash
578
+ [id, name, subtext, description, logo_url, available, geography, regions, launch_method, collection_method, results_may_be_delayed_after_redirect, has_refreshable_content, requires_input, has_trinsic_interface, supports_advanced_provider_sessions, available_fields, sub_providers, health].hash
539
579
  end
540
580
 
541
581
  # Builds the object from hash