songtradr_api_client_ruby 1.17.0 → 1.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (133) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +24 -22
  3. data/README.md +7 -9
  4. data/docs/CategoryMediumDTO.md +3 -3
  5. data/docs/MusicalFeaturesDTO.md +97 -93
  6. data/docs/RecordingApi.md +71 -1
  7. data/docs/RecordingMediumDTO.md +4 -4
  8. data/docs/RecordingMinimalWithMusicalFeaturesDTO.md +3 -3
  9. data/docs/RecordingPartyDTO.md +3 -3
  10. data/docs/RecordingSmallDTO.md +2 -2
  11. data/docs/SearchFilterValuesDTO.md +2 -0
  12. data/docs/UserApi.md +67 -187
  13. data/docs/UserDTO.md +2 -0
  14. data/lib/songtradr_api_client_ruby/api/allowed_values_api.rb +2 -2
  15. data/lib/songtradr_api_client_ruby/api/recording_api.rb +74 -5
  16. data/lib/songtradr_api_client_ruby/api/user_api.rb +86 -403
  17. data/lib/songtradr_api_client_ruby/api_client.rb +5 -4
  18. data/lib/songtradr_api_client_ruby/api_error.rb +2 -2
  19. data/lib/songtradr_api_client_ruby/configuration.rb +2 -2
  20. data/lib/songtradr_api_client_ruby/models/category_medium_dto.rb +17 -17
  21. data/lib/songtradr_api_client_ruby/models/category_minimal_dto.rb +2 -2
  22. data/lib/songtradr_api_client_ruby/models/config_access_dto.rb +2 -2
  23. data/lib/songtradr_api_client_ruby/models/config_identifier_dto.rb +2 -2
  24. data/lib/songtradr_api_client_ruby/models/contributor_type_dto.rb +2 -2
  25. data/lib/songtradr_api_client_ruby/models/error_response.rb +2 -2
  26. data/lib/songtradr_api_client_ruby/models/field_summary_dto.rb +2 -2
  27. data/lib/songtradr_api_client_ruby/models/file_dto.rb +2 -2
  28. data/lib/songtradr_api_client_ruby/models/file_list_dto.rb +2 -2
  29. data/lib/songtradr_api_client_ruby/models/file_small_dto.rb +2 -2
  30. data/lib/songtradr_api_client_ruby/models/file_upload_dto.rb +2 -2
  31. data/lib/songtradr_api_client_ruby/models/file_w_ith_url_dto.rb +2 -2
  32. data/lib/songtradr_api_client_ruby/models/files_summary_dto.rb +2 -2
  33. data/lib/songtradr_api_client_ruby/models/forgot_password_dto.rb +2 -2
  34. data/lib/songtradr_api_client_ruby/models/genre_dto.rb +2 -2
  35. data/lib/songtradr_api_client_ruby/models/genre_minimal_dto.rb +2 -2
  36. data/lib/songtradr_api_client_ruby/models/genres_summary_dto.rb +2 -2
  37. data/lib/songtradr_api_client_ruby/models/image_recognition_response.rb +2 -2
  38. data/lib/songtradr_api_client_ruby/models/init_put_recording_audio_dto.rb +2 -2
  39. data/lib/songtradr_api_client_ruby/models/jwt_token_dto.rb +2 -2
  40. data/lib/songtradr_api_client_ruby/models/login_dto.rb +2 -2
  41. data/lib/songtradr_api_client_ruby/models/musical_features_dto.rb +610 -579
  42. data/lib/songtradr_api_client_ruby/models/party_small_dto.rb +2 -2
  43. data/lib/songtradr_api_client_ruby/models/recording_for_similarity_search_dto.rb +2 -2
  44. data/lib/songtradr_api_client_ruby/models/recording_genre_prediction_dto.rb +2 -2
  45. data/lib/songtradr_api_client_ruby/models/recording_list_dto.rb +2 -2
  46. data/lib/songtradr_api_client_ruby/models/recording_medium_dto.rb +32 -32
  47. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_musical_features_dto.rb +17 -17
  48. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_taggrams_dto.rb +2 -2
  49. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_tagstrengths_dto.rb +2 -2
  50. data/lib/songtradr_api_client_ruby/models/recording_party_dto.rb +17 -17
  51. data/lib/songtradr_api_client_ruby/models/recording_small_dto.rb +14 -14
  52. data/lib/songtradr_api_client_ruby/models/recording_tag_small_dto.rb +2 -2
  53. data/lib/songtradr_api_client_ruby/models/save_user_dto.rb +2 -2
  54. data/lib/songtradr_api_client_ruby/models/search_filter_values_dto.rb +21 -3
  55. data/lib/songtradr_api_client_ruby/models/search_recording_granular_dto.rb +2 -2
  56. data/lib/songtradr_api_client_ruby/models/sign_up_dto.rb +2 -2
  57. data/lib/songtradr_api_client_ruby/models/tag_dto.rb +2 -2
  58. data/lib/songtradr_api_client_ruby/models/tag_small_dto.rb +2 -2
  59. data/lib/songtradr_api_client_ruby/models/taggram_dto.rb +2 -2
  60. data/lib/songtradr_api_client_ruby/models/tags_summary_dto.rb +2 -2
  61. data/lib/songtradr_api_client_ruby/models/tagstrength_dto.rb +2 -2
  62. data/lib/songtradr_api_client_ruby/models/title_dto.rb +2 -2
  63. data/lib/songtradr_api_client_ruby/models/token_request.rb +2 -2
  64. data/lib/songtradr_api_client_ruby/models/track_dto.rb +2 -2
  65. data/lib/songtradr_api_client_ruby/models/update_password_dto.rb +2 -2
  66. data/lib/songtradr_api_client_ruby/models/user_dto.rb +19 -3
  67. data/lib/songtradr_api_client_ruby/models/video_recognition_response.rb +2 -2
  68. data/lib/songtradr_api_client_ruby/version.rb +3 -3
  69. data/lib/songtradr_api_client_ruby.rb +2 -5
  70. data/openapi-generator-config.yaml +1 -1
  71. data/songtradr_api_client_ruby.gemspec +3 -2
  72. data/spec/api/allowed_values_api_spec.rb +2 -2
  73. data/spec/api/recording_api_spec.rb +14 -2
  74. data/spec/api/user_api_spec.rb +15 -74
  75. data/spec/models/category_medium_dto_spec.rb +4 -4
  76. data/spec/models/category_minimal_dto_spec.rb +2 -2
  77. data/spec/models/config_access_dto_spec.rb +2 -2
  78. data/spec/models/config_identifier_dto_spec.rb +2 -2
  79. data/spec/models/contributor_type_dto_spec.rb +2 -2
  80. data/spec/models/error_response_spec.rb +2 -2
  81. data/spec/models/field_summary_dto_spec.rb +2 -2
  82. data/spec/models/file_dto_spec.rb +2 -2
  83. data/spec/models/file_list_dto_spec.rb +2 -2
  84. data/spec/models/file_small_dto_spec.rb +2 -2
  85. data/spec/models/file_upload_dto_spec.rb +2 -2
  86. data/spec/models/file_w_ith_url_dto_spec.rb +2 -2
  87. data/spec/models/files_summary_dto_spec.rb +2 -2
  88. data/spec/models/forgot_password_dto_spec.rb +2 -2
  89. data/spec/models/genre_dto_spec.rb +2 -2
  90. data/spec/models/genre_minimal_dto_spec.rb +2 -2
  91. data/spec/models/genres_summary_dto_spec.rb +2 -2
  92. data/spec/models/image_recognition_response_spec.rb +2 -2
  93. data/spec/models/init_put_recording_audio_dto_spec.rb +2 -2
  94. data/spec/models/jwt_token_dto_spec.rb +2 -2
  95. data/spec/models/login_dto_spec.rb +2 -2
  96. data/spec/models/musical_features_dto_spec.rb +204 -188
  97. data/spec/models/party_small_dto_spec.rb +2 -2
  98. data/spec/models/recording_for_similarity_search_dto_spec.rb +2 -2
  99. data/spec/models/recording_genre_prediction_dto_spec.rb +2 -2
  100. data/spec/models/recording_list_dto_spec.rb +2 -2
  101. data/spec/models/recording_medium_dto_spec.rb +5 -5
  102. data/spec/models/recording_minimal_with_musical_features_dto_spec.rb +4 -4
  103. data/spec/models/recording_minimal_with_taggrams_dto_spec.rb +2 -2
  104. data/spec/models/recording_minimal_with_tagstrengths_dto_spec.rb +2 -2
  105. data/spec/models/recording_party_dto_spec.rb +4 -4
  106. data/spec/models/recording_small_dto_spec.rb +5 -5
  107. data/spec/models/recording_tag_small_dto_spec.rb +2 -2
  108. data/spec/models/save_user_dto_spec.rb +2 -2
  109. data/spec/models/search_filter_values_dto_spec.rb +8 -2
  110. data/spec/models/search_recording_granular_dto_spec.rb +2 -2
  111. data/spec/models/sign_up_dto_spec.rb +2 -2
  112. data/spec/models/tag_dto_spec.rb +2 -2
  113. data/spec/models/tag_small_dto_spec.rb +2 -2
  114. data/spec/models/taggram_dto_spec.rb +2 -2
  115. data/spec/models/tags_summary_dto_spec.rb +2 -2
  116. data/spec/models/tagstrength_dto_spec.rb +2 -2
  117. data/spec/models/title_dto_spec.rb +2 -2
  118. data/spec/models/token_request_spec.rb +2 -2
  119. data/spec/models/track_dto_spec.rb +2 -2
  120. data/spec/models/update_password_dto_spec.rb +2 -2
  121. data/spec/models/user_dto_spec.rb +8 -2
  122. data/spec/models/video_recognition_response_spec.rb +2 -2
  123. data/spec/spec_helper.rb +2 -2
  124. metadata +56 -54
  125. data/docs/CuratePlaylistDTO.md +0 -26
  126. data/docs/CuratePlaylistResponseDTO.md +0 -18
  127. data/docs/PlaylistApi.md +0 -77
  128. data/lib/songtradr_api_client_ruby/api/playlist_api.rb +0 -99
  129. data/lib/songtradr_api_client_ruby/models/curate_playlist_dto.rb +0 -256
  130. data/lib/songtradr_api_client_ruby/models/curate_playlist_response_dto.rb +0 -216
  131. data/spec/api/playlist_api_spec.rb +0 -47
  132. data/spec/models/curate_playlist_dto_spec.rb +0 -60
  133. data/spec/models/curate_playlist_response_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.17.0
