songtradr_api_client_ruby 1.12.22 → 1.12.24

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 (178) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +4 -4
  3. data/README.md +26 -12
  4. data/docs/APIKeysApi.md +217 -0
  5. data/docs/AdminApiUserDTO.md +70 -0
  6. data/docs/AllowedValuesApi.md +2 -2
  7. data/docs/ApiKeyDTO.md +24 -0
  8. data/docs/CreateApiKeyDTO.md +18 -0
  9. data/docs/FileSmallDTO.md +16 -16
  10. data/docs/MusicalFeaturesDTO.md +82 -82
  11. data/docs/PlaylistLargeDTO.md +9 -9
  12. data/docs/ProductMediumDTO.md +2 -2
  13. data/docs/RecordingApi.md +2 -0
  14. data/docs/RecordingGenrePredictionDTO.md +3 -3
  15. data/docs/RecordingLargeDTO.md +11 -11
  16. data/docs/RecordingMediumDTO.md +7 -7
  17. data/docs/RecordingMinimalWithMusicalFeaturesDTO.md +3 -3
  18. data/docs/RecordingPlaylistDTO.md +3 -3
  19. data/docs/RecordingSmallDTO.md +3 -3
  20. data/docs/UserApi.md +4 -0
  21. data/docs/UserDTO.md +20 -0
  22. data/lib/songtradr_api_client_ruby/api/allowed_values_api.rb +4 -4
  23. data/lib/songtradr_api_client_ruby/api/api_keys_api.rb +213 -0
  24. data/lib/songtradr_api_client_ruby/api/party_api.rb +1 -1
  25. data/lib/songtradr_api_client_ruby/api/playlist_api.rb +1 -1
  26. data/lib/songtradr_api_client_ruby/api/recording_api.rb +4 -1
  27. data/lib/songtradr_api_client_ruby/api/user_api.rb +7 -1
  28. data/lib/songtradr_api_client_ruby/api_client.rb +1 -1
  29. data/lib/songtradr_api_client_ruby/api_error.rb +1 -1
  30. data/lib/songtradr_api_client_ruby/configuration.rb +10 -8
  31. data/lib/songtradr_api_client_ruby/models/admin_api_user_dto.rb +448 -0
  32. data/lib/songtradr_api_client_ruby/models/api_key_dto.rb +262 -0
  33. data/lib/songtradr_api_client_ruby/models/category_medium_dto.rb +17 -18
  34. data/lib/songtradr_api_client_ruby/models/category_minimal_dto.rb +15 -18
  35. data/lib/songtradr_api_client_ruby/models/config_access_dto.rb +17 -18
  36. data/lib/songtradr_api_client_ruby/models/config_identifier_dto.rb +17 -18
  37. data/lib/songtradr_api_client_ruby/models/contributor_type_dto.rb +15 -18
  38. data/lib/songtradr_api_client_ruby/models/create_api_key_dto.rb +214 -0
  39. data/lib/songtradr_api_client_ruby/models/error_response.rb +19 -18
  40. data/lib/songtradr_api_client_ruby/models/field_summary_dto.rb +19 -18
  41. data/lib/songtradr_api_client_ruby/models/file_dto.rb +23 -18
  42. data/lib/songtradr_api_client_ruby/models/file_list_dto.rb +21 -18
  43. data/lib/songtradr_api_client_ruby/models/file_minimal_with_url_dto.rb +19 -18
  44. data/lib/songtradr_api_client_ruby/models/file_small_dto.rb +81 -76
  45. data/lib/songtradr_api_client_ruby/models/file_upload_dto.rb +13 -18
  46. data/lib/songtradr_api_client_ruby/models/file_w_ith_url_dto.rb +17 -18
  47. data/lib/songtradr_api_client_ruby/models/files_summary_dto.rb +15 -18
  48. data/lib/songtradr_api_client_ruby/models/forgot_password_dto.rb +15 -18
  49. data/lib/songtradr_api_client_ruby/models/genre_dto.rb +17 -18
  50. data/lib/songtradr_api_client_ruby/models/genre_minimal_dto.rb +15 -18
  51. data/lib/songtradr_api_client_ruby/models/genres_summary_dto.rb +17 -18
  52. data/lib/songtradr_api_client_ruby/models/init_put_recording_audio_dto.rb +13 -18
  53. data/lib/songtradr_api_client_ruby/models/jwt_token_dto.rb +17 -18
  54. data/lib/songtradr_api_client_ruby/models/login_dto.rb +17 -18
  55. data/lib/songtradr_api_client_ruby/models/musical_features_dto.rb +529 -534
  56. data/lib/songtradr_api_client_ruby/models/p_line_dto.rb +15 -18
  57. data/lib/songtradr_api_client_ruby/models/party_large_dto.rb +15 -18
  58. data/lib/songtradr_api_client_ruby/models/party_small_dto.rb +17 -18
  59. data/lib/songtradr_api_client_ruby/models/playlist_large_dto.rb +54 -57
  60. data/lib/songtradr_api_client_ruby/models/product_medium_dto.rb +35 -28
  61. data/lib/songtradr_api_client_ruby/models/product_party_dto.rb +15 -18
  62. data/lib/songtradr_api_client_ruby/models/recording_for_similarity_search_dto.rb +17 -18
  63. data/lib/songtradr_api_client_ruby/models/recording_genre_prediction_dto.rb +37 -36
  64. data/lib/songtradr_api_client_ruby/models/recording_large_dto.rb +94 -77
  65. data/lib/songtradr_api_client_ruby/models/recording_list_dto.rb +21 -18
  66. data/lib/songtradr_api_client_ruby/models/recording_medium_dto.rb +64 -51
  67. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_musical_features_dto.rb +28 -31
  68. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_taggrams_dto.rb +15 -18
  69. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_tagstrengths_dto.rb +15 -18
  70. data/lib/songtradr_api_client_ruby/models/recording_party_dto.rb +15 -18
  71. data/lib/songtradr_api_client_ruby/models/recording_playlist_dto.rb +26 -31
  72. data/lib/songtradr_api_client_ruby/models/recording_small_dto.rb +36 -31
  73. data/lib/songtradr_api_client_ruby/models/recording_tag_small_dto.rb +15 -18
  74. data/lib/songtradr_api_client_ruby/models/save_file_recording_dto.rb +17 -18
  75. data/lib/songtradr_api_client_ruby/models/save_playlist_dto.rb +21 -18
  76. data/lib/songtradr_api_client_ruby/models/save_recording_genre_dto.rb +15 -18
  77. data/lib/songtradr_api_client_ruby/models/save_recording_party_dto.rb +17 -18
  78. data/lib/songtradr_api_client_ruby/models/save_recording_playlist_dto.rb +17 -18
  79. data/lib/songtradr_api_client_ruby/models/save_recording_tag_dto.rb +15 -18
  80. data/lib/songtradr_api_client_ruby/models/save_referrer_dto.rb +13 -18
  81. data/lib/songtradr_api_client_ruby/models/save_taggrams_dto.rb +13 -18
  82. data/lib/songtradr_api_client_ruby/models/save_user_dto.rb +15 -18
  83. data/lib/songtradr_api_client_ruby/models/search_filter_values_dto.rb +95 -18
  84. data/lib/songtradr_api_client_ruby/models/search_recording_granular_abstraction_dto.rb +15 -18
  85. data/lib/songtradr_api_client_ruby/models/search_recording_granular_dto.rb +15 -18
  86. data/lib/songtradr_api_client_ruby/models/sign_up_dto.rb +19 -18
  87. data/lib/songtradr_api_client_ruby/models/tag_dto.rb +17 -18
  88. data/lib/songtradr_api_client_ruby/models/tag_small_dto.rb +17 -18
  89. data/lib/songtradr_api_client_ruby/models/taggram_dto.rb +17 -18
  90. data/lib/songtradr_api_client_ruby/models/tags_summary_dto.rb +17 -18
  91. data/lib/songtradr_api_client_ruby/models/tagstrength_dto.rb +17 -18
  92. data/lib/songtradr_api_client_ruby/models/title_dto.rb +15 -18
  93. data/lib/songtradr_api_client_ruby/models/token_request.rb +15 -18
  94. data/lib/songtradr_api_client_ruby/models/track_to_medium_product_dto.rb +17 -18
  95. data/lib/songtradr_api_client_ruby/models/update_password_dto.rb +17 -18
  96. data/lib/songtradr_api_client_ruby/models/usage_dto.rb +13 -18
  97. data/lib/songtradr_api_client_ruby/models/user_dto.rb +210 -19
  98. data/lib/songtradr_api_client_ruby/version.rb +2 -2
  99. data/lib/songtradr_api_client_ruby.rb +5 -1
  100. data/openapi-generator-config.yaml +1 -1
  101. data/songtradr_api_client_ruby.gemspec +1 -1
  102. data/spec/api/allowed_values_api_spec.rb +2 -2
  103. data/spec/api/api_keys_api_spec.rb +70 -0
  104. data/spec/api/party_api_spec.rb +1 -1
  105. data/spec/api/playlist_api_spec.rb +1 -1
  106. data/spec/api/recording_api_spec.rb +2 -1
  107. data/spec/api/user_api_spec.rb +3 -1
  108. data/spec/api_client_spec.rb +1 -1
  109. data/spec/configuration_spec.rb +1 -1
  110. data/spec/models/admin_api_user_dto_spec.rb +190 -0
  111. data/spec/models/api_key_dto_spec.rb +52 -0
  112. data/spec/models/category_medium_dto_spec.rb +1 -1
  113. data/spec/models/category_minimal_dto_spec.rb +1 -1
  114. data/spec/models/config_access_dto_spec.rb +1 -1
  115. data/spec/models/config_identifier_dto_spec.rb +1 -1
  116. data/spec/models/contributor_type_dto_spec.rb +1 -1
  117. data/spec/models/create_api_key_dto_spec.rb +34 -0
  118. data/spec/models/error_response_spec.rb +1 -1
  119. data/spec/models/field_summary_dto_spec.rb +1 -1
  120. data/spec/models/file_dto_spec.rb +1 -1
  121. data/spec/models/file_list_dto_spec.rb +1 -1
  122. data/spec/models/file_minimal_with_url_dto_spec.rb +1 -1
  123. data/spec/models/file_small_dto_spec.rb +15 -15
  124. data/spec/models/file_upload_dto_spec.rb +1 -1
  125. data/spec/models/file_w_ith_url_dto_spec.rb +1 -1
  126. data/spec/models/files_summary_dto_spec.rb +1 -1
  127. data/spec/models/forgot_password_dto_spec.rb +1 -1
  128. data/spec/models/genre_dto_spec.rb +1 -1
  129. data/spec/models/genre_minimal_dto_spec.rb +1 -1
  130. data/spec/models/genres_summary_dto_spec.rb +1 -1
  131. data/spec/models/init_put_recording_audio_dto_spec.rb +1 -1
  132. data/spec/models/jwt_token_dto_spec.rb +1 -1
  133. data/spec/models/login_dto_spec.rb +1 -1
  134. data/spec/models/musical_features_dto_spec.rb +175 -175
  135. data/spec/models/p_line_dto_spec.rb +1 -1
  136. data/spec/models/party_large_dto_spec.rb +1 -1
  137. data/spec/models/party_small_dto_spec.rb +1 -1
  138. data/spec/models/playlist_large_dto_spec.rb +10 -10
  139. data/spec/models/product_medium_dto_spec.rb +7 -7
  140. data/spec/models/product_party_dto_spec.rb +1 -1
  141. data/spec/models/recording_for_similarity_search_dto_spec.rb +1 -1
  142. data/spec/models/recording_genre_prediction_dto_spec.rb +3 -3
  143. data/spec/models/recording_large_dto_spec.rb +12 -12
  144. data/spec/models/recording_list_dto_spec.rb +1 -1
  145. data/spec/models/recording_medium_dto_spec.rb +9 -9
  146. data/spec/models/recording_minimal_with_musical_features_dto_spec.rb +3 -3
  147. data/spec/models/recording_minimal_with_taggrams_dto_spec.rb +1 -1
  148. data/spec/models/recording_minimal_with_tagstrengths_dto_spec.rb +1 -1
  149. data/spec/models/recording_party_dto_spec.rb +1 -1
  150. data/spec/models/recording_playlist_dto_spec.rb +4 -4
  151. data/spec/models/recording_small_dto_spec.rb +4 -4
  152. data/spec/models/recording_tag_small_dto_spec.rb +1 -1
  153. data/spec/models/save_file_recording_dto_spec.rb +1 -1
  154. data/spec/models/save_playlist_dto_spec.rb +1 -1
  155. data/spec/models/save_recording_genre_dto_spec.rb +1 -1
  156. data/spec/models/save_recording_party_dto_spec.rb +1 -1
  157. data/spec/models/save_recording_playlist_dto_spec.rb +1 -1
  158. data/spec/models/save_recording_tag_dto_spec.rb +1 -1
  159. data/spec/models/save_referrer_dto_spec.rb +1 -1
  160. data/spec/models/save_taggrams_dto_spec.rb +1 -1
  161. data/spec/models/save_user_dto_spec.rb +1 -1
  162. data/spec/models/search_filter_values_dto_spec.rb +1 -1
  163. data/spec/models/search_recording_granular_abstraction_dto_spec.rb +1 -1
  164. data/spec/models/search_recording_granular_dto_spec.rb +1 -1
  165. data/spec/models/sign_up_dto_spec.rb +1 -1
  166. data/spec/models/tag_dto_spec.rb +1 -1
  167. data/spec/models/tag_small_dto_spec.rb +1 -1
  168. data/spec/models/taggram_dto_spec.rb +1 -1
  169. data/spec/models/tags_summary_dto_spec.rb +1 -1
  170. data/spec/models/tagstrength_dto_spec.rb +1 -1
  171. data/spec/models/title_dto_spec.rb +1 -1
  172. data/spec/models/token_request_spec.rb +1 -1
  173. data/spec/models/track_to_medium_product_dto_spec.rb +1 -1
  174. data/spec/models/update_password_dto_spec.rb +1 -1
  175. data/spec/models/usage_dto_spec.rb +1 -1
  176. data/spec/models/user_dto_spec.rb +61 -1
  177. data/spec/spec_helper.rb +1 -1
  178. metadata +72 -56
