songtradr_api_client_ruby 1.13.7 → 1.16.0

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 (243) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +5 -5
  3. data/README.md +5 -37
  4. data/docs/FileSmallDTO.md +2 -2
  5. data/docs/MusicalFeaturesDTO.md +25 -25
  6. data/docs/PlaylistApi.md +0 -214
  7. data/docs/RecordingApi.md +2 -204
  8. data/docs/RecordingGenrePredictionDTO.md +3 -3
  9. data/docs/RecordingMediumDTO.md +2 -2
  10. data/docs/RecordingPartyDTO.md +3 -3
  11. data/docs/UserApi.md +8 -456
  12. data/lib/songtradr_api_client_ruby/api/allowed_values_api.rb +2 -2
  13. data/lib/songtradr_api_client_ruby/api/playlist_api.rb +2 -202
  14. data/lib/songtradr_api_client_ruby/api/recording_api.rb +6 -191
  15. data/lib/songtradr_api_client_ruby/api/user_api.rb +161 -749
  16. data/lib/songtradr_api_client_ruby/api_client.rb +38 -36
  17. data/lib/songtradr_api_client_ruby/api_error.rb +2 -2
  18. data/lib/songtradr_api_client_ruby/configuration.rb +2 -2
  19. data/lib/songtradr_api_client_ruby/models/age_range.rb +3 -3
  20. data/lib/songtradr_api_client_ruby/models/beard.rb +3 -3
  21. data/lib/songtradr_api_client_ruby/models/bounding_box.rb +3 -3
  22. data/lib/songtradr_api_client_ruby/models/category_medium_dto.rb +3 -3
  23. data/lib/songtradr_api_client_ruby/models/category_minimal_dto.rb +3 -3
  24. data/lib/songtradr_api_client_ruby/models/config_access_dto.rb +3 -3
  25. data/lib/songtradr_api_client_ruby/models/config_identifier_dto.rb +3 -3
  26. data/lib/songtradr_api_client_ruby/models/contributor_type_dto.rb +3 -3
  27. data/lib/songtradr_api_client_ruby/models/curate_playlist_dto.rb +3 -3
  28. data/lib/songtradr_api_client_ruby/models/curate_playlist_response_dto.rb +3 -3
  29. data/lib/songtradr_api_client_ruby/models/dominant_color.rb +3 -3
  30. data/lib/songtradr_api_client_ruby/models/emotion.rb +3 -3
  31. data/lib/songtradr_api_client_ruby/models/error_response.rb +3 -3
  32. data/lib/songtradr_api_client_ruby/models/eye_direction.rb +3 -3
  33. data/lib/songtradr_api_client_ruby/models/eye_open.rb +3 -3
  34. data/lib/songtradr_api_client_ruby/models/eyeglasses.rb +3 -3
  35. data/lib/songtradr_api_client_ruby/models/face_detail.rb +3 -3
  36. data/lib/songtradr_api_client_ruby/models/face_detection.rb +3 -3
  37. data/lib/songtradr_api_client_ruby/models/face_occluded.rb +3 -3
  38. data/lib/songtradr_api_client_ruby/models/field_summary_dto.rb +3 -3
  39. data/lib/songtradr_api_client_ruby/models/file_dto.rb +3 -3
  40. data/lib/songtradr_api_client_ruby/models/file_list_dto.rb +3 -3
  41. data/lib/songtradr_api_client_ruby/models/file_small_dto.rb +15 -15
  42. data/lib/songtradr_api_client_ruby/models/file_upload_dto.rb +3 -3
  43. data/lib/songtradr_api_client_ruby/models/file_w_ith_url_dto.rb +3 -3
  44. data/lib/songtradr_api_client_ruby/models/files_summary_dto.rb +3 -3
  45. data/lib/songtradr_api_client_ruby/models/forgot_password_dto.rb +3 -3
  46. data/lib/songtradr_api_client_ruby/models/gender.rb +3 -3
  47. data/lib/songtradr_api_client_ruby/models/genre_dto.rb +3 -3
  48. data/lib/songtradr_api_client_ruby/models/genre_minimal_dto.rb +3 -3
  49. data/lib/songtradr_api_client_ruby/models/genres_summary_dto.rb +3 -3
  50. data/lib/songtradr_api_client_ruby/models/image_quality.rb +3 -3
  51. data/lib/songtradr_api_client_ruby/models/image_recognition_response.rb +3 -3
  52. data/lib/songtradr_api_client_ruby/models/init_put_recording_audio_dto.rb +3 -3
  53. data/lib/songtradr_api_client_ruby/models/instance.rb +3 -3
  54. data/lib/songtradr_api_client_ruby/models/jwt_token_dto.rb +3 -3
  55. data/lib/songtradr_api_client_ruby/models/label.rb +3 -3
  56. data/lib/songtradr_api_client_ruby/models/label_alias.rb +3 -3
  57. data/lib/songtradr_api_client_ruby/models/label_category.rb +3 -3
  58. data/lib/songtradr_api_client_ruby/models/label_detection.rb +3 -3
  59. data/lib/songtradr_api_client_ruby/models/landmark.rb +3 -3
  60. data/lib/songtradr_api_client_ruby/models/login_dto.rb +3 -3
  61. data/lib/songtradr_api_client_ruby/models/mouth_open.rb +3 -3
  62. data/lib/songtradr_api_client_ruby/models/musical_features_dto.rb +270 -270
  63. data/lib/songtradr_api_client_ruby/models/mustache.rb +3 -3
  64. data/lib/songtradr_api_client_ruby/models/parent.rb +3 -3
  65. data/lib/songtradr_api_client_ruby/models/party_small_dto.rb +3 -3
  66. data/lib/songtradr_api_client_ruby/models/pose.rb +3 -3
  67. data/lib/songtradr_api_client_ruby/models/recording_for_similarity_search_dto.rb +3 -3
  68. data/lib/songtradr_api_client_ruby/models/recording_genre_prediction_dto.rb +23 -23
  69. data/lib/songtradr_api_client_ruby/models/recording_list_dto.rb +3 -3
  70. data/lib/songtradr_api_client_ruby/models/recording_medium_dto.rb +13 -13
  71. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_musical_features_dto.rb +3 -3
  72. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_taggrams_dto.rb +3 -3
  73. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_tagstrengths_dto.rb +3 -3
  74. data/lib/songtradr_api_client_ruby/models/recording_party_dto.rb +18 -18
  75. data/lib/songtradr_api_client_ruby/models/recording_small_dto.rb +3 -3
  76. data/lib/songtradr_api_client_ruby/models/recording_tag_small_dto.rb +3 -3
  77. data/lib/songtradr_api_client_ruby/models/save_user_dto.rb +3 -3
  78. data/lib/songtradr_api_client_ruby/models/search_filter_values_dto.rb +3 -3
  79. data/lib/songtradr_api_client_ruby/models/search_recording_granular_dto.rb +3 -3
  80. data/lib/songtradr_api_client_ruby/models/sign_up_dto.rb +3 -3
  81. data/lib/songtradr_api_client_ruby/models/smile.rb +3 -3
  82. data/lib/songtradr_api_client_ruby/models/sunglasses.rb +3 -3
  83. data/lib/songtradr_api_client_ruby/models/tag_dto.rb +3 -3
  84. data/lib/songtradr_api_client_ruby/models/tag_small_dto.rb +3 -3
  85. data/lib/songtradr_api_client_ruby/models/taggram_dto.rb +3 -3
  86. data/lib/songtradr_api_client_ruby/models/tags_summary_dto.rb +3 -3
  87. data/lib/songtradr_api_client_ruby/models/tagstrength_dto.rb +3 -3
  88. data/lib/songtradr_api_client_ruby/models/title_dto.rb +3 -3
  89. data/lib/songtradr_api_client_ruby/models/token_request.rb +3 -3
  90. data/lib/songtradr_api_client_ruby/models/track_dto.rb +3 -3
  91. data/lib/songtradr_api_client_ruby/models/update_password_dto.rb +3 -3
  92. data/lib/songtradr_api_client_ruby/models/user_dto.rb +3 -3
  93. data/lib/songtradr_api_client_ruby/models/video_recognition_response.rb +3 -3
  94. data/lib/songtradr_api_client_ruby/version.rb +3 -3
  95. data/lib/songtradr_api_client_ruby.rb +2 -23
  96. data/openapi-generator-config.yaml +1 -1
  97. data/songtradr_api_client_ruby.gemspec +3 -2
  98. data/spec/api/allowed_values_api_spec.rb +2 -2
  99. data/spec/api/playlist_api_spec.rb +2 -39
  100. data/spec/api/recording_api_spec.rb +3 -35
  101. data/spec/api/user_api_spec.rb +6 -111
  102. data/spec/api_client_spec.rb +2 -2
  103. data/spec/configuration_spec.rb +2 -2
  104. data/spec/models/age_range_spec.rb +2 -2
  105. data/spec/models/beard_spec.rb +2 -2
  106. data/spec/models/bounding_box_spec.rb +2 -2
  107. data/spec/models/category_medium_dto_spec.rb +2 -2
  108. data/spec/models/category_minimal_dto_spec.rb +2 -2
  109. data/spec/models/config_access_dto_spec.rb +2 -2
  110. data/spec/models/config_identifier_dto_spec.rb +2 -2
  111. data/spec/models/contributor_type_dto_spec.rb +2 -2
  112. data/spec/models/curate_playlist_dto_spec.rb +2 -2
  113. data/spec/models/curate_playlist_response_dto_spec.rb +2 -2
  114. data/spec/models/dominant_color_spec.rb +2 -2
  115. data/spec/models/emotion_spec.rb +2 -2
  116. data/spec/models/error_response_spec.rb +2 -2
  117. data/spec/models/eye_direction_spec.rb +2 -2
  118. data/spec/models/eye_open_spec.rb +2 -2
  119. data/spec/models/eyeglasses_spec.rb +2 -2
  120. data/spec/models/face_detail_spec.rb +2 -2
  121. data/spec/models/face_detection_spec.rb +2 -2
  122. data/spec/models/face_occluded_spec.rb +2 -2
  123. data/spec/models/field_summary_dto_spec.rb +2 -2
  124. data/spec/models/file_dto_spec.rb +2 -2
  125. data/spec/models/file_list_dto_spec.rb +2 -2
  126. data/spec/models/file_small_dto_spec.rb +5 -5
  127. data/spec/models/file_upload_dto_spec.rb +2 -2
  128. data/spec/models/file_w_ith_url_dto_spec.rb +2 -2
  129. data/spec/models/files_summary_dto_spec.rb +2 -2
  130. data/spec/models/forgot_password_dto_spec.rb +2 -2
  131. data/spec/models/gender_spec.rb +2 -2
  132. data/spec/models/genre_dto_spec.rb +2 -2
  133. data/spec/models/genre_minimal_dto_spec.rb +2 -2
  134. data/spec/models/genres_summary_dto_spec.rb +2 -2
  135. data/spec/models/image_quality_spec.rb +2 -2
  136. data/spec/models/image_recognition_response_spec.rb +2 -2
  137. data/spec/models/init_put_recording_audio_dto_spec.rb +2 -2
  138. data/spec/models/instance_spec.rb +2 -2
  139. data/spec/models/jwt_token_dto_spec.rb +2 -2
  140. data/spec/models/label_alias_spec.rb +2 -2
  141. data/spec/models/label_category_spec.rb +2 -2
  142. data/spec/models/label_detection_spec.rb +2 -2
  143. data/spec/models/label_spec.rb +2 -2
  144. data/spec/models/landmark_spec.rb +2 -2
  145. data/spec/models/login_dto_spec.rb +2 -2
  146. data/spec/models/mouth_open_spec.rb +2 -2
  147. data/spec/models/musical_features_dto_spec.rb +81 -81
  148. data/spec/models/mustache_spec.rb +2 -2
  149. data/spec/models/parent_spec.rb +2 -2
  150. data/spec/models/party_small_dto_spec.rb +2 -2
  151. data/spec/models/pose_spec.rb +2 -2
  152. data/spec/models/recording_for_similarity_search_dto_spec.rb +2 -2
  153. data/spec/models/recording_genre_prediction_dto_spec.rb +5 -5
  154. data/spec/models/recording_list_dto_spec.rb +2 -2
  155. data/spec/models/recording_medium_dto_spec.rb +4 -4
  156. data/spec/models/recording_minimal_with_musical_features_dto_spec.rb +2 -2
  157. data/spec/models/recording_minimal_with_taggrams_dto_spec.rb +2 -2
  158. data/spec/models/recording_minimal_with_tagstrengths_dto_spec.rb +2 -2
  159. data/spec/models/recording_party_dto_spec.rb +4 -4
  160. data/spec/models/recording_small_dto_spec.rb +2 -2
  161. data/spec/models/recording_tag_small_dto_spec.rb +2 -2
  162. data/spec/models/save_user_dto_spec.rb +2 -2
  163. data/spec/models/search_filter_values_dto_spec.rb +2 -2
  164. data/spec/models/search_recording_granular_dto_spec.rb +2 -2
  165. data/spec/models/sign_up_dto_spec.rb +2 -2
  166. data/spec/models/smile_spec.rb +2 -2
  167. data/spec/models/sunglasses_spec.rb +2 -2
  168. data/spec/models/tag_dto_spec.rb +2 -2
  169. data/spec/models/tag_small_dto_spec.rb +2 -2
  170. data/spec/models/taggram_dto_spec.rb +2 -2
  171. data/spec/models/tags_summary_dto_spec.rb +2 -2
  172. data/spec/models/tagstrength_dto_spec.rb +2 -2
  173. data/spec/models/title_dto_spec.rb +2 -2
  174. data/spec/models/token_request_spec.rb +2 -2
  175. data/spec/models/track_dto_spec.rb +2 -2
  176. data/spec/models/update_password_dto_spec.rb +2 -2
  177. data/spec/models/user_dto_spec.rb +2 -2
  178. data/spec/models/video_recognition_response_spec.rb +2 -2
  179. data/spec/spec_helper.rb +2 -2
  180. metadata +65 -149
  181. data/docs/ContextValue.md +0 -18
  182. data/docs/FileMinimalWithUrlDTO.md +0 -22
  183. data/docs/PLineDTO.md +0 -20
  184. data/docs/PartyApi.md +0 -75
  185. data/docs/PartyLargeDTO.md +0 -32
  186. data/docs/PlaylistLargeDTO.md +0 -38
  187. data/docs/ProductMediumDTO.md +0 -34
  188. data/docs/ProductPartyDTO.md +0 -20
  189. data/docs/RecordingLargeDTO.md +0 -40
  190. data/docs/RecordingPlaylistDTO.md +0 -24
  191. data/docs/SaveFileRecordingDTO.md +0 -240
  192. data/docs/SavePlaylistDTO.md +0 -34
  193. data/docs/SaveRecordingGenreDTO.md +0 -22
  194. data/docs/SaveRecordingPartyDTO.md +0 -20
  195. data/docs/SaveRecordingPlaylistDTO.md +0 -22
  196. data/docs/SaveRecordingTagDTO.md +0 -20
  197. data/docs/SaveReferrerDTO.md +0 -20
  198. data/docs/SaveTaggramsDTO.md +0 -82
  199. data/docs/SearchRecordingGranularAbstractionDTO.md +0 -20
  200. data/docs/TrackToMediumProductDTO.md +0 -22
  201. data/docs/UsageDTO.md +0 -18
  202. data/lib/songtradr_api_client_ruby/api/party_api.rb +0 -84
  203. data/lib/songtradr_api_client_ruby/models/context_value.rb +0 -216
  204. data/lib/songtradr_api_client_ruby/models/file_minimal_with_url_dto.rb +0 -254
  205. data/lib/songtradr_api_client_ruby/models/p_line_dto.rb +0 -231
  206. data/lib/songtradr_api_client_ruby/models/party_large_dto.rb +0 -285
  207. data/lib/songtradr_api_client_ruby/models/playlist_large_dto.rb +0 -350
  208. data/lib/songtradr_api_client_ruby/models/product_medium_dto.rb +0 -323
  209. data/lib/songtradr_api_client_ruby/models/product_party_dto.rb +0 -233
  210. data/lib/songtradr_api_client_ruby/models/recording_large_dto.rb +0 -383
  211. data/lib/songtradr_api_client_ruby/models/recording_playlist_dto.rb +0 -242
  212. data/lib/songtradr_api_client_ruby/models/save_file_recording_dto.rb +0 -1864
  213. data/lib/songtradr_api_client_ruby/models/save_playlist_dto.rb +0 -353
  214. data/lib/songtradr_api_client_ruby/models/save_recording_genre_dto.rb +0 -240
  215. data/lib/songtradr_api_client_ruby/models/save_recording_party_dto.rb +0 -272
  216. data/lib/songtradr_api_client_ruby/models/save_recording_playlist_dto.rb +0 -247
  217. data/lib/songtradr_api_client_ruby/models/save_recording_tag_dto.rb +0 -231
  218. data/lib/songtradr_api_client_ruby/models/save_referrer_dto.rb +0 -224
  219. data/lib/songtradr_api_client_ruby/models/save_taggrams_dto.rb +0 -569
  220. data/lib/songtradr_api_client_ruby/models/search_recording_granular_abstraction_dto.rb +0 -267
  221. data/lib/songtradr_api_client_ruby/models/track_to_medium_product_dto.rb +0 -247
  222. data/lib/songtradr_api_client_ruby/models/usage_dto.rb +0 -215
  223. data/spec/api/party_api_spec.rb +0 -46
  224. data/spec/models/context_value_spec.rb +0 -36
  225. data/spec/models/file_minimal_with_url_dto_spec.rb +0 -48
  226. data/spec/models/p_line_dto_spec.rb +0 -42
  227. data/spec/models/party_large_dto_spec.rb +0 -78
  228. data/spec/models/playlist_large_dto_spec.rb +0 -100
  229. data/spec/models/product_medium_dto_spec.rb +0 -84
  230. data/spec/models/product_party_dto_spec.rb +0 -42
  231. data/spec/models/recording_large_dto_spec.rb +0 -102
  232. data/spec/models/recording_playlist_dto_spec.rb +0 -54
  233. data/spec/models/save_file_recording_dto_spec.rb +0 -894
  234. data/spec/models/save_playlist_dto_spec.rb +0 -88
  235. data/spec/models/save_recording_genre_dto_spec.rb +0 -48
  236. data/spec/models/save_recording_party_dto_spec.rb +0 -46
  237. data/spec/models/save_recording_playlist_dto_spec.rb +0 -48
  238. data/spec/models/save_recording_tag_dto_spec.rb +0 -42
  239. data/spec/models/save_referrer_dto_spec.rb +0 -42
  240. data/spec/models/save_taggrams_dto_spec.rb +0 -228
  241. data/spec/models/search_recording_granular_abstraction_dto_spec.rb +0 -46
  242. data/spec/models/track_to_medium_product_dto_spec.rb +0 -48
  243. data/spec/models/usage_dto_spec.rb +0 -36
