class KoronaClient::ProductsApi
Attributes
Public Class Methods
# File lib/korona_client/api/products_api.rb, line 19 def initialize(api_client = ApiClient.default) @api_client = api_client end
Public Instance Methods
adds a batch of new products
@param korona_account_id account id of the KORONA.cloud account @param body array of new products @param [Hash] opts the optional parameters @option opts [BOOLEAN] :upsert when set to true, updates the object instead of generating a already-exists-error @return [Array<AddOrUpdateResult>]
# File lib/korona_client/api/products_api.rb, line 29 def add_products(korona_account_id, body, opts = {}) data, _status_code, _headers = add_products_with_http_info(korona_account_id, body, opts) data end
adds a batch of new products
@param korona_account_id account id of the KORONA.cloud account @param body array of new products @param [Hash] opts the optional parameters @option opts [BOOLEAN] :upsert when set to true, updates the object instead of generating a already-exists-error @return [Array<(Array<AddOrUpdateResult>, Fixnum, Hash)>] Array<AddOrUpdateResult> data, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 41 def add_products_with_http_info(korona_account_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.add_products ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.add_products" end # verify the required parameter 'body' is set if @api_client.config.client_side_validation && body.nil? fail ArgumentError, "Missing the required parameter 'body' when calling ProductsApi.add_products" end # resource path local_var_path = '/accounts/{koronaAccountId}/products'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s) # query parameters query_params = {} query_params[:'upsert'] = opts[:'upsert'] if !opts[:'upsert'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Array<AddOrUpdateResult>') if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#add_products\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
deletes the single product
@param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param [Hash] opts the optional parameters @return [nil]
# File lib/korona_client/api/products_api.rb, line 91 def delete_product(korona_account_id, product_id, opts = {}) delete_product_with_http_info(korona_account_id, product_id, opts) nil end
deletes the single product
@param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param [Hash] opts the optional parameters @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 102 def delete_product_with_http_info(korona_account_id, product_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.delete_product ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.delete_product" end # verify the required parameter 'product_id' is set if @api_client.config.client_side_validation && product_id.nil? fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.delete_product" end # resource path local_var_path = '/accounts/{koronaAccountId}/products/{productId}'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s).sub('{' + 'productId' + '}', product_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#delete_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
deletes a batch of products
@param korona_account_id account id of the KORONA.cloud account @param body array of existing products (id or number required) @param [Hash] opts the optional parameters @return [Array<AddOrUpdateResult>]
# File lib/korona_client/api/products_api.rb, line 150 def delete_products(korona_account_id, body, opts = {}) data, _status_code, _headers = delete_products_with_http_info(korona_account_id, body, opts) data end
deletes a batch of products
@param korona_account_id account id of the KORONA.cloud account @param body array of existing products (id or number required) @param [Hash] opts the optional parameters @return [Array<(Array<AddOrUpdateResult>, Fixnum, Hash)>] Array<AddOrUpdateResult> data, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 161 def delete_products_with_http_info(korona_account_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.delete_products ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.delete_products" end # verify the required parameter 'body' is set if @api_client.config.client_side_validation && body.nil? fail ArgumentError, "Missing the required parameter 'body' when calling ProductsApi.delete_products" end # resource path local_var_path = '/accounts/{koronaAccountId}/products'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Array<AddOrUpdateResult>') if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#delete_products\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
returns the single product
@param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param [Hash] opts the optional parameters @return [Product]
# File lib/korona_client/api/products_api.rb, line 210 def get_product(korona_account_id, product_id, opts = {}) data, _status_code, _headers = get_product_with_http_info(korona_account_id, product_id, opts) data end
lists the product stocks in different warehouses (KORONA.retail required)
@param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param [Hash] opts the optional parameters @option opts [Integer] :page number of the page to fetch @option opts [Integer] :size amount of objects to return per page @option opts [String] :sort attribute to sort by (multiple separated by comma; max. 5) @option opts [Integer] :revision last revision number, objects with a greater revision than this will be returned @return [ResultListProductStock]
# File lib/korona_client/api/products_api.rb, line 274 def get_product_stocks(korona_account_id, product_id, opts = {}) data, _status_code, _headers = get_product_stocks_with_http_info(korona_account_id, product_id, opts) data end
lists the product stocks in different warehouses (KORONA.retail required)
@param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param [Hash] opts the optional parameters @option opts [Integer] :page number of the page to fetch @option opts [Integer] :size amount of objects to return per page @option opts [String] :sort attribute to sort by (multiple separated by comma; max. 5) @option opts [Integer] :revision last revision number, objects with a greater revision than this will be returned @return [Array<(ResultListProductStock
, Fixnum, Hash)>] ResultListProductStock
data, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 289 def get_product_stocks_with_http_info(korona_account_id, product_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.get_product_stocks ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.get_product_stocks" end # verify the required parameter 'product_id' is set if @api_client.config.client_side_validation && product_id.nil? fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.get_product_stocks" end # resource path local_var_path = '/accounts/{koronaAccountId}/products/{productId}/stocks'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s).sub('{' + 'productId' + '}', product_id.to_s) # query parameters query_params = {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'revision'] = opts[:'revision'] if !opts[:'revision'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'ResultListProductStock') if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#get_product_stocks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
returns the single product
@param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param [Hash] opts the optional parameters @return [Array<(Product
, Fixnum, Hash)>] Product
data, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 221 def get_product_with_http_info(korona_account_id, product_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.get_product ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.get_product" end # verify the required parameter 'product_id' is set if @api_client.config.client_side_validation && product_id.nil? fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.get_product" end # resource path local_var_path = '/accounts/{koronaAccountId}/products/{productId}'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s).sub('{' + 'productId' + '}', product_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Product') if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#get_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
lists all products
@param korona_account_id account id of the KORONA.cloud account @param [Hash] opts the optional parameters @option opts [Integer] :page number of the page to fetch @option opts [Integer] :size amount of objects to return per page @option opts [String] :sort attribute to sort by (multiple separated by comma; max. 5) @option opts [Integer] :revision last revision number, objects with a greater revision than this will be returned @option opts [BOOLEAN] :include_deleted indicates deleted objects should be loaded or not (default: false) @option opts [String] :product_codes at least one product code to filter by (multiple separated by comma; max. 10) @option opts [String] :commodity_group commodity group id to filter by @option opts [String] :assortment assortment id to filter by @option opts [String] :tag tag id to filter by @option opts [String] :number number of the related object @return [ResultListProduct]
# File lib/korona_client/api/products_api.rb, line 351 def get_products(korona_account_id, opts = {}) data, _status_code, _headers = get_products_with_http_info(korona_account_id, opts) data end
lists all products
@param korona_account_id account id of the KORONA.cloud account @param [Hash] opts the optional parameters @option opts [Integer] :page number of the page to fetch @option opts [Integer] :size amount of objects to return per page @option opts [String] :sort attribute to sort by (multiple separated by comma; max. 5) @option opts [Integer] :revision last revision number, objects with a greater revision than this will be returned @option opts [BOOLEAN] :include_deleted indicates deleted objects should be loaded or not (default: false) @option opts [String] :product_codes at least one product code to filter by (multiple separated by comma; max. 10) @option opts [String] :commodity_group commodity group id to filter by @option opts [String] :assortment assortment id to filter by @option opts [String] :tag tag id to filter by @option opts [String] :number number of the related object @return [Array<(ResultListProduct
, Fixnum, Hash)>] ResultListProduct
data, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 371 def get_products_with_http_info(korona_account_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.get_products ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.get_products" end # resource path local_var_path = '/accounts/{koronaAccountId}/products'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s) # query parameters query_params = {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'revision'] = opts[:'revision'] if !opts[:'revision'].nil? query_params[:'includeDeleted'] = opts[:'include_deleted'] if !opts[:'include_deleted'].nil? query_params[:'productCodes'] = opts[:'product_codes'] if !opts[:'product_codes'].nil? query_params[:'commodityGroup'] = opts[:'commodity_group'] if !opts[:'commodity_group'].nil? query_params[:'assortment'] = opts[:'assortment'] if !opts[:'assortment'].nil? query_params[:'tag'] = opts[:'tag'] if !opts[:'tag'].nil? query_params[:'number'] = opts[:'number'] if !opts[:'number'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'ResultListProduct') if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#get_products\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
updates the single product if [number] is set, the number of the object will change and the resource location as well @param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param body the properties to update of the product @param [Hash] opts the optional parameters @return [nil]
# File lib/korona_client/api/products_api.rb, line 427 def update_product(korona_account_id, product_id, body, opts = {}) update_product_with_http_info(korona_account_id, product_id, body, opts) nil end
updates the single product if [number] is set, the number of the object will change and the resource location as well @param korona_account_id account id of the KORONA.cloud account @param product_id id of the related object (important: id should match the uuid-format) @param body the properties to update of the product @param [Hash] opts the optional parameters @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 439 def update_product_with_http_info(korona_account_id, product_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.update_product ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.update_product" end # verify the required parameter 'product_id' is set if @api_client.config.client_side_validation && product_id.nil? fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.update_product" end # verify the required parameter 'body' is set if @api_client.config.client_side_validation && body.nil? fail ArgumentError, "Missing the required parameter 'body' when calling ProductsApi.update_product" end # resource path local_var_path = '/accounts/{koronaAccountId}/products/{productId}'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s).sub('{' + 'productId' + '}', product_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names) if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#update_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
updates a batch of products
- number
-
must be set in the objects, otherwise the object cannot be updated
@param korona_account_id account id of the KORONA.cloud account @param body an array of existing products @param [Hash] opts the optional parameters @return [Array<AddOrUpdateResult>]
# File lib/korona_client/api/products_api.rb, line 491 def update_products(korona_account_id, body, opts = {}) data, _status_code, _headers = update_products_with_http_info(korona_account_id, body, opts) data end
updates a batch of products
- number
-
must be set in the objects, otherwise the object cannot be updated
@param korona_account_id account id of the KORONA.cloud account @param body an array of existing products @param [Hash] opts the optional parameters @return [Array<(Array<AddOrUpdateResult>, Fixnum, Hash)>] Array<AddOrUpdateResult> data, response status code and response headers
# File lib/korona_client/api/products_api.rb, line 502 def update_products_with_http_info(korona_account_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ProductsApi.update_products ...' end # verify the required parameter 'korona_account_id' is set if @api_client.config.client_side_validation && korona_account_id.nil? fail ArgumentError, "Missing the required parameter 'korona_account_id' when calling ProductsApi.update_products" end # verify the required parameter 'body' is set if @api_client.config.client_side_validation && body.nil? fail ArgumentError, "Missing the required parameter 'body' when calling ProductsApi.update_products" end # resource path local_var_path = '/accounts/{koronaAccountId}/products'.sub('{' + 'koronaAccountId' + '}', korona_account_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['basicAuth'] data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Array<AddOrUpdateResult>') if @api_client.config.debugging @api_client.config.logger.debug "API called: ProductsApi#update_products\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end