@@ -3,7 +3,7 @@
3
3
 
4
4
  #This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
5
5
 
6
- The version of the OpenAPI document: 1.12.22
6
+ The version of the OpenAPI document: 1.12.24
7
7
  Contact: info@songtradr.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.0.0-SNAPSHOT
@@ -18,8 +18,6 @@ module SongtradrApiClientRuby
18
18
  class ProductMediumDTO
19
19
  attr_accessor :duration
20
20
 
21
- attr_accessor :pline
22
-
23
21
  attr_accessor :genres
24
22
 
25
23
  attr_accessor :titles
@@ -30,6 +28,8 @@ module SongtradrApiClientRuby
30
28
 
31
29
  attr_accessor :release_date
32
30
 
31
+ attr_accessor :pline
32
+
33
33
  attr_accessor :takedown_date
34
34
 
35
35
  attr_accessor :parties
@@ -38,12 +38,12 @@ module SongtradrApiClientRuby
38
38
  def self.attribute_map
39
39
  {
40
40
  :'duration' => :'duration',
41
- :'pline' => :'pline',
42
41
  :'genres' => :'genres',
43
42
  :'titles' => :'titles',
44
43
  :'gtin' => :'gtin',
45
44
  :'grid' => :'grid',
46
45
  :'release_date' => :'releaseDate',
46
+ :'pline' => :'pline',
47
47
  :'takedown_date' => :'takedownDate',
48
48
  :'parties' => :'parties'
49
49
  }
