File Coverage

lib/eBay/API/XML/Call/GetSearchResultsExpress/GetSearchResultsExpressRequestType.pm
Criterion Covered Total %
statement 7 9 77.7
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 10 12 83.3


line stmt bran cond sub pod time code
1             #!/usr/bin/perl
2              
3             package eBay::API::XML::Call::GetSearchResultsExpress::GetSearchResultsExpressRequestType;
4              
5 1     1   1572 use strict;
  1         2  
  1         25  
6 1     1   5 use warnings;
  1         1  
  1         46  
7              
8             ##########################################################################
9             #
10             # Module: ............... eBay/API/XML
11             # File: ................. GetSearchResultsExpressRequestType.pm
12             # Generated by: ......... genEBayApiDataTypes.pl
13             # Last Generated: ....... 07/07/2008 17:42
14             # API Release Number: ... 571
15             #
16             ##########################################################################
17              
18             =head1 NAME
19              
20             eBay::API::XML::Call::GetSearchResultsExpress::GetSearchResultsExpressRequestType
21              
22             =head1 DESCRIPTION
23              
24             Please check this
25             Knowledge Base article
26             for updates on current issues with GetSearchResultsExpress.
27            
28             Retrieves brief details about active items that are listed on eBay Express, eBay
29             catalog products that have been used to pre-fill data in these items, and a
30             histogram that shows the distribution of items and catalog products across Express
31             departments, aisles, and/or product types.
32            
33             This call only returns Express data for the site associated with the site
34             ID that you specify in the request URL (for the SOAP API) or the X-EBAY-API-SITEID
35             header (for the XML API). For example, if you specify site ID 0, then data for
36             Express US is returned.
37            
38             Currently, this call is only supported for site ID 0 (Express US).
39            
40            
41             The Sandbox does not support GetSearchResultsExpress.
42            
43             You can configure the call to retrieve only the item data, only the catalog
44             product data, only the histogram, or any combination of these results. By default,
45             the call returns brief summaries of each.
46            
47             Item Results: For each item returned (if any), the response
48             includes a brief set of details, such as the item price (including shipping). You
49             can retrieve more or fewer details about each item by using the ItemDetails field.
50             To retrieve other details about a given item, use a call like GetSellerList or
51             GetItem.
52            
53             Catalog Product Results: For each eBay catalog product returned
54             (if any), the response includes a brief set of details, such as the minimum and
55             maximum price of listings that have been pre-filled based on that product. You can
56             retrieve more or fewer details about each product by using the ProductDetails
57             field.
58            
59             Histogram Results: Instead of grouping items by category, the
60             Express search engine groups items into domains. A domain is a
61             set of items to which Express can apply a common set of search rules. Express
62             supports three kinds of domains: Product types,
63             aisles, and departments, like a typical
64             department store. (The fact that we call these "domains" is not important to
65             buyers and sellers, but it can be helpful to understand the domain relationships
66             when you are working with the API.)
67            
68             Listings with similar properties are classified into product type domains. For
69             example, "DVDs & Movies" is a product type domain. Think of a product type as
70             a type of good or service that can be purchased and as a leaf domain (which cannot
71             be the parent of other domains).
72            
73             Note: An Express product type is
74             not the same as an eBay catalog product. Some Express product types are associated
75             with eBay catalog products, but other Express product types are not.
76            
77            
78             When multiple product types share a common theme, Express groups them into an
79             aisle or a department. For example, the Men's Jeans product type can be grouped
80             with Men's Pants into a Men's Clothing aisle. When multiple aisles share a common
81             theme, Express groups them into departments. For example, the Men's Clothing aisle
82             can be grouped with a Men's Accessories aisle to form an Apparel & Accessories
83             department. If no groups make sense, a product type can stand alone without being
84             grouped. For example, "DVDs & Movies" would not be grouped with other product
85             types like Men's Jeans, so "DVDs & Movies" has no parent aisle or department.
86             (From a user's perspective, this product type is elevated to look like a
87             department, but in the API it is still classified as a product type.) Similarly,
88             an aisle can stand alone without being grouped with other aisles into a
89             department.
90            
91             See the eBay Web Services guide link below for more information about departments, aisles, and product
92             types.

93            

94             This call returns a histogram that shows the number of items and catalog products
95             that were found in each department, aisle, and/or product type that matches your
96             search criteria.
97            
98             The domain names and groupings are subject to change. They are determined by the
99             Express search engine based on the items that are currently listed on Express as
100             well as historical buyer behavior. This means you need to call
101             GetSearchResultsExpress to determine the current domain names and their
102             hierarchical relationships.
103            
104             Note: A domain is a search notion
105             only. That is, items are not stored in domains on eBay, and domains are not
106             equivalent to eBay categories (although Express may choose to organize and name
107             some domains to match eBay categories).
108            
109             Search Tips:

110            
111            
  • Use either Query, ProductReferenceID, or the ExternalProductID fields
  • 112             to search for specific items and/or products. See the descriptions below for
    113             information about using these fields. (Only one of these query formats can be
    114             used per request.)
    115            
  • Use DepartmentName, AisleName, and/or ProductTypeName to browse or
  • 116             search within a particular domain. You can also specify the value "Express" in
    117             DepartmentName to retrieve a complete list of all available department, aisle,
    118             and product type names.
    119            
  • Use one or more filters like HighestPrice to refine the
  • 120             search.
    121            
  • Use sort options like ItemSort to control the order in which the
  • 122             results are returned.
    123            
  • Use pagination options like EntriesPerPage to control how many results
  • 124             to return at a time.
    125            
  • Use verbose controls like ItemDetails to specify the data to return
  • 126             within each result.
    127            
    128            

    The item results, catalog product results, and histogram results do not

    129             provide references to each other. That is, the items don't indicate which domains
    130             they were found in, and the histogram doesn't specify which items were counted.
    131             However, you can infer these relationships by modifying your search parameters.
    132             For example, once you determine which domains match your query, you can call
    133             GetSearchResultsExpress again to browse or search each of those domains to find
    134             out which items they contain.
    135            

    136            

    Please check this

    137             Knowledge Base article
    138             for updates on current issues with GetSearchResultsExpress.
    139            

    140              
    141              
    142              
    143             =head1 SYNOPSIS
    144              
    145             =cut
    146              
    147              
    148             =head1 INHERITANCE
    149              
    150             eBay::API::XML::Call::GetSearchResultsExpress::GetSearchResultsExpressRequestType inherits from the L class
    151              
    152             =cut
    153              
    154 1     1   34 use eBay::API::XML::RequestDataType;
      0            
      0            
    155             our @ISA = ("eBay::API::XML::RequestDataType");
    156              
    157             use eBay::API::XML::DataType::AffiliateTrackingDetailsType;
    158             use eBay::API::XML::DataType::AmountType;
    159             use eBay::API::XML::DataType::UserIDType;
    160             use eBay::API::XML::DataType::Enum::ConditionSelectionCodeType;
    161             use eBay::API::XML::DataType::Enum::ExpressDetailLevelCodeType;
    162             use eBay::API::XML::DataType::Enum::ExpressHistogramSortCodeType;
    163             use eBay::API::XML::DataType::Enum::ExpressItemSortCodeType;
    164             use eBay::API::XML::DataType::Enum::ExpressProductSortCodeType;
    165             use eBay::API::XML::DataType::Enum::ExternalProductCodeType;
    166              
    167              
    168             my @gaProperties = ( [ 'AffiliateTrackingDetails', 'ns:AffiliateTrackingDetailsType', ''
    169             ,'eBay::API::XML::DataType::AffiliateTrackingDetailsType', '1' ]
    170             , [ 'AisleName', 'xs:string', '', '', '' ]
    171             , [ 'Condition', 'ns:ConditionSelectionCodeType', ''
    172             ,'eBay::API::XML::DataType::Enum::ConditionSelectionCodeType', '' ]
    173             , [ 'DepartmentName', 'xs:string', '', '', '' ]
    174             , [ 'EntriesPerPage', 'xs:int', '', '', '' ]
    175             , [ 'ExternalProductIDType', 'ns:ExternalProductCodeType', ''
    176             ,'eBay::API::XML::DataType::Enum::ExternalProductCodeType', '' ]
    177             , [ 'ExternalProductIDValue', 'xs:string', '', '', '' ]
    178             , [ 'HighestPrice', 'ns:AmountType', ''
    179             ,'eBay::API::XML::DataType::AmountType', '1' ]
    180             , [ 'HistogramDetails', 'ns:ExpressDetailLevelCodeType', ''
    181             ,'eBay::API::XML::DataType::Enum::ExpressDetailLevelCodeType', '' ]
    182             , [ 'HistogramSort', 'ns:ExpressHistogramSortCodeType', ''
    183             ,'eBay::API::XML::DataType::Enum::ExpressHistogramSortCodeType', '' ]
    184             , [ 'ItemDetails', 'ns:ExpressDetailLevelCodeType', ''
    185             ,'eBay::API::XML::DataType::Enum::ExpressDetailLevelCodeType', '' ]
    186             , [ 'ItemSort', 'ns:ExpressItemSortCodeType', ''
    187             ,'eBay::API::XML::DataType::Enum::ExpressItemSortCodeType', '' ]
    188             , [ 'LowestPrice', 'ns:AmountType', ''
    189             ,'eBay::API::XML::DataType::AmountType', '1' ]
    190             , [ 'PageNumber', 'xs:int', '', '', '' ]
    191             , [ 'PostalCode', 'xs:string', '', '', '' ]
    192             , [ 'ProductDetails', 'ns:ExpressDetailLevelCodeType', ''
    193             ,'eBay::API::XML::DataType::Enum::ExpressDetailLevelCodeType', '' ]
    194             , [ 'ProductReferenceID', 'xs:long', '', '', '' ]
    195             , [ 'ProductSort', 'ns:ExpressProductSortCodeType', ''
    196             ,'eBay::API::XML::DataType::Enum::ExpressProductSortCodeType', '' ]
    197             , [ 'ProductTypeName', 'xs:string', '', '', '' ]
    198             , [ 'Query', 'xs:string', '', '', '' ]
    199             , [ 'SellerID', 'ns:UserIDType', ''
    200             ,'eBay::API::XML::DataType::UserIDType', '1' ]
    201             );
    202             push @gaProperties, @{eBay::API::XML::RequestDataType::getPropertiesList()};
    203              
    204             my @gaAttributes = (
    205             );
    206             push @gaAttributes, @{eBay::API::XML::RequestDataType::getAttributesList()};
    207              
    208             =head1 Subroutines:
    209              
    210             =cut
    211              
    212             sub new {
    213             my $classname = shift;
    214             my %args = @_;
    215             my $self = $classname->SUPER::new(%args);
    216             return $self;
    217             }
    218              
    219             sub isScalar {
    220             return 0;
    221             }
    222              
    223              
    224              
    225             =head2 setAffiliateTrackingDetails()
    226              
    227             Container for affiliate tags.
    228             If you use affiliate tags, it is possible to get affiliate commissions
    229             based on calls made by your application.
    230             (See the eBay Partner Network
    231             for information about commissions.)
    232             Affiliate tags enable the tracking of user activity.
    233             You can use child tags of AffiliateTrackingDetails if you want
    234             call output to include a string, in
    235             ItemArray.Item.ListingDetails.ViewItemURL, that includes
    236             affiliate tracking information.
    237             For GetSearchResultsExpress, the ViewItemURL field is returned only if you specify AffiliateTrackingDetails in the request.
    238              
    239             SeeLink: URL: http://developer.ebay.com/DevZone/XML/docs/WebHelp/index.htm?context=eBay_XML_API&topic=AffiliateTrackingConcepts
    240             Title: Affiliate Tracking Concepts
    241              
    242             RequiredInput: No
    243             # Argument: 'ns:AffiliateTrackingDetailsType'
    244              
    245             =cut
    246              
    247             sub setAffiliateTrackingDetails {
    248             my $self = shift;
    249             $self->{'AffiliateTrackingDetails'} = shift
    250             }
    251              
    252             =head2 getAffiliateTrackingDetails()
    253              
    254             # Returns: 'ns:AffiliateTrackingDetailsType'
    255              
    256             =cut
    257              
    258             sub getAffiliateTrackingDetails {
    259             my $self = shift;
    260             return $self->_getDataTypeInstance( 'AffiliateTrackingDetails'
    261             ,'eBay::API::XML::DataType::AffiliateTrackingDetailsType');
    262             }
    263              
    264              
    265             =head2 setAisleName()
    266              
    267             An aisle is a grouping of product types that share a common theme. This
    268             filter limits the search to the specified Express aisle. If not specified,
    269             this filter is ignored by the search engine.
    270            
    271             See DepartmentName for information about how to retrieve all available
    272             department, aisle, and product type names. The valid aisle names are
    273             returned in the Histogram.Department.Aisle.DomainDetails.Name
    274             fields.
    275            
    276             At least one of Query, ProductReferenceID, ExternalProductIDValue (and
    277             Type), SellerID, DepartmentName, AisleName, or ProductTypeName is required.
    278             Optionally, both DepartmentName and AisleName can be specified in the same
    279             request. In this case, the search engine treats the combination as a fully
    280             qualified aisle name (and it returns an error if the combination is
    281             invalid).
    282              
    283             MaxLength: 200
    284              
    285             RequiredInput: Conditionally
    286             # Argument: 'xs:string'
    287              
    288             =cut
    289              
    290             sub setAisleName {
    291             my $self = shift;
    292             $self->{'AisleName'} = shift
    293             }
    294              
    295             =head2 getAisleName()
    296              
    297             # Returns: 'xs:string'
    298              
    299             =cut
    300              
    301             sub getAisleName {
    302             my $self = shift;
    303             return $self->{'AisleName'};
    304             }
    305              
    306              
    307             =head2 setCondition()
    308              
    309             A filter that limits the results by the item condition. If not specified,
    310             the default is New. If the item is listed in a category that does not
    311             normally require the condition to be specified (like Event Tickets), the
    312             item is returned regardless of this condition setting.
    313              
    314             Default: New
    315              
    316             RequiredInput: No
    317             # Argument: 'ns:ConditionSelectionCodeType'
    318              
    319             =cut
    320              
    321             sub setCondition {
    322             my $self = shift;
    323             $self->{'Condition'} = shift
    324             }
    325              
    326             =head2 getCondition()
    327              
    328             # Returns: 'ns:ConditionSelectionCodeType'
    329              
    330             =cut
    331              
    332             sub getCondition {
    333             my $self = shift;
    334             return $self->{'Condition'};
    335             }
    336              
    337              
    338             =head2 setDepartmentName()
    339              
    340             A department is a grouping of aisles and/or product types that share a
    341             common theme. This filter limits the search to the specified Express
    342             department. If not specified, this filter is ignored by the search
    343             engine.
    344            
    345             You can specify the value "Express" (without quotes) as the department
    346             name to retrieve all departments on Express. With this use case, the
    347             ItemArray and ProductArray nodes aren't returned. The valid department
    348             names are returned in the Histogram.Department.DomainDetails.Name fields.
    349             When DepartmentName=Express, you can only specify HistogramSort and/or
    350             HistogramDetails. Set HistogramDetail to Fine to also retrieve all aisles
    351             and product types. Do not specify ItemDetails or ProductDetails at all in
    352             the request. (Setting the values to None will return an error). Also do
    353             not specify any other query, pagination, price, or sorting fields in the
    354             request.
    355            
    356             The Query, ProductReferenceID, and ExternalProductID query formats are
    357             mutually exclusive. That is, they cannot be used together in the same
    358             request. At least one of Query, ProductReferenceID, ExternalProductIDValue
    359             (and Type), SellerID, DepartmentName, AisleName, or ProductTypeName is
    360             required.
    361              
    362             MaxLength: 200
    363              
    364             RequiredInput: No
    365             # Argument: 'xs:string'
    366              
    367             =cut
    368              
    369             sub setDepartmentName {
    370             my $self = shift;
    371             $self->{'DepartmentName'} = shift
    372             }
    373              
    374             =head2 getDepartmentName()
    375              
    376             # Returns: 'xs:string'
    377              
    378             =cut
    379              
    380             sub getDepartmentName {
    381             my $self = shift;
    382             return $self->{'DepartmentName'};
    383             }
    384              
    385              
    386             =head2 setEntriesPerPage()
    387              
    388             The maximum number of entries to return in the ProductArray or ItemArray.
    389             That is, if you specify 10, then up to 10 products and up to 10 items are
    390             returned in the current call's response.
    391            
    392             If the number of entries found is less than the value specified in
    393             EntriesPerPage, then that number of entries is returned instead. For
    394             example, if you specify 10, Express might only return 4 products and 9
    395             items (if no more matches are found). If not specified, the default is 15.
    396              
    397             Max: 200
    398             Default: 15
    399             Min: 1
    400              
    401             RequiredInput: No
    402             # Argument: 'xs:int'
    403              
    404             =cut
    405              
    406             sub setEntriesPerPage {
    407             my $self = shift;
    408             $self->{'EntriesPerPage'} = shift
    409             }
    410              
    411             =head2 getEntriesPerPage()
    412              
    413             # Returns: 'xs:int'
    414              
    415             =cut
    416              
    417             sub getEntriesPerPage {
    418             my $self = shift;
    419             return $self->{'EntriesPerPage'};
    420             }
    421              
    422              
    423             =head2 setExternalProductIDType()
    424              
    425             The combination of ExternalProductIDType and ExternalProductIDValue create
    426             a query that only retrieves items that were listed with
    427             Pre-filled Item Information in categories that support
    428             ISBN or UPC codes (such as Books, DVDs and Movies,
    429             Music, and Video Games).
    430             ExternalProductIDType identifies which type of code you are
    431             searching for. If specified, also specify the ISBN or UPC
    432             code number in ExternalProductIDValue.
    433            
    434             The Query, ProductReferenceID, and ExternalProductID query formats
    435             are mutually exclusive. That is, they cannot be used together in the same request. At least one of Query, ProductReferenceID,
    436             ExternalProductIDValue (and Type), SellerID, DepartmentName,
    437             AisleName, or ProductTypeName is required.
    438              
    439             RequiredInput: Conditionally
    440             OnlyTheseValues: ISBN, UPC
    441             # Argument: 'ns:ExternalProductCodeType'
    442              
    443             =cut
    444              
    445             sub setExternalProductIDType {
    446             my $self = shift;
    447             $self->{'ExternalProductIDType'} = shift
    448             }
    449              
    450             =head2 getExternalProductIDType()
    451              
    452             # Returns: 'ns:ExternalProductCodeType'
    453              
    454             =cut
    455              
    456             sub getExternalProductIDType {
    457             my $self = shift;
    458             return $self->{'ExternalProductIDType'};
    459             }
    460              
    461              
    462             =head2 setExternalProductIDValue()
    463              
    464             An ISBN or UPC code (depending on ExternalProductIDType) for the eBay
    465             catalog product that you are searching for. Only valid when
    466             ExternalProductIDType is specified.
    467              
    468             MaxLength: 15
    469              
    470             RequiredInput: Conditionally
    471             # Argument: 'xs:string'
    472              
    473             =cut
    474              
    475             sub setExternalProductIDValue {
    476             my $self = shift;
    477             $self->{'ExternalProductIDValue'} = shift
    478             }
    479              
    480             =head2 getExternalProductIDValue()
    481              
    482             # Returns: 'xs:string'
    483              
    484             =cut
    485              
    486             sub getExternalProductIDValue {
    487             my $self = shift;
    488             return $self->{'ExternalProductIDValue'};
    489             }
    490              
    491              
    492             =head2 setHighestPrice()
    493              
    494             A filter that limits the results to items with a SellingStatus.CurrentPrice
    495             value lower than this value. For example, if you specify 10.01, the results
    496             will include items with a CurrentPrice of 10.00 or lower. Use without
    497             LowestPrice to specify a maximum price, or use with LowestPrice to define a
    498             price range that bounds the results. Must be higher than LowestPrice if both
    499             are specified. If not specified, no maximum price filter is applied to the
    500             query.
    501            
    502             You can specify any double value, but in practice the highest price of any
    503             item on Express is USD 10000 for Express US and (in the future) EUR 10000
    504             for Express Germany. If you specify a value of 0.0 or lower, this filter is
    505             ignored. See "Data Types" in the eBay Web Services Guide for information
    506             about specifying double values.
    507            
    508             Does not control the order in which items are returned. (To sort by highest
    509             total price, use ItemSort.)
    510              
    511             Max: Default: Min:
    512             RequiredInput: Conditionally
    513             # Argument: 'ns:AmountType'
    514              
    515             =cut
    516              
    517             sub setHighestPrice {
    518             my $self = shift;
    519             $self->{'HighestPrice'} = shift
    520             }
    521              
    522             =head2 getHighestPrice()
    523              
    524             # Returns: 'ns:AmountType'
    525              
    526             =cut
    527              
    528             sub getHighestPrice {
    529             my $self = shift;
    530             return $self->_getDataTypeInstance( 'HighestPrice'
    531             ,'eBay::API::XML::DataType::AmountType');
    532             }
    533              
    534              
    535             =head2 setHistogramDetails()
    536              
    537             Controls the amount of statistical data to return in the response. If not
    538             specified, the default is Coarse.
    539            
    540             This setting is not a filter that limits the search; it only configures
    541             how much detail to retrieve in the resulting histogram. This setting has
    542             no effect on the product or item details.
    543              
    544             Default: Coarse
    545              
    546             RequiredInput: No
    547             # Argument: 'ns:ExpressDetailLevelCodeType'
    548              
    549             =cut
    550              
    551             sub setHistogramDetails {
    552             my $self = shift;
    553             $self->{'HistogramDetails'} = shift
    554             }
    555              
    556             =head2 getHistogramDetails()
    557              
    558             # Returns: 'ns:ExpressDetailLevelCodeType'
    559              
    560             =cut
    561              
    562             sub getHistogramDetails {
    563             my $self = shift;
    564             return $self->{'HistogramDetails'};
    565             }
    566              
    567              
    568             =head2 setHistogramSort()
    569              
    570             Specifies the order of the data in the histogram (if any). Controls the
    571             way the histogram data is organized in the response (not the details to
    572             return). If not specified, the default sort order is ItemCount.
    573            
    574             This option has no effect on how item or product results are sorted.
    575             Histogram, item, and product results are sorted independently.
    576            
    577             Note: If you want to sort the results by criteria that eBay has not
    578             defined, retrieve the desired histogram data and then sort the results
    579             locally in your application.
    580              
    581             Default: ItemCount
    582              
    583             RequiredInput: No
    584             # Argument: 'ns:ExpressHistogramSortCodeType'
    585              
    586             =cut
    587              
    588             sub setHistogramSort {
    589             my $self = shift;
    590             $self->{'HistogramSort'} = shift
    591             }
    592              
    593             =head2 getHistogramSort()
    594              
    595             # Returns: 'ns:ExpressHistogramSortCodeType'
    596              
    597             =cut
    598              
    599             sub getHistogramSort {
    600             my $self = shift;
    601             return $self->{'HistogramSort'};
    602             }
    603              
    604              
    605             =head2 setItemDetails()
    606              
    607             Selects the set of fields to retrieve for each item that matches the
    608             query. If not specified, the default is Coarse.
    609            
    610             This setting is not a filter that limits the search; it only configures
    611             which fields to retrieve for each item found. This setting has no effect
    612             on the histogram or product details.
    613              
    614             Default: Coarse
    615              
    616             RequiredInput: No
    617             # Argument: 'ns:ExpressDetailLevelCodeType'
    618              
    619             =cut
    620              
    621             sub setItemDetails {
    622             my $self = shift;
    623             $self->{'ItemDetails'} = shift
    624             }
    625              
    626             =head2 getItemDetails()
    627              
    628             # Returns: 'ns:ExpressDetailLevelCodeType'
    629              
    630             =cut
    631              
    632             sub getItemDetails {
    633             my $self = shift;
    634             return $self->{'ItemDetails'};
    635             }
    636              
    637              
    638             =head2 setItemSort()
    639              
    640             Specifies the order in which listings (if any) are returned in the result
    641             set. If not specified, the items are sorted by relevance (as determined by
    642             eBay). If you choose to sort by total cost, a PostalCode must also be
    643             specified (so that eBay can calculate the shipping cost as part of the
    644             total cost for each item).
    645            
    646             Controls the way the data is organized in the response (not the details to
    647             return).
    648            
    649             This option has no effect on how histogram or product results are sorted.
    650             Histogram, item, and product results are sorted independently.
    651            
    652             Note: If you want to sort the results by criteria that eBay has not
    653             defined, retrieve all available pages and then sort the results locally in
    654             your application.
    655              
    656             Default: Relevance
    657              
    658             RequiredInput: No
    659             # Argument: 'ns:ExpressItemSortCodeType'
    660              
    661             =cut
    662              
    663             sub setItemSort {
    664             my $self = shift;
    665             $self->{'ItemSort'} = shift
    666             }
    667              
    668             =head2 getItemSort()
    669              
    670             # Returns: 'ns:ExpressItemSortCodeType'
    671              
    672             =cut
    673              
    674             sub getItemSort {
    675             my $self = shift;
    676             return $self->{'ItemSort'};
    677             }
    678              
    679              
    680             =head2 setLowestPrice()
    681              
    682             A filter that limits the results to items with a
    683             SellingStatus.CurrentPrice value equal to or higher than this value. For
    684             example, if you specify 6.00, the results will include items with a
    685             CurrentPrice of 6.00 or higher. If specified, HighestPrice must also be
    686             specified; otherwise, the lowest price filter is ignored. Must be lower
    687             than HighestPrice. If not specified or if the value is less than 0.0, no
    688             minimum price filter is applied to the query.
    689            
    690             You can specify any double value, but in practice the highest price of any
    691             item on Express is USD 10000 for Express US and (in the future) EUR 10000
    692             for Express Germany. See "Data Types" in the eBay Web Services Guide for
    693             information about specifying double values .
    694            
    695             Does not control the order in which items are returned. (To sort by lowest
    696             total price, use ItemSort.)
    697              
    698             Max: Default: Min:
    699             RequiredInput: No
    700             # Argument: 'ns:AmountType'
    701              
    702             =cut
    703              
    704             sub setLowestPrice {
    705             my $self = shift;
    706             $self->{'LowestPrice'} = shift
    707             }
    708              
    709             =head2 getLowestPrice()
    710              
    711             # Returns: 'ns:AmountType'
    712              
    713             =cut
    714              
    715             sub getLowestPrice {
    716             my $self = shift;
    717             return $self->_getDataTypeInstance( 'LowestPrice'
    718             ,'eBay::API::XML::DataType::AmountType');
    719             }
    720              
    721              
    722             =head2 setPageNumber()
    723              
    724             Specifies the number of the page of data to return in the current call. If
    725             not specified, the default is 1 (the first page).
    726              
    727             Max: 90
    728             Default: 1
    729             Min: 1
    730              
    731             RequiredInput: No
    732             # Argument: 'xs:int'
    733              
    734             =cut
    735              
    736             sub setPageNumber {
    737             my $self = shift;
    738             $self->{'PageNumber'} = shift
    739             }
    740              
    741             =head2 getPageNumber()
    742              
    743             # Returns: 'xs:int'
    744              
    745             =cut
    746              
    747             sub getPageNumber {
    748             my $self = shift;
    749             return $self->{'PageNumber'};
    750             }
    751              
    752              
    753             =head2 setPostalCode()
    754              
    755             Postal code of the buyer. For the US site, this is a 5-digit zip code.
    756             (Other sites may support longer alphanumeric values in the future.) The
    757             postal code enables Express to calculate the item's default shipping cost
    758             based on the buyer's postal code, the postal code defined on the item, and
    759             the cost of the default shipping service that the seller specified in the
    760             listing. The default shipping cost is returned in the
    761             Item.ShippingDetails.DefaultShippingCost field. If not specified, items
    762             with calculated shipping will return an
    763             Item.ShippingDetails.ShippingRateErrorMessage string that indicates that a
    764             postal code is needed to calculate shipping.
    765            
    766             Required if ItemSort is set to LowestTotalCost or HighestTotalCost
    767             (because the total cost calculation depends on the shipping cost
    768             calculation).
    769            
    770             This is not a query or filter, so it has no effect on which items or
    771             products are returned.
    772              
    773             MaxLength: 5
    774              
    775             RequiredInput: Conditionally
    776             # Argument: 'xs:string'
    777              
    778             =cut
    779              
    780             sub setPostalCode {
    781             my $self = shift;
    782             $self->{'PostalCode'} = shift
    783             }
    784              
    785             =head2 getPostalCode()
    786              
    787             # Returns: 'xs:string'
    788              
    789             =cut
    790              
    791             sub getPostalCode {
    792             my $self = shift;
    793             return $self->{'PostalCode'};
    794             }
    795              
    796              
    797             =head2 setProductDetails()
    798              
    799             Selects the set of fields to retrieve for each catalog product that
    800             matches the query. If not specified, the default is Coarse.
    801            
    802             This setting is not a filter that limits the search; it only configures
    803             which fields to retrieve for each product found. This setting has no
    804             effect on the histogram or item details.
    805              
    806             Default: Coarse
    807              
    808             RequiredInput: No
    809             # Argument: 'ns:ExpressDetailLevelCodeType'
    810              
    811             =cut
    812              
    813             sub setProductDetails {
    814             my $self = shift;
    815             $self->{'ProductDetails'} = shift
    816             }
    817              
    818             =head2 getProductDetails()
    819              
    820             # Returns: 'ns:ExpressDetailLevelCodeType'
    821              
    822             =cut
    823              
    824             sub getProductDetails {
    825             my $self = shift;
    826             return $self->{'ProductDetails'};
    827             }
    828              
    829              
    830             =head2 setProductReferenceID()
    831              
    832             The global reference ID for an eBay catalog product. eBay catalog products
    833             provide stock information that sellers can use to pre-fill Item Specifics
    834             and other listing details. Use this query to retrieve basic details about
    835             the catalog product (returned in ProductArray) along with items (in
    836             ItemArray) that were
    837             listed with any version of the product.
    838            
    839             To determine valid reference IDs, call GetSearchResultsExpress without
    840             using this value. The IDs that match the query (if any) are returned in
    841             ProductArray.Product.ProductReferenceID fields.
    842            
    843             Note:
    844             This value is not the same as the ProductID used in AddItem and related calls. A ProductID represents a particular version
    845             of a catalog product, which is associated with a particular set of
    846             Item Specifics and other details. A ProductReferenceID is a more generic
    847             or global reference to a catalog product, which is useful for buy-side searching. One ProductReferenceID can be associated with multiple ProductIDs.
    848            
    849             The Query, ProductReferenceID, and ExternalProductID query formats are
    850             mutually exclusive. That is, they cannot be used together in the same
    851             request. At least one of Query, ProductReferenceID, ExternalProductIDValue
    852             (and Type), SellerID, DepartmentName, AisleName, or ProductTypeName is
    853             required.
    854            
    855             As of mid-2008, some sites (such as eBay US, Germany, Austria, and Switzerland) are
    856             updating, replacing, deleting, or merging some products (as a result of migrating from one
    857             catalog data provider to another).
    858             If you specify one of these products, the call may return a warning,
    859             or it may return an error if the product has been deleted.
    860              
    861             Max: Default: Min:
    862             RequiredInput: Conditionally
    863             # Argument: 'xs:long'
    864              
    865             =cut
    866              
    867             sub setProductReferenceID {
    868             my $self = shift;
    869             $self->{'ProductReferenceID'} = shift
    870             }
    871              
    872             =head2 getProductReferenceID()
    873              
    874             # Returns: 'xs:long'
    875              
    876             =cut
    877              
    878             sub getProductReferenceID {
    879             my $self = shift;
    880             return $self->{'ProductReferenceID'};
    881             }
    882              
    883              
    884             =head2 setProductSort()
    885              
    886             Specifies the order in which Express products are returned in a result
    887             set. If not specified, the products are sorted by sales rank (bestselling
    888             first).
    889            
    890             This option has no effect on how histogram or item results are sorted.
    891             Histogram, item, and product results are sorted independently.
    892            
    893             Note: If you want to sort the results by criteria that eBay has not
    894             defined, retrieve all available pages and then sort the results locally in
    895             your application.
    896            
    897             Controls the way the data is organized in the response (not the details to
    898             return).
    899              
    900             Default: SalesRank
    901              
    902             RequiredInput: No
    903             # Argument: 'ns:ExpressProductSortCodeType'
    904              
    905             =cut
    906              
    907             sub setProductSort {
    908             my $self = shift;
    909             $self->{'ProductSort'} = shift
    910             }
    911              
    912             =head2 getProductSort()
    913              
    914             # Returns: 'ns:ExpressProductSortCodeType'
    915              
    916             =cut
    917              
    918             sub getProductSort {
    919             my $self = shift;
    920             return $self->{'ProductSort'};
    921             }
    922              
    923              
    924             =head2 setProductTypeName()
    925              
    926             A product type is a type of good or service that can be purchased. This
    927             filter limits the search to the specified Express product type. If not
    928             specified, this filter is ignored by the search engine.
    929            
    930             Note: Express product types are not eBay catalog
    931             products. This field does not support eBay catalog product names or
    932             IDs.
    933            
    934             See DepartmentName for information about how to retrieve all available
    935             department, aisle, and product type names. The valid product type names
    936             are returned in Histogram.Department.Aisle.ProductType.DomainDetails.Name
    937             fields.
    938            
    939             Optionally, DepartmentName and/or AisleName can be specified in the same
    940             request with ProductTypeName. In this case, the search engine treats the
    941             combination as a fully qualified product type name (and it returns an
    942             error if the combination is invalid).
    943              
    944             MaxLength: 200
    945              
    946             RequiredInput: No
    947             # Argument: 'xs:string'
    948              
    949             =cut
    950              
    951             sub setProductTypeName {
    952             my $self = shift;
    953             $self->{'ProductTypeName'} = shift
    954             }
    955              
    956             =head2 getProductTypeName()
    957              
    958             # Returns: 'xs:string'
    959              
    960             =cut
    961              
    962             sub getProductTypeName {
    963             my $self = shift;
    964             return $self->{'ProductTypeName'};
    965             }
    966              
    967              
    968             =head2 setQuery()
    969              
    970             A free-text query that retrieves items, information about eBay catalog
    971             products that were used to list the items, and/or applicable domain
    972             details. For a quick, targeted search, use keywords that best fit the item
    973             you're looking for. You can also search by brand name or descriptive
    974             features. The search engine checks all specified keywords against the item
    975             title, description, eBay category, Item Specifics, and/or Pre-filled Item
    976             Information. (Express does not necessarily check all Item Specifics
    977             defined on the item.) The exact combination of fields that are checked for
    978             any given set of keywords varies by a number of factors that are not
    979             disclosed in this documentation.
    980            
    981             Specify at least two characters when you use Query. If you specify
    982             multiple words, AND logic is used. The keywords can be specified any
    983             order. The words "and" and "or" are treated like any other word. Only use
    984             "and", "or", or "the" if you are searching for listings containing these
    985             words.
    986            
    987             You can control AND or OR logic by including certain modifiers. Wildcards
    988             (e.g., *) are also supported. Be careful when using spaces before or after
    989             modifiers and wildcards (+, -, or *). These are the same modifiers that
    990             GetSearchResults supports. See "Searching by Keywords" in the eBay Web
    991             Services Guide for a list of valid modifiers and examples. Modifiers do
    992             not count in the 2-character minimum.
    993            
    994            
    995             Alternatively, you can specify an item ID to retrieve a specific item's
    996             Express search details. To search by ISBN or UPC, use
    997             ExternalProductIDType and ExternalProductIDValue instead.
    998            
    999             The Query, ProductReferenceID, and ExternalProductID query formats are
    1000             mutually exclusive. That is, they cannot be used together in the same
    1001             request. At least one of Query, ProductReferenceID, ExternalProductIDValue
    1002             (and Type), SellerID, DepartmentName, AisleName, or ProductTypeName is
    1003             required.
    1004              
    1005             MaxLength: 350
    1006              
    1007             RequiredInput: Conditionally
    1008             # Argument: 'xs:string'
    1009              
    1010             =cut
    1011              
    1012             sub setQuery {
    1013             my $self = shift;
    1014             $self->{'Query'} = shift
    1015             }
    1016              
    1017             =head2 getQuery()
    1018              
    1019             # Returns: 'xs:string'
    1020              
    1021             =cut
    1022              
    1023             sub getQuery {
    1024             my $self = shift;
    1025             return $self->{'Query'};
    1026             }
    1027              
    1028              
    1029             =head2 setSellerID()
    1030              
    1031             A filter that limits the search to a particular seller's listings that are
    1032             included on Express. Retrieves all of the seller's eligible items, without
    1033             consolidating (deduping) similar items into single representative results.
    1034             If specified, you can only search within one seller's listings per call.
    1035             (It is not possible to exclude a particular seller's listings from the
    1036             search.) If not specified, the engine searches across all listings on
    1037             Express. If the seller has no items listed on Express, no results are
    1038             returned.
    1039              
    1040             RequiredInput: No
    1041             # Argument: 'ns:UserIDType'
    1042              
    1043             =cut
    1044              
    1045             sub setSellerID {
    1046             my $self = shift;
    1047             $self->{'SellerID'} = shift
    1048             }
    1049              
    1050             =head2 getSellerID()
    1051              
    1052             # Returns: 'ns:UserIDType'
    1053              
    1054             =cut
    1055              
    1056             sub getSellerID {
    1057             my $self = shift;
    1058             return $self->_getDataTypeInstance( 'SellerID'
    1059             ,'eBay::API::XML::DataType::UserIDType');
    1060             }
    1061              
    1062              
    1063              
    1064              
    1065              
    1066             ## Attribute and Property lists
    1067             sub getPropertiesList {
    1068             my $self = shift;
    1069             return \@gaProperties;
    1070             }
    1071              
    1072             sub getAttributesList {
    1073             my $self = shift;
    1074             return \@gaAttributes;
    1075             }
    1076              
    1077              
    1078              
    1079             1;