songtradr_api_client_ruby 1.12.23 → 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 (176) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +5 -5
  4. data/docs/AllowedValuesApi.md +2 -2
  5. data/docs/ApiKeyDTO.md +2 -2
  6. data/docs/FileSmallDTO.md +15 -15
  7. data/docs/MusicalFeaturesDTO.md +68 -68
  8. data/docs/PlaylistLargeDTO.md +7 -7
  9. data/docs/ProductMediumDTO.md +7 -7
  10. data/docs/ProductPartyDTO.md +3 -3
  11. data/docs/RecordingApi.md +2 -0
  12. data/docs/RecordingGenrePredictionDTO.md +4 -4
  13. data/docs/RecordingLargeDTO.md +8 -8
  14. data/docs/RecordingMediumDTO.md +6 -6
  15. data/docs/RecordingMinimalWithMusicalFeaturesDTO.md +3 -3
  16. data/docs/RecordingPartyDTO.md +3 -3
  17. data/docs/RecordingSmallDTO.md +3 -3
  18. data/docs/UserApi.md +4 -0
  19. data/docs/UserDTO.md +18 -0
  20. data/lib/songtradr_api_client_ruby/api/allowed_values_api.rb +4 -4
  21. data/lib/songtradr_api_client_ruby/api/api_keys_api.rb +1 -1
  22. data/lib/songtradr_api_client_ruby/api/party_api.rb +1 -1
  23. data/lib/songtradr_api_client_ruby/api/playlist_api.rb +1 -1
  24. data/lib/songtradr_api_client_ruby/api/recording_api.rb +4 -1
  25. data/lib/songtradr_api_client_ruby/api/user_api.rb +7 -1
  26. data/lib/songtradr_api_client_ruby/api_client.rb +1 -1
  27. data/lib/songtradr_api_client_ruby/api_error.rb +1 -1
  28. data/lib/songtradr_api_client_ruby/configuration.rb +10 -8
  29. data/lib/songtradr_api_client_ruby/models/admin_api_user_dto.rb +13 -18
  30. data/lib/songtradr_api_client_ruby/models/api_key_dto.rb +29 -28
  31. data/lib/songtradr_api_client_ruby/models/category_medium_dto.rb +17 -18
  32. data/lib/songtradr_api_client_ruby/models/category_minimal_dto.rb +15 -18
  33. data/lib/songtradr_api_client_ruby/models/config_access_dto.rb +17 -18
  34. data/lib/songtradr_api_client_ruby/models/config_identifier_dto.rb +17 -18
  35. data/lib/songtradr_api_client_ruby/models/contributor_type_dto.rb +15 -18
  36. data/lib/songtradr_api_client_ruby/models/create_api_key_dto.rb +13 -18
  37. data/lib/songtradr_api_client_ruby/models/error_response.rb +19 -18
  38. data/lib/songtradr_api_client_ruby/models/field_summary_dto.rb +19 -18
  39. data/lib/songtradr_api_client_ruby/models/file_dto.rb +23 -18
  40. data/lib/songtradr_api_client_ruby/models/file_list_dto.rb +21 -18
  41. data/lib/songtradr_api_client_ruby/models/file_minimal_with_url_dto.rb +19 -18
  42. data/lib/songtradr_api_client_ruby/models/file_small_dto.rb +84 -79
  43. data/lib/songtradr_api_client_ruby/models/file_upload_dto.rb +13 -18
  44. data/lib/songtradr_api_client_ruby/models/file_w_ith_url_dto.rb +17 -18
  45. data/lib/songtradr_api_client_ruby/models/files_summary_dto.rb +15 -18
  46. data/lib/songtradr_api_client_ruby/models/forgot_password_dto.rb +15 -18
  47. data/lib/songtradr_api_client_ruby/models/genre_dto.rb +17 -18
  48. data/lib/songtradr_api_client_ruby/models/genre_minimal_dto.rb +15 -18
  49. data/lib/songtradr_api_client_ruby/models/genres_summary_dto.rb +17 -18
  50. data/lib/songtradr_api_client_ruby/models/init_put_recording_audio_dto.rb +13 -18
  51. data/lib/songtradr_api_client_ruby/models/jwt_token_dto.rb +17 -18
  52. data/lib/songtradr_api_client_ruby/models/login_dto.rb +17 -18
  53. data/lib/songtradr_api_client_ruby/models/musical_features_dto.rb +448 -453
  54. data/lib/songtradr_api_client_ruby/models/p_line_dto.rb +15 -18
  55. data/lib/songtradr_api_client_ruby/models/party_large_dto.rb +15 -18
  56. data/lib/songtradr_api_client_ruby/models/party_small_dto.rb +17 -18
  57. data/lib/songtradr_api_client_ruby/models/playlist_large_dto.rb +45 -48
  58. data/lib/songtradr_api_client_ruby/models/product_medium_dto.rb +66 -59
  59. data/lib/songtradr_api_client_ruby/models/product_party_dto.rb +28 -31
  60. data/lib/songtradr_api_client_ruby/models/recording_for_similarity_search_dto.rb +17 -18
  61. data/lib/songtradr_api_client_ruby/models/recording_genre_prediction_dto.rb +38 -37
  62. data/lib/songtradr_api_client_ruby/models/recording_large_dto.rb +74 -57
  63. data/lib/songtradr_api_client_ruby/models/recording_list_dto.rb +21 -18
  64. data/lib/songtradr_api_client_ruby/models/recording_medium_dto.rb +61 -48
  65. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_musical_features_dto.rb +28 -31
  66. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_taggrams_dto.rb +15 -18
  67. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_tagstrengths_dto.rb +15 -18
  68. data/lib/songtradr_api_client_ruby/models/recording_party_dto.rb +28 -31
  69. data/lib/songtradr_api_client_ruby/models/recording_playlist_dto.rb +13 -18
  70. data/lib/songtradr_api_client_ruby/models/recording_small_dto.rb +36 -31
  71. data/lib/songtradr_api_client_ruby/models/recording_tag_small_dto.rb +15 -18
  72. data/lib/songtradr_api_client_ruby/models/save_file_recording_dto.rb +17 -18
  73. data/lib/songtradr_api_client_ruby/models/save_playlist_dto.rb +21 -18
  74. data/lib/songtradr_api_client_ruby/models/save_recording_genre_dto.rb +15 -18
  75. data/lib/songtradr_api_client_ruby/models/save_recording_party_dto.rb +17 -18
  76. data/lib/songtradr_api_client_ruby/models/save_recording_playlist_dto.rb +17 -18
  77. data/lib/songtradr_api_client_ruby/models/save_recording_tag_dto.rb +15 -18
  78. data/lib/songtradr_api_client_ruby/models/save_referrer_dto.rb +13 -18
  79. data/lib/songtradr_api_client_ruby/models/save_taggrams_dto.rb +13 -18
  80. data/lib/songtradr_api_client_ruby/models/save_user_dto.rb +15 -18
  81. data/lib/songtradr_api_client_ruby/models/search_filter_values_dto.rb +95 -18
  82. data/lib/songtradr_api_client_ruby/models/search_recording_granular_abstraction_dto.rb +15 -18
  83. data/lib/songtradr_api_client_ruby/models/search_recording_granular_dto.rb +15 -18
  84. data/lib/songtradr_api_client_ruby/models/sign_up_dto.rb +19 -18
  85. data/lib/songtradr_api_client_ruby/models/tag_dto.rb +17 -18
  86. data/lib/songtradr_api_client_ruby/models/tag_small_dto.rb +17 -18
  87. data/lib/songtradr_api_client_ruby/models/taggram_dto.rb +17 -18
  88. data/lib/songtradr_api_client_ruby/models/tags_summary_dto.rb +17 -18
  89. data/lib/songtradr_api_client_ruby/models/tagstrength_dto.rb +17 -18
  90. data/lib/songtradr_api_client_ruby/models/title_dto.rb +15 -18
  91. data/lib/songtradr_api_client_ruby/models/token_request.rb +15 -18
  92. data/lib/songtradr_api_client_ruby/models/track_to_medium_product_dto.rb +17 -18
  93. data/lib/songtradr_api_client_ruby/models/update_password_dto.rb +17 -18
  94. data/lib/songtradr_api_client_ruby/models/usage_dto.rb +13 -18
  95. data/lib/songtradr_api_client_ruby/models/user_dto.rb +196 -19
  96. data/lib/songtradr_api_client_ruby/version.rb +2 -2
  97. data/lib/songtradr_api_client_ruby.rb +1 -1
  98. data/openapi-generator-config.yaml +1 -1
  99. data/songtradr_api_client_ruby.gemspec +1 -1
  100. data/spec/api/allowed_values_api_spec.rb +2 -2
  101. data/spec/api/api_keys_api_spec.rb +1 -1
  102. data/spec/api/party_api_spec.rb +1 -1
  103. data/spec/api/playlist_api_spec.rb +1 -1
  104. data/spec/api/recording_api_spec.rb +2 -1
  105. data/spec/api/user_api_spec.rb +3 -1
  106. data/spec/api_client_spec.rb +1 -1
  107. data/spec/configuration_spec.rb +1 -1
  108. data/spec/models/admin_api_user_dto_spec.rb +1 -1
  109. data/spec/models/api_key_dto_spec.rb +3 -3
  110. data/spec/models/category_medium_dto_spec.rb +1 -1
  111. data/spec/models/category_minimal_dto_spec.rb +1 -1
  112. data/spec/models/config_access_dto_spec.rb +1 -1
  113. data/spec/models/config_identifier_dto_spec.rb +1 -1
  114. data/spec/models/contributor_type_dto_spec.rb +1 -1
  115. data/spec/models/create_api_key_dto_spec.rb +1 -1
  116. data/spec/models/error_response_spec.rb +1 -1
  117. data/spec/models/field_summary_dto_spec.rb +1 -1
  118. data/spec/models/file_dto_spec.rb +1 -1
  119. data/spec/models/file_list_dto_spec.rb +1 -1
  120. data/spec/models/file_minimal_with_url_dto_spec.rb +1 -1
  121. data/spec/models/file_small_dto_spec.rb +19 -19
  122. data/spec/models/file_upload_dto_spec.rb +1 -1
  123. data/spec/models/file_w_ith_url_dto_spec.rb +1 -1
  124. data/spec/models/files_summary_dto_spec.rb +1 -1
  125. data/spec/models/forgot_password_dto_spec.rb +1 -1
  126. data/spec/models/genre_dto_spec.rb +1 -1
  127. data/spec/models/genre_minimal_dto_spec.rb +1 -1
  128. data/spec/models/genres_summary_dto_spec.rb +1 -1
  129. data/spec/models/init_put_recording_audio_dto_spec.rb +1 -1
  130. data/spec/models/jwt_token_dto_spec.rb +1 -1
  131. data/spec/models/login_dto_spec.rb +1 -1
  132. data/spec/models/musical_features_dto_spec.rb +121 -121
  133. data/spec/models/p_line_dto_spec.rb +1 -1
  134. data/spec/models/party_large_dto_spec.rb +1 -1
  135. data/spec/models/party_small_dto_spec.rb +1 -1
  136. data/spec/models/playlist_large_dto_spec.rb +10 -10
  137. data/spec/models/product_medium_dto_spec.rb +9 -9
  138. data/spec/models/product_party_dto_spec.rb +3 -3
  139. data/spec/models/recording_for_similarity_search_dto_spec.rb +1 -1
  140. data/spec/models/recording_genre_prediction_dto_spec.rb +3 -3
  141. data/spec/models/recording_large_dto_spec.rb +12 -12
  142. data/spec/models/recording_list_dto_spec.rb +1 -1
  143. data/spec/models/recording_medium_dto_spec.rb +9 -9
  144. data/spec/models/recording_minimal_with_musical_features_dto_spec.rb +3 -3
  145. data/spec/models/recording_minimal_with_taggrams_dto_spec.rb +1 -1
  146. data/spec/models/recording_minimal_with_tagstrengths_dto_spec.rb +1 -1
  147. data/spec/models/recording_party_dto_spec.rb +3 -3
  148. data/spec/models/recording_playlist_dto_spec.rb +1 -1
  149. data/spec/models/recording_small_dto_spec.rb +4 -4
  150. data/spec/models/recording_tag_small_dto_spec.rb +1 -1
  151. data/spec/models/save_file_recording_dto_spec.rb +1 -1
  152. data/spec/models/save_playlist_dto_spec.rb +1 -1
  153. data/spec/models/save_recording_genre_dto_spec.rb +1 -1
  154. data/spec/models/save_recording_party_dto_spec.rb +1 -1
  155. data/spec/models/save_recording_playlist_dto_spec.rb +1 -1
  156. data/spec/models/save_recording_tag_dto_spec.rb +1 -1
  157. data/spec/models/save_referrer_dto_spec.rb +1 -1
  158. data/spec/models/save_taggrams_dto_spec.rb +1 -1
  159. data/spec/models/save_user_dto_spec.rb +1 -1
  160. data/spec/models/search_filter_values_dto_spec.rb +1 -1
  161. data/spec/models/search_recording_granular_abstraction_dto_spec.rb +1 -1
  162. data/spec/models/search_recording_granular_dto_spec.rb +1 -1
  163. data/spec/models/sign_up_dto_spec.rb +1 -1
  164. data/spec/models/tag_dto_spec.rb +1 -1
  165. data/spec/models/tag_small_dto_spec.rb +1 -1
  166. data/spec/models/taggram_dto_spec.rb +1 -1
  167. data/spec/models/tags_summary_dto_spec.rb +1 -1
  168. data/spec/models/tagstrength_dto_spec.rb +1 -1
  169. data/spec/models/title_dto_spec.rb +1 -1
  170. data/spec/models/token_request_spec.rb +1 -1
  171. data/spec/models/track_to_medium_product_dto_spec.rb +1 -1
  172. data/spec/models/update_password_dto_spec.rb +1 -1
  173. data/spec/models/usage_dto_spec.rb +1 -1
  174. data/spec/models/user_dto_spec.rb +55 -1
  175. data/spec/spec_helper.rb +1 -1
  176. metadata +2 -2