@@ -3,10 +3,10 @@
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.13.7
6
+ The version of the OpenAPI document: 1.16.0
7
7
  Contact: info@songtradr.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.1.0-SNAPSHOT
9
+ OpenAPI Generator version: 7.2.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -22,6 +22,38 @@ module SongtradrApiClientRuby
22
22
  # Search for an arousal
23
23
  attr_accessor :arousal
24
24
 
25
+ # Search for tempo
26
+ attr_accessor :tempo
27
+
28
+ # Search for texture
29
+ attr_accessor :texture
30
+
31
+ # Search for timbre
32
+ attr_accessor :timbre
33
+
34
+ # Search for tonality
35
+ attr_accessor :tonality
36
+
37
+ # Search for a valence
38
+ attr_accessor :valence
39
+
40
+ # Search for a vocal gender or instrumental songs
41
+ attr_accessor :vocals
42
+
43
+ # Search for origin decade
44
+ attr_accessor :origin_decade
45
+
46
+ # Search for curatebility
47
+ attr_accessor :curateability
48
+
49
+ # Search for use case
50
+ attr_accessor :use_case
51
+
52
+ # Search for social media suitability
53
+ attr_accessor :channel_suitability
54
+
55
+ attr_accessor :language_of_performance
56
+
25
57
  # Search for a dominant instrument
