[OperationContract]
[SwaggerWcfTag("Catalog categories", false)]
[SwaggerWcfPath(null, null, null, null, null, false, null, Summary = "Returns the active pricelist-categories for a given country", Description = "Returns the list of active categories, along with their respective price adjustments, in the specified language (optional) and tree-order (optional):\n * Supported languages (optional): [English, French, Bulgarian] (when unspecified, defaults to English).\n * Order by options (optional): [DepthFirst, BreadthFirst] (when unspecified, no order is guaranteed).")]
[WebGet(UriTemplate = "/Pricelist/Active/Country/{countryCode}/All?language={language}&order={order}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
[SwaggerWcfResponse(StatusCode = HttpStatusCode.OK, Description = "Success")]
[SwaggerWcfResponse(StatusCode = HttpStatusCode.BadRequest, Description = "Invalid country/language and/or iteration option", Type = typeof(JsonErrorMessage))]
[SwaggerWcfResponse(StatusCode = HttpStatusCode.InternalServerError, Description = "An unexpected error occurred while processing the request.", Type = typeof(JsonErrorMessage))]
ActivePricelistCategoryContract[] GetActivePricelistForCountry(string countryCode, CategoryLanguage? language = CategoryLanguage.English, TreeIterationOrder? order = null)