@@ -58,12 +58,12 @@ module SongtradrApiClientRuby
58
58
  def self.openapi_types
59
59
  {
60
60
  :'duration' => :'Time',
61
- :'pline' => :'PLineDTO',
62
61
  :'genres' => :'Array<GenreMinimalDTO>',
63
62
  :'titles' => :'Array<TitleDTO>',
64
63
  :'gtin' => :'String',
65
64
  :'grid' => :'String',
66
65
  :'release_date' => :'Time',
66
+ :'pline' => :'PLineDTO',
67
67
  :'takedown_date' => :'Time',
68
68
  :'parties' => :'Array<ProductPartyDTO>'
69
69
  }
@@ -94,10 +94,6 @@ module SongtradrApiClientRuby
94
94
  self.duration = attributes[:'duration']
95
95
  end
96
96
 
97
- if attributes.key?(:'pline')
98
- self.pline = attributes[:'pline']
99
- end
100
-
101
97
  if attributes.key?(:'genres')
102
98
  if (value = attributes[:'genres']).is_a?(Array)
103
99
  self.genres = value
@@ -122,6 +118,10 @@ module SongtradrApiClientRuby
122
118
  self.release_date = attributes[:'release_date']
123
119
  end
124
120
 
121
+ if attributes.key?(:'pline')
122
+ self.pline = attributes[:'pline']
123
+ end
124
+
125
125
  if attributes.key?(:'takedown_date')