@@ -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.23
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,34 +18,34 @@ module SongtradrApiClientRuby
18
18
  class ProductMediumDTO
19
19
  attr_accessor :duration
20
20
 
21
+ attr_accessor :genres
22
+
23
+ attr_accessor :titles
24
+
21
25
  attr_accessor :gtin
22
26
 
23
27
  attr_accessor :grid
24
28
 
25
29
  attr_accessor :release_date
26
30
 
27
- attr_accessor :takedown_date
28
-
29
31
  attr_accessor :pline
30
32
 
31
- attr_accessor :parties
32
-
33
- attr_accessor :genres
33
+ attr_accessor :takedown_date
34
34
 
35
- attr_accessor :titles
35
+ attr_accessor :parties
36
36
 
37
37
  # Attribute mapping from ruby-style variable name to JSON key.
38
38
  def self.attribute_map
39
39
  {
40
40
  :'duration' => :'duration',
41
+ :'genres' => :'genres',
42
+ :'titles' => :'titles',
41
43
  :'gtin' => :'gtin',
42
44
  :'grid' => :'grid',
43
45
  :'release_date' => :'releaseDate',
44
- :'takedown_date' => :'takedownDate',
45
46
  :'pline' => :'pline',
46
- :'parties' => :'parties',
47
- :'genres' => :'genres',
48
- :'titles' => :'titles'
47
+ :'takedown_date' => :'takedownDate',
48
+ :'parties' => :'parties'
49
49
  }