26
58
  attr_accessor :dominant_instrument
27
59
 
@@ -55,41 +87,12 @@ module SongtradrApiClientRuby
55
87
  # Search for a tonal scale
56
88
  attr_accessor :scale
57
89
 
90
+ # Search for a harmonic key
91
+ attr_accessor :key
92
+
58
93
  # Search for type of sound generation
59
94
  attr_accessor :sound_generation
60
95
 
61
- # Search for tempo
62
- attr_accessor :tempo
63
-
64
- # Search for texture
65
- attr_accessor :texture
66
-
67
- # Search for timbre
68
- attr_accessor :timbre
69
-
70
- # Search for tonality
71
- attr_accessor :tonality
72
-
73
- # Search for a valence
74
- attr_accessor :valence
75
-
76
- # Search for a vocal gender or instrumental songs
77
- attr_accessor :vocals
78
-
79
- # Search for origin decade
80
- attr_accessor :origin_decade
81
-
82
- # Search for curatebility
83
- attr_accessor :curateability
84
-
85
- # Search for use case
86
- attr_accessor :use_case
87
-
88
- # Search for social media suitability
89
- attr_accessor :channel_suitability
90
-
91
- attr_accessor :language_of_performance
92
-
93
96
  attr_accessor :primary_mood_cluster_affinity
94
97
 
95
98
  # Search for a language of the lyrics
@@ -213,9 +216,6 @@ module SongtradrApiClientRuby
213
216
 
214
217
  attr_accessor :channel_suitability_affinity
215
218
 
216
- # Search for a harmonic key
217
- attr_accessor :key
218
-
219
219
  class EnumAttributeValidator
220
220
  attr_reader :datatype
221
221
  attr_reader :allowable_values
