songtradr_api_client_ruby 1.16.0 → 1.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (212) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +26 -24
  3. data/README.md +7 -34
  4. data/docs/CategoryMediumDTO.md +3 -3
  5. data/docs/ImageRecognitionResponse.md +2 -2
  6. data/docs/MusicalFeaturesDTO.md +41 -37
  7. data/docs/RecordingApi.md +71 -1
  8. data/docs/RecordingGenrePredictionDTO.md +3 -3
  9. data/docs/RecordingMediumDTO.md +4 -4
  10. data/docs/RecordingMinimalWithMusicalFeaturesDTO.md +3 -3
  11. data/docs/RecordingSmallDTO.md +5 -5
  12. data/docs/SearchFilterValuesDTO.md +2 -0
  13. data/docs/UserApi.md +67 -187
  14. data/docs/UserDTO.md +2 -0
  15. data/docs/VideoRecognitionResponse.md +2 -2
  16. data/lib/songtradr_api_client_ruby/api/allowed_values_api.rb +2 -2
  17. data/lib/songtradr_api_client_ruby/api/recording_api.rb +74 -5
  18. data/lib/songtradr_api_client_ruby/api/user_api.rb +86 -403
  19. data/lib/songtradr_api_client_ruby/api_client.rb +7 -6
  20. data/lib/songtradr_api_client_ruby/api_error.rb +2 -2
  21. data/lib/songtradr_api_client_ruby/configuration.rb +2 -2
  22. data/lib/songtradr_api_client_ruby/models/category_medium_dto.rb +17 -17
  23. data/lib/songtradr_api_client_ruby/models/category_minimal_dto.rb +2 -2
  24. data/lib/songtradr_api_client_ruby/models/config_access_dto.rb +2 -2
  25. data/lib/songtradr_api_client_ruby/models/config_identifier_dto.rb +2 -2
  26. data/lib/songtradr_api_client_ruby/models/contributor_type_dto.rb +2 -2
  27. data/lib/songtradr_api_client_ruby/models/error_response.rb +2 -2
  28. data/lib/songtradr_api_client_ruby/models/field_summary_dto.rb +2 -2
  29. data/lib/songtradr_api_client_ruby/models/file_dto.rb +2 -2
  30. data/lib/songtradr_api_client_ruby/models/file_list_dto.rb +2 -2
  31. data/lib/songtradr_api_client_ruby/models/file_small_dto.rb +2 -2
  32. data/lib/songtradr_api_client_ruby/models/file_upload_dto.rb +2 -2
  33. data/lib/songtradr_api_client_ruby/models/file_w_ith_url_dto.rb +2 -2
  34. data/lib/songtradr_api_client_ruby/models/files_summary_dto.rb +2 -2
  35. data/lib/songtradr_api_client_ruby/models/forgot_password_dto.rb +2 -2
  36. data/lib/songtradr_api_client_ruby/models/genre_dto.rb +2 -2
  37. data/lib/songtradr_api_client_ruby/models/genre_minimal_dto.rb +2 -2
  38. data/lib/songtradr_api_client_ruby/models/genres_summary_dto.rb +2 -2
  39. data/lib/songtradr_api_client_ruby/models/image_recognition_response.rb +4 -4
  40. data/lib/songtradr_api_client_ruby/models/init_put_recording_audio_dto.rb +2 -2
  41. data/lib/songtradr_api_client_ruby/models/jwt_token_dto.rb +2 -2
  42. data/lib/songtradr_api_client_ruby/models/login_dto.rb +2 -2
  43. data/lib/songtradr_api_client_ruby/models/musical_features_dto.rb +346 -315
  44. data/lib/songtradr_api_client_ruby/models/party_small_dto.rb +2 -2
  45. data/lib/songtradr_api_client_ruby/models/recording_for_similarity_search_dto.rb +2 -2
  46. data/lib/songtradr_api_client_ruby/models/recording_genre_prediction_dto.rb +22 -22
  47. data/lib/songtradr_api_client_ruby/models/recording_list_dto.rb +2 -2
  48. data/lib/songtradr_api_client_ruby/models/recording_medium_dto.rb +35 -35
  49. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_musical_features_dto.rb +17 -17
  50. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_taggrams_dto.rb +2 -2
  51. data/lib/songtradr_api_client_ruby/models/recording_minimal_with_tagstrengths_dto.rb +2 -2
  52. data/lib/songtradr_api_client_ruby/models/recording_party_dto.rb +2 -2
  53. data/lib/songtradr_api_client_ruby/models/recording_small_dto.rb +38 -38
  54. data/lib/songtradr_api_client_ruby/models/recording_tag_small_dto.rb +2 -2
  55. data/lib/songtradr_api_client_ruby/models/save_user_dto.rb +2 -2
  56. data/lib/songtradr_api_client_ruby/models/search_filter_values_dto.rb +21 -3
  57. data/lib/songtradr_api_client_ruby/models/search_recording_granular_dto.rb +2 -2
  58. data/lib/songtradr_api_client_ruby/models/sign_up_dto.rb +2 -2
  59. data/lib/songtradr_api_client_ruby/models/tag_dto.rb +2 -2
  60. data/lib/songtradr_api_client_ruby/models/tag_small_dto.rb +2 -2
  61. data/lib/songtradr_api_client_ruby/models/taggram_dto.rb +2 -2
  62. data/lib/songtradr_api_client_ruby/models/tags_summary_dto.rb +2 -2
  63. data/lib/songtradr_api_client_ruby/models/tagstrength_dto.rb +2 -2
  64. data/lib/songtradr_api_client_ruby/models/title_dto.rb +2 -2
  65. data/lib/songtradr_api_client_ruby/models/token_request.rb +2 -2
  66. data/lib/songtradr_api_client_ruby/models/track_dto.rb +2 -2
  67. data/lib/songtradr_api_client_ruby/models/update_password_dto.rb +2 -2
  68. data/lib/songtradr_api_client_ruby/models/user_dto.rb +19 -3
  69. data/lib/songtradr_api_client_ruby/models/video_recognition_response.rb +4 -4
  70. data/lib/songtradr_api_client_ruby/version.rb +3 -3
  71. data/lib/songtradr_api_client_ruby.rb +2 -30
  72. data/openapi-generator-config.yaml +1 -1
  73. data/songtradr_api_client_ruby.gemspec +3 -2
  74. data/spec/api/allowed_values_api_spec.rb +2 -2
  75. data/spec/api/recording_api_spec.rb +14 -2
  76. data/spec/api/user_api_spec.rb +15 -74
  77. data/spec/models/category_medium_dto_spec.rb +4 -4
  78. data/spec/models/category_minimal_dto_spec.rb +2 -2
  79. data/spec/models/config_access_dto_spec.rb +2 -2
  80. data/spec/models/config_identifier_dto_spec.rb +2 -2
  81. data/spec/models/contributor_type_dto_spec.rb +2 -2
  82. data/spec/models/error_response_spec.rb +2 -2
  83. data/spec/models/field_summary_dto_spec.rb +2 -2
  84. data/spec/models/file_dto_spec.rb +2 -2
  85. data/spec/models/file_list_dto_spec.rb +2 -2
  86. data/spec/models/file_small_dto_spec.rb +2 -2
  87. data/spec/models/file_upload_dto_spec.rb +2 -2
  88. data/spec/models/file_w_ith_url_dto_spec.rb +2 -2
  89. data/spec/models/files_summary_dto_spec.rb +2 -2
  90. data/spec/models/forgot_password_dto_spec.rb +2 -2
  91. data/spec/models/genre_dto_spec.rb +2 -2
  92. data/spec/models/genre_minimal_dto_spec.rb +2 -2
  93. data/spec/models/genres_summary_dto_spec.rb +2 -2
  94. data/spec/models/image_recognition_response_spec.rb +2 -2
  95. data/spec/models/init_put_recording_audio_dto_spec.rb +2 -2
  96. data/spec/models/jwt_token_dto_spec.rb +2 -2
  97. data/spec/models/login_dto_spec.rb +2 -2
  98. data/spec/models/musical_features_dto_spec.rb +111 -95
  99. data/spec/models/party_small_dto_spec.rb +2 -2
  100. data/spec/models/recording_for_similarity_search_dto_spec.rb +2 -2
  101. data/spec/models/recording_genre_prediction_dto_spec.rb +5 -5
  102. data/spec/models/recording_list_dto_spec.rb +2 -2
  103. data/spec/models/recording_medium_dto_spec.rb +10 -10
  104. data/spec/models/recording_minimal_with_musical_features_dto_spec.rb +4 -4
  105. data/spec/models/recording_minimal_with_taggrams_dto_spec.rb +2 -2
  106. data/spec/models/recording_minimal_with_tagstrengths_dto_spec.rb +2 -2
  107. data/spec/models/recording_party_dto_spec.rb +2 -2
  108. data/spec/models/recording_small_dto_spec.rb +6 -6
  109. data/spec/models/recording_tag_small_dto_spec.rb +2 -2
  110. data/spec/models/save_user_dto_spec.rb +2 -2
  111. data/spec/models/search_filter_values_dto_spec.rb +8 -2
  112. data/spec/models/search_recording_granular_dto_spec.rb +2 -2
  113. data/spec/models/sign_up_dto_spec.rb +2 -2
  114. data/spec/models/tag_dto_spec.rb +2 -2
  115. data/spec/models/tag_small_dto_spec.rb +2 -2
  116. data/spec/models/taggram_dto_spec.rb +2 -2
  117. data/spec/models/tags_summary_dto_spec.rb +2 -2
  118. data/spec/models/tagstrength_dto_spec.rb +2 -2
  119. data/spec/models/title_dto_spec.rb +2 -2
  120. data/spec/models/token_request_spec.rb +2 -2
  121. data/spec/models/track_dto_spec.rb +2 -2
  122. data/spec/models/update_password_dto_spec.rb +2 -2
  123. data/spec/models/user_dto_spec.rb +8 -2
  124. data/spec/models/video_recognition_response_spec.rb +2 -2
  125. data/spec/spec_helper.rb +2 -2
  126. metadata +56 -158
  127. data/docs/AgeRange.md +0 -20
  128. data/docs/Beard.md +0 -20
  129. data/docs/BoundingBox.md +0 -24
  130. data/docs/CuratePlaylistDTO.md +0 -26
  131. data/docs/CuratePlaylistResponseDTO.md +0 -18
  132. data/docs/DominantColor.md +0 -30
  133. data/docs/Emotion.md +0 -20
  134. data/docs/EyeDirection.md +0 -22
  135. data/docs/EyeOpen.md +0 -20
  136. data/docs/Eyeglasses.md +0 -20
  137. data/docs/FaceDetail.md +0 -50
  138. data/docs/FaceDetection.md +0 -20
  139. data/docs/FaceOccluded.md +0 -20
  140. data/docs/Gender.md +0 -20
  141. data/docs/ImageQuality.md +0 -20
  142. data/docs/Instance.md +0 -22
  143. data/docs/Label.md +0 -28
  144. data/docs/LabelAlias.md +0 -18
  145. data/docs/LabelCategory.md +0 -18
  146. data/docs/LabelDetection.md +0 -26
  147. data/docs/Landmark.md +0 -22
  148. data/docs/MouthOpen.md +0 -20
  149. data/docs/Mustache.md +0 -20
  150. data/docs/Parent.md +0 -18
  151. data/docs/PlaylistApi.md +0 -77
  152. data/docs/Pose.md +0 -22
  153. data/docs/Smile.md +0 -20
  154. data/docs/Sunglasses.md +0 -20
  155. data/lib/songtradr_api_client_ruby/api/playlist_api.rb +0 -99
  156. data/lib/songtradr_api_client_ruby/models/age_range.rb +0 -223
  157. data/lib/songtradr_api_client_ruby/models/beard.rb +0 -223
  158. data/lib/songtradr_api_client_ruby/models/bounding_box.rb +0 -241
  159. data/lib/songtradr_api_client_ruby/models/curate_playlist_dto.rb +0 -256
  160. data/lib/songtradr_api_client_ruby/models/curate_playlist_response_dto.rb +0 -216
  161. data/lib/songtradr_api_client_ruby/models/dominant_color.rb +0 -268
  162. data/lib/songtradr_api_client_ruby/models/emotion.rb +0 -223
  163. data/lib/songtradr_api_client_ruby/models/eye_direction.rb +0 -232
  164. data/lib/songtradr_api_client_ruby/models/eye_open.rb +0 -223
  165. data/lib/songtradr_api_client_ruby/models/eyeglasses.rb +0 -223
  166. data/lib/songtradr_api_client_ruby/models/face_detail.rb +0 -362
  167. data/lib/songtradr_api_client_ruby/models/face_detection.rb +0 -223
  168. data/lib/songtradr_api_client_ruby/models/face_occluded.rb +0 -223
  169. data/lib/songtradr_api_client_ruby/models/gender.rb +0 -223
  170. data/lib/songtradr_api_client_ruby/models/image_quality.rb +0 -223
  171. data/lib/songtradr_api_client_ruby/models/instance.rb +0 -234
  172. data/lib/songtradr_api_client_ruby/models/label.rb +0 -267
  173. data/lib/songtradr_api_client_ruby/models/label_alias.rb +0 -214
  174. data/lib/songtradr_api_client_ruby/models/label_category.rb +0 -214
  175. data/lib/songtradr_api_client_ruby/models/label_detection.rb +0 -250
  176. data/lib/songtradr_api_client_ruby/models/landmark.rb +0 -232
  177. data/lib/songtradr_api_client_ruby/models/mouth_open.rb +0 -223
  178. data/lib/songtradr_api_client_ruby/models/mustache.rb +0 -223
  179. data/lib/songtradr_api_client_ruby/models/parent.rb +0 -214
  180. data/lib/songtradr_api_client_ruby/models/pose.rb +0 -232
  181. data/lib/songtradr_api_client_ruby/models/smile.rb +0 -223
  182. data/lib/songtradr_api_client_ruby/models/sunglasses.rb +0 -223
  183. data/spec/api/playlist_api_spec.rb +0 -47
  184. data/spec/api_client_spec.rb +0 -223
  185. data/spec/configuration_spec.rb +0 -82
  186. data/spec/models/age_range_spec.rb +0 -42
  187. data/spec/models/beard_spec.rb +0 -42
  188. data/spec/models/bounding_box_spec.rb +0 -54
  189. data/spec/models/curate_playlist_dto_spec.rb +0 -60
  190. data/spec/models/curate_playlist_response_dto_spec.rb +0 -36
  191. data/spec/models/dominant_color_spec.rb +0 -72
  192. data/spec/models/emotion_spec.rb +0 -42
  193. data/spec/models/eye_direction_spec.rb +0 -48
  194. data/spec/models/eye_open_spec.rb +0 -42
  195. data/spec/models/eyeglasses_spec.rb +0 -42
  196. data/spec/models/face_detail_spec.rb +0 -132
  197. data/spec/models/face_detection_spec.rb +0 -42
  198. data/spec/models/face_occluded_spec.rb +0 -42
  199. data/spec/models/gender_spec.rb +0 -42
  200. data/spec/models/image_quality_spec.rb +0 -42
  201. data/spec/models/instance_spec.rb +0 -48
  202. data/spec/models/label_alias_spec.rb +0 -36
  203. data/spec/models/label_category_spec.rb +0 -36
  204. data/spec/models/label_detection_spec.rb +0 -60
  205. data/spec/models/label_spec.rb +0 -66
  206. data/spec/models/landmark_spec.rb +0 -48
  207. data/spec/models/mouth_open_spec.rb +0 -42
  208. data/spec/models/mustache_spec.rb +0 -42
  209. data/spec/models/parent_spec.rb +0 -36
  210. data/spec/models/pose_spec.rb +0 -48
  211. data/spec/models/smile_spec.rb +0 -42
  212. data/spec/models/sunglasses_spec.rb +0 -42