126
126
  self.takedown_date = attributes[:'takedown_date']
127
127
  end
@@ -136,6 +136,7 @@ module SongtradrApiClientRuby
136
136
  # Show invalid properties with the reasons. Usually used together with valid?
137
137
  # @return Array for valid properties with the reasons
138
138
  def list_invalid_properties
139
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
139
140
  invalid_properties = Array.new
140
141
  invalid_properties
141
142
  end
@@ -143,24 +144,37 @@ module SongtradrApiClientRuby
143
144
  # Check to see if the all the properties in the model are valid
144
145
  # @return true if the model is valid
145
146
  def valid?
147
+ warn '[DEPRECATED] the `valid?` method is obsolete'
146
148
  true
147
149
  end
148
150
 
149
151
  # Custom attribute writer method with validation
150
152
  # @param [Object] genres Value to be assigned
151
153
  def genres=(genres)
154
+ if genres.nil?
155
+ fail ArgumentError, 'genres cannot be nil'
156
+ end
157
+
152
158
  @genres = genres
153
159
  end
154
160
 
155
161
  # Custom attribute writer method with validation
156
162
  # @param [Object] titles Value to be assigned
157
163
  def titles=(titles)
164
+ if titles.nil?
165
+ fail ArgumentError, 'titles cannot be nil'
166
+ end
167
+
158
168
  @titles = titles
