songtradr_api_client_ruby 1.12.22 → 1.12.24
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +4 -4
- data/README.md +26 -12
- data/docs/APIKeysApi.md +217 -0
- data/docs/AdminApiUserDTO.md +70 -0
- data/docs/AllowedValuesApi.md +2 -2
- data/docs/ApiKeyDTO.md +24 -0
- data/docs/CreateApiKeyDTO.md +18 -0
- data/docs/FileSmallDTO.md +16 -16
- data/docs/MusicalFeaturesDTO.md +82 -82
- data/docs/PlaylistLargeDTO.md +9 -9
- data/docs/ProductMediumDTO.md +2 -2
- data/docs/RecordingApi.md +2 -0
- data/docs/RecordingGenrePredictionDTO.md +3 -3
- data/docs/RecordingLargeDTO.md +11 -11
- data/docs/RecordingMediumDTO.md +7 -7
- data/docs/RecordingMinimalWithMusicalFeaturesDTO.md +3 -3
- data/docs/RecordingPlaylistDTO.md +3 -3
- data/docs/RecordingSmallDTO.md +3 -3
- data/docs/UserApi.md +4 -0
- data/docs/UserDTO.md +20 -0
- data/lib/songtradr_api_client_ruby/api/allowed_values_api.rb +4 -4
- data/lib/songtradr_api_client_ruby/api/api_keys_api.rb +213 -0
- data/lib/songtradr_api_client_ruby/api/party_api.rb +1 -1
- data/lib/songtradr_api_client_ruby/api/playlist_api.rb +1 -1
- data/lib/songtradr_api_client_ruby/api/recording_api.rb +4 -1
- data/lib/songtradr_api_client_ruby/api/user_api.rb +7 -1
- data/lib/songtradr_api_client_ruby/api_client.rb +1 -1
- data/lib/songtradr_api_client_ruby/api_error.rb +1 -1
- data/lib/songtradr_api_client_ruby/configuration.rb +10 -8
- data/lib/songtradr_api_client_ruby/models/admin_api_user_dto.rb +448 -0
- data/lib/songtradr_api_client_ruby/models/api_key_dto.rb +262 -0
- data/lib/songtradr_api_client_ruby/models/category_medium_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/category_minimal_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/config_access_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/config_identifier_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/contributor_type_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/create_api_key_dto.rb +214 -0
- data/lib/songtradr_api_client_ruby/models/error_response.rb +19 -18
- data/lib/songtradr_api_client_ruby/models/field_summary_dto.rb +19 -18
- data/lib/songtradr_api_client_ruby/models/file_dto.rb +23 -18
- data/lib/songtradr_api_client_ruby/models/file_list_dto.rb +21 -18
- data/lib/songtradr_api_client_ruby/models/file_minimal_with_url_dto.rb +19 -18
- data/lib/songtradr_api_client_ruby/models/file_small_dto.rb +81 -76
- data/lib/songtradr_api_client_ruby/models/file_upload_dto.rb +13 -18
- data/lib/songtradr_api_client_ruby/models/file_w_ith_url_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/files_summary_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/forgot_password_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/genre_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/genre_minimal_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/genres_summary_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/init_put_recording_audio_dto.rb +13 -18
- data/lib/songtradr_api_client_ruby/models/jwt_token_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/login_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/musical_features_dto.rb +529 -534
- data/lib/songtradr_api_client_ruby/models/p_line_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/party_large_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/party_small_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/playlist_large_dto.rb +54 -57
- data/lib/songtradr_api_client_ruby/models/product_medium_dto.rb +35 -28
- data/lib/songtradr_api_client_ruby/models/product_party_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/recording_for_similarity_search_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/recording_genre_prediction_dto.rb +37 -36
- data/lib/songtradr_api_client_ruby/models/recording_large_dto.rb +94 -77
- data/lib/songtradr_api_client_ruby/models/recording_list_dto.rb +21 -18
- data/lib/songtradr_api_client_ruby/models/recording_medium_dto.rb +64 -51
- data/lib/songtradr_api_client_ruby/models/recording_minimal_with_musical_features_dto.rb +28 -31
- data/lib/songtradr_api_client_ruby/models/recording_minimal_with_taggrams_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/recording_minimal_with_tagstrengths_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/recording_party_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/recording_playlist_dto.rb +26 -31
- data/lib/songtradr_api_client_ruby/models/recording_small_dto.rb +36 -31
- data/lib/songtradr_api_client_ruby/models/recording_tag_small_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/save_file_recording_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/save_playlist_dto.rb +21 -18
- data/lib/songtradr_api_client_ruby/models/save_recording_genre_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/save_recording_party_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/save_recording_playlist_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/save_recording_tag_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/save_referrer_dto.rb +13 -18
- data/lib/songtradr_api_client_ruby/models/save_taggrams_dto.rb +13 -18
- data/lib/songtradr_api_client_ruby/models/save_user_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/search_filter_values_dto.rb +95 -18
- data/lib/songtradr_api_client_ruby/models/search_recording_granular_abstraction_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/search_recording_granular_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/sign_up_dto.rb +19 -18
- data/lib/songtradr_api_client_ruby/models/tag_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/tag_small_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/taggram_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/tags_summary_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/tagstrength_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/title_dto.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/token_request.rb +15 -18
- data/lib/songtradr_api_client_ruby/models/track_to_medium_product_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/update_password_dto.rb +17 -18
- data/lib/songtradr_api_client_ruby/models/usage_dto.rb +13 -18
- data/lib/songtradr_api_client_ruby/models/user_dto.rb +210 -19
- data/lib/songtradr_api_client_ruby/version.rb +2 -2
- data/lib/songtradr_api_client_ruby.rb +5 -1
- data/openapi-generator-config.yaml +1 -1
- data/songtradr_api_client_ruby.gemspec +1 -1
- data/spec/api/allowed_values_api_spec.rb +2 -2
- data/spec/api/api_keys_api_spec.rb +70 -0
- data/spec/api/party_api_spec.rb +1 -1
- data/spec/api/playlist_api_spec.rb +1 -1
- data/spec/api/recording_api_spec.rb +2 -1
- data/spec/api/user_api_spec.rb +3 -1
- data/spec/api_client_spec.rb +1 -1
- data/spec/configuration_spec.rb +1 -1
- data/spec/models/admin_api_user_dto_spec.rb +190 -0
- data/spec/models/api_key_dto_spec.rb +52 -0
- data/spec/models/category_medium_dto_spec.rb +1 -1
- data/spec/models/category_minimal_dto_spec.rb +1 -1
- data/spec/models/config_access_dto_spec.rb +1 -1
- data/spec/models/config_identifier_dto_spec.rb +1 -1
- data/spec/models/contributor_type_dto_spec.rb +1 -1
- data/spec/models/create_api_key_dto_spec.rb +34 -0
- data/spec/models/error_response_spec.rb +1 -1
- data/spec/models/field_summary_dto_spec.rb +1 -1
- data/spec/models/file_dto_spec.rb +1 -1
- data/spec/models/file_list_dto_spec.rb +1 -1
- data/spec/models/file_minimal_with_url_dto_spec.rb +1 -1
- data/spec/models/file_small_dto_spec.rb +15 -15
- data/spec/models/file_upload_dto_spec.rb +1 -1
- data/spec/models/file_w_ith_url_dto_spec.rb +1 -1
- data/spec/models/files_summary_dto_spec.rb +1 -1
- data/spec/models/forgot_password_dto_spec.rb +1 -1
- data/spec/models/genre_dto_spec.rb +1 -1
- data/spec/models/genre_minimal_dto_spec.rb +1 -1
- data/spec/models/genres_summary_dto_spec.rb +1 -1
- data/spec/models/init_put_recording_audio_dto_spec.rb +1 -1
- data/spec/models/jwt_token_dto_spec.rb +1 -1
- data/spec/models/login_dto_spec.rb +1 -1
- data/spec/models/musical_features_dto_spec.rb +175 -175
- data/spec/models/p_line_dto_spec.rb +1 -1
- data/spec/models/party_large_dto_spec.rb +1 -1
- data/spec/models/party_small_dto_spec.rb +1 -1
- data/spec/models/playlist_large_dto_spec.rb +10 -10
- data/spec/models/product_medium_dto_spec.rb +7 -7
- data/spec/models/product_party_dto_spec.rb +1 -1
- data/spec/models/recording_for_similarity_search_dto_spec.rb +1 -1
- data/spec/models/recording_genre_prediction_dto_spec.rb +3 -3
- data/spec/models/recording_large_dto_spec.rb +12 -12
- data/spec/models/recording_list_dto_spec.rb +1 -1
- data/spec/models/recording_medium_dto_spec.rb +9 -9
- data/spec/models/recording_minimal_with_musical_features_dto_spec.rb +3 -3
- data/spec/models/recording_minimal_with_taggrams_dto_spec.rb +1 -1
- data/spec/models/recording_minimal_with_tagstrengths_dto_spec.rb +1 -1
- data/spec/models/recording_party_dto_spec.rb +1 -1
- data/spec/models/recording_playlist_dto_spec.rb +4 -4
- data/spec/models/recording_small_dto_spec.rb +4 -4
- data/spec/models/recording_tag_small_dto_spec.rb +1 -1
- data/spec/models/save_file_recording_dto_spec.rb +1 -1
- data/spec/models/save_playlist_dto_spec.rb +1 -1
- data/spec/models/save_recording_genre_dto_spec.rb +1 -1
- data/spec/models/save_recording_party_dto_spec.rb +1 -1
- data/spec/models/save_recording_playlist_dto_spec.rb +1 -1
- data/spec/models/save_recording_tag_dto_spec.rb +1 -1
- data/spec/models/save_referrer_dto_spec.rb +1 -1
- data/spec/models/save_taggrams_dto_spec.rb +1 -1
- data/spec/models/save_user_dto_spec.rb +1 -1
- data/spec/models/search_filter_values_dto_spec.rb +1 -1
- data/spec/models/search_recording_granular_abstraction_dto_spec.rb +1 -1
- data/spec/models/search_recording_granular_dto_spec.rb +1 -1
- data/spec/models/sign_up_dto_spec.rb +1 -1
- data/spec/models/tag_dto_spec.rb +1 -1
- data/spec/models/tag_small_dto_spec.rb +1 -1
- data/spec/models/taggram_dto_spec.rb +1 -1
- data/spec/models/tags_summary_dto_spec.rb +1 -1
- data/spec/models/tagstrength_dto_spec.rb +1 -1
- data/spec/models/title_dto_spec.rb +1 -1
- data/spec/models/token_request_spec.rb +1 -1
- data/spec/models/track_to_medium_product_dto_spec.rb +1 -1
- data/spec/models/update_password_dto_spec.rb +1 -1
- data/spec/models/usage_dto_spec.rb +1 -1
- data/spec/models/user_dto_spec.rb +61 -1
- data/spec/spec_helper.rb +1 -1
- metadata +72 -56
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.12.
|
6
|
+
The version of the OpenAPI document: 1.12.24
|
7
7
|
Contact: info@songtradr.com
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 7.0.0-SNAPSHOT
|
@@ -64,16 +64,21 @@ module SongtradrApiClientRuby
|
|
64
64
|
|
65
65
|
if attributes.key?(:'file')
|
66
66
|
self.file = attributes[:'file']
|
67
|
+
else
|
68
|
+
self.file = nil
|
67
69
|
end
|
68
70
|
|
69
71
|
if attributes.key?(:'url')
|
70
72
|
self.url = attributes[:'url']
|
73
|
+
else
|
74
|
+
self.url = nil
|
71
75
|
end
|
72
76
|
end
|
73
77
|
|
74
78
|
# Show invalid properties with the reasons. Usually used together with valid?
|
75
79
|
# @return Array for valid properties with the reasons
|
76
80
|
def list_invalid_properties
|
81
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
77
82
|
invalid_properties = Array.new
|
78
83
|
if @file.nil?
|
79
84
|
invalid_properties.push('invalid value for "file", file cannot be nil.')
|
@@ -89,6 +94,7 @@ module SongtradrApiClientRuby
|
|
89
94
|
# Check to see if the all the properties in the model are valid
|
90
95
|
# @return true if the model is valid
|
91
96
|
def valid?
|
97
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
92
98
|
return false if @file.nil?
|
93
99
|
return false if @url.nil?
|
94
100
|
true
|
@@ -119,37 +125,30 @@ module SongtradrApiClientRuby
|
|
119
125
|
# @param [Hash] attributes Model attributes in the form of hash
|
120
126
|
# @return [Object] Returns the model itself
|
121
127
|
def self.build_from_hash(attributes)
|
122
|
-
new.build_from_hash(attributes)
|
123
|
-
end
|
124
|
-
|
125
|
-
# Builds the object from hash
|
126
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
127
|
-
# @return [Object] Returns the model itself
|
128
|
-
def build_from_hash(attributes)
|
129
128
|
return nil unless attributes.is_a?(Hash)
|
130
129
|
attributes = attributes.transform_keys(&:to_sym)
|
131
|
-
|
132
|
-
|
133
|
-
|
130
|
+
transformed_hash = {}
|
131
|
+
openapi_types.each_pair do |key, type|
|
132
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
133
|
+
transformed_hash["#{key}"] = nil
|
134
134
|
elsif type =~ /\AArray<(.*)>/i
|
135
135
|
# check to ensure the input is an array given that the attribute
|
136
136
|
# is documented as an array but the input is not
|
137
|
-
if attributes[
|
138
|
-
|
137
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
138
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
139
139
|
end
|
140
|
-
elsif !attributes[
|
141
|
-
|
140
|
+
elsif !attributes[attribute_map[key]].nil?
|
141
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
142
142
|
end
|
143
143
|
end
|
144
|
-
|
145
|
-
self
|
144
|
+
new(transformed_hash)
|
146
145
|
end
|
147
146
|
|
148
147
|
# Deserializes the data based on type
|
149
148
|
# @param string type Data type
|
150
149
|
# @param string value Value to be deserialized
|
151
150
|
# @return [Object] Deserialized data
|
152
|
-
def _deserialize(type, value)
|
151
|
+
def self._deserialize(type, value)
|
153
152
|
case type.to_sym
|
154
153
|
when :Time
|
155
154
|
Time.parse(value)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.12.
|
6
|
+
The version of the OpenAPI document: 1.12.24
|
7
7
|
Contact: info@songtradr.com
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 7.0.0-SNAPSHOT
|
@@ -108,6 +108,8 @@ module SongtradrApiClientRuby
|
|
108
108
|
|
109
109
|
if attributes.key?(:'total_files')
|
110
110
|
self.total_files = attributes[:'total_files']
|
111
|
+
else
|
112
|
+
self.total_files = nil
|
111
113
|
end
|
112
114
|
|
113
115
|
if attributes.key?(:'bpm_min')
|
@@ -122,6 +124,7 @@ module SongtradrApiClientRuby
|
|
122
124
|
# Show invalid properties with the reasons. Usually used together with valid?
|
123
125
|
# @return Array for valid properties with the reasons
|
124
126
|
def list_invalid_properties
|
127
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
125
128
|
invalid_properties = Array.new
|
126
129
|
if @total_files.nil?
|
127
130
|
invalid_properties.push('invalid value for "total_files", total_files cannot be nil.')
|
@@ -133,6 +136,7 @@ module SongtradrApiClientRuby
|
|
133
136
|
# Check to see if the all the properties in the model are valid
|
134
137
|
# @return true if the model is valid
|
135
138
|
def valid?
|
139
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
136
140
|
return false if @total_files.nil?
|
137
141
|
true
|
138
142
|
end
|
@@ -167,37 +171,30 @@ module SongtradrApiClientRuby
|
|
167
171
|
# @param [Hash] attributes Model attributes in the form of hash
|
168
172
|
# @return [Object] Returns the model itself
|
169
173
|
def self.build_from_hash(attributes)
|
170
|
-
new.build_from_hash(attributes)
|
171
|
-
end
|
172
|
-
|
173
|
-
# Builds the object from hash
|
174
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
175
|
-
# @return [Object] Returns the model itself
|
176
|
-
def build_from_hash(attributes)
|
177
174
|
return nil unless attributes.is_a?(Hash)
|
178
175
|
attributes = attributes.transform_keys(&:to_sym)
|
179
|
-
|
180
|
-
|
181
|
-
|
176
|
+
transformed_hash = {}
|
177
|
+
openapi_types.each_pair do |key, type|
|
178
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
179
|
+
transformed_hash["#{key}"] = nil
|
182
180
|
elsif type =~ /\AArray<(.*)>/i
|
183
181
|
# check to ensure the input is an array given that the attribute
|
184
182
|
# is documented as an array but the input is not
|
185
|
-
if attributes[
|
186
|
-
|
183
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
184
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
187
185
|
end
|
188
|
-
elsif !attributes[
|
189
|
-
|
186
|
+
elsif !attributes[attribute_map[key]].nil?
|
187
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
190
188
|
end
|
191
189
|
end
|
192
|
-
|
193
|
-
self
|
190
|
+
new(transformed_hash)
|
194
191
|
end
|
195
192
|
|
196
193
|
# Deserializes the data based on type
|
197
194
|
# @param string type Data type
|
198
195
|
# @param string value Value to be deserialized
|
199
196
|
# @return [Object] Deserialized data
|
200
|
-
def _deserialize(type, value)
|
197
|
+
def self._deserialize(type, value)
|
201
198
|
case type.to_sym
|
202
199
|
when :Time
|
203
200
|
Time.parse(value)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.12.
|
6
|
+
The version of the OpenAPI document: 1.12.24
|
7
7
|
Contact: info@songtradr.com
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 7.0.0-SNAPSHOT
|
@@ -85,6 +85,8 @@ module SongtradrApiClientRuby
|
|
85
85
|
|
86
86
|
if attributes.key?(:'email_or_username')
|
87
87
|
self.email_or_username = attributes[:'email_or_username']
|
88
|
+
else
|
89
|
+
self.email_or_username = nil
|
88
90
|
end
|
89
91
|
|
90
92
|
if attributes.key?(:'system')
|
@@ -95,6 +97,7 @@ module SongtradrApiClientRuby
|
|
95
97
|
# Show invalid properties with the reasons. Usually used together with valid?
|
96
98
|
# @return Array for valid properties with the reasons
|
97
99
|
def list_invalid_properties
|
100
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
98
101
|
invalid_properties = Array.new
|
99
102
|
if @email_or_username.nil?
|
100
103
|
invalid_properties.push('invalid value for "email_or_username", email_or_username cannot be nil.')
|
@@ -106,6 +109,7 @@ module SongtradrApiClientRuby
|
|
106
109
|
# Check to see if the all the properties in the model are valid
|
107
110
|
# @return true if the model is valid
|
108
111
|
def valid?
|
112
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
109
113
|
return false if @email_or_username.nil?
|
110
114
|
system_validator = EnumAttributeValidator.new('String', ["musicube", "cloud"])
|
111
115
|
return false unless system_validator.valid?(@system)
|
@@ -147,37 +151,30 @@ module SongtradrApiClientRuby
|
|
147
151
|
# @param [Hash] attributes Model attributes in the form of hash
|
148
152
|
# @return [Object] Returns the model itself
|
149
153
|
def self.build_from_hash(attributes)
|
150
|
-
new.build_from_hash(attributes)
|
151
|
-
end
|
152
|
-
|
153
|
-
# Builds the object from hash
|
154
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
155
|
-
# @return [Object] Returns the model itself
|
156
|
-
def build_from_hash(attributes)
|
157
154
|
return nil unless attributes.is_a?(Hash)
|
158
155
|
attributes = attributes.transform_keys(&:to_sym)
|
159
|
-
|
160
|
-
|
161
|
-
|
156
|
+
transformed_hash = {}
|
157
|
+
openapi_types.each_pair do |key, type|
|
158
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
159
|
+
transformed_hash["#{key}"] = nil
|
162
160
|
elsif type =~ /\AArray<(.*)>/i
|
163
161
|
# check to ensure the input is an array given that the attribute
|
164
162
|
# is documented as an array but the input is not
|
165
|
-
if attributes[
|
166
|
-
|
163
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
164
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
167
165
|
end
|
168
|
-
elsif !attributes[
|
169
|
-
|
166
|
+
elsif !attributes[attribute_map[key]].nil?
|
167
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
170
168
|
end
|
171
169
|
end
|
172
|
-
|
173
|
-
self
|
170
|
+
new(transformed_hash)
|
174
171
|
end
|
175
172
|
|
176
173
|
# Deserializes the data based on type
|
177
174
|
# @param string type Data type
|
178
175
|
# @param string value Value to be deserialized
|
179
176
|
# @return [Object] Deserialized data
|
180
|
-
def _deserialize(type, value)
|
177
|
+
def self._deserialize(type, value)
|
181
178
|
case type.to_sym
|
182
179
|
when :Time
|
183
180
|
Time.parse(value)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.12.
|
6
|
+
The version of the OpenAPI document: 1.12.24
|
7
7
|
Contact: info@songtradr.com
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 7.0.0-SNAPSHOT
|
@@ -64,16 +64,21 @@ module SongtradrApiClientRuby
|
|
64
64
|
|
65
65
|
if attributes.key?(:'id')
|
66
66
|
self.id = attributes[:'id']
|
67
|
+
else
|
68
|
+
self.id = nil
|
67
69
|
end
|
68
70
|
|
69
71
|
if attributes.key?(:'name')
|
70
72
|
self.name = attributes[:'name']
|
73
|
+
else
|
74
|
+
self.name = nil
|
71
75
|
end
|
72
76
|
end
|
73
77
|
|
74
78
|
# Show invalid properties with the reasons. Usually used together with valid?
|
75
79
|
# @return Array for valid properties with the reasons
|
76
80
|
def list_invalid_properties
|
81
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
77
82
|
invalid_properties = Array.new
|
78
83
|
if @id.nil?
|
79
84
|
invalid_properties.push('invalid value for "id", id cannot be nil.')
|
@@ -89,6 +94,7 @@ module SongtradrApiClientRuby
|
|
89
94
|
# Check to see if the all the properties in the model are valid
|
90
95
|
# @return true if the model is valid
|
91
96
|
def valid?
|
97
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
92
98
|
return false if @id.nil?
|
93
99
|
return false if @name.nil?
|
94
100
|
true
|
@@ -119,37 +125,30 @@ module SongtradrApiClientRuby
|
|
119
125
|
# @param [Hash] attributes Model attributes in the form of hash
|
120
126
|
# @return [Object] Returns the model itself
|
121
127
|
def self.build_from_hash(attributes)
|
122
|
-
new.build_from_hash(attributes)
|
123
|
-
end
|
124
|
-
|
125
|
-
# Builds the object from hash
|
126
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
127
|
-
# @return [Object] Returns the model itself
|
128
|
-
def build_from_hash(attributes)
|
129
128
|
return nil unless attributes.is_a?(Hash)
|
130
129
|
attributes = attributes.transform_keys(&:to_sym)
|
131
|
-
|
132
|
-
|
133
|
-
|
130
|
+
transformed_hash = {}
|
131
|
+
openapi_types.each_pair do |key, type|
|
132
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
133
|
+
transformed_hash["#{key}"] = nil
|
134
134
|
elsif type =~ /\AArray<(.*)>/i
|
135
135
|
# check to ensure the input is an array given that the attribute
|
136
136
|
# is documented as an array but the input is not
|
137
|
-
if attributes[
|
138
|
-
|
137
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
138
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
139
139
|
end
|
140
|
-
elsif !attributes[
|
141
|
-
|
140
|
+
elsif !attributes[attribute_map[key]].nil?
|
141
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
142
142
|
end
|
143
143
|
end
|
144
|
-
|
145
|
-
self
|
144
|
+
new(transformed_hash)
|
146
145
|
end
|
147
146
|
|
148
147
|
# Deserializes the data based on type
|
149
148
|
# @param string type Data type
|
150
149
|
# @param string value Value to be deserialized
|
151
150
|
# @return [Object] Deserialized data
|
152
|
-
def _deserialize(type, value)
|
151
|
+
def self._deserialize(type, value)
|
153
152
|
case type.to_sym
|
154
153
|
when :Time
|
155
154
|
Time.parse(value)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.12.
|
6
|
+
The version of the OpenAPI document: 1.12.24
|
7
7
|
Contact: info@songtradr.com
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 7.0.0-SNAPSHOT
|
@@ -60,12 +60,15 @@ module SongtradrApiClientRuby
|
|
60
60
|
|
61
61
|
if attributes.key?(:'genre_name')
|
62
62
|
self.genre_name = attributes[:'genre_name']
|
63
|
+
else
|
64
|
+
self.genre_name = nil
|
63
65
|
end
|
64
66
|
end
|
65
67
|
|
66
68
|
# Show invalid properties with the reasons. Usually used together with valid?
|
67
69
|
# @return Array for valid properties with the reasons
|
68
70
|
def list_invalid_properties
|
71
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
69
72
|
invalid_properties = Array.new
|
70
73
|
if @genre_name.nil?
|
71
74
|
invalid_properties.push('invalid value for "genre_name", genre_name cannot be nil.')
|
@@ -77,6 +80,7 @@ module SongtradrApiClientRuby
|
|
77
80
|
# Check to see if the all the properties in the model are valid
|
78
81
|
# @return true if the model is valid
|
79
82
|
def valid?
|
83
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
80
84
|
return false if @genre_name.nil?
|
81
85
|
true
|
82
86
|
end
|
@@ -105,37 +109,30 @@ module SongtradrApiClientRuby
|
|
105
109
|
# @param [Hash] attributes Model attributes in the form of hash
|
106
110
|
# @return [Object] Returns the model itself
|
107
111
|
def self.build_from_hash(attributes)
|
108
|
-
new.build_from_hash(attributes)
|
109
|
-
end
|
110
|
-
|
111
|
-
# Builds the object from hash
|
112
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
113
|
-
# @return [Object] Returns the model itself
|
114
|
-
def build_from_hash(attributes)
|
115
112
|
return nil unless attributes.is_a?(Hash)
|
116
113
|
attributes = attributes.transform_keys(&:to_sym)
|
117
|
-
|
118
|
-
|
119
|
-
|
114
|
+
transformed_hash = {}
|
115
|
+
openapi_types.each_pair do |key, type|
|
116
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
117
|
+
transformed_hash["#{key}"] = nil
|
120
118
|
elsif type =~ /\AArray<(.*)>/i
|
121
119
|
# check to ensure the input is an array given that the attribute
|
122
120
|
# is documented as an array but the input is not
|
123
|
-
if attributes[
|
124
|
-
|
121
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
122
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
125
123
|
end
|
126
|
-
elsif !attributes[
|
127
|
-
|
124
|
+
elsif !attributes[attribute_map[key]].nil?
|
125
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
128
126
|
end
|
129
127
|
end
|
130
|
-
|
131
|
-
self
|
128
|
+
new(transformed_hash)
|
132
129
|
end
|
133
130
|
|
134
131
|
# Deserializes the data based on type
|
135
132
|
# @param string type Data type
|
136
133
|
# @param string value Value to be deserialized
|
137
134
|
# @return [Object] Deserialized data
|
138
|
-
def _deserialize(type, value)
|
135
|
+
def self._deserialize(type, value)
|
139
136
|
case type.to_sym
|
140
137
|
when :Time
|
141
138
|
Time.parse(value)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.12.
|
6
|
+
The version of the OpenAPI document: 1.12.24
|
7
7
|
Contact: info@songtradr.com
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 7.0.0-SNAPSHOT
|
@@ -68,10 +68,14 @@ module SongtradrApiClientRuby
|
|
68
68
|
|
69
69
|
if attributes.key?(:'name')
|
70
70
|
self.name = attributes[:'name']
|
71
|
+
else
|
72
|
+
self.name = nil
|
71
73
|
end
|
72
74
|
|
73
75
|
if attributes.key?(:'total')
|
74
76
|
self.total = attributes[:'total']
|
77
|
+
else
|
78
|
+
self.total = nil
|
75
79
|
end
|
76
80
|
|
77
81
|
if attributes.key?(:'genre_type')
|
@@ -82,6 +86,7 @@ module SongtradrApiClientRuby
|
|
82
86
|
# Show invalid properties with the reasons. Usually used together with valid?
|
83
87
|
# @return Array for valid properties with the reasons
|
84
88
|
def list_invalid_properties
|
89
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
85
90
|
invalid_properties = Array.new
|
86
91
|
if @name.nil?
|
87
92
|
invalid_properties.push('invalid value for "name", name cannot be nil.')
|
@@ -97,6 +102,7 @@ module SongtradrApiClientRuby
|
|
97
102
|
# Check to see if the all the properties in the model are valid
|
98
103
|
# @return true if the model is valid
|
99
104
|
def valid?
|
105
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
100
106
|
return false if @name.nil?
|
101
107
|
return false if @total.nil?
|
102
108
|
true
|
@@ -128,37 +134,30 @@ module SongtradrApiClientRuby
|
|
128
134
|
# @param [Hash] attributes Model attributes in the form of hash
|
129
135
|
# @return [Object] Returns the model itself
|
130
136
|
def self.build_from_hash(attributes)
|
131
|
-
new.build_from_hash(attributes)
|
132
|
-
end
|
133
|
-
|
134
|
-
# Builds the object from hash
|
135
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
136
|
-
# @return [Object] Returns the model itself
|
137
|
-
def build_from_hash(attributes)
|
138
137
|
return nil unless attributes.is_a?(Hash)
|
139
138
|
attributes = attributes.transform_keys(&:to_sym)
|
140
|
-
|
141
|
-
|
142
|
-
|
139
|
+
transformed_hash = {}
|
140
|
+
openapi_types.each_pair do |key, type|
|
141
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
142
|
+
transformed_hash["#{key}"] = nil
|
143
143
|
elsif type =~ /\AArray<(.*)>/i
|
144
144
|
# check to ensure the input is an array given that the attribute
|
145
145
|
# is documented as an array but the input is not
|
146
|
-
if attributes[
|
147
|
-
|
146
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
147
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
148
148
|
end
|
149
|
-
elsif !attributes[
|
150
|
-
|
149
|
+
elsif !attributes[attribute_map[key]].nil?
|
150
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
151
151
|
end
|
152
152
|
end
|
153
|
-
|
154
|
-
self
|
153
|
+
new(transformed_hash)
|
155
154
|
end
|
156
155
|
|
157
156
|
# Deserializes the data based on type
|
158
157
|
# @param string type Data type
|
159
158
|
# @param string value Value to be deserialized
|
160
159
|
# @return [Object] Deserialized data
|
161
|
-
def _deserialize(type, value)
|
160
|
+
def self._deserialize(type, value)
|
162
161
|
case type.to_sym
|
163
162
|
when :Time
|
164
163
|
Time.parse(value)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#This is the Songtradr API. Use it to retrieve deep music metadata and trigger processes like auto-tagging. You can also use the API to manage your account and musicube cloud data. **Authentication** 1. Reach out to support@songtradr.com to receive a free account or use your login data if you are already signed up. 2. To authenticate, you need to login via the POST /api/v1/user/login endpoint. 3. The endpoint responds with a jwtToken which you can use in all following API requests as a bearer token. **Rate Limiting** The current limit is 120 Requests per minute. Reach out to us via support@songtradr.com if you need to request more. **Getting Started with auto-tagging** 1. If you want to get your own files auto-tagged, use the POST /api/v1/user/file/{name}/initUpload endpoint. It responds with a presigned S3 link where you can upload your file. 2. You can check the processing status of your file via the GET /api/v1/user/file/{name}/filesStatus endpoint. 3. As soon as processing is done, you can request the generated data via the GET /api/v1/user/files endpoint. **Getting Started with search** You can either search the released music via the /public/recording endpoints or your own private uploaded music via the /user/file/ endpoints. 1. If you want to search the world's released music, a good starting point is the GET /api/v1/public/recording/search endpoint. Please find the extensive list of parameters that serve as semantic search filters. 2. If you want to search your own previously uploaded music, a good starting point is the GET GET /api/v1/user/files endpoint. It has the same extensive list of parameters that serve as semantic search filters.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.12.
|
6
|
+
The version of the OpenAPI document: 1.12.24
|
7
7
|
Contact: info@songtradr.com
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 7.0.0-SNAPSHOT
|
@@ -82,6 +82,7 @@ module SongtradrApiClientRuby
|
|
82
82
|
# Show invalid properties with the reasons. Usually used together with valid?
|
83
83
|
# @return Array for valid properties with the reasons
|
84
84
|
def list_invalid_properties
|
85
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
85
86
|
invalid_properties = Array.new
|
86
87
|
invalid_properties
|
87
88
|
end
|
@@ -89,6 +90,7 @@ module SongtradrApiClientRuby
|
|
89
90
|
# Check to see if the all the properties in the model are valid
|
90
91
|
# @return true if the model is valid
|
91
92
|
def valid?
|
93
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
92
94
|
true
|
93
95
|
end
|
94
96
|
|
@@ -118,37 +120,30 @@ module SongtradrApiClientRuby
|
|
118
120
|
# @param [Hash] attributes Model attributes in the form of hash
|
119
121
|
# @return [Object] Returns the model itself
|
120
122
|
def self.build_from_hash(attributes)
|
121
|
-
new.build_from_hash(attributes)
|
122
|
-
end
|
123
|
-
|
124
|
-
# Builds the object from hash
|
125
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
126
|
-
# @return [Object] Returns the model itself
|
127
|
-
def build_from_hash(attributes)
|
128
123
|
return nil unless attributes.is_a?(Hash)
|
129
124
|
attributes = attributes.transform_keys(&:to_sym)
|
130
|
-
|
131
|
-
|
132
|
-
|
125
|
+
transformed_hash = {}
|
126
|
+
openapi_types.each_pair do |key, type|
|
127
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
128
|
+
transformed_hash["#{key}"] = nil
|
133
129
|
elsif type =~ /\AArray<(.*)>/i
|
134
130
|
# check to ensure the input is an array given that the attribute
|
135
131
|
# is documented as an array but the input is not
|
136
|
-
if attributes[
|
137
|
-
|
132
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
133
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
138
134
|
end
|
139
|
-
elsif !attributes[
|
140
|
-
|
135
|
+
elsif !attributes[attribute_map[key]].nil?
|
136
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
141
137
|
end
|
142
138
|
end
|
143
|
-
|
144
|
-
self
|
139
|
+
new(transformed_hash)
|
145
140
|
end
|
146
141
|
|
147
142
|
# Deserializes the data based on type
|
148
143
|
# @param string type Data type
|
149
144
|
# @param string value Value to be deserialized
|
150
145
|
# @return [Object] Deserialized data
|
151
|
-
def _deserialize(type, value)
|
146
|
+
def self._deserialize(type, value)
|
152
147
|
case type.to_sym
|
153
148
|
when :Time
|
154
149
|
Time.parse(value)
|