Class: InventoryManagementAndItemManagementAndOrderManagementAndPriceManagement::TaxonomyController

Inherits:
BaseController
  • Object
show all
Defined in:
lib/inventory_management_and_item_management_and_order_management_and_price_management/controllers/taxonomy_controller.rb

Overview

TaxonomyController

Constant Summary

Constants inherited from BaseController

BaseController::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseController

#config, #http_call_back

Instance Method Summary collapse

Methods inherited from BaseController

#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent

Constructor Details

This class inherits a constructor from InventoryManagementAndItemManagementAndOrderManagementAndPriceManagement::BaseController

Instance Method Details

#taxonomy(version, feed_type, wm_sec_access_token, wm_consumer_channel_type, wm_qos_correlation_id, wm_svc_name, accept) ⇒ SuccessfulOperation51

The Taxonomy API exposes the Product Type (PT) taxonomy that Walmart uses to classify items. This API provides the user with all Product Types (PTs) in their respective Product Type Groups (PTGs). The Product Type Groups (PTGs) are then organized into categories. To get the ProductType taxonomy, pass the ‘version` attribute in the query params as instructed below. This API also supports the older taxonomy which was Category-based. To continue to use that, do not pass the “version” attribute. ProductType hierarchy data is needed, “version” attribute should be passed in the request. The current supported values for this attribute is 5.0 file that will be used. access token retrieved in the Token API call to track the consumer request by channel. Use the Consumer Channel Type received during onboarding unique ID which identifies each API call and used to track and debug issues; use a random generated GUID for this ID Name

Parameters:

  • version (Float)

    Required parameter: This is an enum value. If

  • feed_type (String)

    Required parameter: Specifies the product feed

  • wm_sec_access_token (String)

    Required parameter: (Required) The

  • wm_consumer_channel_type (String)

    Required parameter: A unique ID

  • wm_qos_correlation_id (String)

    Required parameter: (Required) A

  • wm_svc_name (String)

    Required parameter: (Required) Walmart Service

  • accept (String)

    Required parameter: TODO: type description here

Returns:



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/inventory_management_and_item_management_and_order_management_and_price_management/controllers/taxonomy_controller.rb', line 35

def taxonomy(version,
             feed_type,
             wm_sec_access_token,
             wm_consumer_channel_type,
             wm_qos_correlation_id,
             wm_svc_name,
             accept)
  @api_call
    .request(new_request_builder(HttpMethodEnum::GET,
                                 '/items/taxonomy',
                                 Server::DEFAULT)
               .query_param(new_parameter(version, key: 'version'))
               .query_param(new_parameter(feed_type, key: 'feedType'))
               .header_param(new_parameter(wm_sec_access_token, key: 'WM_SEC.ACCESS_TOKEN'))
               .header_param(new_parameter(wm_consumer_channel_type, key: 'WM_CONSUMER.CHANNEL.TYPE'))
               .header_param(new_parameter(wm_qos_correlation_id, key: 'WM_QOS.CORRELATION_ID'))
               .header_param(new_parameter(wm_svc_name, key: 'WM_SVC.NAME'))
               .header_param(new_parameter(accept, key: 'Accept')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(SuccessfulOperation51.method(:from_hash))
                .local_error('400',
                             'Bad Request',
                             ItemsTaxonomy400ErrorException)
                .local_error('404',
                             'Not Found',
                             ItemsTaxonomy404ErrorException))
    .execute
end