@@ -1,223 +0,0 @@
1
- =begin
2
- #Songtradr API
3
-
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
-
6
- The version of the OpenAPI document: 1.16.0
7
- Contact: info@songtradr.com
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0-SNAPSHOT
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module SongtradrApiClientRuby
17
- class Sunglasses
18
- attr_accessor :value
19
-
20
- attr_accessor :confidence
21
-
22
- # Attribute mapping from ruby-style variable name to JSON key.
23
- def self.attribute_map
24
- {
25
- :'value' => :'value',
26
- :'confidence' => :'confidence'
27
- }
28
- end
29
-
30
- # Returns all the JSON keys this model knows about
31
- def self.acceptable_attributes
32
- attribute_map.values
33
- end
34
-
35
- # Attribute type mapping.
36
- def self.openapi_types
37
- {
38
- :'value' => :'Boolean',
39
- :'confidence' => :'Float'
40
- }
41
- end
42
-
43
- # List of attributes with nullable: true
44
- def self.openapi_nullable
45
- Set.new([
46
- ])
47
- end
48
-
49
- # Initializes the object
50
- # @param [Hash] attributes Model attributes in the form of hash
51
- def initialize(attributes = {})
52
- if (!attributes.is_a?(Hash))
53
- fail ArgumentError, "The input argument (attributes) must be a hash in `SongtradrApiClientRuby::Sunglasses` initialize method"
54
- end
55
-
56
- # check to see if the attribute exists and convert string to symbol for hash key
57
- attributes = attributes.each_with_object({}) { |(k, v), h|
58
- if (!self.class.attribute_map.key?(k.to_sym))
59
- fail ArgumentError, "`#{k}` is not a valid attribute in `SongtradrApiClientRuby::Sunglasses`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
- end
61
- h[k.to_sym] = v
62
- }
63
-
64
- if attributes.key?(:'value')
65
- self.value = attributes[:'value']
66
- end
67
-
68
- if attributes.key?(:'confidence')
69
- self.confidence = attributes[:'confidence']
70
- end
71
- end
72
-
73
- # Show invalid properties with the reasons. Usually used together with valid?
74
- # @return Array for valid properties with the reasons
75
- def list_invalid_properties
76
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
77
- invalid_properties = Array.new
78
- invalid_properties
79
- end
80
-
81
- # Check to see if the all the properties in the model are valid
82
- # @return true if the model is valid
83
- def valid?
84
- warn '[DEPRECATED] the `valid?` method is obsolete'
85
- true
86
- end
87
-
88
- # Checks equality by comparing each attribute.
89
- # @param [Object] Object to be compared
90
- def ==(o)
91
- return true if self.equal?(o)
92
- self.class == o.class &&
93
- value == o.value &&
94
- confidence == o.confidence
95
- end
96
-
97
- # @see the `==` method
98
- # @param [Object] Object to be compared
99
- def eql?(o)
100
- self == o
101
- end
102
-
103
- # Calculates hash code according to all attributes.
104
- # @return [Integer] Hash code
105
- def hash
106
- [value, confidence].hash
107
- end
108
-
109
- # Builds the object from hash
110
- # @param [Hash] attributes Model attributes in the form of hash
111
- # @return [Object] Returns the model itself
112
- def self.build_from_hash(attributes)
113
- return nil unless attributes.is_a?(Hash)
114
- attributes = attributes.transform_keys(&:to_sym)
115
- transformed_hash = {}
116
- openapi_types.each_pair do |key, type|
117
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
118
- transformed_hash["#{key}"] = nil
119
- elsif type =~ /\AArray<(.*)>/i
120
- # check to ensure the input is an array given that the attribute
121
- # is documented as an array but the input is not
122
- if attributes[attribute_map[key]].is_a?(Array)
123
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
124
- end
125
- elsif !attributes[attribute_map[key]].nil?
126
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
127
- end
128
- end
129
- new(transformed_hash)
130
- end
131
-
132
- # Deserializes the data based on type
133
- # @param string type Data type
134
- # @param string value Value to be deserialized
135
- # @return [Object] Deserialized data
136
- def self._deserialize(type, value)
137
- case type.to_sym
138
- when :Time
139
- Time.parse(value)
140
- when :Date
141
- Date.parse(value)
142
- when :String
143
- value.to_s
144
- when :Integer
145
- value.to_i
146
- when :Float
147
- value.to_f
148
- when :Boolean
149
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
150
- true
151
- else
152
- false
153
- end
154
- when :Object
155
- # generic object (usually a Hash), return directly
156
- value
157
- when /\AArray<(?<inner_type>.+)>\z/
158
- inner_type = Regexp.last_match[:inner_type]
159
- value.map { |v| _deserialize(inner_type, v) }
160
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
161
- k_type = Regexp.last_match[:k_type]
162
- v_type = Regexp.last_match[:v_type]
163
- {}.tap do |hash|
164
- value.each do |k, v|
165
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
166
- end
167
- end
168
- else # model
169
- # models (e.g. Pet) or oneOf
170
- klass = SongtradrApiClientRuby.const_get(type)
171
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
172
- end
173
- end
174
-
175
- # Returns the string representation of the object
176
- # @return [String] String presentation of the object
177
- def to_s
178
- to_hash.to_s
179
- end
180
-
181
- # to_body is an alias to to_hash (backward compatibility)
182
- # @return [Hash] Returns the object in the form of hash
183
- def to_body
184
- to_hash
185
- end
186
-
187
- # Returns the object in the form of hash
188
- # @return [Hash] Returns the object in the form of hash
189
- def to_hash
190
- hash = {}
191
- self.class.attribute_map.each_pair do |attr, param|
192
- value = self.send(attr)
193
- if value.nil?
194
- is_nullable = self.class.openapi_nullable.include?(attr)
195
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
196
- end
197
-
198
- hash[param] = _to_hash(value)
199
- end
200
- hash
201
- end
202
-
203
- # Outputs non-array value in the form of hash
204
- # For object, use to_hash. Otherwise, just return the value
205
- # @param [Object] value Any valid value
206
- # @return [Hash] Returns the value in the form of hash
207
- def _to_hash(value)
208
- if value.is_a?(Array)
209
- value.compact.map { |v| _to_hash(v) }
210
- elsif value.is_a?(Hash)
211
- {}.tap do |hash|
212
- value.each { |k, v| hash[k] = _to_hash(v) }
213
- end
214
- elsif value.respond_to? :to_hash
215
- value.to_hash
216
- else
217
- value
218
- end
219
- end
220
-
221
- end
222
-
223
- end
@@ -1,47 +0,0 @@
1
- =begin
2
- #Songtradr API
3
-
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
-
6
- The version of the OpenAPI document: 1.16.0
7
- Contact: info@songtradr.com
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0-SNAPSHOT
10
-
11
- =end
12
-
13
- require 'spec_helper'
14
- require 'json'
15
-
16
- # Unit tests for SongtradrApiClientRuby::PlaylistApi
17
- # Automatically generated by openapi-generator (https://openapi-generator.tech)
18
- # Please update as you see appropriate
19
- describe 'PlaylistApi' do
20
- before do
21
- # run before each test
22
- @api_instance = SongtradrApiClientRuby::PlaylistApi.new
23
- end
24
-
25
- after do
26
- # run after each test
27
- end
28
-
29
- describe 'test an instance of PlaylistApi' do
30
- it 'should create an instance of PlaylistApi' do
31
- expect(@api_instance).to be_instance_of(SongtradrApiClientRuby::PlaylistApi)
32
- end
33
- end
34
-
35
- # unit tests for curate_playlist
36
- # Curate playlist.
37
- # @param method_name Name of the curation task that should be executed
38
- # @param curate_playlist_dto
39
- # @param [Hash] opts the optional parameters
40
- # @return [CuratePlaylistResponseDTO]
41
- describe 'curate_playlist test' do
42
- it 'should work' do
43
- # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
44
- end
45
- end
46
-
47
- end
@@ -1,223 +0,0 @@
1
- =begin
2
- #Songtradr API
3
-
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
-
6
- The version of the OpenAPI document: 1.16.0
7
- Contact: info@songtradr.com
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0-SNAPSHOT
10
-
11
- =end
12
-
13
- require 'spec_helper'
14
-
15
- describe SongtradrApiClientRuby::ApiClient do
16
- context 'initialization' do
17
- context 'URL stuff' do
18
- context 'host' do
19
- it 'removes http from host' do
20
- SongtradrApiClientRuby.configure { |c| c.host = 'http://example.com' }
21
- expect(SongtradrApiClientRuby::Configuration.default.host).to eq('example.com')
22
- end
23
-
24
- it 'removes https from host' do
25
- SongtradrApiClientRuby.configure { |c| c.host = 'https://wookiee.com' }
26
- expect(SongtradrApiClientRuby::ApiClient.default.config.host).to eq('wookiee.com')
27
- end
28
-
29
- it 'removes trailing path from host' do
30
- SongtradrApiClientRuby.configure { |c| c.host = 'hobo.com/v4' }
31
- expect(SongtradrApiClientRuby::Configuration.default.host).to eq('hobo.com')
32
- end
33
- end
34
-
35
- context 'base_path' do
36
- it "prepends a slash to base_path" do
37
- SongtradrApiClientRuby.configure { |c| c.base_path = 'v4/dog' }
38
- expect(SongtradrApiClientRuby::Configuration.default.base_path).to eq('/v4/dog')
39
- end
40
-
41
- it "doesn't prepend a slash if one is already there" do
42
- SongtradrApiClientRuby.configure { |c| c.base_path = '/v4/dog' }
43
- expect(SongtradrApiClientRuby::Configuration.default.base_path).to eq('/v4/dog')
44
- end
45
-
46
- it "ends up as a blank string if nil" do
47
- SongtradrApiClientRuby.configure { |c| c.base_path = nil }
48
- expect(SongtradrApiClientRuby::Configuration.default.base_path).to eq('')
49
- end
50
- end
51
- end
52
- end
53
-
54
-
55
- describe 'proxy in #build_connection' do
56
- let(:config) { SongtradrApiClientRuby::Configuration.new }
57
- let(:api_client) { SongtradrApiClientRuby::ApiClient.new(config) }
58
- let(:proxy_uri) { URI('http://example.org:8080') }
59
-
60
- it 'defaults to nil' do
61
- expect(SongtradrApiClientRuby::Configuration.default.proxy).to be_nil
62
- expect(config.proxy).to be_nil
63
-
64
- connection = api_client.build_connection
65
- expect(connection.proxy_for_request('/test')).to be_nil
66
- end
67
-
68
- it 'can be customized with a string' do
69
- config.proxy = proxy_uri.to_s
70
-
71
- connection = api_client.build_connection
72
- configured_proxy = connection.proxy_for_request('/test')
73
-
74
- expect(configured_proxy).not_to be_nil
75
- expect(configured_proxy.uri.to_s).to eq proxy_uri.to_s
76
- end
77
-
78
- it 'can be customized with a hash' do
79
- config.proxy = { uri: proxy_uri }
80
-
81
- connection = api_client.build_connection
82
- configured_proxy = connection.proxy_for_request('/test')
83
-
84
- expect(configured_proxy).not_to be_nil
85
- expect(configured_proxy.uri).to eq proxy_uri
86
- end
87
- end
88
-
89
- describe '#deserialize' do
90
- it "handles Array<Integer>" do
91
- api_client = SongtradrApiClientRuby::ApiClient.new
92
- headers = { 'Content-Type' => 'application/json' }
93
- response = double('response', headers: headers, body: '[12, 34]')
94
- data = api_client.deserialize(response, 'Array<Integer>')
95
- expect(data).to be_instance_of(Array)
96
- expect(data).to eq([12, 34])
97
- end
98
-
99
- it 'handles Array<Array<Integer>>' do
100
- api_client = SongtradrApiClientRuby::ApiClient.new
101
- headers = { 'Content-Type' => 'application/json' }
102
- response = double('response', headers: headers, body: '[[12, 34], [56]]')
103
- data = api_client.deserialize(response, 'Array<Array<Integer>>')
104
- expect(data).to be_instance_of(Array)
105
- expect(data).to eq([[12, 34], [56]])
106
- end
107
-
108
- it 'handles Hash<String, String>' do
109
- api_client = SongtradrApiClientRuby::ApiClient.new
110
- headers = { 'Content-Type' => 'application/json' }
111
- response = double('response', headers: headers, body: '{"message": "Hello"}')
112
- data = api_client.deserialize(response, 'Hash<String, String>')
113
- expect(data).to be_instance_of(Hash)
114
- expect(data).to eq(:message => 'Hello')
115
- end
116
- end
117
-
118
- describe "#object_to_hash" do
119
- it 'ignores nils and includes empty arrays' do
120
- # uncomment below to test object_to_hash for model
121
- # api_client = SongtradrApiClientRuby::ApiClient.new
122
- # _model = SongtradrApiClientRuby::ModelName.new
123
- # update the model attribute below
124
- # _model.id = 1
125
- # update the expected value (hash) below
126
- # expected = {id: 1, name: '', tags: []}
127
- # expect(api_client.object_to_hash(_model)).to eq(expected)
128
- end
129
- end
130
-
131
- describe '#build_collection_param' do
132
- let(:param) { ['aa', 'bb', 'cc'] }
133
- let(:api_client) { SongtradrApiClientRuby::ApiClient.new }
134
-
135
- it 'works for csv' do
136
- expect(api_client.build_collection_param(param, :csv)).to eq('aa,bb,cc')
137
- end
138
-
139
- it 'works for ssv' do
140
- expect(api_client.build_collection_param(param, :ssv)).to eq('aa bb cc')
141
- end
142
-
143
- it 'works for tsv' do
144
- expect(api_client.build_collection_param(param, :tsv)).to eq("aa\tbb\tcc")
145
- end
146
-
147
- it 'works for pipes' do
148
- expect(api_client.build_collection_param(param, :pipes)).to eq('aa|bb|cc')
149
- end
150
-
151
- it 'works for multi' do
152
- expect(api_client.build_collection_param(param, :multi)).to eq(['aa', 'bb', 'cc'])
153
- end
154
-
155
- it 'fails for invalid collection format' do
156
- expect { api_client.build_collection_param(param, :INVALID) }.to raise_error(RuntimeError, 'unknown collection format: :INVALID')
157
- end
158
- end
159
-
160
- describe '#json_mime?' do
161
- let(:api_client) { SongtradrApiClientRuby::ApiClient.new }
162
-
163
- it 'works' do
164
- expect(api_client.json_mime?(nil)).to eq false
165
- expect(api_client.json_mime?('')).to eq false
166
-
167
- expect(api_client.json_mime?('application/json')).to eq true
168
- expect(api_client.json_mime?('application/json; charset=UTF8')).to eq true
169
- expect(api_client.json_mime?('APPLICATION/JSON')).to eq true
170
-
171
- expect(api_client.json_mime?('application/xml')).to eq false
172
- expect(api_client.json_mime?('text/plain')).to eq false
173
- expect(api_client.json_mime?('application/jsonp')).to eq false
174
- end
175
- end
176
-
177
- describe '#select_header_accept' do
178
- let(:api_client) { SongtradrApiClientRuby::ApiClient.new }
179
-
180
- it 'works' do
181
- expect(api_client.select_header_accept(nil)).to be_nil
182
- expect(api_client.select_header_accept([])).to be_nil
183
-
184
- expect(api_client.select_header_accept(['application/json'])).to eq('application/json')
185
- expect(api_client.select_header_accept(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
186
- expect(api_client.select_header_accept(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
187
-
188
- expect(api_client.select_header_accept(['application/xml'])).to eq('application/xml')
189
- expect(api_client.select_header_accept(['text/html', 'application/xml'])).to eq('text/html,application/xml')
190
- end
191
- end
192
-
193
- describe '#select_header_content_type' do
194
- let(:api_client) { SongtradrApiClientRuby::ApiClient.new }
195
-
196
- it 'works' do
197
- expect(api_client.select_header_content_type(nil)).to be_nil
198
- expect(api_client.select_header_content_type([])).to be_nil
199
-
200
- expect(api_client.select_header_content_type(['application/json'])).to eq('application/json')
201
- expect(api_client.select_header_content_type(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
202
- expect(api_client.select_header_content_type(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
203
- expect(api_client.select_header_content_type(['application/xml'])).to eq('application/xml')
204
- expect(api_client.select_header_content_type(['text/plain', 'application/xml'])).to eq('text/plain')
205
- end
206
- end
207
-
208
- describe '#sanitize_filename' do
209
- let(:api_client) { SongtradrApiClientRuby::ApiClient.new }
210
-
211
- it 'works' do
212
- expect(api_client.sanitize_filename('sun')).to eq('sun')
213
- expect(api_client.sanitize_filename('sun.gif')).to eq('sun.gif')
214
- expect(api_client.sanitize_filename('../sun.gif')).to eq('sun.gif')
215
- expect(api_client.sanitize_filename('/var/tmp/sun.gif')).to eq('sun.gif')
216
- expect(api_client.sanitize_filename('./sun.gif')).to eq('sun.gif')
217
- expect(api_client.sanitize_filename('..\sun.gif')).to eq('sun.gif')
218
- expect(api_client.sanitize_filename('\var\tmp\sun.gif')).to eq('sun.gif')
219
- expect(api_client.sanitize_filename('c:\var\tmp\sun.gif')).to eq('sun.gif')
220
- expect(api_client.sanitize_filename('.\sun.gif')).to eq('sun.gif')
221
- end
222
- end
223
- end
@@ -1,82 +0,0 @@
1
- =begin
2
- #Songtradr API
3
-
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
-
6
- The version of the OpenAPI document: 1.16.0
7
- Contact: info@songtradr.com
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0-SNAPSHOT
10
-
11
- =end
12
-
13
- require 'spec_helper'
14
-
15
- describe SongtradrApiClientRuby::Configuration do
16
- let(:config) { SongtradrApiClientRuby::Configuration.default }
17
-
18
- before(:each) do
19
- # uncomment below to setup host and base_path
20
- # require 'URI'
21
- # uri = URI.parse("https://api.songtradr.com")
22
- # SongtradrApiClientRuby.configure do |c|
23
- # c.host = uri.host
24
- # c.base_path = uri.path
25
- # end
26
- end
27
-
28
- describe '#base_url' do
29
- it 'should have the default value' do
30
- # uncomment below to test default value of the base path
31
- # expect(config.base_url).to eq("https://api.songtradr.com")
32
- end
33
-
34
- it 'should remove trailing slashes' do
35
- [nil, '', '/', '//'].each do |base_path|
36
- config.base_path = base_path
37
- # uncomment below to test trailing slashes
38
- # expect(config.base_url).to eq("https://api.songtradr.com")
39
- end
40
- end
41
- end
42
-
43
- describe '#configure_faraday_connection' do
44
- let(:faraday_connection) { Faraday::Connection.new }
45
-
46
- before do
47
- stub_const('CustomAdapter', Class.new(Faraday::Adapter))
48
- stub_const('AnotherCustomAdapter', Class.new(Faraday::Adapter))
49
-
50
- config.configure_faraday_connection do |conn|
51
- conn.adapter CustomAdapter
52
- conn.response :logger, nil, headers: true, bodies: true, log_level: :debug do |logger|
53
- logger.filter(/(Authorization: )(.*)/, '\1[REDACTED]')
54
- end
55
- end
56
- end
57
-
58
- it 'adds a block that will be used to configure the connection' do
59
- expect(faraday_connection.adapter).to eq(Faraday::Adapter::NetHttp)
60
- expect(faraday_connection.builder.handlers).to_not include(Faraday::Response::Logger)
61
-
62
- config.configure_connection(faraday_connection)
63
-
64
- expect(faraday_connection.adapter).to eq(CustomAdapter)
65
- expect(faraday_connection.builder.handlers).to include(Faraday::Response::Logger)
66
- end
67
-
68
- it 'supports multiple configuration blocks' do
69
- config.configure_faraday_connection do |conn|
70
- conn.adapter AnotherCustomAdapter
71
- end
72
-
73
- expect(faraday_connection.adapter).to eq(Faraday::Adapter::NetHttp)
74
- expect(faraday_connection.builder.handlers).to_not include(Faraday::Response::Logger)
75
-
76
- config.configure_connection(faraday_connection)
77
-
78
- expect(faraday_connection.adapter).to eq(AnotherCustomAdapter)
79
- expect(faraday_connection.builder.handlers).to include(Faraday::Response::Logger)
80
- end
81
- end
82
- end
@@ -1,42 +0,0 @@
1
- =begin
2
- #Songtradr API
3
-
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
-
6
- The version of the OpenAPI document: 1.16.0
7
- Contact: info@songtradr.com
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0-SNAPSHOT
10
-
11
- =end
12
-
13
- require 'spec_helper'
14
- require 'json'
15
- require 'date'
16
-
17
- # Unit tests for SongtradrApiClientRuby::AgeRange
18
- # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
- # Please update as you see appropriate
20
- describe SongtradrApiClientRuby::AgeRange do
21
- let(:instance) { SongtradrApiClientRuby::AgeRange.new }
22
-
23
- describe 'test an instance of AgeRange' do
24
- it 'should create an instance of AgeRange' do
25
- # uncomment below to test the instance creation
26
- #expect(instance).to be_instance_of(SongtradrApiClientRuby::AgeRange)
27
- end
28
- end
29
-
30
- describe 'test attribute "low"' do
31
- it 'should work' do
32
- # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
- end
34
- end
35
-
36
- describe 'test attribute "high"' do
37
- it 'should work' do
38
- # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
- end
40
- end
41
-
42
- end
@@ -1,42 +0,0 @@
1
- =begin
2
- #Songtradr API
3
-
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
-
6
- The version of the OpenAPI document: 1.16.0
7
- Contact: info@songtradr.com
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0-SNAPSHOT
10
-
11
- =end
12
-
13
- require 'spec_helper'
14
- require 'json'
15
- require 'date'
16
-
17
- # Unit tests for SongtradrApiClientRuby::Beard
18
- # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
- # Please update as you see appropriate
20
- describe SongtradrApiClientRuby::Beard do
21
- let(:instance) { SongtradrApiClientRuby::Beard.new }
22
-
23
- describe 'test an instance of Beard' do
24
- it 'should create an instance of Beard' do
25
- # uncomment below to test the instance creation
26
- #expect(instance).to be_instance_of(SongtradrApiClientRuby::Beard)
27
- end
28
- end
29
-
30
- describe 'test attribute "value"' do
31
- it 'should work' do
32
- # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
- end
34
- end
35
-
36
- describe 'test attribute "confidence"' do
37
- it 'should work' do
38
- # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
- end
40
- end
41
-
42
- end