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,214 +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 LabelAlias
18
- attr_accessor :name
19
-
20
- # Attribute mapping from ruby-style variable name to JSON key.
21
- def self.attribute_map
22
- {
23
- :'name' => :'name'
24
- }
25
- end
26
-
27
- # Returns all the JSON keys this model knows about
28
- def self.acceptable_attributes
29
- attribute_map.values
30
- end
31
-
32
- # Attribute type mapping.
33
- def self.openapi_types
34
- {
35
- :'name' => :'String'
36
- }
37
- end
38
-
39
- # List of attributes with nullable: true
40
- def self.openapi_nullable
41
- Set.new([
42
- ])
43
- end
44
-
45
- # Initializes the object
46
- # @param [Hash] attributes Model attributes in the form of hash
47
- def initialize(attributes = {})
48
- if (!attributes.is_a?(Hash))
49
- fail ArgumentError, "The input argument (attributes) must be a hash in `SongtradrApiClientRuby::LabelAlias` initialize method"
50
- end
51
-
52
- # check to see if the attribute exists and convert string to symbol for hash key
53
- attributes = attributes.each_with_object({}) { |(k, v), h|
54
- if (!self.class.attribute_map.key?(k.to_sym))
55
- fail ArgumentError, "`#{k}` is not a valid attribute in `SongtradrApiClientRuby::LabelAlias`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
- end
57
- h[k.to_sym] = v
58
- }
59
-
60
- if attributes.key?(:'name')
61
- self.name = attributes[:'name']
62
- end
63
- end
64
-
65
- # Show invalid properties with the reasons. Usually used together with valid?
66
- # @return Array for valid properties with the reasons
67
- def list_invalid_properties
68
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
69
- invalid_properties = Array.new
70
- invalid_properties
71
- end
72
-
73
- # Check to see if the all the properties in the model are valid
74
- # @return true if the model is valid
75
- def valid?
76
- warn '[DEPRECATED] the `valid?` method is obsolete'
77
- true
78
- end
79
-
80
- # Checks equality by comparing each attribute.
81
- # @param [Object] Object to be compared
82
- def ==(o)
83
- return true if self.equal?(o)
84
- self.class == o.class &&
85
- name == o.name
86
- end
87
-
88
- # @see the `==` method
89
- # @param [Object] Object to be compared
90
- def eql?(o)
91
- self == o
92
- end
93
-
94
- # Calculates hash code according to all attributes.
95
- # @return [Integer] Hash code
96
- def hash
97
- [name].hash
98
- end
99
-
100
- # Builds the object from hash
101
- # @param [Hash] attributes Model attributes in the form of hash
102
- # @return [Object] Returns the model itself
103
- def self.build_from_hash(attributes)
104
- return nil unless attributes.is_a?(Hash)
105
- attributes = attributes.transform_keys(&:to_sym)
106
- transformed_hash = {}
107
- openapi_types.each_pair do |key, type|
108
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
109
- transformed_hash["#{key}"] = nil
110
- elsif type =~ /\AArray<(.*)>/i
111
- # check to ensure the input is an array given that the attribute
112
- # is documented as an array but the input is not
113
- if attributes[attribute_map[key]].is_a?(Array)
114
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
115
- end
116
- elsif !attributes[attribute_map[key]].nil?
117
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
118
- end
119
- end
120
- new(transformed_hash)
121
- end
122
-
123
- # Deserializes the data based on type
124
- # @param string type Data type
125
- # @param string value Value to be deserialized
126
- # @return [Object] Deserialized data
127
- def self._deserialize(type, value)
128
- case type.to_sym
129
- when :Time
130
- Time.parse(value)
131
- when :Date
132
- Date.parse(value)
133
- when :String
134
- value.to_s
135
- when :Integer
136
- value.to_i
137
- when :Float
138
- value.to_f
139
- when :Boolean
140
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
141
- true
142
- else
143
- false
144
- end
145
- when :Object
146
- # generic object (usually a Hash), return directly
147
- value
148
- when /\AArray<(?<inner_type>.+)>\z/
149
- inner_type = Regexp.last_match[:inner_type]
150
- value.map { |v| _deserialize(inner_type, v) }
151
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
152
- k_type = Regexp.last_match[:k_type]
153
- v_type = Regexp.last_match[:v_type]
154
- {}.tap do |hash|
155
- value.each do |k, v|
156
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
157
- end
158
- end
159
- else # model
160
- # models (e.g. Pet) or oneOf
161
- klass = SongtradrApiClientRuby.const_get(type)
162
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
163
- end
164
- end
165
-
166
- # Returns the string representation of the object
167
- # @return [String] String presentation of the object
168
- def to_s
169
- to_hash.to_s
170
- end
171
-
172
- # to_body is an alias to to_hash (backward compatibility)
173
- # @return [Hash] Returns the object in the form of hash
174
- def to_body
175
- to_hash
176
- end
177
-
178
- # Returns the object in the form of hash
179
- # @return [Hash] Returns the object in the form of hash
180
- def to_hash
181
- hash = {}
182
- self.class.attribute_map.each_pair do |attr, param|
183
- value = self.send(attr)
184
- if value.nil?
185
- is_nullable = self.class.openapi_nullable.include?(attr)
186
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
187
- end
188
-
189
- hash[param] = _to_hash(value)
190
- end
191
- hash
192
- end
193
-
194
- # Outputs non-array value in the form of hash
195
- # For object, use to_hash. Otherwise, just return the value
196
- # @param [Object] value Any valid value
197
- # @return [Hash] Returns the value in the form of hash
198
- def _to_hash(value)
199
- if value.is_a?(Array)
200
- value.compact.map { |v| _to_hash(v) }
201
- elsif value.is_a?(Hash)
202
- {}.tap do |hash|
203
- value.each { |k, v| hash[k] = _to_hash(v) }
204
- end
205
- elsif value.respond_to? :to_hash
206
- value.to_hash
207
- else
208
- value
209
- end
210
- end
211
-
212
- end
213
-
214
- end
@@ -1,214 +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 LabelCategory
18
- attr_accessor :name
19
-
20
- # Attribute mapping from ruby-style variable name to JSON key.
21
- def self.attribute_map
22
- {
23
- :'name' => :'name'
24
- }
25
- end
26
-
27
- # Returns all the JSON keys this model knows about
28
- def self.acceptable_attributes
29
- attribute_map.values
30
- end
31
-
32
- # Attribute type mapping.
33
- def self.openapi_types
34
- {
35
- :'name' => :'String'
36
- }
37
- end
38
-
39
- # List of attributes with nullable: true
40
- def self.openapi_nullable
41
- Set.new([
42
- ])
43
- end
44
-
45
- # Initializes the object
46
- # @param [Hash] attributes Model attributes in the form of hash
47
- def initialize(attributes = {})
48
- if (!attributes.is_a?(Hash))
49
- fail ArgumentError, "The input argument (attributes) must be a hash in `SongtradrApiClientRuby::LabelCategory` initialize method"
50
- end
51
-
52
- # check to see if the attribute exists and convert string to symbol for hash key
53
- attributes = attributes.each_with_object({}) { |(k, v), h|
54
- if (!self.class.attribute_map.key?(k.to_sym))
55
- fail ArgumentError, "`#{k}` is not a valid attribute in `SongtradrApiClientRuby::LabelCategory`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
- end
57
- h[k.to_sym] = v
58
- }
59
-
60
- if attributes.key?(:'name')
61
- self.name = attributes[:'name']
62
- end
63
- end
64
-
65
- # Show invalid properties with the reasons. Usually used together with valid?
66
- # @return Array for valid properties with the reasons
67
- def list_invalid_properties
68
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
69
- invalid_properties = Array.new
70
- invalid_properties
71
- end
72
-
73
- # Check to see if the all the properties in the model are valid
74
- # @return true if the model is valid
75
- def valid?
76
- warn '[DEPRECATED] the `valid?` method is obsolete'
77
- true
78
- end
79
-
80
- # Checks equality by comparing each attribute.
81
- # @param [Object] Object to be compared
82
- def ==(o)
83
- return true if self.equal?(o)
84
- self.class == o.class &&
85
- name == o.name
86
- end
87
-
88
- # @see the `==` method
89
- # @param [Object] Object to be compared
90
- def eql?(o)
91
- self == o
92
- end
93
-
94
- # Calculates hash code according to all attributes.
95
- # @return [Integer] Hash code
96
- def hash
97
- [name].hash
98
- end
99
-
100
- # Builds the object from hash
101
- # @param [Hash] attributes Model attributes in the form of hash
102
- # @return [Object] Returns the model itself
103
- def self.build_from_hash(attributes)
104
- return nil unless attributes.is_a?(Hash)
105
- attributes = attributes.transform_keys(&:to_sym)
106
- transformed_hash = {}
107
- openapi_types.each_pair do |key, type|
108
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
109
- transformed_hash["#{key}"] = nil
110
- elsif type =~ /\AArray<(.*)>/i
111
- # check to ensure the input is an array given that the attribute
112
- # is documented as an array but the input is not
113
- if attributes[attribute_map[key]].is_a?(Array)
114
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
115
- end
116
- elsif !attributes[attribute_map[key]].nil?
117
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
118
- end
119
- end
120
- new(transformed_hash)
121
- end
122
-
123
- # Deserializes the data based on type
124
- # @param string type Data type
125
- # @param string value Value to be deserialized
126
- # @return [Object] Deserialized data
127
- def self._deserialize(type, value)
128
- case type.to_sym
129
- when :Time
130
- Time.parse(value)
131
- when :Date
132
- Date.parse(value)
133
- when :String
134
- value.to_s
135
- when :Integer
136
- value.to_i
137
- when :Float
138
- value.to_f
139
- when :Boolean
140
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
141
- true
142
- else
143
- false
144
- end
145
- when :Object
146
- # generic object (usually a Hash), return directly
147
- value
148
- when /\AArray<(?<inner_type>.+)>\z/
149
- inner_type = Regexp.last_match[:inner_type]
150
- value.map { |v| _deserialize(inner_type, v) }
151
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
152
- k_type = Regexp.last_match[:k_type]
153
- v_type = Regexp.last_match[:v_type]
154
- {}.tap do |hash|
155
- value.each do |k, v|
156
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
157
- end
158
- end
159
- else # model
160
- # models (e.g. Pet) or oneOf
161
- klass = SongtradrApiClientRuby.const_get(type)
162
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
163
- end
164
- end
165
-
166
- # Returns the string representation of the object
167
- # @return [String] String presentation of the object
168
- def to_s
169
- to_hash.to_s
170
- end
171
-
172
- # to_body is an alias to to_hash (backward compatibility)
173
- # @return [Hash] Returns the object in the form of hash
174
- def to_body
175
- to_hash
176
- end
177
-
178
- # Returns the object in the form of hash
179
- # @return [Hash] Returns the object in the form of hash
180
- def to_hash
181
- hash = {}
182
- self.class.attribute_map.each_pair do |attr, param|
183
- value = self.send(attr)
184
- if value.nil?
185
- is_nullable = self.class.openapi_nullable.include?(attr)
186
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
187
- end
188
-
189
- hash[param] = _to_hash(value)
190
- end
191
- hash
192
- end
193
-
194
- # Outputs non-array value in the form of hash
195
- # For object, use to_hash. Otherwise, just return the value
196
- # @param [Object] value Any valid value
197
- # @return [Hash] Returns the value in the form of hash
198
- def _to_hash(value)
199
- if value.is_a?(Array)
200
- value.compact.map { |v| _to_hash(v) }
201
- elsif value.is_a?(Hash)
202
- {}.tap do |hash|
203
- value.each { |k, v| hash[k] = _to_hash(v) }
204
- end
205
- elsif value.respond_to? :to_hash
206
- value.to_hash
207
- else
208
- value
209
- end
210
- end
211
-
212
- end
213
-
214
- end
@@ -1,250 +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 LabelDetection
18
- attr_accessor :timestamp
19
-
20
- attr_accessor :label
21
-
22
- attr_accessor :start_timestamp_millis
23
-
24
- attr_accessor :end_timestamp_millis
25
-
26
- attr_accessor :duration_millis
27
-
28
- # Attribute mapping from ruby-style variable name to JSON key.
29
- def self.attribute_map
30
- {
31
- :'timestamp' => :'timestamp',
32
- :'label' => :'label',
33
- :'start_timestamp_millis' => :'startTimestampMillis',
34
- :'end_timestamp_millis' => :'endTimestampMillis',
35
- :'duration_millis' => :'durationMillis'
36
- }
37
- end
38
-
39
- # Returns all the JSON keys this model knows about
40
- def self.acceptable_attributes
41
- attribute_map.values
42
- end
43
-
44
- # Attribute type mapping.
45
- def self.openapi_types
46
- {
47
- :'timestamp' => :'Integer',
48
- :'label' => :'Label',
49
- :'start_timestamp_millis' => :'Integer',
50
- :'end_timestamp_millis' => :'Integer',
51
- :'duration_millis' => :'Integer'
52
- }
53
- end
54
-
55
- # List of attributes with nullable: true
56
- def self.openapi_nullable
57
- Set.new([
58
- ])
59
- end
60
-
61
- # Initializes the object
62
- # @param [Hash] attributes Model attributes in the form of hash
63
- def initialize(attributes = {})
64
- if (!attributes.is_a?(Hash))
65
- fail ArgumentError, "The input argument (attributes) must be a hash in `SongtradrApiClientRuby::LabelDetection` initialize method"
66
- end
67
-
68
- # check to see if the attribute exists and convert string to symbol for hash key
69
- attributes = attributes.each_with_object({}) { |(k, v), h|
70
- if (!self.class.attribute_map.key?(k.to_sym))
71
- fail ArgumentError, "`#{k}` is not a valid attribute in `SongtradrApiClientRuby::LabelDetection`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
- end
73
- h[k.to_sym] = v
74
- }
75
-
76
- if attributes.key?(:'timestamp')
77
- self.timestamp = attributes[:'timestamp']
78
- end
79
-
80
- if attributes.key?(:'label')
81
- self.label = attributes[:'label']
82
- end
83
-
84
- if attributes.key?(:'start_timestamp_millis')
85
- self.start_timestamp_millis = attributes[:'start_timestamp_millis']
86
- end
87
-
88
- if attributes.key?(:'end_timestamp_millis')
89
- self.end_timestamp_millis = attributes[:'end_timestamp_millis']
90
- end
91
-
92
- if attributes.key?(:'duration_millis')
93
- self.duration_millis = attributes[:'duration_millis']
94
- end
95
- end
96
-
97
- # Show invalid properties with the reasons. Usually used together with valid?
98
- # @return Array for valid properties with the reasons
99
- def list_invalid_properties
100
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
101
- invalid_properties = Array.new
102
- invalid_properties
103
- end
104
-
105
- # Check to see if the all the properties in the model are valid
106
- # @return true if the model is valid
107
- def valid?
108
- warn '[DEPRECATED] the `valid?` method is obsolete'
109
- true
110
- end
111
-
112
- # Checks equality by comparing each attribute.
113
- # @param [Object] Object to be compared
114
- def ==(o)
115
- return true if self.equal?(o)
116
- self.class == o.class &&
117
- timestamp == o.timestamp &&
118
- label == o.label &&
119
- start_timestamp_millis == o.start_timestamp_millis &&
120
- end_timestamp_millis == o.end_timestamp_millis &&
121
- duration_millis == o.duration_millis
122
- end
123
-
124
- # @see the `==` method
125
- # @param [Object] Object to be compared
126
- def eql?(o)
127
- self == o
128
- end
129
-
130
- # Calculates hash code according to all attributes.
131
- # @return [Integer] Hash code
132
- def hash
133
- [timestamp, label, start_timestamp_millis, end_timestamp_millis, duration_millis].hash
134
- end
135
-
136
- # Builds the object from hash
137
- # @param [Hash] attributes Model attributes in the form of hash
138
- # @return [Object] Returns the model itself
139
- def self.build_from_hash(attributes)
140
- return nil unless attributes.is_a?(Hash)
141
- attributes = attributes.transform_keys(&:to_sym)
142
- transformed_hash = {}
143
- openapi_types.each_pair do |key, type|
144
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
145
- transformed_hash["#{key}"] = nil
146
- elsif type =~ /\AArray<(.*)>/i
147
- # check to ensure the input is an array given that the attribute
148
- # is documented as an array but the input is not
149
- if attributes[attribute_map[key]].is_a?(Array)
150
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
151
- end
152
- elsif !attributes[attribute_map[key]].nil?
153
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
154
- end
155
- end
156
- new(transformed_hash)
157
- end
158
-
159
- # Deserializes the data based on type
160
- # @param string type Data type
161
- # @param string value Value to be deserialized
162
- # @return [Object] Deserialized data
163
- def self._deserialize(type, value)
164
- case type.to_sym
165
- when :Time
166
- Time.parse(value)
167
- when :Date
168
- Date.parse(value)
169
- when :String
170
- value.to_s
171
- when :Integer
172
- value.to_i
173
- when :Float
174
- value.to_f
175
- when :Boolean
176
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
177
- true
178
- else
179
- false
180
- end
181
- when :Object
182
- # generic object (usually a Hash), return directly
183
- value
184
- when /\AArray<(?<inner_type>.+)>\z/
185
- inner_type = Regexp.last_match[:inner_type]
186
- value.map { |v| _deserialize(inner_type, v) }
187
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
188
- k_type = Regexp.last_match[:k_type]
189
- v_type = Regexp.last_match[:v_type]
190
- {}.tap do |hash|
191
- value.each do |k, v|
192
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
193
- end
194
- end
195
- else # model
196
- # models (e.g. Pet) or oneOf
197
- klass = SongtradrApiClientRuby.const_get(type)
198
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
199
- end
200
- end
201
-
202
- # Returns the string representation of the object
203
- # @return [String] String presentation of the object
204
- def to_s
205
- to_hash.to_s
206
- end
207
-
208
- # to_body is an alias to to_hash (backward compatibility)
209
- # @return [Hash] Returns the object in the form of hash
210
- def to_body
211
- to_hash
212
- end
213
-
214
- # Returns the object in the form of hash
215
- # @return [Hash] Returns the object in the form of hash
216
- def to_hash
217
- hash = {}
218
- self.class.attribute_map.each_pair do |attr, param|
219
- value = self.send(attr)
220
- if value.nil?
221
- is_nullable = self.class.openapi_nullable.include?(attr)
222
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
223
- end
224
-
225
- hash[param] = _to_hash(value)
226
- end
227
- hash
228
- end
229
-
230
- # Outputs non-array value in the form of hash
231
- # For object, use to_hash. Otherwise, just return the value
232
- # @param [Object] value Any valid value
233
- # @return [Hash] Returns the value in the form of hash
234
- def _to_hash(value)
235
- if value.is_a?(Array)
236
- value.compact.map { |v| _to_hash(v) }
237
- elsif value.is_a?(Hash)
238
- {}.tap do |hash|
239
- value.each { |k, v| hash[k] = _to_hash(v) }
240
- end
241
- elsif value.respond_to? :to_hash
242
- value.to_hash
243
- else
244
- value
245
- end
246
- end
247
-
248
- end
249
-
250
- end