6
+ The version of the OpenAPI document: 1.18.0
7
7
  Contact: info@songtradr.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 7.4.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -544,6 +544,68 @@ module SongtradrApiClientRuby
544
544
  return data, status_code, headers
545
545
  end
546
546
 
547
+ # Files for query.
548
+ # @param query [String] Query.
549
+ # @param [Hash] opts the optional parameters
550
+ # @return [FileListDTO]
551
+ def prompt_search_user_files(query, opts = {})
552
+ data, _status_code, _headers = prompt_search_user_files_with_http_info(query, opts)
553
+ data
554
+ end
555
+
556
+ # Files for query.
557
+ # @param query [String] Query.
558
+ # @param [Hash] opts the optional parameters
559
+ # @return [Array<(FileListDTO, Integer, Hash)>] FileListDTO data, response status code and response headers
560
+ def prompt_search_user_files_with_http_info(query, opts = {})
561
+ if @api_client.config.debugging
562
+ @api_client.config.logger.debug 'Calling API: UserApi.prompt_search_user_files ...'
563
+ end
564
+ # verify the required parameter 'query' is set
565
+ if @api_client.config.client_side_validation && query.nil?
566
+ fail ArgumentError, "Missing the required parameter 'query' when calling UserApi.prompt_search_user_files"
567
+ end
568
+ # resource path
569
+ local_var_path = '/api/v1/user/promptSearch'
570
+
571
+ # query parameters
572
+ query_params = opts[:query_params] || {}
573
+ query_params[:'query'] = query
574
+
575
+ # header parameters
576
+ header_params = opts[:header_params] || {}
577
+ # HTTP header 'Accept' (if needed)
578
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
579
+
580
+ # form parameters
581
+ form_params = opts[:form_params] || {}
582
+
583
+ # http body (model)
584
+ post_body = opts[:debug_body]
585
+
586
+ # return_type
587
+ return_type = opts[:debug_return_type] || 'FileListDTO'
588
+
589
+ # auth_names
590
+ auth_names = opts[:debug_auth_names] || ['bearer-jwt']
591
+
592
+ new_options = opts.merge(
593
+ :operation => :"UserApi.prompt_search_user_files",
594
+ :header_params => header_params,
595
+ :query_params => query_params,
596
+ :form_params => form_params,
597
+ :body => post_body,
598
+ :auth_names => auth_names,
599
+ :return_type => return_type
600
+ )
601
+
602
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
603
+ if @api_client.config.debugging
604
+ @api_client.config.logger.debug "API called: UserApi#prompt_search_user_files\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
605
+ end
606
+ return data, status_code, headers
607
+ end
608
+
547
609
  # Timeseries of AI generated moods, musical features and more for recordings in your folder.
548
610
  # @param folder_name [String] Folder name
549
611
  # @param [Hash] opts the optional parameters
@@ -583,7 +645,7 @@ module SongtradrApiClientRuby
583
645
  if @api_client.config.client_side_validation && folder_name.nil?