159
169
  end
160
170
 
161
171
  # Custom attribute writer method with validation
162
172
  # @param [Object] parties Value to be assigned
163
173
  def parties=(parties)
174
+ if parties.nil?
175
+ fail ArgumentError, 'parties cannot be nil'
176
+ end
177
+
164
178
  @parties = parties
165
179
  end
166
180
 
@@ -170,12 +184,12 @@ module SongtradrApiClientRuby
170
184
  return true if self.equal?(o)
171
185
  self.class == o.class &&
172
186
  duration == o.duration &&
173
- pline == o.pline &&
174
187
  genres == o.genres &&
175
188
  titles == o.titles &&
176
189
  gtin == o.gtin &&
177
190
  grid == o.grid &&
178
191
  release_date == o.release_date &&
192
+ pline == o.pline &&
179
193
  takedown_date == o.takedown_date &&
180
194
  parties == o.parties
181
195
  end
@@ -189,44 +203,37 @@ module SongtradrApiClientRuby
189
203
  # Calculates hash code according to all attributes.
190
204
  # @return [Integer] Hash code
191
205
  def hash
192
- [duration, pline, genres, titles, gtin, grid, release_date, takedown_date, parties].hash
206
+ [duration, genres, titles, gtin, grid, release_date, pline, takedown_date, parties].hash
193
207
  end
194
208
 
195
209
  # Builds the object from hash
196
210
  # @param [Hash] attributes Model attributes in the form of hash
197
211
  # @return [Object] Returns the model itself
198
212
  def self.build_from_hash(attributes)
199
- new.build_from_hash(attributes)
200
- end
201
-
202
- # Builds the object from hash
203
- # @param [Hash] attributes Model attributes in the form of hash
204
- # @return [Object] Returns the model itself
205
- def build_from_hash(attributes)
206
213
  return nil unless attributes.is_a?(Hash)
207
214
  attributes = attributes.transform_keys(&:to_sym)
208
- self.class.openapi_types.each_pair do |key, type|
209
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
210
- self.send("#{key}=", nil)
215
+ transformed_hash = {}
216
+ openapi_types.each_pair do |key, type|
217
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
218
+ transformed_hash["#{key}"] = nil
211
219
  elsif type =~ /\AArray<(.*)>/i
212
220
  # check to ensure the input is an array given that the attribute
213
221
  # is documented as an array but the input is not
214
- if attributes[self.class.attribute_map[key]].is_a?(Array)
215
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
222
+ if attributes[attribute_map[key]].is_a?(Array)
223
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
216
224
  end
217
- elsif !attributes[self.class.attribute_map[key]].nil?
218
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
225
+ elsif !attributes[attribute_map[key]].nil?
226
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
219
227
  end
220
228
  end
