pescheck 0.0.1

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 (143) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +193 -0
  4. data/Rakefile +10 -0
  5. data/docs/AuthenticationApi.md +217 -0
  6. data/docs/ChecksApi.md +147 -0
  7. data/docs/CustomTokenObtainPair.md +20 -0
  8. data/docs/DivisionReadOnly.md +46 -0
  9. data/docs/DivisionWrite.md +40 -0
  10. data/docs/DivisionsApi.md +369 -0
  11. data/docs/JWTGeneration.md +24 -0
  12. data/docs/JWTResponse.md +28 -0
  13. data/docs/OAuthApi.md +213 -0
  14. data/docs/OAuthApplication.md +26 -0
  15. data/docs/OAuthApplicationResponse.md +32 -0
  16. data/docs/PaginatedDivisionReadOnlyList.md +24 -0
  17. data/docs/PaginatedV2ProfileListItemList.md +24 -0
  18. data/docs/PaginatedV2ScreeningListItemList.md +24 -0
  19. data/docs/PatchedDivisionWrite.md +40 -0
  20. data/docs/PatchedV2ProfilePartialUpdate.md +20 -0
  21. data/docs/ProfilesApi.md +438 -0
  22. data/docs/ScreeningsApi.md +293 -0
  23. data/docs/TokenRefresh.md +20 -0
  24. data/docs/V2Candidate.md +36 -0
  25. data/docs/V2CheckField.md +26 -0
  26. data/docs/V2CheckInfo.md +40 -0
  27. data/docs/V2Document.md +28 -0
  28. data/docs/V2DocumentContent.md +20 -0
  29. data/docs/V2Money.md +20 -0
  30. data/docs/V2ProfileCheck.md +20 -0
  31. data/docs/V2ProfileCheckEntry.md +30 -0
  32. data/docs/V2ProfileCreate.md +22 -0
  33. data/docs/V2ProfileDetail.md +38 -0
  34. data/docs/V2ProfileListItem.md +30 -0
  35. data/docs/V2ProfileUpdate.md +22 -0
  36. data/docs/V2ProfileUpdateCheck.md +22 -0
  37. data/docs/V2ScreeningCheck.md +24 -0
  38. data/docs/V2ScreeningCheckEntry.md +34 -0
  39. data/docs/V2ScreeningCheckListItem.md +22 -0
  40. data/docs/V2ScreeningCreate.md +22 -0
  41. data/docs/V2ScreeningDetail.md +34 -0
  42. data/docs/V2ScreeningDetailProfile.md +20 -0
  43. data/docs/V2ScreeningListItem.md +34 -0
  44. data/docs/VerifyWebhook.md +18 -0
  45. data/docs/Webhook.md +26 -0
  46. data/docs/WebhookResponse.md +36 -0
  47. data/docs/WebhooksApi.md +290 -0
  48. data/git_push.sh +57 -0
  49. data/lib/pescheck/api/authentication_api.rb +220 -0
  50. data/lib/pescheck/api/checks_api.rb +144 -0
  51. data/lib/pescheck/api/divisions_api.rb +365 -0
  52. data/lib/pescheck/api/o_auth_api.rb +202 -0
  53. data/lib/pescheck/api/profiles_api.rb +432 -0
  54. data/lib/pescheck/api/screenings_api.rb +288 -0
  55. data/lib/pescheck/api/webhooks_api.rb +278 -0
  56. data/lib/pescheck/api_client.rb +441 -0
  57. data/lib/pescheck/api_error.rb +58 -0
  58. data/lib/pescheck/api_model_base.rb +88 -0
  59. data/lib/pescheck/configuration.rb +429 -0
  60. data/lib/pescheck/models/custom_token_obtain_pair.rb +191 -0
  61. data/lib/pescheck/models/division_read_only.rb +469 -0
  62. data/lib/pescheck/models/division_write.rb +436 -0
  63. data/lib/pescheck/models/jwt_generation.rb +213 -0
  64. data/lib/pescheck/models/jwt_response.rb +285 -0
  65. data/lib/pescheck/models/o_auth_application.rb +265 -0
  66. data/lib/pescheck/models/o_auth_application_response.rb +379 -0
  67. data/lib/pescheck/models/paginated_division_read_only_list.rb +216 -0
  68. data/lib/pescheck/models/paginated_v2_profile_list_item_list.rb +216 -0
  69. data/lib/pescheck/models/paginated_v2_screening_list_item_list.rb +216 -0
  70. data/lib/pescheck/models/patched_division_write.rb +360 -0
  71. data/lib/pescheck/models/patched_v2_profile_partial_update.rb +176 -0
  72. data/lib/pescheck/models/token_refresh.rb +173 -0
  73. data/lib/pescheck/models/v2_candidate.rb +390 -0
  74. data/lib/pescheck/models/v2_check_field.rb +246 -0
  75. data/lib/pescheck/models/v2_check_info.rb +438 -0
  76. data/lib/pescheck/models/v2_document.rb +308 -0
  77. data/lib/pescheck/models/v2_document_content.rb +175 -0
  78. data/lib/pescheck/models/v2_money.rb +210 -0
  79. data/lib/pescheck/models/v2_profile_check.rb +201 -0
  80. data/lib/pescheck/models/v2_profile_check_entry.rb +349 -0
  81. data/lib/pescheck/models/v2_profile_create.rb +212 -0
  82. data/lib/pescheck/models/v2_profile_detail.rb +401 -0
  83. data/lib/pescheck/models/v2_profile_list_item.rb +291 -0
  84. data/lib/pescheck/models/v2_profile_update.rb +213 -0
  85. data/lib/pescheck/models/v2_profile_update_check.rb +210 -0
  86. data/lib/pescheck/models/v2_screening_check.rb +221 -0
  87. data/lib/pescheck/models/v2_screening_check_entry.rb +376 -0
  88. data/lib/pescheck/models/v2_screening_check_list_item.rb +242 -0
  89. data/lib/pescheck/models/v2_screening_create.rb +201 -0
  90. data/lib/pescheck/models/v2_screening_detail.rb +348 -0
  91. data/lib/pescheck/models/v2_screening_detail_profile.rb +156 -0
  92. data/lib/pescheck/models/v2_screening_list_item.rb +330 -0
  93. data/lib/pescheck/models/verify_webhook.rb +166 -0
  94. data/lib/pescheck/models/webhook.rb +265 -0
  95. data/lib/pescheck/models/webhook_response.rb +353 -0
  96. data/lib/pescheck/version.rb +15 -0
  97. data/lib/pescheck.rb +83 -0
  98. data/pescheck.gemspec +41 -0
  99. data/spec/api/authentication_api_spec.rb +68 -0
  100. data/spec/api/checks_api_spec.rb +56 -0
  101. data/spec/api/divisions_api_spec.rb +94 -0
  102. data/spec/api/o_auth_api_spec.rb +67 -0
  103. data/spec/api/profiles_api_spec.rb +105 -0
  104. data/spec/api/screenings_api_spec.rb +81 -0
  105. data/spec/api/webhooks_api_spec.rb +81 -0
  106. data/spec/models/custom_token_obtain_pair_spec.rb +42 -0
  107. data/spec/models/division_read_only_spec.rb +120 -0
  108. data/spec/models/division_write_spec.rb +102 -0
  109. data/spec/models/jwt_generation_spec.rb +54 -0
  110. data/spec/models/jwt_response_spec.rb +66 -0
  111. data/spec/models/o_auth_application_response_spec.rb +86 -0
  112. data/spec/models/o_auth_application_spec.rb +68 -0
  113. data/spec/models/paginated_division_read_only_list_spec.rb +54 -0
  114. data/spec/models/paginated_v2_profile_list_item_list_spec.rb +54 -0
  115. data/spec/models/paginated_v2_screening_list_item_list_spec.rb +54 -0
  116. data/spec/models/patched_division_write_spec.rb +102 -0
  117. data/spec/models/patched_v2_profile_partial_update_spec.rb +42 -0
  118. data/spec/models/token_refresh_spec.rb +42 -0
  119. data/spec/models/v2_candidate_spec.rb +94 -0
  120. data/spec/models/v2_check_field_spec.rb +60 -0
  121. data/spec/models/v2_check_info_spec.rb +102 -0
  122. data/spec/models/v2_document_content_spec.rb +42 -0
  123. data/spec/models/v2_document_spec.rb +70 -0
  124. data/spec/models/v2_money_spec.rb +42 -0
  125. data/spec/models/v2_profile_check_entry_spec.rb +76 -0
  126. data/spec/models/v2_profile_check_spec.rb +46 -0
  127. data/spec/models/v2_profile_create_spec.rb +48 -0
  128. data/spec/models/v2_profile_detail_spec.rb +96 -0
  129. data/spec/models/v2_profile_list_item_spec.rb +72 -0
  130. data/spec/models/v2_profile_update_check_spec.rb +52 -0
  131. data/spec/models/v2_profile_update_spec.rb +48 -0
  132. data/spec/models/v2_screening_check_entry_spec.rb +88 -0
  133. data/spec/models/v2_screening_check_list_item_spec.rb +52 -0
  134. data/spec/models/v2_screening_check_spec.rb +58 -0
  135. data/spec/models/v2_screening_create_spec.rb +48 -0
  136. data/spec/models/v2_screening_detail_profile_spec.rb +42 -0
  137. data/spec/models/v2_screening_detail_spec.rb +84 -0
  138. data/spec/models/v2_screening_list_item_spec.rb +84 -0
  139. data/spec/models/verify_webhook_spec.rb +36 -0
  140. data/spec/models/webhook_response_spec.rb +90 -0
  141. data/spec/models/webhook_spec.rb +64 -0
  142. data/spec/spec_helper.rb +111 -0
  143. metadata +302 -0