584
646
  fail ArgumentError, "Missing the required parameter 'folder_name' when calling UserApi.recordings_by_folder_with_taggrams"
585
647
  end
586
- allowable_values = ["instrument", "vocals", "energy", "soundGeneration", "rhythm", "songRating", "performanceRating", "productionRating", "moodCluster", "tonality", "arousal", "valence", "pleasantness", "engagement", "timbre", "roughness", "harmony", "texture", "groovyness", "space", "audienceAge", "audienceRegion", "audienceGender", "originRegion", "originDecade", "languageOfPerformance", "level1Genre", "level2Genre"]
648
+ allowable_values = ["instrument", "vocals", "energy", "soundGeneration", "rhythm", "songRating", "performanceRating", "productionRating", "moodCluster", "tonality", "arousal", "valence", "pleasantness", "engagement", "timbre", "roughness", "harmony", "texture", "groovyness", "space", "audienceAge", "audienceRegion", "audienceGender", "originRegion", "originDecade", "languageOfPerformance", "level1Genre", "level2Genre", "curateability", "useCase", "channelSuitability", "industrySuitability", "loudness"]
587
649
  if @api_client.config.client_side_validation && opts[:'category_name'] && !allowable_values.include?(opts[:'category_name'])
588
650
  fail ArgumentError, "invalid value for \"category_name\", must be one of #{allowable_values}"
589
651
  end
@@ -669,7 +731,7 @@ module SongtradrApiClientRuby
669
731
  if @api_client.config.client_side_validation && folder_name.nil?
670
732
  fail ArgumentError, "Missing the required parameter 'folder_name' when calling UserApi.recordings_by_folder_with_tagstrengths"
671
733
  end
672
- allowable_values = ["instrument", "vocals", "energy", "soundGeneration", "rhythm", "songRating", "performanceRating", "productionRating", "moodCluster", "tonality", "arousal", "valence", "pleasantness", "engagement", "timbre", "roughness", "harmony", "texture", "groovyness", "space", "audienceAge", "audienceRegion", "audienceGender", "originRegion", "originDecade", "languageOfPerformance", "level1Genre", "level2Genre"]
734
+ allowable_values = ["instrument", "vocals", "energy", "soundGeneration", "rhythm", "songRating", "performanceRating", "productionRating", "moodCluster", "tonality", "arousal", "valence", "pleasantness", "engagement", "timbre", "roughness", "harmony", "texture", "groovyness", "space", "audienceAge", "audienceRegion", "audienceGender", "originRegion", "originDecade", "languageOfPerformance", "level1Genre", "level2Genre", "curateability", "useCase", "channelSuitability", "industrySuitability", "loudness"]
673
735
  if @api_client.config.client_side_validation && opts[:'category_name'] && !allowable_values.include?(opts[:'category_name'])
674
736
  fail ArgumentError, "invalid value for \"category_name\", must be one of #{allowable_values}"
675
737
  end
@@ -719,399 +781,6 @@ module SongtradrApiClientRuby
719
781
  return data, status_code, headers
720
782
  end
721
783
 