50
50
  end
51
51
 
@@ -58,14 +58,14 @@ module SongtradrApiClientRuby
58
58
  def self.openapi_types
59
59
  {
60
60
  :'duration' => :'Time',
61
+ :'genres' => :'Array<GenreMinimalDTO>',
62
+ :'titles' => :'Array<TitleDTO>',
61
63
  :'gtin' => :'String',
62
64
  :'grid' => :'String',
63
65
  :'release_date' => :'Time',
64
- :'takedown_date' => :'Time',
65
66
  :'pline' => :'PLineDTO',
66
- :'parties' => :'Array<ProductPartyDTO>',
67
- :'genres' => :'Array<GenreMinimalDTO>',
68
- :'titles' => :'Array<TitleDTO>'
67
+ :'takedown_date' => :'Time',
68
+ :'parties' => :'Array<ProductPartyDTO>'
69
69
  }
70
70
  end
71
71
 
@@ -94,6 +94,18 @@ module SongtradrApiClientRuby
94
94
  self.duration = attributes[:'duration']
95
95
  end
96
96
 
97
+ if attributes.key?(:'genres')
98
+ if (value = attributes[:'genres']).is_a?(Array)
99
+ self.genres = value
100
+ end
101
+ end
102
+
103
+ if attributes.key?(:'titles')
104
+ if (value = attributes[:'titles']).is_a?(Array)
105
+ self.titles = value
106
+ end
107
+ end
108
+
97
109
  if attributes.key?(:'gtin')