@@ -243,6 +243,17 @@ module SongtradrApiClientRuby
243
243
  {
244
244
  :'space' => :'space',
245
245
  :'arousal' => :'arousal',
246
+ :'tempo' => :'tempo',
247
+ :'texture' => :'texture',
248
+ :'timbre' => :'timbre',
249
+ :'tonality' => :'tonality',
250
+ :'valence' => :'valence',
251
+ :'vocals' => :'vocals',
252
+ :'origin_decade' => :'originDecade',
253
+ :'curateability' => :'curateability',
254
+ :'use_case' => :'useCase',
255
+ :'channel_suitability' => :'channelSuitability',
256
+ :'language_of_performance' => :'languageOfPerformance',
246
257
  :'dominant_instrument' => :'dominantInstrument',
247
258
  :'energy' => :'energy',
248
259
  :'engagement' => :'engagement',
@@ -254,18 +265,8 @@ module SongtradrApiClientRuby
254
265
  :'rhythm' => :'rhythm',
255
266
  :'roughness' => :'roughness',
256
267
  :'scale' => :'scale',
268
+ :'key' => :'key',
257
269
  :'sound_generation' => :'soundGeneration',
258
- :'tempo' => :'tempo',
259
- :'texture' => :'texture',
260
- :'timbre' => :'timbre',
261
- :'tonality' => :'tonality',
262
- :'valence' => :'valence',
263
- :'vocals' => :'vocals',
264
- :'origin_decade' => :'originDecade',
265
- :'curateability' => :'curateability',
266
- :'use_case' => :'useCase',
267
- :'channel_suitability' => :'channelSuitability',
268
- :'language_of_performance' => :'languageOfPerformance',
269
270
  :'primary_mood_cluster_affinity' => :'primaryMoodClusterAffinity',
270
271
  :'secondary_mood_cluster' => :'secondaryMoodCluster',
271
272
  :'secondary_mood_cluster_affinity' => :'secondaryMoodClusterAffinity',
@@ -324,8 +325,7 @@ module SongtradrApiClientRuby
324
325
  :'groovyness_affinity' => :'groovynessAffinity',
325
326
  :'space_affinity' => :'spaceAffinity',
326
327
  :'key_affinity' => :'keyAffinity',
327
- :'channel_suitability_affinity' => :'channelSuitabilityAffinity',
328
- :'key' => :'key'
328
+ :'channel_suitability_affinity' => :'channelSuitabilityAffinity'
329
329
  }
330
330
  end
331
331
 
@@ -339,6 +339,17 @@ module SongtradrApiClientRuby
339
339
  {
340
340
  :'space' => :'String',
341
341
  :'arousal' => :'String',
342
+ :'tempo' => :'String',
343
+ :'texture' => :'String',
344
+ :'timbre' => :'String',
345
+ :'tonality' => :'String',
346
+ :'valence' => :'String',
347
+ :'vocals' => :'String',
348
+ :'origin_decade' => :'String',
349
+ :'curateability' => :'String',
350
+ :'use_case' => :'String',
351
+ :'channel_suitability' => :'String',
352
+ :'language_of_performance' => :'String',
342
353
  :'dominant_instrument' => :'String',
343
354
  :'energy' => :'String',
344
355
  :'engagement' => :'String',
@@ -350,18 +361,8 @@ module SongtradrApiClientRuby
350
361
  :'rhythm' => :'String',
351
362
  :'roughness' => :'String',
352
363
  :'scale' => :'String',
364
+ :'key' => :'String',
353
365
  :'sound_generation' => :'String',
354
- :'tempo' => :'String',
355
- :'texture' => :'String',
356
- :'timbre' => :'String',
357
- :'tonality' => :'String',
358
- :'valence' => :'String',
359
- :'vocals' => :'String',
360
- :'origin_decade' => :'String',
361
- :'curateability' => :'String',
362
- :'use_case' => :'String',
363
- :'channel_suitability' => :'String',
364
- :'language_of_performance' => :'String',
365
366
  :'primary_mood_cluster_affinity' => :'Float',
366
367
  :'secondary_mood_cluster' => :'String',
367
368
  :'secondary_mood_cluster_affinity' => :'Float',
@@ -420,8 +421,7 @@ module SongtradrApiClientRuby
420
421
  :'groovyness_affinity' => :'Float',
421
422
  :'space_affinity' => :'Float',
422
423
  :'key_affinity' => :'Float',
423
- :'channel_suitability_affinity' => :'Float',
424
- :'key' => :'String'
424
+ :'channel_suitability_affinity' => :'Float'
425
425
  }
426
426
  end
427
427
 
@@ -454,6 +454,50 @@ module SongtradrApiClientRuby
454
454
  self.arousal = attributes[:'arousal']
455
455
  end
456
456
 
457
+ if attributes.key?(:'tempo')
458
+ self.tempo = attributes[:'tempo']
459
+ end
460
+
461
+ if attributes.key?(:'texture')
462
+ self.texture = attributes[:'texture']
463
+ end
464
+
465
+ if attributes.key?(:'timbre')
466
+ self.timbre = attributes[:'timbre']
467
+ end
468
+
469
+ if attributes.key?(:'tonality')
470
+ self.tonality = attributes[:'tonality']
471
+ end
472
+
473
+ if attributes.key?(:'valence')
474
+ self.valence = attributes[:'valence']
475
+ end
476
+
477
+ if attributes.key?(:'vocals')
478
+ self.vocals = attributes[:'vocals']
479
+ end
480
+
481
+ if attributes.key?(:'origin_decade')
482
+ self.origin_decade = attributes[:'origin_decade']
483
+ end
484
+
485
+ if attributes.key?(:'curateability')
486
+ self.curateability = attributes[:'curateability']
487
+ end
488
+
489
+ if attributes.key?(:'use_case')
490
+ self.use_case = attributes[:'use_case']
491
+ end
492
+
493
+ if attributes.key?(:'channel_suitability')
494
+ self.channel_suitability = attributes[:'channel_suitability']
495
+ end
496
+
497
+ if attributes.key?(:'language_of_performance')
498
+ self.language_of_performance = attributes[:'language_of_performance']
499
+ end
500
+
457
501
  if attributes.key?(:'dominant_instrument')
458
502
  self.dominant_instrument = attributes[:'dominant_instrument']
459
503
  end
@@ -498,52 +542,12 @@ module SongtradrApiClientRuby
498
542
  self.scale = attributes[:'scale']
499
543
  end
500
544
 
501
- if attributes.key?(:'sound_generation')
502
- self.sound_generation = attributes[:'sound_generation']
503
- end
504
-
505
- if attributes.key?(:'tempo')
506
- self.tempo = attributes[:'tempo']
507
- end
508
-
509
- if attributes.key?(:'texture')
510
- self.texture = attributes[:'texture']
511
- end
512
-
513
- if attributes.key?(:'timbre')
514
- self.timbre = attributes[:'timbre']
515
- end
516
-
517
- if attributes.key?(:'tonality')
518
- self.tonality = attributes[:'tonality']
519
- end
520
-
521
- if attributes.key?(:'valence')
522
- self.valence = attributes[:'valence']
523
- end
524
-
525
- if attributes.key?(:'vocals')
526
- self.vocals = attributes[:'vocals']
527
- end
528
-
529
- if attributes.key?(:'origin_decade')
530
- self.origin_decade = attributes[:'origin_decade']
531
- end
532
-
533
- if attributes.key?(:'curateability')
534
- self.curateability = attributes[:'curateability']
535
- end
536
-
537
- if attributes.key?(:'use_case')
538
- self.use_case = attributes[:'use_case']
539
- end
540
-
541
- if attributes.key?(:'channel_suitability')
542
- self.channel_suitability = attributes[:'channel_suitability']
545
+ if attributes.key?(:'key')
546
+ self.key = attributes[:'key']
543
547
  end