722
- # List, search and create playlist of your own files.
723
- # @param [Hash] opts the optional parameters
724
- # @option opts [String] :isrc Search for a ISRC
725
- # @option opts [String] :contributor Search for a name that was involved as any contributor.
726
- # @option opts [String] :main_artist Search for a main artist.
727
- # @option opts [String] :composer Search for a composer.
728
- # @option opts [String] :title Search for a title.
729
- # @option opts [String] :party_and_title Search for party and title.
730
- # @option opts [String] :language Search for a language of the lyrics.
731
- # @option opts [Array<String>] :genre_names
732
- # @option opts [Array<String>] :tag_names
733
- # @option opts [Time] :release_date
734
- # @option opts [String] :primary_mood_cluster
735
- # @option opts [String] :secondary_mood_cluster
736
- # @option opts [String] :tertiary_mood_cluster
737
- # @option opts [String] :valence
738
- # @option opts [String] :arousal
739
- # @option opts [String] :pleasantness
740
- # @option opts [String] :engagement
741
- # @option opts [String] :vocals
742
- # @option opts [String] :dominant_instrument
743
- # @option opts [String] :secondary_instrument
744
- # @option opts [String] :tertiary_instrument
745
- # @option opts [String] :energy
746
- # @option opts [String] :sound_generation
747
- # @option opts [String] :tempo
748
- # @option opts [String] :scale
749
- # @option opts [String] :key
750
- # @option opts [String] :rhythm
751
- # @option opts [String] :primary_sound_character
752
- # @option opts [String] :timbre
753
- # @option opts [String] :roughness
754
- # @option opts [String] :tonality
755
- # @option opts [String] :harmony
756
- # @option opts [String] :texture
757
- # @option opts [String] :groovyness
758
- # @option opts [String] :space
759
- # @option opts [String] :production_rating
760
- # @option opts [String] :performance_rating
761
- # @option opts [String] :song_rating
762
- # @option opts [String] :audience_age
763
- # @option opts [String] :audience_region
764
- # @option opts [String] :audience_gender
765
- # @option opts [String] :origin_decade
766
- # @option opts [String] :curateability
767
- # @option opts [String] :use_case
768
- # @option opts [String] :channel_suitability
769
- # @option opts [String] :similar_to_recording
770
- # @option opts [String] :create_playlist_with_name
771
- # @option opts [String] :songtradr_track_id
772
- # @option opts [String] :usage_name
773
- # @option opts [Integer] :bpm_min Search for a minimal bpm.
774
- # @option opts [Integer] :bpm_max Search for a maximal bpm.
775
- # @option opts [String] :name Search for a file name.
776
- # @option opts [String] :folder Search for a folder.
777
- # @option opts [String] :extension Search for a file extension.
778
- # @option opts [Time] :upload_end_time
779
- # @option opts [Time] :min_upload_end_time
780
- # @option opts [Time] :max_upload_end_time
781
- # @option opts [String] :fingerprint_status Search for a fingerprint status.
782
- # @option opts [String] :inference_status Search for a inference status.
783
- # @option opts [Integer] :page Zero-based page index (0..N) (default to 0)
784
- # @option opts [Integer] :size The size of the page to be returned (default to 100)
785
- # @option opts [Array<String>] :sort Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.
786
- # @return [FileListDTO]
787
- def save_playlist(opts = {})
788
- data, _status_code, _headers = save_playlist_with_http_info(opts)
789
- data
790
- end
791
-
792
- # List, search and create playlist of your own files.
793
- # @param [Hash] opts the optional parameters
794
- # @option opts [String] :isrc Search for a ISRC
795
- # @option opts [String] :contributor Search for a name that was involved as any contributor.
796
- # @option opts [String] :main_artist Search for a main artist.
797
- # @option opts [String] :composer Search for a composer.
798
- # @option opts [String] :title Search for a title.
799
- # @option opts [String] :party_and_title Search for party and title.
800
- # @option opts [String] :language Search for a language of the lyrics.
801
- # @option opts [Array<String>] :genre_names
802
- # @option opts [Array<String>] :tag_names
803
- # @option opts [Time] :release_date
804
- # @option opts [String] :primary_mood_cluster
805
- # @option opts [String] :secondary_mood_cluster
806
- # @option opts [String] :tertiary_mood_cluster
807
- # @option opts [String] :valence
808
- # @option opts [String] :arousal
809
- # @option opts [String] :pleasantness
810
- # @option opts [String] :engagement
811
- # @option opts [String] :vocals
812
- # @option opts [String] :dominant_instrument
813
- # @option opts [String] :secondary_instrument
814
- # @option opts [String] :tertiary_instrument
815
- # @option opts [String] :energy
816
- # @option opts [String] :sound_generation
817
- # @option opts [String] :tempo
818
- # @option opts [String] :scale
819
- # @option opts [String] :key
820
- # @option opts [String] :rhythm
821
- # @option opts [String] :primary_sound_character
822
- # @option opts [String] :timbre
823
- # @option opts [String] :roughness
824
- # @option opts [String] :tonality
825
- # @option opts [String] :harmony
826
- # @option opts [String] :texture
827
- # @option opts [String] :groovyness
828
- # @option opts [String] :space
829
- # @option opts [String] :production_rating
830
- # @option opts [String] :performance_rating
831
- # @option opts [String] :song_rating
832
- # @option opts [String] :audience_age
833
- # @option opts [String] :audience_region
834
- # @option opts [String] :audience_gender
835
- # @option opts [String] :origin_decade
836
- # @option opts [String] :curateability
837
- # @option opts [String] :use_case
838
- # @option opts [String] :channel_suitability
839
- # @option opts [String] :similar_to_recording
840
- # @option opts [String] :create_playlist_with_name
841
- # @option opts [String] :songtradr_track_id
842
- # @option opts [String] :usage_name
843
- # @option opts [Integer] :bpm_min Search for a minimal bpm.
844
- # @option opts [Integer] :bpm_max Search for a maximal bpm.
845
- # @option opts [String] :name Search for a file name.
846
- # @option opts [String] :folder Search for a folder.
847
- # @option opts [String] :extension Search for a file extension.
848
- # @option opts [Time] :upload_end_time
849
- # @option opts [Time] :min_upload_end_time
850
- # @option opts [Time] :max_upload_end_time
851
- # @option opts [String] :fingerprint_status Search for a fingerprint status.
852
- # @option opts [String] :inference_status Search for a inference status.
853
- # @option opts [Integer] :page Zero-based page index (0..N) (default to 0)
854
- # @option opts [Integer] :size The size of the page to be returned (default to 100)
855
- # @option opts [Array<String>] :sort Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.
856
- # @return [Array<(FileListDTO, Integer, Hash)>] FileListDTO data, response status code and response headers
857
- def save_playlist_with_http_info(opts = {})
858
- if @api_client.config.debugging
859
- @api_client.config.logger.debug 'Calling API: UserApi.save_playlist ...'
860
- end
861
- allowable_values = ["en", "es", "fr", "de", "jp", "cn", "IT", "RU"]
862
- if @api_client.config.client_side_validation && opts[:'language'] && !allowable_values.include?(opts[:'language'])
863
- fail ArgumentError, "invalid value for \"language\", must be one of #{allowable_values}"
864
- end
865
- allowable_values = ["aggressive", "amusing", "anxious", "calm", "devotional", "dreamy", "energetic", "enigmatic", "epic", "erotic", "positive", "sad", "scary", "wild"]
866
- if @api_client.config.client_side_validation && opts[:'primary_mood_cluster'] && !allowable_values.include?(opts[:'primary_mood_cluster'])
867
- fail ArgumentError, "invalid value for \"primary_mood_cluster\", must be one of #{allowable_values}"
868
- end
869
- allowable_values = ["aggressive", "amusing", "anxious", "calm", "devotional", "dreamy", "energetic", "enigmatic", "epic", "erotic", "positive", "sad", "scary", "wild"]
870
- if @api_client.config.client_side_validation && opts[:'secondary_mood_cluster'] && !allowable_values.include?(opts[:'secondary_mood_cluster'])
871
- fail ArgumentError, "invalid value for \"secondary_mood_cluster\", must be one of #{allowable_values}"
872
- end
873
- allowable_values = ["aggressive", "amusing", "anxious", "calm", "devotional", "dreamy", "energetic", "enigmatic", "epic", "erotic", "positive", "sad", "scary", "wild"]
874
- if @api_client.config.client_side_validation && opts[:'tertiary_mood_cluster'] && !allowable_values.include?(opts[:'tertiary_mood_cluster'])
875
- fail ArgumentError, "invalid value for \"tertiary_mood_cluster\", must be one of #{allowable_values}"
876
- end
877
- allowable_values = ["very sad", "sad", "moderate valence", "positive", "very positive", "varying valence"]
878
- if @api_client.config.client_side_validation && opts[:'valence'] && !allowable_values.include?(opts[:'valence'])
879
- fail ArgumentError, "invalid value for \"valence\", must be one of #{allowable_values}"
880
- end
881
- allowable_values = ["very calm", "calm", "moderate arousal", "energetic", "very energetic", "varying arousal"]
882
- if @api_client.config.client_side_validation && opts[:'arousal'] && !allowable_values.include?(opts[:'arousal'])
883
- fail ArgumentError, "invalid value for \"arousal\", must be one of #{allowable_values}"
884
- end
885
- allowable_values = ["very unpleasant", "unpleasant", "neutral pleasantness", "pleasant", "very pleasant", "varying pleasantness"]
886
- if @api_client.config.client_side_validation && opts[:'pleasantness'] && !allowable_values.include?(opts[:'pleasantness'])
887
- fail ArgumentError, "invalid value for \"pleasantness\", must be one of #{allowable_values}"
888
- end
889
- allowable_values = ["very unengaging", "unengaging", "neutral engagement", "engaging", "very engaging", "varying engagement"]
890
- if @api_client.config.client_side_validation && opts[:'engagement'] && !allowable_values.include?(opts[:'engagement'])
891
- fail ArgumentError, "invalid value for \"engagement\", must be one of #{allowable_values}"
892
- end
893
- allowable_values = ["instrumental", "female vocals", "male vocals", "mixed vocals", "diverse gender vocals"]
894
- if @api_client.config.client_side_validation && opts[:'vocals'] && !allowable_values.include?(opts[:'vocals'])
895
- fail ArgumentError, "invalid value for \"vocals\", must be one of #{allowable_values}"
896
- end
897
- allowable_values = ["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"]
898
- if @api_client.config.client_side_validation && opts[:'dominant_instrument'] && !allowable_values.include?(opts[:'dominant_instrument'])
899
- fail ArgumentError, "invalid value for \"dominant_instrument\", must be one of #{allowable_values}"
900
- end
901
- allowable_values = ["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"]
902
- if @api_client.config.client_side_validation && opts[:'secondary_instrument'] && !allowable_values.include?(opts[:'secondary_instrument'])
903
- fail ArgumentError, "invalid value for \"secondary_instrument\", must be one of #{allowable_values}"
904
- end
905
- allowable_values = ["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"]
906
- if @api_client.config.client_side_validation && opts[:'tertiary_instrument'] && !allowable_values.include?(opts[:'tertiary_instrument'])
907
- fail ArgumentError, "invalid value for \"tertiary_instrument\", must be one of #{allowable_values}"
908
- end
909
- allowable_values = ["very quiet", "quiet", "moderate", "loud", "very loud", "dynamic"]
910
- if @api_client.config.client_side_validation && opts[:'energy'] && !allowable_values.include?(opts[:'energy'])
911
- fail ArgumentError, "invalid value for \"energy\", must be one of #{allowable_values}"
912
- end
913
- allowable_values = ["acoustic", "electric", "electronic", "mixed sound generation"]
914
- if @api_client.config.client_side_validation && opts[:'sound_generation'] && !allowable_values.include?(opts[:'sound_generation'])
915
- fail ArgumentError, "invalid value for \"sound_generation\", must be one of #{allowable_values}"
916
- end
917
- allowable_values = ["very slow", "slow", "mid-tempo", "fast", "very fast", "varying tempo"]
918
- if @api_client.config.client_side_validation && opts[:'tempo'] && !allowable_values.include?(opts[:'tempo'])
919
- fail ArgumentError, "invalid value for \"tempo\", must be one of #{allowable_values}"
920
- end
921
- allowable_values = ["major key", "minor key", "neutral key"]
922
- if @api_client.config.client_side_validation && opts[:'scale'] && !allowable_values.include?(opts[:'scale'])
923
- fail ArgumentError, "invalid value for \"scale\", must be one of #{allowable_values}"
924
- end
925
- allowable_values = ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B", "unclear"]
926
- if @api_client.config.client_side_validation && opts[:'key'] && !allowable_values.include?(opts[:'key'])
927
- fail ArgumentError, "invalid value for \"key\", must be one of #{allowable_values}"
928
- end
929
- allowable_values = ["common time", "triple meter", "complex time signature", "binary rhythm", "ternary rhythm"]
930
- if @api_client.config.client_side_validation && opts[:'rhythm'] && !allowable_values.include?(opts[:'rhythm'])
931
- fail ArgumentError, "invalid value for \"rhythm\", must be one of #{allowable_values}"
932
- end
933
- allowable_values = ["aggressive", "amusing", "anxious", "calm", "devotional", "dreamy", "energetic", "enigmatic", "epic", "erotic", "positive", "sad", "scary", "wild"]
934
- if @api_client.config.client_side_validation && opts[:'primary_sound_character'] && !allowable_values.include?(opts[:'primary_sound_character'])
935
- fail ArgumentError, "invalid value for \"primary_sound_character\", must be one of #{allowable_values}"
936
- end
937
- allowable_values = ["very warm", "warm", "moderate timbre", "bright", "very bright"]
938
- if @api_client.config.client_side_validation && opts[:'timbre'] && !allowable_values.include?(opts[:'timbre'])
939
- fail ArgumentError, "invalid value for \"timbre\", must be one of #{allowable_values}"
940
- end
941
- allowable_values = ["very clear", "clear", "moderate roughness", "distorted", "very distorted"]
942
- if @api_client.config.client_side_validation && opts[:'roughness'] && !allowable_values.include?(opts[:'roughness'])
943
- fail ArgumentError, "invalid value for \"roughness\", must be one of #{allowable_values}"
944
- end
945
- allowable_values = ["monotonous", "moderate melodiousness", "melodious", "atonal"]
946
- if @api_client.config.client_side_validation && opts[:'tonality'] && !allowable_values.include?(opts[:'tonality'])
947
- fail ArgumentError, "invalid value for \"tonality\", must be one of #{allowable_values}"
948
- end
949
- allowable_values = ["very dissonant", "dissonant", "moderate harmonies", "harmonious", "very harmonious"]
950
- if @api_client.config.client_side_validation && opts[:'harmony'] && !allowable_values.include?(opts[:'harmony'])
951
- fail ArgumentError, "invalid value for \"harmony\", must be one of #{allowable_values}"
952
- end
953
- allowable_values = ["very thin", "thin", "moderate texture", "full", "very full"]
954
- if @api_client.config.client_side_validation && opts[:'texture'] && !allowable_values.include?(opts[:'texture'])
955
- fail ArgumentError, "invalid value for \"texture\", must be one of #{allowable_values}"
956
- end
957
- allowable_values = ["very steady", "steady", "moderate rhythm feel", "groovy", "very groovy"]
958
- if @api_client.config.client_side_validation && opts[:'groovyness'] && !allowable_values.include?(opts[:'groovyness'])
959
- fail ArgumentError, "invalid value for \"groovyness\", must be one of #{allowable_values}"
960
- end
961
- allowable_values = ["very compact", "compact", "moderate space", "wide", "very wide"]
962
- if @api_client.config.client_side_validation && opts[:'space'] && !allowable_values.include?(opts[:'space'])
963
- fail ArgumentError, "invalid value for \"space\", must be one of #{allowable_values}"
964
- end
965
- allowable_values = ["low production quality", "medium production quality", "high production quality"]
966
- if @api_client.config.client_side_validation && opts[:'production_rating'] && !allowable_values.include?(opts[:'production_rating'])
967
- fail ArgumentError, "invalid value for \"production_rating\", must be one of #{allowable_values}"
968
- end
969
- allowable_values = ["low performance quality", "medium performance quality", "high performance quality"]
970
- if @api_client.config.client_side_validation && opts[:'performance_rating'] && !allowable_values.include?(opts[:'performance_rating'])
971
- fail ArgumentError, "invalid value for \"performance_rating\", must be one of #{allowable_values}"
972
- end
973
- allowable_values = ["low song quality", "medium song quality", "high song quality"]
974
- if @api_client.config.client_side_validation && opts[:'song_rating'] && !allowable_values.include?(opts[:'song_rating'])
975
- fail ArgumentError, "invalid value for \"song_rating\", must be one of #{allowable_values}"
976
- end
977
- allowable_values = ["Generation Z", "Younger Generation Y", "Older Generation Y", "Generation X", "Younger Generation B", "Older Generation B"]
978
- if @api_client.config.client_side_validation && opts[:'audience_age'] && !allowable_values.include?(opts[:'audience_age'])
979
- fail ArgumentError, "invalid value for \"audience_age\", must be one of #{allowable_values}"
980
- end
981
- allowable_values = ["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"]
982
- if @api_client.config.client_side_validation && opts[:'audience_region'] && !allowable_values.include?(opts[:'audience_region'])
983
- fail ArgumentError, "invalid value for \"audience_region\", must be one of #{allowable_values}"
984
- end
985
- allowable_values = ["male", "female"]
986
- if @api_client.config.client_side_validation && opts[:'audience_gender'] && !allowable_values.include?(opts[:'audience_gender'])
987
- fail ArgumentError, "invalid value for \"audience_gender\", must be one of #{allowable_values}"
988
- end
989
- allowable_values = ["pre-1950s", "1950s", "1960s", "1970s", "1980s", "1990s", "2000s", "2010s", "2020s"]
990
- if @api_client.config.client_side_validation && opts[:'origin_decade'] && !allowable_values.include?(opts[:'origin_decade'])
991
- fail ArgumentError, "invalid value for \"origin_decade\", must be one of #{allowable_values}"
992
- end
993
- allowable_values = ["curateable", "uncurateable"]
994
- if @api_client.config.client_side_validation && opts[:'curateability'] && !allowable_values.include?(opts[:'curateability'])
995
- fail ArgumentError, "invalid value for \"curateability\", must be one of #{allowable_values}"
996
- end
997
- allowable_values = ["background", "sport", "focus", "christmas", "film", "summer", "adverts", "party", "relax", "karaoke"]
998
- if @api_client.config.client_side_validation && opts[:'use_case'] && !allowable_values.include?(opts[:'use_case'])
999
- fail ArgumentError, "invalid value for \"use_case\", must be one of #{allowable_values}"
1000
- end
1001
- allowable_values = ["Spotify", "TikTok", "Unfitting", "YouTube"]
1002
- if @api_client.config.client_side_validation && opts[:'channel_suitability'] && !allowable_values.include?(opts[:'channel_suitability'])
1003
- fail ArgumentError, "invalid value for \"channel_suitability\", must be one of #{allowable_values}"
1004
- end
1005
- if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 0
1006
- fail ArgumentError, 'invalid value for "opts[:"page"]" when calling UserApi.save_playlist, must be greater than or equal to 0.'
1007
- end
1008
-
1009
- if @api_client.config.client_side_validation && !opts[:'size'].nil? && opts[:'size'] < 1
1010
- fail ArgumentError, 'invalid value for "opts[:"size"]" when calling UserApi.save_playlist, must be greater than or equal to 1.'
1011
- end
1012
-
1013
- # resource path
1014
- local_var_path = '/api/v1/user/savePlaylist'
1015
-
1016
- # query parameters
1017
- query_params = opts[:query_params] || {}
1018
- query_params[:'ISRC'] = opts[:'isrc'] if !opts[:'isrc'].nil?
1019
- query_params[:'contributor'] = opts[:'contributor'] if !opts[:'contributor'].nil?
1020
- query_params[:'mainArtist'] = opts[:'main_artist'] if !opts[:'main_artist'].nil?
1021
- query_params[:'composer'] = opts[:'composer'] if !opts[:'composer'].nil?
1022
- query_params[:'title'] = opts[:'title'] if !opts[:'title'].nil?
1023
- query_params[:'partyAndTitle'] = opts[:'party_and_title'] if !opts[:'party_and_title'].nil?
1024
- query_params[:'language'] = opts[:'language'] if !opts[:'language'].nil?
1025
- query_params[:'genreNames'] = @api_client.build_collection_param(opts[:'genre_names'], :multi) if !opts[:'genre_names'].nil?
1026
- query_params[:'tagNames'] = @api_client.build_collection_param(opts[:'tag_names'], :multi) if !opts[:'tag_names'].nil?
1027
- query_params[:'releaseDate'] = opts[:'release_date'] if !opts[:'release_date'].nil?
1028
- query_params[:'primaryMoodCluster'] = opts[:'primary_mood_cluster'] if !opts[:'primary_mood_cluster'].nil?
1029
- query_params[:'secondaryMoodCluster'] = opts[:'secondary_mood_cluster'] if !opts[:'secondary_mood_cluster'].nil?
1030
- query_params[:'tertiaryMoodCluster'] = opts[:'tertiary_mood_cluster'] if !opts[:'tertiary_mood_cluster'].nil?
1031
- query_params[:'valence'] = opts[:'valence'] if !opts[:'valence'].nil?
1032
- query_params[:'arousal'] = opts[:'arousal'] if !opts[:'arousal'].nil?
1033
- query_params[:'pleasantness'] = opts[:'pleasantness'] if !opts[:'pleasantness'].nil?
1034
- query_params[:'engagement'] = opts[:'engagement'] if !opts[:'engagement'].nil?
1035
- query_params[:'vocals'] = opts[:'vocals'] if !opts[:'vocals'].nil?
1036
- query_params[:'dominantInstrument'] = opts[:'dominant_instrument'] if !opts[:'dominant_instrument'].nil?
1037
- query_params[:'secondaryInstrument'] = opts[:'secondary_instrument'] if !opts[:'secondary_instrument'].nil?
1038
- query_params[:'tertiaryInstrument'] = opts[:'tertiary_instrument'] if !opts[:'tertiary_instrument'].nil?
1039
- query_params[:'energy'] = opts[:'energy'] if !opts[:'energy'].nil?
1040
- query_params[:'soundGeneration'] = opts[:'sound_generation'] if !opts[:'sound_generation'].nil?
1041
- query_params[:'tempo'] = opts[:'tempo'] if !opts[:'tempo'].nil?
1042
- query_params[:'scale'] = opts[:'scale'] if !opts[:'scale'].nil?
1043
- query_params[:'key'] = opts[:'key'] if !opts[:'key'].nil?
1044
- query_params[:'rhythm'] = opts[:'rhythm'] if !opts[:'rhythm'].nil?
1045
- query_params[:'primarySoundCharacter'] = opts[:'primary_sound_character'] if !opts[:'primary_sound_character'].nil?
1046
- query_params[:'timbre'] = opts[:'timbre'] if !opts[:'timbre'].nil?
1047
- query_params[:'roughness'] = opts[:'roughness'] if !opts[:'roughness'].nil?
1048
- query_params[:'tonality'] = opts[:'tonality'] if !opts[:'tonality'].nil?
1049
- query_params[:'harmony'] = opts[:'harmony'] if !opts[:'harmony'].nil?
1050
- query_params[:'texture'] = opts[:'texture'] if !opts[:'texture'].nil?
1051
- query_params[:'groovyness'] = opts[:'groovyness'] if !opts[:'groovyness'].nil?
1052
- query_params[:'space'] = opts[:'space'] if !opts[:'space'].nil?
1053
- query_params[:'productionRating'] = opts[:'production_rating'] if !opts[:'production_rating'].nil?
1054
- query_params[:'performanceRating'] = opts[:'performance_rating'] if !opts[:'performance_rating'].nil?
1055
- query_params[:'songRating'] = opts[:'song_rating'] if !opts[:'song_rating'].nil?
1056
- query_params[:'audienceAge'] = opts[:'audience_age'] if !opts[:'audience_age'].nil?
1057
- query_params[:'audienceRegion'] = opts[:'audience_region'] if !opts[:'audience_region'].nil?
1058
- query_params[:'audienceGender'] = opts[:'audience_gender'] if !opts[:'audience_gender'].nil?
1059
- query_params[:'originDecade'] = opts[:'origin_decade'] if !opts[:'origin_decade'].nil?
1060
- query_params[:'curateability'] = opts[:'curateability'] if !opts[:'curateability'].nil?
1061
- query_params[:'useCase'] = opts[:'use_case'] if !opts[:'use_case'].nil?
1062
- query_params[:'channelSuitability'] = opts[:'channel_suitability'] if !opts[:'channel_suitability'].nil?
1063
- query_params[:'similarToRecording'] = opts[:'similar_to_recording'] if !opts[:'similar_to_recording'].nil?
1064
- query_params[:'createPlaylistWithName'] = opts[:'create_playlist_with_name'] if !opts[:'create_playlist_with_name'].nil?
1065
- query_params[:'songtradrTrackId'] = opts[:'songtradr_track_id'] if !opts[:'songtradr_track_id'].nil?
1066
- query_params[:'usageName'] = opts[:'usage_name'] if !opts[:'usage_name'].nil?
1067
- query_params[:'bpmMin'] = opts[:'bpm_min'] if !opts[:'bpm_min'].nil?
1068
- query_params[:'bpmMax'] = opts[:'bpm_max'] if !opts[:'bpm_max'].nil?
1069
- query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
1070
- query_params[:'folder'] = opts[:'folder'] if !opts[:'folder'].nil?
1071
- query_params[:'extension'] = opts[:'extension'] if !opts[:'extension'].nil?
1072
- query_params[:'uploadEndTime'] = opts[:'upload_end_time'] if !opts[:'upload_end_time'].nil?
1073
- query_params[:'minUploadEndTime'] = opts[:'min_upload_end_time'] if !opts[:'min_upload_end_time'].nil?
1074
- query_params[:'maxUploadEndTime'] = opts[:'max_upload_end_time'] if !opts[:'max_upload_end_time'].nil?
1075
- query_params[:'fingerprintStatus'] = opts[:'fingerprint_status'] if !opts[:'fingerprint_status'].nil?
1076
- query_params[:'inferenceStatus'] = opts[:'inference_status'] if !opts[:'inference_status'].nil?
1077
- query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
1078
- query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
1079
- query_params[:'sort'] = @api_client.build_collection_param(opts[:'sort'], :multi) if !opts[:'sort'].nil?
1080
-
1081
- # header parameters
1082
- header_params = opts[:header_params] || {}
1083
- # HTTP header 'Accept' (if needed)
1084
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1085
-
1086
- # form parameters
1087
- form_params = opts[:form_params] || {}
1088
-
1089
- # http body (model)
1090
- post_body = opts[:debug_body]
1091
-
1092
- # return_type
1093
- return_type = opts[:debug_return_type] || 'FileListDTO'
1094
-
1095
- # auth_names
1096
- auth_names = opts[:debug_auth_names] || ['bearer-jwt']
1097
-
1098
- new_options = opts.merge(
1099
- :operation => :"UserApi.save_playlist",
1100
- :header_params => header_params,
1101
- :query_params => query_params,
1102
- :form_params => form_params,
1103
- :body => post_body,
1104
- :auth_names => auth_names,
1105
- :return_type => return_type
1106
- )
1107
-
1108
- data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
1109
- if @api_client.config.debugging
1110
- @api_client.config.logger.debug "API called: UserApi#save_playlist\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1111
- end
1112
- return data, status_code, headers
1113
- end
1114
-
1115
784
  # Sign up a new user.