98
110
  self.gtin = attributes[:'gtin']
99
111
  end
@@ -106,36 +118,25 @@ module SongtradrApiClientRuby
106
118
  self.release_date = attributes[:'release_date']
107
119
  end
108
120
 
109
- if attributes.key?(:'takedown_date')
110
- self.takedown_date = attributes[:'takedown_date']
111
- end
112
-
113
121
  if attributes.key?(:'pline')
114
122
  self.pline = attributes[:'pline']
115
123
  end
116
124
 
125
+ if attributes.key?(:'takedown_date')
126
+ self.takedown_date = attributes[:'takedown_date']
127
+ end
128
+
117
129
  if attributes.key?(:'parties')
118
130
  if (value = attributes[:'parties']).is_a?(Array)
119
131
  self.parties = value
120
132
  end
121
133
  end
122
-
123
- if attributes.key?(:'genres')
124
- if (value = attributes[:'genres']).is_a?(Array)
125
- self.genres = value
126
- end
127
- end
128
-
129
- if attributes.key?(:'titles')
130
- if (value = attributes[:'titles']).is_a?(Array)
131
- self.titles = value
132
- end
133
- end
134
134
  end
135
135
 
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,41 +144,54 @@ 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
- # Custom attribute writer method with validation
150
- # @param [Object] parties Value to be assigned
151
- def parties=(parties)
152
- @parties = parties
153
- end
154
-
155
151
  # Custom attribute writer method with validation