221
-
222
- self
229
+ new(transformed_hash)
223
230
  end
224
231
 
225
232
  # Deserializes the data based on type
226
233
  # @param string type Data type
227
234
  # @param string value Value to be deserialized
228
235
  # @return [Object] Deserialized data
229
- def _deserialize(type, value)
236
+ def self._deserialize(type, value)
230
237
  case type.to_sym
231
238
  when :Time
232
239
  Time.parse(value)
@@ -3,7 +3,7 @@
3
3
 
4
4
  #This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
5
5
 
6
- The version of the OpenAPI document: 1.12.22
6
+ The version of the OpenAPI document: 1.12.24
7
7
  Contact: info@songtradr.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.0.0-SNAPSHOT
@@ -64,6 +64,8 @@ module SongtradrApiClientRuby
64
64
 
65
65
  if attributes.key?(:'party')
66
66
  self.party = attributes[:'party']
67
+ else
68
+ self.party = nil
67
69
  end
68
70
 
69
71
  if attributes.key?(:'contributor_types')
@@ -76,6 +78,7 @@ module SongtradrApiClientRuby
76
78
  # Show invalid properties with the reasons. Usually used together with valid?
77
79
  # @return Array for valid properties with the reasons
78
80
  def list_invalid_properties
81
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
79
82
  invalid_properties = Array.new
80
83
  if @party.nil?
81
84
  invalid_properties.push('invalid value for "party", party cannot be nil.')
@@ -87,6 +90,7 @@ module SongtradrApiClientRuby
87
90
  # Check to see if the all the properties in the model are valid
88
91
  # @return true if the model is valid
89
92
  def valid?
93
+ warn '[DEPRECATED] the `valid?` method is obsolete'
90
94
  return false if @party.nil?
91
95
  true
92
96
  end
@@ -116,37 +120,30 @@ module SongtradrApiClientRuby
116
120
  # @param [Hash] attributes Model attributes in the form of hash
117
121
  # @return [Object] Returns the model itself
118
122
  def self.build_from_hash(attributes)
119
- new.build_from_hash(attributes)
120
- end
121
-
122
- # Builds the object from hash
123
- # @param [Hash] attributes Model attributes in the form of hash
124
- # @return [Object] Returns the model itself
125
- def build_from_hash(attributes)
126
123
  return nil unless attributes.is_a?(Hash)
127
124
  attributes = attributes.transform_keys(&:to_sym)
128
- self.class.openapi_types.each_pair do |key, type|
129
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
130
- self.send("#{key}=", nil)
125
+ transformed_hash = {}
126
+ openapi_types.each_pair do |key, type|
127
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
128
+ transformed_hash["#{key}"] = nil
131
129
  elsif type =~ /\AArray<(.*)>/i
132
130
  # check to ensure the input is an array given that the attribute
133
131
  # is documented as an array but the input is not
134
- if attributes[self.class.attribute_map[key]].is_a?(Array)
135
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
132
+ if attributes[attribute_map[key]].is_a?(Array)
133
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
136
134
  end
137
- elsif !attributes[self.class.attribute_map[key]].nil?
138
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
135
+ elsif !attributes[attribute_map[key]].nil?
136
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
139
137
  end
140
138
  end
141
-
142
- self
139
+ new(transformed_hash)
143
140
  end
144
141
 
145
142
  # Deserializes the data based on type
146
143
  # @param string type Data type
147
144
  # @param string value Value to be deserialized
148
145
  # @return [Object] Deserialized data
149
- def _deserialize(type, value)
146
+ def self._deserialize(type, value)
150
147
  case type.to_sym
151
148
  when :Time
152
149
  Time.parse(value)
@@ -3,7 +3,7 @@
3
3
 
4
4
  #This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
5
5
 
6
- The version of the OpenAPI document: 1.12.22
6
+ The version of the OpenAPI document: 1.12.24
7
7
  Contact: info@songtradr.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.0.0-SNAPSHOT
@@ -64,16 +64,21 @@ module SongtradrApiClientRuby
64
64
 
65
65
  if attributes.key?(:'recording')
66
66
  self.recording = attributes[:'recording']
67
+ else
68
+ self.recording = nil
67
69
  end
68
70
 
69
71
  if attributes.key?(:'score')
70
72
  self.score = attributes[:'score']