1116
785
  # @param save_user_dto [SaveUserDTO]
1117
786
  # @param [Hash] opts the optional parameters
@@ -1408,6 +1077,7 @@ module SongtradrApiClientRuby
1408
1077
  # @option opts [String] :texture
1409
1078
  # @option opts [String] :groovyness
1410
1079
  # @option opts [String] :space
1080
+ # @option opts [String] :loudness
1411
1081
  # @option opts [String] :production_rating
1412
1082
  # @option opts [String] :performance_rating
1413
1083
  # @option opts [String] :song_rating
@@ -1477,6 +1147,7 @@ module SongtradrApiClientRuby
1477
1147
  # @option opts [String] :texture
1478
1148
  # @option opts [String] :groovyness
1479
1149
  # @option opts [String] :space
1150
+ # @option opts [String] :loudness
1480
1151
  # @option opts [String] :production_rating
1481
1152
  # @option opts [String] :performance_rating
1482
1153
  # @option opts [String] :song_rating
@@ -1544,15 +1215,15 @@ module SongtradrApiClientRuby
1544
1215
  if @api_client.config.client_side_validation && opts[:'vocals'] && !allowable_values.include?(opts[:'vocals'])
1545
1216
  fail ArgumentError, "invalid value for \"vocals\", must be one of #{allowable_values}"