156
152
  # @param [Object] genres Value to be assigned
157
153
  def genres=(genres)
154
+ if genres.nil?
155
+ fail ArgumentError, 'genres cannot be nil'
156
+ end
157
+
158
158
  @genres = genres
159
159
  end
160
160
 
161
161
  # Custom attribute writer method with validation
162
162
  # @param [Object] titles Value to be assigned
163
163
  def titles=(titles)
164
+ if titles.nil?
165
+ fail ArgumentError, 'titles cannot be nil'
166
+ end
167
+
164
168
  @titles = titles
165
169
  end
166
170
 
171
+ # Custom attribute writer method with validation
172
+ # @param [Object] parties Value to be assigned
173
+ def parties=(parties)
174
+ if parties.nil?
175
+ fail ArgumentError, 'parties cannot be nil'
176
+ end
177
+
178
+ @parties = parties
179
+ end
180
+
167
181
  # Checks equality by comparing each attribute.
168
182
  # @param [Object] Object to be compared
169
183
  def ==(o)
170
184
  return true if self.equal?(o)
171
185
  self.class == o.class &&
172
186
  duration == o.duration &&
187
+ genres == o.genres &&
188
+ titles == o.titles &&
173
189
  gtin == o.gtin &&
174
190
  grid == o.grid &&
175
191
  release_date == o.release_date &&
176
- takedown_date == o.takedown_date &&
177
192
  pline == o.pline &&
178
- parties == o.parties &&
179
- genres == o.genres &&
180
- titles == o.titles
193
+ takedown_date == o.takedown_date &&
194
+ parties == o.parties
181
195
  end
182
196
 
183
197
  # @see the `==` method
@@ -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, gtin, grid, release_date, takedown_date, pline, parties, genres, titles].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.23
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
@@ -16,15 +16,15 @@ require 'time'
16
16
  module SongtradrApiClientRuby
17
17
  # Parties (persons, groups or organizations) that have contributed to a product.
18
18
  class ProductPartyDTO
19
- attr_accessor :contributor_types
20
-
21
19
  attr_accessor :party
22
20
 
21
+ attr_accessor :contributor_types
22
+
23
23
  # Attribute mapping from ruby-style variable name to JSON key.
24
24
  def self.attribute_map
25
25
  {
26
- :'contributor_types' => :'contributorTypes',
27
- :'party' => :'party'
26
+ :'party' => :'party',
27
+ :'contributor_types' => :'contributorTypes'
28
28
  }
29
29
  end
30
30
 
@@ -36,8 +36,8 @@ module SongtradrApiClientRuby
36
36
  # Attribute type mapping.
37
37
  def self.openapi_types
38
38
  {
39
- :'contributor_types' => :'Array<ContributorTypeDTO>',
40
- :'party' => :'PartySmallDTO'
39
+ :'party' => :'PartySmallDTO',
40
+ :'contributor_types' => :'Array<ContributorTypeDTO>'
41
41
  }
42
42
  end
43
43
 
@@ -62,20 +62,23 @@ module SongtradrApiClientRuby
62
62
  h[k.to_sym] = v
63
63
  }
64
64
 
65
+ if attributes.key?(:'party')
66
+ self.party = attributes[:'party']
67
+ else
68
+ self.party = nil
69
+ end
70
+
65
71
  if attributes.key?(:'contributor_types')
66
72
  if (value = attributes[:'contributor_types']).is_a?(Array)
67
73
  self.contributor_types = value