73
+ else
74
+ self.score = nil
71
75
  end
72
76
  end
73
77
 
74
78
  # Show invalid properties with the reasons. Usually used together with valid?
75
79
  # @return Array for valid properties with the reasons
76
80
  def list_invalid_properties
81
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
77
82
  invalid_properties = Array.new
78
83
  if @recording.nil?
79
84
  invalid_properties.push('invalid value for "recording", recording cannot be nil.')
@@ -89,6 +94,7 @@ module SongtradrApiClientRuby
89
94
  # Check to see if the all the properties in the model are valid
90
95
  # @return true if the model is valid
91
96
  def valid?
97
+ warn '[DEPRECATED] the `valid?` method is obsolete'
92
98
  return false if @recording.nil?
93
99
  return false if @score.nil?
94
100
  true
@@ -119,37 +125,30 @@ module SongtradrApiClientRuby
119
125
  # @param [Hash] attributes Model attributes in the form of hash
120
126
  # @return [Object] Returns the model itself
121
127
  def self.build_from_hash(attributes)
122
- new.build_from_hash(attributes)
123
- end
124
-
125
- # Builds the object from hash
126
- # @param [Hash] attributes Model attributes in the form of hash
127
- # @return [Object] Returns the model itself
128
- def build_from_hash(attributes)
129
128
  return nil unless attributes.is_a?(Hash)
130
129
  attributes = attributes.transform_keys(&:to_sym)
131
- self.class.openapi_types.each_pair do |key, type|
132
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
133
- self.send("#{key}=", nil)
130
+ transformed_hash = {}
131
+ openapi_types.each_pair do |key, type|
132
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
133
+ transformed_hash["#{key}"] = nil
134
134
  elsif type =~ /\AArray<(.*)>/i
135
135
  # check to ensure the input is an array given that the attribute
136
136
  # is documented as an array but the input is not
137
- if attributes[self.class.attribute_map[key]].is_a?(Array)
138
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
137
+ if attributes[attribute_map[key]].is_a?(Array)
138
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
139
139
  end
140
- elsif !attributes[self.class.attribute_map[key]].nil?
141
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
140
+ elsif !attributes[attribute_map[key]].nil?
141
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
142
142
  end
143
143
  end
144
-
145
- self
144
+ new(transformed_hash)
146
145
  end
147
146
 
148
147
  # Deserializes the data based on type
149
148
  # @param string type Data type
150
149
  # @param string value Value to be deserialized
151
150
  # @return [Object] Deserialized data
152
- def _deserialize(type, value)
151
+ def self._deserialize(type, value)
153
152
  case type.to_sym
154
153
  when :Time
155
154
  Time.parse(value)
@@ -3,7 +3,7 @@
3
3
 
4
4
  #This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
5
5
 
6
- The version of the OpenAPI document: 1.12.22
6
+ The version of the OpenAPI document: 1.12.24
7
7
  Contact: info@songtradr.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.0.0-SNAPSHOT
@@ -18,16 +18,16 @@ module SongtradrApiClientRuby
18
18
  class RecordingGenrePredictionDTO
19
19
  attr_accessor :genre_type
20
20
 
21
- attr_accessor :genre
22
-
23
21
  attr_accessor :probability
24
22
 
23
+ attr_accessor :genre
24
+
25
25
  # Attribute mapping from ruby-style variable name to JSON key.
26
26
  def self.attribute_map
27
27
  {
28
28
  :'genre_type' => :'genreType',
29
- :'genre' => :'genre',
30
- :'probability' => :'probability'
29
+ :'probability' => :'probability',
30
+ :'genre' => :'genre'
31
31
  }
32
32
  end
33
33
 
@@ -40,8 +40,8 @@ module SongtradrApiClientRuby
40
40
  def self.openapi_types
41
41
  {
42
42
  :'genre_type' => :'String',
43
- :'genre' => :'GenreMinimalDTO',
44
- :'probability' => :'Float'
43
+ :'probability' => :'Float',
44
+ :'genre' => :'GenreMinimalDTO'
45
45
  }
46
46
  end
47
47
 
@@ -68,42 +68,50 @@ module SongtradrApiClientRuby
68
68
 
69
69
  if attributes.key?(:'genre_type')
70
70
  self.genre_type = attributes[:'genre_type']