1546
1217
  end
1547
- allowable_values = ["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"]
1218
+ allowable_values = ["piano", "electronics", "guitar", "strings", "synthesizer", "wind", "drum kit", "keys", "harpsichord", "choir", "electric bass", "organ", "brass", "percussion", "vocals", "double bass", "harp"]
1548
1219
  if @api_client.config.client_side_validation && opts[:'dominant_instrument'] && !allowable_values.include?(opts[:'dominant_instrument'])
1549
1220
  fail ArgumentError, "invalid value for \"dominant_instrument\", must be one of #{allowable_values}"
1550
1221
  end
1551
- allowable_values = ["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"]
1222
+ allowable_values = ["piano", "electronics", "guitar", "strings", "synthesizer", "wind", "drum kit", "keys", "harpsichord", "choir", "electric bass", "organ", "brass", "percussion", "vocals", "double bass", "harp"]
1552
1223
  if @api_client.config.client_side_validation && opts[:'secondary_instrument'] && !allowable_values.include?(opts[:'secondary_instrument'])
1553
1224
  fail ArgumentError, "invalid value for \"secondary_instrument\", must be one of #{allowable_values}"
1554
1225
  end
1555
- allowable_values = ["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"]
1226
+ allowable_values = ["piano", "electronics", "guitar", "strings", "synthesizer", "wind", "drum kit", "keys", "harpsichord", "choir", "electric bass", "organ", "brass", "percussion", "vocals", "double bass", "harp"]
1556
1227
  if @api_client.config.client_side_validation && opts[:'tertiary_instrument'] && !allowable_values.include?(opts[:'tertiary_instrument'])