@@ -0,0 +1,265 @@
1
+ =begin
2
+ #Pescheck API
3
+
4
+ #API for Pescheck ## Authentication This API supports three authentication methods: 1. **OAuth2** (recommended for API clients) - Use client credentials flow 2. **JWT Bearer** (for user-based access) - Obtain tokens via /api/jwt/ endpoint 3. **Cookie** (for browser-based access) - Session authentication via web login ## Quick Start for API Clients 1. Select your environment from the servers dropdown 2. Use OAuth2 with client credentials flow 3. Scopes are automatically included: read:api, create:api, update:api
5
+
6
+ The version of the OpenAPI document: 2.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Pescheck
17
+ # Serializer for webhook creation/update requests
18
+ class Webhook < ApiModelBase
19
+ # Descriptive name for this webhook
20
+ attr_accessor :name
21
+
22
+ # HTTPS URL where webhook events will be sent
23
+ attr_accessor :url
24
+
25
+ # List of events to subscribe to. Valid events: check.status_changed, screening.status_changed, screening.archived, package.created, package.updated, profile.created, profile.updated, division.created, division.updated
26
+ attr_accessor :events
27
+
28
+ # Whether the webhook is active
29
+ attr_accessor :active
30
+
31
+ # Division ID to create webhook for (optional)
32
+ attr_accessor :division_id
33
+
34
+ class EnumAttributeValidator
35
+ attr_reader :datatype
36
+ attr_reader :allowable_values
37
+
38
+ def initialize(datatype, allowable_values)
39
+ @allowable_values = allowable_values.map do |value|
40
+ case datatype.to_s
41
+ when /Integer/i
42
+ value.to_i
43
+ when /Float/i
44
+ value.to_f
45
+ else
46
+ value
47
+ end
48
+ end
49
+ end
50
+
51
+ def valid?(value)
52
+ !value || allowable_values.include?(value)
53
+ end
54
+ end
55
+
56
+ # Attribute mapping from ruby-style variable name to JSON key.
57
+ def self.attribute_map
58
+ {
59
+ :'name' => :'name',
60
+ :'url' => :'url',
61
+ :'events' => :'events',
62
+ :'active' => :'active',
63
+ :'division_id' => :'division_id'
64
+ }
65
+ end
66
+
67
+ # Returns attribute mapping this model knows about
68
+ def self.acceptable_attribute_map
69
+ attribute_map
70
+ end
71
+
72
+ # Returns all the JSON keys this model knows about
73
+ def self.acceptable_attributes
74
+ acceptable_attribute_map.values
75
+ end
76
+
77
+ # Attribute type mapping.
78
+ def self.openapi_types
79
+ {
80
+ :'name' => :'String',
81
+ :'url' => :'String',
82
+ :'events' => :'Array<String>',
83
+ :'active' => :'Boolean',
84
+ :'division_id' => :'String'
85
+ }
86
+ end
87
+
88
+ # List of attributes with nullable: true
89
+ def self.openapi_nullable
90
+ Set.new([
91
+ ])
92
+ end
93
+
94
+ # Initializes the object
95
+ # @param [Hash] attributes Model attributes in the form of hash
96
+ def initialize(attributes = {})
97
+ if (!attributes.is_a?(Hash))
98
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pescheck::Webhook` initialize method"
99
+ end
100
+
101
+ # check to see if the attribute exists and convert string to symbol for hash key
102
+ acceptable_attribute_map = self.class.acceptable_attribute_map
103
+ attributes = attributes.each_with_object({}) { |(k, v), h|
104
+ if (!acceptable_attribute_map.key?(k.to_sym))
105
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pescheck::Webhook`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
106
+ end
107
+ h[k.to_sym] = v
108
+ }
109
+
110
+ if attributes.key?(:'name')
111
+ self.name = attributes[:'name']
112
+ else
113
+ self.name = nil
114
+ end
115
+
116
+ if attributes.key?(:'url')
117
+ self.url = attributes[:'url']
118
+ else
119
+ self.url = nil
120
+ end
121
+
122
+ if attributes.key?(:'events')
123
+ if (value = attributes[:'events']).is_a?(Array)
124
+ self.events = value
125
+ end
126
+ else
127
+ self.events = nil
128
+ end
129
+
130
+ if attributes.key?(:'active')
131
+ self.active = attributes[:'active']
132
+ else
133
+ self.active = true
134
+ end
135
+
136
+ if attributes.key?(:'division_id')
137
+ self.division_id = attributes[:'division_id']
138
+ end
139
+ end
140
+
141
+ # Show invalid properties with the reasons. Usually used together with valid?
142
+ # @return Array for valid properties with the reasons
143
+ def list_invalid_properties
144
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
145
+ invalid_properties = Array.new
146
+ if @name.nil?
147
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
148
+ end
149
+
150
+ if @name.to_s.length > 255
151
+ invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 255.')
152
+ end
153
+
154
+ if @url.nil?
155
+ invalid_properties.push('invalid value for "url", url cannot be nil.')
156
+ end
157
+
158
+ if @events.nil?
159
+ invalid_properties.push('invalid value for "events", events cannot be nil.')
160
+ end
161
+
162
+ invalid_properties
163
+ end
164
+
165
+ # Check to see if the all the properties in the model are valid
166
+ # @return true if the model is valid
167
+ def valid?
168
+ warn '[DEPRECATED] the `valid?` method is obsolete'
169
+ return false if @name.nil?
170
+ return false if @name.to_s.length > 255
171
+ return false if @url.nil?
172
+ return false if @events.nil?
173
+ true
174
+ end
175
+
176
+ # Custom attribute writer method with validation
177
+ # @param [Object] name Value to be assigned
178
+ def name=(name)
179
+ if name.nil?
180
+ fail ArgumentError, 'name cannot be nil'
181
+ end
182
+
183
+ if name.to_s.length > 255
184
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 255.'
185
+ end
186
+
187
+ @name = name
188
+ end
189
+
190
+ # Custom attribute writer method with validation
191
+ # @param [Object] url Value to be assigned
192
+ def url=(url)
193
+ if url.nil?
194
+ fail ArgumentError, 'url cannot be nil'
195
+ end
196
+
197
+ @url = url
198
+ end
199
+
200
+ # Checks equality by comparing each attribute.
201
+ # @param [Object] Object to be compared
202
+ def ==(o)
203
+ return true if self.equal?(o)
204
+ self.class == o.class &&
205
+ name == o.name &&
206
+ url == o.url &&
207
+ events == o.events &&
208
+ active == o.active &&
209
+ division_id == o.division_id
210
+ end
211
+
212
+ # @see the `==` method
213
+ # @param [Object] Object to be compared
214
+ def eql?(o)
215
+ self == o
216
+ end
217
+
218
+ # Calculates hash code according to all attributes.
219
+ # @return [Integer] Hash code
220
+ def hash
221
+ [name, url, events, active, division_id].hash
222
+ end
223
+
224
+ # Builds the object from hash
225
+ # @param [Hash] attributes Model attributes in the form of hash
226
+ # @return [Object] Returns the model itself
227
+ def self.build_from_hash(attributes)
228
+ return nil unless attributes.is_a?(Hash)
229
+ attributes = attributes.transform_keys(&:to_sym)
230
+ transformed_hash = {}
231
+ openapi_types.each_pair do |key, type|
232
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
233
+ transformed_hash["#{key}"] = nil
234
+ elsif type =~ /\AArray<(.*)>/i
235
+ # check to ensure the input is an array given that the attribute
236
+ # is documented as an array but the input is not
237
+ if attributes[attribute_map[key]].is_a?(Array)
238
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
239
+ end
240
+ elsif !attributes[attribute_map[key]].nil?
241
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
242
+ end
243
+ end
244
+ new(transformed_hash)
245
+ end
246
+
247
+ # Returns the object in the form of hash
248
+ # @return [Hash] Returns the object in the form of hash
249
+ def to_hash
250
+ hash = {}
251
+ self.class.attribute_map.each_pair do |attr, param|
252
+ value = self.send(attr)
253
+ if value.nil?
254
+ is_nullable = self.class.openapi_nullable.include?(attr)
255
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
256
+ end
257
+
258
+ hash[param] = _to_hash(value)
259
+ end
260
+ hash
261
+ end
262
+
263
+ end
264
+
265
+ end
@@ -0,0 +1,353 @@
1
+ =begin
2
+ #Pescheck API
3
+
4
+ #API for Pescheck ## Authentication This API supports three authentication methods: 1. **OAuth2** (recommended for API clients) - Use client credentials flow 2. **JWT Bearer** (for user-based access) - Obtain tokens via /api/jwt/ endpoint 3. **Cookie** (for browser-based access) - Session authentication via web login ## Quick Start for API Clients 1. Select your environment from the servers dropdown 2. Use OAuth2 with client credentials flow 3. Scopes are automatically included: read:api, create:api, update:api
5
+
6
+ The version of the OpenAPI document: 2.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Pescheck
17
+ # Serializer for webhook responses
18
+ class WebhookResponse < ApiModelBase
19
+ attr_accessor :id
20
+
21
+ attr_accessor :name
22
+
23
+ attr_accessor :url
24
+
25
+ attr_accessor :events
26
+
27
+ attr_accessor :active
28
+
29
+ attr_accessor :verified
30
+
31
+ attr_accessor :token
32
+
33
+ attr_accessor :organisation_name
34
+
35
+ attr_accessor :created_at
36
+
37
+ attr_accessor :updated_at
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ def self.attribute_map
41
+ {
42
+ :'id' => :'id',
43
+ :'name' => :'name',
44
+ :'url' => :'url',
45
+ :'events' => :'events',
46
+ :'active' => :'active',
47
+ :'verified' => :'verified',
48
+ :'token' => :'token',
49
+ :'organisation_name' => :'organisation_name',
50
+ :'created_at' => :'created_at',
51
+ :'updated_at' => :'updated_at'
52
+ }
53
+ end
54
+
55
+ # Returns attribute mapping this model knows about
56
+ def self.acceptable_attribute_map
57
+ attribute_map
58
+ end
59
+
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ acceptable_attribute_map.values
63
+ end
64
+
65
+ # Attribute type mapping.
66
+ def self.openapi_types
67
+ {
68
+ :'id' => :'String',
69
+ :'name' => :'String',
70
+ :'url' => :'String',
71
+ :'events' => :'Object',
72
+ :'active' => :'Boolean',
73
+ :'verified' => :'Boolean',
74
+ :'token' => :'String',
75
+ :'organisation_name' => :'String',
76
+ :'created_at' => :'Time',
77
+ :'updated_at' => :'Time'
78
+ }
79
+ end
80
+
81
+ # List of attributes with nullable: true
82
+ def self.openapi_nullable
83
+ Set.new([
84
+ :'events',
85
+ :'token',
86
+ ])
87
+ end
88
+
89
+ # Initializes the object
90
+ # @param [Hash] attributes Model attributes in the form of hash
91
+ def initialize(attributes = {})
92
+ if (!attributes.is_a?(Hash))
93
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pescheck::WebhookResponse` initialize method"
94
+ end
95
+
96
+ # check to see if the attribute exists and convert string to symbol for hash key
97
+ acceptable_attribute_map = self.class.acceptable_attribute_map
98
+ attributes = attributes.each_with_object({}) { |(k, v), h|
99
+ if (!acceptable_attribute_map.key?(k.to_sym))
100
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pescheck::WebhookResponse`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
101
+ end
102
+ h[k.to_sym] = v
103
+ }
104
+
105
+ if attributes.key?(:'id')
106
+ self.id = attributes[:'id']
107
+ else
108
+ self.id = nil
109
+ end
110
+
111
+ if attributes.key?(:'name')
112
+ self.name = attributes[:'name']
113
+ else
114
+ self.name = nil
115
+ end
116
+
117
+ if attributes.key?(:'url')
118
+ self.url = attributes[:'url']
119
+ else
120
+ self.url = nil
121
+ end
122
+
123
+ if attributes.key?(:'events')
124
+ self.events = attributes[:'events']
125
+ else
126
+ self.events = nil
127
+ end
128
+
129
+ if attributes.key?(:'active')
130
+ self.active = attributes[:'active']
131
+ end
132
+
133
+ if attributes.key?(:'verified')
134
+ self.verified = attributes[:'verified']
135
+ else
136
+ self.verified = nil
137
+ end
138
+
139
+ if attributes.key?(:'token')
140
+ self.token = attributes[:'token']
141
+ end
142
+
143
+ if attributes.key?(:'organisation_name')
144
+ self.organisation_name = attributes[:'organisation_name']
145
+ end
146
+
147
+ if attributes.key?(:'created_at')
148
+ self.created_at = attributes[:'created_at']
149
+ else
150
+ self.created_at = nil
151
+ end
152
+
153
+ if attributes.key?(:'updated_at')
154
+ self.updated_at = attributes[:'updated_at']
155
+ else
156
+ self.updated_at = nil
157
+ end
158
+ end
159
+
160
+ # Show invalid properties with the reasons. Usually used together with valid?
161
+ # @return Array for valid properties with the reasons
162
+ def list_invalid_properties
163
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
164
+ invalid_properties = Array.new
165
+ if @id.nil?
166
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
167
+ end
168
+
169
+ if @name.nil?
170
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
171
+ end
172
+
173
+ if @name.to_s.length > 255
174
+ invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 255.')
175
+ end
176
+
177
+ if @url.nil?
178
+ invalid_properties.push('invalid value for "url", url cannot be nil.')
179
+ end
180
+
181
+ if @url.to_s.length > 200
182
+ invalid_properties.push('invalid value for "url", the character length must be smaller than or equal to 200.')
183
+ end
184
+
185
+ if @verified.nil?
186
+ invalid_properties.push('invalid value for "verified", verified cannot be nil.')
187
+ end
188
+
189
+ if @created_at.nil?
190
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
191
+ end
192
+
193
+ if @updated_at.nil?
194
+ invalid_properties.push('invalid value for "updated_at", updated_at cannot be nil.')
195
+ end
196
+
197
+ invalid_properties
198
+ end
199
+
200
+ # Check to see if the all the properties in the model are valid
201
+ # @return true if the model is valid
202
+ def valid?
203
+ warn '[DEPRECATED] the `valid?` method is obsolete'
204
+ return false if @id.nil?
205
+ return false if @name.nil?
206
+ return false if @name.to_s.length > 255
207
+ return false if @url.nil?
208
+ return false if @url.to_s.length > 200
209
+ return false if @verified.nil?
210
+ return false if @created_at.nil?
211
+ return false if @updated_at.nil?
212
+ true
213
+ end
214
+
215
+ # Custom attribute writer method with validation
216
+ # @param [Object] id Value to be assigned
217
+ def id=(id)
218
+ if id.nil?
219
+ fail ArgumentError, 'id cannot be nil'
220
+ end
221
+
222
+ @id = id
223
+ end
224
+
225
+ # Custom attribute writer method with validation
226
+ # @param [Object] name Value to be assigned
227
+ def name=(name)
228
+ if name.nil?
229
+ fail ArgumentError, 'name cannot be nil'
230
+ end
231
+
232
+ if name.to_s.length > 255
233
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 255.'
234
+ end
235
+
236
+ @name = name
237
+ end
238
+
239
+ # Custom attribute writer method with validation
240
+ # @param [Object] url Value to be assigned
241
+ def url=(url)
242
+ if url.nil?
243
+ fail ArgumentError, 'url cannot be nil'
244
+ end
245
+
246
+ if url.to_s.length > 200
247
+ fail ArgumentError, 'invalid value for "url", the character length must be smaller than or equal to 200.'
248
+ end
249
+
250
+ @url = url
251
+ end
252
+
253
+ # Custom attribute writer method with validation
254
+ # @param [Object] verified Value to be assigned
255
+ def verified=(verified)
256
+ if verified.nil?
257
+ fail ArgumentError, 'verified cannot be nil'
258
+ end
259
+
260
+ @verified = verified
261
+ end
262
+
263
+ # Custom attribute writer method with validation
264
+ # @param [Object] created_at Value to be assigned
265
+ def created_at=(created_at)
266
+ if created_at.nil?
267
+ fail ArgumentError, 'created_at cannot be nil'
268
+ end
269
+
270
+ @created_at = created_at
271
+ end
272
+
273
+ # Custom attribute writer method with validation
274
+ # @param [Object] updated_at Value to be assigned
275
+ def updated_at=(updated_at)
276
+ if updated_at.nil?
277
+ fail ArgumentError, 'updated_at cannot be nil'
278
+ end
279
+
280
+ @updated_at = updated_at
281
+ end
282
+
283
+ # Checks equality by comparing each attribute.
284
+ # @param [Object] Object to be compared
285
+ def ==(o)
286
+ return true if self.equal?(o)
287
+ self.class == o.class &&
288
+ id == o.id &&
289
+ name == o.name &&
290
+ url == o.url &&
291
+ events == o.events &&
292
+ active == o.active &&
293
+ verified == o.verified &&
294
+ token == o.token &&
295
+ organisation_name == o.organisation_name &&
296
+ created_at == o.created_at &&
297
+ updated_at == o.updated_at
298
+ end
299
+
300
+ # @see the `==` method
301
+ # @param [Object] Object to be compared
302
+ def eql?(o)
303
+ self == o
304
+ end
305
+
306
+ # Calculates hash code according to all attributes.
307
+ # @return [Integer] Hash code
308
+ def hash
309
+ [id, name, url, events, active, verified, token, organisation_name, created_at, updated_at].hash
310
+ end
311
+
312
+ # Builds the object from hash
313
+ # @param [Hash] attributes Model attributes in the form of hash
314
+ # @return [Object] Returns the model itself
315
+ def self.build_from_hash(attributes)
316
+ return nil unless attributes.is_a?(Hash)
317
+ attributes = attributes.transform_keys(&:to_sym)
318
+ transformed_hash = {}
319
+ openapi_types.each_pair do |key, type|
320
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
321
+ transformed_hash["#{key}"] = nil
322
+ elsif type =~ /\AArray<(.*)>/i
323
+ # check to ensure the input is an array given that the attribute
324
+ # is documented as an array but the input is not
325
+ if attributes[attribute_map[key]].is_a?(Array)
326
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
327
+ end
328
+ elsif !attributes[attribute_map[key]].nil?
329
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
330
+ end
331
+ end
332
+ new(transformed_hash)
333
+ end
334
+
335
+ # Returns the object in the form of hash
336
+ # @return [Hash] Returns the object in the form of hash
337
+ def to_hash
338
+ hash = {}
339
+ self.class.attribute_map.each_pair do |attr, param|
340
+ value = self.send(attr)
341
+ if value.nil?
342
+ is_nullable = self.class.openapi_nullable.include?(attr)
343
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
344
+ end
345
+
346
+ hash[param] = _to_hash(value)
347
+ end
348
+ hash
349
+ end
350
+
351
+ end
352
+
353
+ end
@@ -0,0 +1,15 @@
1
+ =begin
2
+ #Pescheck API
3
+
4
+ #API for Pescheck ## Authentication This API supports three authentication methods: 1. **OAuth2** (recommended for API clients) - Use client credentials flow 2. **JWT Bearer** (for user-based access) - Obtain tokens via /api/jwt/ endpoint 3. **Cookie** (for browser-based access) - Session authentication via web login ## Quick Start for API Clients 1. Select your environment from the servers dropdown 2. Use OAuth2 with client credentials flow 3. Scopes are automatically included: read:api, create:api, update:api
5
+
6
+ The version of the OpenAPI document: 2.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ module Pescheck
14
+ VERSION = '0.0.1'
15
+ end