71
- end
72
-
73
- if attributes.key?(:'genre')
74
- self.genre = attributes[:'genre']
71
+ else
72
+ self.genre_type = nil
75
73
  end
76
74
 
77
75
  if attributes.key?(:'probability')
78
76
  self.probability = attributes[:'probability']
77
+ else
78
+ self.probability = nil
79
+ end
80
+
81
+ if attributes.key?(:'genre')
82
+ self.genre = attributes[:'genre']
83
+ else
84
+ self.genre = nil
79
85
  end
80
86
  end
81
87
 
82
88
  # Show invalid properties with the reasons. Usually used together with valid?
83
89
  # @return Array for valid properties with the reasons
84
90
  def list_invalid_properties
91
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
85
92
  invalid_properties = Array.new
86
93
  if @genre_type.nil?
87
94
  invalid_properties.push('invalid value for "genre_type", genre_type cannot be nil.')
88
95
  end
89
96
 
90
- if @genre.nil?
91
- invalid_properties.push('invalid value for "genre", genre cannot be nil.')
92
- end
93
-
94
97
  if @probability.nil?
95
98
  invalid_properties.push('invalid value for "probability", probability cannot be nil.')
96
99
  end
97
100
 
101
+ if @genre.nil?
102
+ invalid_properties.push('invalid value for "genre", genre cannot be nil.')
103
+ end
104
+
98
105
  invalid_properties
99
106
  end
100
107
 
101
108
  # Check to see if the all the properties in the model are valid
102
109
  # @return true if the model is valid
103
110
  def valid?
111
+ warn '[DEPRECATED] the `valid?` method is obsolete'
104
112
  return false if @genre_type.nil?
105
- return false if @genre.nil?
106
113
  return false if @probability.nil?
114
+ return false if @genre.nil?
107
115
  true
108
116
  end
109
117
 
@@ -113,8 +121,8 @@ module SongtradrApiClientRuby
113
121
  return true if self.equal?(o)
114
122
  self.class == o.class &&
115
123
  genre_type == o.genre_type &&
116
- genre == o.genre &&
117
- probability == o.probability
124
+ probability == o.probability &&
125
+ genre == o.genre
118
126
  end
119
127
 
120
128
  # @see the `==` method
@@ -126,44 +134,37 @@ module SongtradrApiClientRuby
126
134
  # Calculates hash code according to all attributes.
127
135
  # @return [Integer] Hash code
128
136
  def hash
129
- [genre_type, genre, probability].hash
137
+ [genre_type, probability, genre].hash
130
138
  end
131
139
 
132
140
  # Builds the object from hash
133
141
  # @param [Hash] attributes Model attributes in the form of hash
134
142
  # @return [Object] Returns the model itself
135
143
  def self.build_from_hash(attributes)
136
- new.build_from_hash(attributes)
137
- end
138
-
139
- # Builds the object from hash
140
- # @param [Hash] attributes Model attributes in the form of hash
141
- # @return [Object] Returns the model itself
142
- def build_from_hash(attributes)
143
144
  return nil unless attributes.is_a?(Hash)
144
145
  attributes = attributes.transform_keys(&:to_sym)
145
- self.class.openapi_types.each_pair do |key, type|
146
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
147
- self.send("#{key}=", nil)
146
+ transformed_hash = {}
147
+ openapi_types.each_pair do |key, type|
148
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
149
+ transformed_hash["#{key}"] = nil
148
150
  elsif type =~ /\AArray<(.*)>/i
149
151
  # check to ensure the input is an array given that the attribute
150
152
  # is documented as an array but the input is not
151
- if attributes[self.class.attribute_map[key]].is_a?(Array)
152
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
153
+ if attributes[attribute_map[key]].is_a?(Array)
154
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
153
155
  end
154
- elsif !attributes[self.class.attribute_map[key]].nil?
155
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
156
+ elsif !attributes[attribute_map[key]].nil?
157
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
156
158
  end
157
159
  end
158
-
159
- self
160
+ new(transformed_hash)
160
161
  end
161
162
 
162
163
  # Deserializes the data based on type
163
164
  # @param string type Data type
164
165
  # @param string value Value to be deserialized
165
166
  # @return [Object] Deserialized data
166
- def _deserialize(type, value)
167
+ def self._deserialize(type, value)
167
168
  case type.to_sym
168
169
  when :Time
169
170
  Time.parse(value)