1557
1228
  fail ArgumentError, "invalid value for \"tertiary_instrument\", must be one of #{allowable_values}"
1558
1229
  end
@@ -1612,6 +1283,10 @@ module SongtradrApiClientRuby
1612
1283
  if @api_client.config.client_side_validation && opts[:'space'] && !allowable_values.include?(opts[:'space'])
1613
1284
  fail ArgumentError, "invalid value for \"space\", must be one of #{allowable_values}"
1614
1285
  end
1286
+ allowable_values = ["very low", "low", "moderate", "high", "very high"]
1287
+ if @api_client.config.client_side_validation && opts[:'loudness'] && !allowable_values.include?(opts[:'loudness'])
1288
+ fail ArgumentError, "invalid value for \"loudness\", must be one of #{allowable_values}"
1289
+ end
1615
1290
  allowable_values = ["low production quality", "medium production quality", "high production quality"]
1616
1291
  if @api_client.config.client_side_validation && opts[:'production_rating'] && !allowable_values.include?(opts[:'production_rating'])
1617
1292
  fail ArgumentError, "invalid value for \"production_rating\", must be one of #{allowable_values}"
@@ -1700,6 +1375,7 @@ module SongtradrApiClientRuby
1700
1375
  query_params[:'texture'] = opts[:'texture'] if !opts[:'texture'].nil?