68
74
  end
69
75
  end
70
-
71
- if attributes.key?(:'party')
72
- self.party = attributes[:'party']
73
- end
74
76
  end
75
77
 
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
@@ -96,8 +100,8 @@ module SongtradrApiClientRuby
96
100
  def ==(o)
97
101
  return true if self.equal?(o)
98
102
  self.class == o.class &&
99
- contributor_types == o.contributor_types &&
100
- party == o.party
103
+ party == o.party &&
104
+ contributor_types == o.contributor_types
101
105
  end
102
106
 
103
107
  # @see the `==` method
@@ -109,44 +113,37 @@ module SongtradrApiClientRuby
109
113
  # Calculates hash code according to all attributes.
110
114
  # @return [Integer] Hash code
111
115
  def hash
112
- [contributor_types, party].hash
116
+ [party, contributor_types].hash
113
117
  end
114
118
 
115
119
  # Builds the object from hash
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.23
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.23
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
@@ -16,18 +16,18 @@ require 'time'
16
16
  module SongtradrApiClientRuby
17
17
  # AI-predicted Genres for a recording
18
18
  class RecordingGenrePredictionDTO
19
- attr_accessor :genre
19
+ attr_accessor :genre_type
20
20
 
21
21
  attr_accessor :probability
22
22
 
23
- attr_accessor :genre_type
23
+ attr_accessor :genre
24
24
 
25
25
  # Attribute mapping from ruby-style variable name to JSON key.
26
26
  def self.attribute_map
27
27
  {
28
- :'genre' => :'genre',
28
+ :'genre_type' => :'genreType',
29
29
  :'probability' => :'probability',
30
- :'genre_type' => :'genreType'
30
+ :'genre' => :'genre'
31
31
  }
32
32
  end
33
33
 
@@ -39,9 +39,9 @@ module SongtradrApiClientRuby
39
39
  # Attribute type mapping.
40
40
  def self.openapi_types
41
41
  {
42
- :'genre' => :'GenreMinimalDTO',
42
+ :'genre_type' => :'String',
43
43
  :'probability' => :'Float',
44
- :'genre_type' => :'String'
44
+ :'genre' => :'GenreMinimalDTO'
45
45
  }
46
46
  end
47
47
 
@@ -66,33 +66,40 @@ module SongtradrApiClientRuby
66
66
  h[k.to_sym] = v
67
67
  }
68
68
 
69
- if attributes.key?(:'genre')
70
- self.genre = attributes[:'genre']
69
+ if attributes.key?(:'genre_type')
70
+ self.genre_type = attributes[:'genre_type']
71
+ else
72
+ self.genre_type = nil
71
73
  end
72
74
 
73
75
  if attributes.key?(:'probability')
74
76
  self.probability = attributes[:'probability']
77
+ else
78
+ self.probability = nil
75
79
  end
76
80
 
77
- if attributes.key?(:'genre_type')
78
- self.genre_type = attributes[:'genre_type']
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
- if @genre.nil?
87
- invalid_properties.push('invalid value for "genre", genre cannot be nil.')
93
+ if @genre_type.nil?
94
+ invalid_properties.push('invalid value for "genre_type", genre_type cannot be nil.')
88
95
  end
89
96
 
90
97
  if @probability.nil?
91
98
  invalid_properties.push('invalid value for "probability", probability cannot be nil.')
92
99
  end
93
100
 
94
- if @genre_type.nil?
95
- invalid_properties.push('invalid value for "genre_type", genre_type cannot be nil.')
101
+ if @genre.nil?
102
+ invalid_properties.push('invalid value for "genre", genre cannot be nil.')
96
103
  end
97
104
 
98
105
  invalid_properties
@@ -101,9 +108,10 @@ module SongtradrApiClientRuby
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?
104
- return false if @genre.nil?
105
- return false if @probability.nil?
111
+ warn '[DEPRECATED] the `valid?` method is obsolete'
106
112
  return false if @genre_type.nil?
113
+ return false if @probability.nil?
114
+ return false if @genre.nil?
107
115
  true
108
116
  end
109
117
 
@@ -112,9 +120,9 @@ module SongtradrApiClientRuby
112
120
  def ==(o)
113
121
  return true if self.equal?(o)
114
122
  self.class == o.class &&
115
- genre == o.genre &&
123
+ genre_type == o.genre_type &&
116
124
  probability == o.probability &&
117
- genre_type == o.genre_type
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, probability, genre_type].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)