// Generated by xsd compiler for ios/objective-c
// DO NOT CHANGE!

#import <Foundation/Foundation.h>
#import "PicoClassSchema.h"
#import "PicoPropertySchema.h"
#import "PicoConstants.h"
#import "PicoBindable.h"
#import "Trading_AbstractRequestType.h"



/**
 
 Retrieves the latest eBay category hierarchy for a given eBay site.
 Information returned for each category includes the category name
 and the unique ID for the category (unique within the eBay site for which
 categories are retrieved). A category ID is a required input when you list most items.
 
 
 @ingroup EBayAPIInterface
*/
@interface Trading_GetCategoriesRequestType : Trading_AbstractRequestType {

@private
    NSString *_categorySiteID;
    NSMutableArray *_categoryParent;
    NSNumber *_levelLimit;
    NSNumber *_viewAllNodes;

}


/**
 
 Specifies the eBay site for which to retrieve the category
 hierarchy.
 Use the numeric site code (e.g., 77 for eBay Germany).
 Only necessary if you want to retrieve category data
 for a site other than the site from which you are
 submitting the request.
 <br>
 <br>
 NOTE: If you are using the GetCategories call with eBay Motors, you
 must set the Site ID in the Request Header to 0, and then set
 the CategorySiteID to 100. These are both required fields when
 using GetCategories with eBay Motors.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *categorySiteID;

/**
 
 Specifies the ID of the highest-level category to return,
 along with its subcategories.
 If no parent category is specified, all categories are
 returned for the specified site. (Please do not pass a value of 0; zero (0) is an invalid value for CategoryParent.)
 To determine available category IDs, call GetCategories with
 no filters and use a DetailLevel value of ReturnAll.
 If you specify multiple parent categories, the hierarchy for
 each one is returned.
 
 
 entry type : NSString, wrapper for primitive string
*/

@property (nonatomic, retain) NSMutableArray *categoryParent;

/**
 
 Specifies the maximum depth of the category hierarchy to retrieve,
 where the top-level categories (meta-categories) are at level 1.
 Retrieves all category nodes with a category level less than or
 equal to this value.
 If not specified, retrieves categories at all applicable levels.
 As with all calls, the actual data returned will vary depending
 on how you configure other fields in the request
 (including DetailLevel).
 
 
 type : NSNumber, wrapper for primitive int
*/
@property (nonatomic, retain) NSNumber *levelLimit;

/**
 
 This flag controls whether all eBay categories (that satisfy input filters) are
 returned, or only leaf categories (you can only list items in leaf categories)
 are returned. The default value is 'true', so if this field is omitted, all eBay
 categories will be returned. If you only want to retrieve leaf categories,
 include this flag and set it to 'false'. The actual data returned will vary
 depending on how you configure other fields in the request.
 
 
 type : NSNumber, wrapper for primitive bool
*/
@property (nonatomic, retain) NSNumber *viewAllNodes;


@end