1701
1376
  query_params[:'groovyness'] = opts[:'groovyness'] if !opts[:'groovyness'].nil?
1702
1377
  query_params[:'space'] = opts[:'space'] if !opts[:'space'].nil?
1378
+ query_params[:'loudness'] = opts[:'loudness'] if !opts[:'loudness'].nil?
1703
1379
  query_params[:'productionRating'] = opts[:'production_rating'] if !opts[:'production_rating'].nil?
1704
1380
  query_params[:'performanceRating'] = opts[:'performance_rating'] if !opts[:'performance_rating'].nil?
1705
1381
  query_params[:'songRating'] = opts[:'song_rating'] if !opts[:'song_rating'].nil?
@@ -1859,6 +1535,7 @@ module SongtradrApiClientRuby
1859
1535
  # @option opts [String] :texture
1860
1536
  # @option opts [String] :groovyness
1861
1537
  # @option opts [String] :space
1538
+ # @option opts [String] :loudness
1862
1539
  # @option opts [String] :production_rating
1863
1540
  # @option opts [String] :performance_rating
1864
1541
  # @option opts [String] :song_rating
@@ -1924,6 +1601,7 @@ module SongtradrApiClientRuby
1924
1601
  # @option opts [String] :texture
1925
1602
  # @option opts [String] :groovyness
1926
1603
  # @option opts [String] :space
1604
+ # @option opts [String] :loudness
1927
1605
  # @option opts [String] :production_rating
1928
1606
  # @option opts [String] :performance_rating
1929
1607
  # @option opts [String] :song_rating
@@ -1988,15 +1666,15 @@ module SongtradrApiClientRuby
1988
1666
  if @api_client.config.client_side_validation && opts[:'vocals'] && !allowable_values.include?(opts[:'vocals'])
1989
1667
  fail ArgumentError, "invalid value for \"vocals\", must be one of #{allowable_values}"
1990
1668
  end
1991
- allowable_values = ["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"]
1669
+ allowable_values = ["piano", "electronics", "guitar", "strings", "synthesizer", "wind", "drum kit", "keys", "harpsichord", "choir", "electric bass", "organ", "brass", "percussion", "vocals", "double bass", "harp"]
1992
1670
  if @api_client.config.client_side_validation && opts[:'dominant_instrument'] && !allowable_values.include?(opts[:'dominant_instrument'])
1993
1671
  fail ArgumentError, "invalid value for \"dominant_instrument\", must be one of #{allowable_values}"
1994
1672
  end
1995
- allowable_values = ["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"]
1673
+ allowable_values = ["piano", "electronics", "guitar", "strings", "synthesizer", "wind", "drum kit", "keys", "harpsichord", "choir", "electric bass", "organ", "brass", "percussion", "vocals", "double bass", "harp"]
1996
1674
  if @api_client.config.client_side_validation && opts[:'secondary_instrument'] && !allowable_values.include?(opts[:'secondary_instrument'])
1997
1675
  fail ArgumentError, "invalid value for \"secondary_instrument\", must be one of #{allowable_values}"
1998
1676
  end
1999
- allowable_values = ["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"]
1677
+ allowable_values = ["piano", "electronics", "guitar", "strings", "synthesizer", "wind", "drum kit", "keys", "harpsichord", "choir", "electric bass", "organ", "brass", "percussion", "vocals", "double bass", "harp"]
2000
1678
  if @api_client.config.client_side_validation && opts[:'tertiary_instrument'] && !allowable_values.include?(opts[:'tertiary_instrument'])
2001
1679
  fail ArgumentError, "invalid value for \"tertiary_instrument\", must be one of #{allowable_values}"
2002
1680
  end
@@ -2056,6 +1734,10 @@ module SongtradrApiClientRuby
2056
1734
  if @api_client.config.client_side_validation && opts[:'space'] && !allowable_values.include?(opts[:'space'])
2057
1735
  fail ArgumentError, "invalid value for \"space\", must be one of #{allowable_values}"
2058
1736
  end
1737
+ allowable_values = ["very low", "low", "moderate", "high", "very high"]
1738
+ if @api_client.config.client_side_validation && opts[:'loudness'] && !allowable_values.include?(opts[:'loudness'])
1739
+ fail ArgumentError, "invalid value for \"loudness\", must be one of #{allowable_values}"
1740
+ end
2059
1741
  allowable_values = ["low production quality", "medium production quality", "high production quality"]
2060
1742
  if @api_client.config.client_side_validation && opts[:'production_rating'] && !allowable_values.include?(opts[:'production_rating'])
2061
1743
  fail ArgumentError, "invalid value for \"production_rating\", must be one of #{allowable_values}"
@@ -2135,6 +1817,7 @@ module SongtradrApiClientRuby
2135
1817
  query_params[:'texture'] = opts[:'texture'] if !opts[:'texture'].nil?
2136
1818
  query_params[:'groovyness'] = opts[:'groovyness'] if !opts[:'groovyness'].nil?
2137
1819
  query_params[:'space'] = opts[:'space'] if !opts[:'space'].nil?
1820
+ query_params[:'loudness'] = opts[:'loudness'] if !opts[:'loudness'].nil?
2138
1821
  query_params[:'productionRating'] = opts[:'production_rating'] if !opts[:'production_rating'].nil?
2139
1822
  query_params[:'performanceRating'] = opts[:'performance_rating'] if !opts[:'performance_rating'].nil?
2140
1823
  query_params[:'songRating'] = opts[:'song_rating'] if !opts[:'song_rating'].nil?