544
548
 
545
- if attributes.key?(:'language_of_performance')
546
- self.language_of_performance = attributes[:'language_of_performance']
549
+ if attributes.key?(:'sound_generation')
550
+ self.sound_generation = attributes[:'sound_generation']
547
551
  end
548
552
 
549
553
  if attributes.key?(:'primary_mood_cluster_affinity')
@@ -781,10 +785,6 @@ module SongtradrApiClientRuby
781
785
  if attributes.key?(:'channel_suitability_affinity')
782
786
  self.channel_suitability_affinity = attributes[:'channel_suitability_affinity']
783
787
  end
784
-
785
- if attributes.key?(:'key')
786
- self.key = attributes[:'key']
787
- end
788
788
  end
789
789
 
790
790
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -803,6 +803,28 @@ module SongtradrApiClientRuby
803
803
  return false unless space_validator.valid?(@space)
804
804
  arousal_validator = EnumAttributeValidator.new('String', ["very calm", "calm", "moderate arousal", "energetic", "very energetic", "varying arousal"])
805
805
  return false unless arousal_validator.valid?(@arousal)
806
+ tempo_validator = EnumAttributeValidator.new('String', ["very slow", "slow", "mid-tempo", "fast", "very fast", "varying tempo"])
807
+ return false unless tempo_validator.valid?(@tempo)
808
+ texture_validator = EnumAttributeValidator.new('String', ["very thin", "thin", "moderate texture", "full", "very full"])
809
+ return false unless texture_validator.valid?(@texture)
810
+ timbre_validator = EnumAttributeValidator.new('String', ["very warm", "warm", "moderate timbre", "bright", "very bright"])
811
+ return false unless timbre_validator.valid?(@timbre)
812
+ tonality_validator = EnumAttributeValidator.new('String', ["monotonous", "moderate melodiousness", "melodious", "atonal"])
813
+ return false unless tonality_validator.valid?(@tonality)
814
+ valence_validator = EnumAttributeValidator.new('String', ["very sad", "sad", "moderate valence", "positive", "very positive", "varying valence"])
815
+ return false unless valence_validator.valid?(@valence)
816
+ vocals_validator = EnumAttributeValidator.new('String', ["instrumental", "female vocals", "male vocals", "mixed vocals", "diverse gender vocals"])
817
+ return false unless vocals_validator.valid?(@vocals)
818
+ origin_decade_validator = EnumAttributeValidator.new('String', ["pre-1950s", "1950s", "1960s", "1970s", "1980s", "1990s", "2000s", "2010s", "2020s"])
819
+ return false unless origin_decade_validator.valid?(@origin_decade)
820
+ curateability_validator = EnumAttributeValidator.new('String', ["curateable", "uncurateable"])
821
+ return false unless curateability_validator.valid?(@curateability)
822
+ use_case_validator = EnumAttributeValidator.new('String', ["background", "sport", "focus", "christmas", "film", "summer", "adverts", "party", "relax", "karaoke"])
823
+ return false unless use_case_validator.valid?(@use_case)
824
+ channel_suitability_validator = EnumAttributeValidator.new('String', ["Spotify", "TikTok", "Unfitting", "YouTube"])
825
+ return false unless channel_suitability_validator.valid?(@channel_suitability)
826
+ language_of_performance_validator = EnumAttributeValidator.new('String', ["en", "de", "no", "fr", "es", "pt", "fi", "ru", "it", "la", "el", "ar", "nl", "ja", "pl", "sv", "zu", "da", "cs", "hu", "af", "hi", "tr", "zh", "ms", "pa", "id", "ko", "vi"])
827
+ return false unless language_of_performance_validator.valid?(@language_of_performance)
806
828
  dominant_instrument_validator = EnumAttributeValidator.new('String', ["electric guitar", "piano", "electronics", "guitar", "strings", "synthesizer", "wind", "saxophone", "flute", "trumpet", "drum kit", "keys", "accordion", "violin", "harpsichord", "choir", "cello", "electric bass", "organ", "brass", "percussion", "vocals", "double bass", "harp"])
807
829
  return false unless dominant_instrument_validator.valid?(@dominant_instrument)
808
830
  energy_validator = EnumAttributeValidator.new('String', ["very quiet", "quiet", "moderate", "loud", "very loud", "dynamic"])
@@ -825,30 +847,10 @@ module SongtradrApiClientRuby
825
847
  return false unless roughness_validator.valid?(@roughness)
826
848
  scale_validator = EnumAttributeValidator.new('String', ["major key", "minor key", "neutral key"])
827
849
  return false unless scale_validator.valid?(@scale)
850
+ key_validator = EnumAttributeValidator.new('String', ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B", "unclear"])
851
+ return false unless key_validator.valid?(@key)
828
852
  sound_generation_validator = EnumAttributeValidator.new('String', ["acoustic", "electric", "electronic", "mixed sound generation"])
829
853
  return false unless sound_generation_validator.valid?(@sound_generation)
830
- tempo_validator = EnumAttributeValidator.new('String', ["very slow", "slow", "mid-tempo", "fast", "very fast", "varying tempo"])
831
- return false unless tempo_validator.valid?(@tempo)
832
- texture_validator = EnumAttributeValidator.new('String', ["very thin", "thin", "moderate texture", "full", "very full"])
833
- return false unless texture_validator.valid?(@texture)
834
- timbre_validator = EnumAttributeValidator.new('String', ["very warm", "warm", "moderate timbre", "bright", "very bright"])
835
- return false unless timbre_validator.valid?(@timbre)
836
- tonality_validator = EnumAttributeValidator.new('String', ["monotonous", "moderate melodiousness", "melodious", "atonal"])
837
- return false unless tonality_validator.valid?(@tonality)
838
- valence_validator = EnumAttributeValidator.new('String', ["very sad", "sad", "moderate valence", "positive", "very positive", "varying valence"])
839
- return false unless valence_validator.valid?(@valence)
840
- vocals_validator = EnumAttributeValidator.new('String', ["instrumental", "female vocals", "male vocals", "mixed vocals", "diverse gender vocals"])
841
- return false unless vocals_validator.valid?(@vocals)
842
- origin_decade_validator = EnumAttributeValidator.new('String', ["pre-1950s", "1950s", "1960s", "1970s", "1980s", "1990s", "2000s", "2010s", "2020s"])
843
- return false unless origin_decade_validator.valid?(@origin_decade)
844
- curateability_validator = EnumAttributeValidator.new('String', ["curateable", "uncurateable"])
845
- return false unless curateability_validator.valid?(@curateability)
846
- use_case_validator = EnumAttributeValidator.new('String', ["background", "sport", "focus", "christmas", "film", "summer", "adverts", "party", "relax"])
847
- return false unless use_case_validator.valid?(@use_case)
848
- channel_suitability_validator = EnumAttributeValidator.new('String', ["Spotify", "TikTok", "Unfitting", "YouTube"])
849
- return false unless channel_suitability_validator.valid?(@channel_suitability)
850
- language_of_performance_validator = EnumAttributeValidator.new('String', ["en", "de", "no", "fr", "es", "pt", "fi", "ru", "it", "la", "el", "ar", "nl", "ja", "pl", "sv", "zu", "da", "cs", "hu", "af", "hi", "tr", "zh", "ms", "pa", "id", "ko", "vi"])
851
- return false unless language_of_performance_validator.valid?(@language_of_performance)
852
854
  secondary_mood_cluster_validator = EnumAttributeValidator.new('String', ["aggressive", "amusing", "anxious", "calm", "devotional", "dreamy", "energetic", "enigmatic", "epic", "erotic", "positive", "sad", "scary", "wild"])
853
855
  return false unless secondary_mood_cluster_validator.valid?(@secondary_mood_cluster)
854
856
  tertiary_mood_cluster_validator = EnumAttributeValidator.new('String', ["aggressive", "amusing", "anxious", "calm", "devotional", "dreamy", "energetic", "enigmatic", "epic", "erotic", "positive", "sad", "scary", "wild"])
@@ -881,8 +883,6 @@ module SongtradrApiClientRuby
881
883
  return false unless industry_suitability_validator.valid?(@industry_suitability)
882
884
  audience_region_validator = EnumAttributeValidator.new('String', ["Australia and New Zealand", "Central America and the Carribean", "Central and Southern Asia", "Eastern Asia", "Eastern Europe", "Northern Africa and Western Asia", "Northern America", "Oceania", "South America", "South-Eastern Asia", "Southern Europe", "Sub-Saharan Africa", "Western and Northern Europe"])
883
885
  return false unless audience_region_validator.valid?(@audience_region)
884
- key_validator = EnumAttributeValidator.new('String', ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B", "unclear"])
885
- return false unless key_validator.valid?(@key)
886
886
  true
887
887
  end
888
888
 
@@ -906,6 +906,116 @@ module SongtradrApiClientRuby
906
906
  @arousal = arousal
907
907
  end
908
908
 
909
+ # Custom attribute writer method checking allowed values (enum).
910
+ # @param [Object] tempo Object to be assigned
911
+ def tempo=(tempo)
912
+ validator = EnumAttributeValidator.new('String', ["very slow", "slow", "mid-tempo", "fast", "very fast", "varying tempo"])
913
+ unless validator.valid?(tempo)
914
+ fail ArgumentError, "invalid value for \"tempo\", must be one of #{validator.allowable_values}."
915
+ end
916
+ @tempo = tempo
917
+ end
918
+
919
+ # Custom attribute writer method checking allowed values (enum).
920
+ # @param [Object] texture Object to be assigned
921
+ def texture=(texture)
922
+ validator = EnumAttributeValidator.new('String', ["very thin", "thin", "moderate texture", "full", "very full"])
923
+ unless validator.valid?(texture)
924
+ fail ArgumentError, "invalid value for \"texture\", must be one of #{validator.allowable_values}."
925
+ end
926
+ @texture = texture
927
+ end
928
+
929
+ # Custom attribute writer method checking allowed values (enum).
930
+ # @param [Object] timbre Object to be assigned
931
+ def timbre=(timbre)
932
+ validator = EnumAttributeValidator.new('String', ["very warm", "warm", "moderate timbre", "bright", "very bright"])
933
+ unless validator.valid?(timbre)
934
+ fail ArgumentError, "invalid value for \"timbre\", must be one of #{validator.allowable_values}."
935
+ end
936
+ @timbre = timbre
937
+ end
938
+
939
+ # Custom attribute writer method checking allowed values (enum).
940
+ # @param [Object] tonality Object to be assigned
941
+ def tonality=(tonality)
942
+ validator = EnumAttributeValidator.new('String', ["monotonous", "moderate melodiousness", "melodious", "atonal"])
943
+ unless validator.valid?(tonality)
944
+ fail ArgumentError, "invalid value for \"tonality\", must be one of #{validator.allowable_values}."
945
+ end
946
+ @tonality = tonality
947
+ end
948
+
949
+ # Custom attribute writer method checking allowed values (enum).
950
+ # @param [Object] valence Object to be assigned
951
+ def valence=(valence)
952
+ validator = EnumAttributeValidator.new('String', ["very sad", "sad", "moderate valence", "positive", "very positive", "varying valence"])
953
+ unless validator.valid?(valence)
954
+ fail ArgumentError, "invalid value for \"valence\", must be one of #{validator.allowable_values}."
955
+ end
956
+ @valence = valence
957
+ end
958
+
959
+ # Custom attribute writer method checking allowed values (enum).
960
+ # @param [Object] vocals Object to be assigned
961
+ def vocals=(vocals)
962
+ validator = EnumAttributeValidator.new('String', ["instrumental", "female vocals", "male vocals", "mixed vocals", "diverse gender vocals"])
963
+ unless validator.valid?(vocals)
964
+ fail ArgumentError, "invalid value for \"vocals\", must be one of #{validator.allowable_values}."
965
+ end
966
+ @vocals = vocals
967
+ end
968
+
969
+ # Custom attribute writer method checking allowed values (enum).
970
+ # @param [Object] origin_decade Object to be assigned
971
+ def origin_decade=(origin_decade)
972
+ validator = EnumAttributeValidator.new('String', ["pre-1950s", "1950s", "1960s", "1970s", "1980s", "1990s", "2000s", "2010s", "2020s"])
973
+ unless validator.valid?(origin_decade)
974
+ fail ArgumentError, "invalid value for \"origin_decade\", must be one of #{validator.allowable_values}."
975
+ end
976
+ @origin_decade = origin_decade
977
+ end
978
+
979
+ # Custom attribute writer method checking allowed values (enum).
980
+ # @param [Object] curateability Object to be assigned
981
+ def curateability=(curateability)
982
+ validator = EnumAttributeValidator.new('String', ["curateable", "uncurateable"])
983
+ unless validator.valid?(curateability)
984
+ fail ArgumentError, "invalid value for \"curateability\", must be one of #{validator.allowable_values}."
985
+ end
986
+ @curateability = curateability
987
+ end
988
+
989
+ # Custom attribute writer method checking allowed values (enum).
990
+ # @param [Object] use_case Object to be assigned
991
+ def use_case=(use_case)
992
+ validator = EnumAttributeValidator.new('String', ["background", "sport", "focus", "christmas", "film", "summer", "adverts", "party", "relax", "karaoke"])
993
+ unless validator.valid?(use_case)
994
+ fail ArgumentError, "invalid value for \"use_case\", must be one of #{validator.allowable_values}."
995
+ end
996
+ @use_case = use_case
997
+ end
998
+
999
+ # Custom attribute writer method checking allowed values (enum).
1000
+ # @param [Object] channel_suitability Object to be assigned
1001
+ def channel_suitability=(channel_suitability)
1002
+ validator = EnumAttributeValidator.new('String', ["Spotify", "TikTok", "Unfitting", "YouTube"])
1003
+ unless validator.valid?(channel_suitability)
1004
+ fail ArgumentError, "invalid value for \"channel_suitability\", must be one of #{validator.allowable_values}."
1005
+ end
1006
+ @channel_suitability = channel_suitability
1007
+ end
1008
+
1009
+ # Custom attribute writer method checking allowed values (enum).
1010
+ # @param [Object] language_of_performance Object to be assigned
1011
+ def language_of_performance=(language_of_performance)
1012
+ validator = EnumAttributeValidator.new('String', ["en", "de", "no", "fr", "es", "pt", "fi", "ru", "it", "la", "el", "ar", "nl", "ja", "pl", "sv", "zu", "da", "cs", "hu", "af", "hi", "tr", "zh", "ms", "pa", "id", "ko", "vi"])
1013
+ unless validator.valid?(language_of_performance)
1014
+ fail ArgumentError, "invalid value for \"language_of_performance\", must be one of #{validator.allowable_values}."
1015
+ end
1016
+ @language_of_performance = language_of_performance
1017
+ end
1018
+
909
1019
  # Custom attribute writer method checking allowed values (enum).
910
1020
  # @param [Object] dominant_instrument Object to be assigned
911
1021
  def dominant_instrument=(dominant_instrument)
@@ -1016,6 +1126,16 @@ module SongtradrApiClientRuby
1016
1126
  @scale = scale
1017
1127
  end
1018
1128
 
1129
+ # Custom attribute writer method checking allowed values (enum).
1130
+ # @param [Object] key Object to be assigned
1131
+ def key=(key)
1132
+ validator = EnumAttributeValidator.new('String', ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B", "unclear"])
1133
+ unless validator.valid?(key)
1134
+ fail ArgumentError, "invalid value for \"key\", must be one of #{validator.allowable_values}."
1135
+ end
1136
+ @key = key
1137
+ end
1138
+
1019
1139
  # Custom attribute writer method checking allowed values (enum).
1020
1140
  # @param [Object] sound_generation Object to be assigned
1021
1141
  def sound_generation=(sound_generation)
@@ -1026,116 +1146,6 @@ module SongtradrApiClientRuby
1026
1146
  @sound_generation = sound_generation
1027
1147
  end
1028
1148
 
1029
- # Custom attribute writer method checking allowed values (enum).
1030
- # @param [Object] tempo Object to be assigned
1031
- def tempo=(tempo)
1032
- validator = EnumAttributeValidator.new('String', ["very slow", "slow", "mid-tempo", "fast", "very fast", "varying tempo"])
1033
- unless validator.valid?(tempo)
1034
- fail ArgumentError, "invalid value for \"tempo\", must be one of #{validator.allowable_values}."
1035
- end
1036
- @tempo = tempo
1037
- end
1038
-
1039
- # Custom attribute writer method checking allowed values (enum).
1040
- # @param [Object] texture Object to be assigned
1041
- def texture=(texture)
1042
- validator = EnumAttributeValidator.new('String', ["very thin", "thin", "moderate texture", "full", "very full"])
1043
- unless validator.valid?(texture)
1044
- fail ArgumentError, "invalid value for \"texture\", must be one of #{validator.allowable_values}."
1045
- end
1046
- @texture = texture
1047
- end
1048
-
1049
- # Custom attribute writer method checking allowed values (enum).
1050
- # @param [Object] timbre Object to be assigned
1051
- def timbre=(timbre)
1052
- validator = EnumAttributeValidator.new('String', ["very warm", "warm", "moderate timbre", "bright", "very bright"])
1053
- unless validator.valid?(timbre)
1054
- fail ArgumentError, "invalid value for \"timbre\", must be one of #{validator.allowable_values}."
1055
- end
1056
- @timbre = timbre
1057
- end
1058
-
1059
- # Custom attribute writer method checking allowed values (enum).
1060
- # @param [Object] tonality Object to be assigned
1061
- def tonality=(tonality)
1062
- validator = EnumAttributeValidator.new('String', ["monotonous", "moderate melodiousness", "melodious", "atonal"])
1063
- unless validator.valid?(tonality)
1064
- fail ArgumentError, "invalid value for \"tonality\", must be one of #{validator.allowable_values}."
1065
- end
1066
- @tonality = tonality
1067
- end
1068
-
1069
- # Custom attribute writer method checking allowed values (enum).
1070
- # @param [Object] valence Object to be assigned
1071
- def valence=(valence)
1072
- validator = EnumAttributeValidator.new('String', ["very sad", "sad", "moderate valence", "positive", "very positive", "varying valence"])
1073
- unless validator.valid?(valence)
1074
- fail ArgumentError, "invalid value for \"valence\", must be one of #{validator.allowable_values}."
1075
- end
1076
- @valence = valence
1077
- end
1078
-
1079
- # Custom attribute writer method checking allowed values (enum).
1080
- # @param [Object] vocals Object to be assigned
1081
- def vocals=(vocals)
1082
- validator = EnumAttributeValidator.new('String', ["instrumental", "female vocals", "male vocals", "mixed vocals", "diverse gender vocals"])
1083
- unless validator.valid?(vocals)
1084
- fail ArgumentError, "invalid value for \"vocals\", must be one of #{validator.allowable_values}."
1085
- end
1086
- @vocals = vocals
1087
- end
1088
-
1089
- # Custom attribute writer method checking allowed values (enum).
1090
- # @param [Object] origin_decade Object to be assigned
1091
- def origin_decade=(origin_decade)
1092
- validator = EnumAttributeValidator.new('String', ["pre-1950s", "1950s", "1960s", "1970s", "1980s", "1990s", "2000s", "2010s", "2020s"])
1093
- unless validator.valid?(origin_decade)
1094
- fail ArgumentError, "invalid value for \"origin_decade\", must be one of #{validator.allowable_values}."
1095
- end
1096
- @origin_decade = origin_decade
1097
- end
1098
-
1099
- # Custom attribute writer method checking allowed values (enum).
1100
- # @param [Object] curateability Object to be assigned
1101
- def curateability=(curateability)
1102
- validator = EnumAttributeValidator.new('String', ["curateable", "uncurateable"])
1103
- unless validator.valid?(curateability)
1104
- fail ArgumentError, "invalid value for \"curateability\", must be one of #{validator.allowable_values}."
1105
- end
1106
- @curateability = curateability
1107
- end
1108
-
1109
- # Custom attribute writer method checking allowed values (enum).
1110
- # @param [Object] use_case Object to be assigned
1111
- def use_case=(use_case)
1112
- validator = EnumAttributeValidator.new('String', ["background", "sport", "focus", "christmas", "film", "summer", "adverts", "party", "relax"])
1113
- unless validator.valid?(use_case)
1114
- fail ArgumentError, "invalid value for \"use_case\", must be one of #{validator.allowable_values}."
1115
- end
1116
- @use_case = use_case
1117
- end
1118
-
1119
- # Custom attribute writer method checking allowed values (enum).
1120
- # @param [Object] channel_suitability Object to be assigned
1121
- def channel_suitability=(channel_suitability)
1122
- validator = EnumAttributeValidator.new('String', ["Spotify", "TikTok", "Unfitting", "YouTube"])
1123
- unless validator.valid?(channel_suitability)
1124
- fail ArgumentError, "invalid value for \"channel_suitability\", must be one of #{validator.allowable_values}."
1125
- end
1126
- @channel_suitability = channel_suitability
1127
- end
1128
-
1129
- # Custom attribute writer method checking allowed values (enum).
1130
- # @param [Object] language_of_performance Object to be assigned
1131
- def language_of_performance=(language_of_performance)
1132
- validator = EnumAttributeValidator.new('String', ["en", "de", "no", "fr", "es", "pt", "fi", "ru", "it", "la", "el", "ar", "nl", "ja", "pl", "sv", "zu", "da", "cs", "hu", "af", "hi", "tr", "zh", "ms", "pa", "id", "ko", "vi"])
1133
- unless validator.valid?(language_of_performance)
1134
- fail ArgumentError, "invalid value for \"language_of_performance\", must be one of #{validator.allowable_values}."
1135
- end
1136
- @language_of_performance = language_of_performance
1137
- end
1138
-
1139
1149
  # Custom attribute writer method checking allowed values (enum).
1140
1150
  # @param [Object] secondary_mood_cluster Object to be assigned
1141
1151
  def secondary_mood_cluster=(secondary_mood_cluster)
@@ -1296,16 +1306,6 @@ module SongtradrApiClientRuby
1296
1306
  @audience_region = audience_region
1297
1307
  end
1298
1308
 
1299
- # Custom attribute writer method checking allowed values (enum).
1300
- # @param [Object] key Object to be assigned
1301
- def key=(key)
1302
- validator = EnumAttributeValidator.new('String', ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B", "unclear"])
1303
- unless validator.valid?(key)
1304
- fail ArgumentError, "invalid value for \"key\", must be one of #{validator.allowable_values}."
1305
- end
1306
- @key = key
1307
- end
1308
-
1309
1309
  # Checks equality by comparing each attribute.
1310
1310
  # @param [Object] Object to be compared
1311
1311
  def ==(o)
@@ -1313,6 +1313,17 @@ module SongtradrApiClientRuby
1313
1313
  self.class == o.class &&
1314
1314
  space == o.space &&
1315
1315
  arousal == o.arousal &&
1316
+ tempo == o.tempo &&
1317
+ texture == o.texture &&
1318
+ timbre == o.timbre &&
1319
+ tonality == o.tonality &&
1320
+ valence == o.valence &&
1321
+ vocals == o.vocals &&
1322
+ origin_decade == o.origin_decade &&
1323
+ curateability == o.curateability &&
1324
+ use_case == o.use_case &&
1325
+ channel_suitability == o.channel_suitability &&
1326
+ language_of_performance == o.language_of_performance &&
1316
1327
  dominant_instrument == o.dominant_instrument &&
1317
1328
  energy == o.energy &&
1318
1329
  engagement == o.engagement &&
@@ -1324,18 +1335,8 @@ module SongtradrApiClientRuby
1324
1335
  rhythm == o.rhythm &&
1325
1336
  roughness == o.roughness &&
1326
1337
  scale == o.scale &&
1338
+ key == o.key &&
1327
1339
  sound_generation == o.sound_generation &&
1328
- tempo == o.tempo &&
1329
- texture == o.texture &&
1330
- timbre == o.timbre &&
1331
- tonality == o.tonality &&
1332
- valence == o.valence &&
1333
- vocals == o.vocals &&
1334
- origin_decade == o.origin_decade &&
1335
- curateability == o.curateability &&
1336
- use_case == o.use_case &&
1337
- channel_suitability == o.channel_suitability &&
1338
- language_of_performance == o.language_of_performance &&
1339
1340
  primary_mood_cluster_affinity == o.primary_mood_cluster_affinity &&
1340
1341
  secondary_mood_cluster == o.secondary_mood_cluster &&
1341
1342
  secondary_mood_cluster_affinity == o.secondary_mood_cluster_affinity &&
@@ -1394,8 +1395,7 @@ module SongtradrApiClientRuby
1394
1395
  groovyness_affinity == o.groovyness_affinity &&
1395
1396
  space_affinity == o.space_affinity &&
1396
1397
  key_affinity == o.key_affinity &&
1397
- channel_suitability_affinity == o.channel_suitability_affinity &&
1398
- key == o.key
1398
+ channel_suitability_affinity == o.channel_suitability_affinity
1399
1399
  end
1400
1400
 
1401
1401
  # @see the `==` method
@@ -1407,7 +1407,7 @@ module SongtradrApiClientRuby
1407
1407
  # Calculates hash code according to all attributes.
1408
1408
  # @return [Integer] Hash code
1409
1409
  def hash
1410
- [space, arousal, dominant_instrument, energy, engagement, groovyness, harmony, pleasantness, primary_mood_cluster, primary_sound_character, rhythm, roughness, scale, sound_generation, tempo, texture, timbre, tonality, valence, vocals, origin_decade, curateability, use_case, channel_suitability, language_of_performance, primary_mood_cluster_affinity, secondary_mood_cluster, secondary_mood_cluster_affinity, tertiary_mood_cluster, tertiary_mood_cluster_affinity, vocals_affinity, dominant_instrument_affinity, secondary_instrument, secondary_instrument_affinity, tertiary_instrument, tertiary_instrument_affinity, sound_generation_affinity, rhythm_affinity, primary_sound_character_affinity, tonality_affinity, bpm, production_rating, production_rating_affinity, performance_rating, performance_rating_affinity, song_rating, song_rating_affinity, audience_age, audience_age_affinity, secondary_audience_age, secondary_audience_age_affinity, tertiary_audience_age, tertiary_audience_age_affinity, audience_gender, audience_gender_affinity, audience_region_affinity, secondary_audience_region, secondary_audience_region_affinity, tertiary_audience_region, tertiary_audience_region_affinity, origin_region, origin_region_affinity, origin_decade_affinity, language_of_performance_affinity, curateability_affinity, use_case_affinity, industry_suitability, industry_suitability_affinity, audience_region, valence_affinity, arousal_affinity, pleasantness_affinity, engagement_affinity, energy_affinity, tempo_affinity, scale_affinity, timbre_affinity, roughness_affinity, harmony_affinity, texture_affinity, groovyness_affinity, space_affinity, key_affinity, channel_suitability_affinity, key].hash
1410
+ [space, arousal, tempo, texture, timbre, tonality, valence, vocals, origin_decade, curateability, use_case, channel_suitability, language_of_performance, dominant_instrument, energy, engagement, groovyness, harmony, pleasantness, primary_mood_cluster, primary_sound_character, rhythm, roughness, scale, key, sound_generation, primary_mood_cluster_affinity, secondary_mood_cluster, secondary_mood_cluster_affinity, tertiary_mood_cluster, tertiary_mood_cluster_affinity, vocals_affinity, dominant_instrument_affinity, secondary_instrument, secondary_instrument_affinity, tertiary_instrument, tertiary_instrument_affinity, sound_generation_affinity, rhythm_affinity, primary_sound_character_affinity, tonality_affinity, bpm, production_rating, production_rating_affinity, performance_rating, performance_rating_affinity, song_rating, song_rating_affinity, audience_age, audience_age_affinity, secondary_audience_age, secondary_audience_age_affinity, tertiary_audience_age, tertiary_audience_age_affinity, audience_gender, audience_gender_affinity, audience_region_affinity, secondary_audience_region, secondary_audience_region_affinity, tertiary_audience_region, tertiary_audience_region_affinity, origin_region, origin_region_affinity, origin_decade_affinity, language_of_performance_affinity, curateability_affinity, use_case_affinity, industry_suitability, industry_suitability_affinity, audience_region, valence_affinity, arousal_affinity, pleasantness_affinity, engagement_affinity, energy_affinity, tempo_affinity, scale_affinity, timbre_affinity, roughness_affinity, harmony_affinity, texture_affinity, groovyness_affinity, space_affinity, key_affinity, channel_suitability_affinity].hash
1411
1411
  end
1412
1412
 
1413
1413
  # Builds the object from hash
@@ -1472,7 +1472,7 @@ module SongtradrApiClientRuby
1472
1472
  else # model
1473
1473
  # models (e.g. Pet) or oneOf
1474
1474
  klass = SongtradrApiClientRuby.const_get(type)
1475
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
1475
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
1476
1476
  end
1477
1477
  end
1478
1478