The following JSON-RPC methods are supported (try these using the BackOfficeHandler test page):

Authenticate(cultureCode, email, password)
Authenticate a user across the MS ACL.
AuthenticateWithSessionID(cultureCode, email, password, remoteSessionID)
Authenticate a user across the MS ACL and with SessionID.
CreateUser(cultureCode, userName, password, email, passwordQuestion, passwordAnswer, emailActivation, profileData)
Create a new user
DeleteDesign(design)
Deletes a Design object
DeleteDesignById(designId)
Deletes a Design object
DeleteUser(username, deleteAllRelatedData)
Removes a user from the membership data source.
EmailFriend(cultureCode, fromEmail, toEmail, subject, emailMessage, imageData)
Sends an Email of the current design to a Friend
EmailFriendWithDesignURL(cultureCode, fromEmail, toEmail, subject, emailMessage, imageData, designURL)
Sends an Email of the current design to a Friend
FindByCultureCode(cultureCode)
Retrieves a List of Resources objects from the database by CultureCode
FindOptionsByOptionGroupUniqueLabel(cultureCode, optionGroupUniqueLabel)
Retrieves a list of options belonging to an option group.
FindProductsByProductCategoryNamespace(cultureCode, productCategoryNamespace, activeProductsOnly)
Retrieves a list of products belonging to a product category.
FormatCurrencyByCulture(dValue, cultureCode)
Set the current thread culture
GetAllOptionsByOptionGroup(cultureCode, optionGroupId)
Retrieves the List of options by option group
GetAllPresetRooms(cultureCode)
Retrieves all the available PresetRoom objects in the database
GetAllProductOptionFilters(cultureCode)
Retrieves all product option filters available.
GetBundleByUniqueLabel(bundleLabel)
This function will return the BundleDTO corresponding to the bundleLabel parameter
GetColorOptionsByOptionGroup(cultureCode, optionGroupId)
Retrieves the List of options by option group
GetDesign(designId)
Retrieves a particular design objects by Id
GetDesignItemsByUser(userId)
Retrieves a List of design item objects for a particular user
GetDesignSN(serialNumber)
Retrieves a particular design objects by serial number
GetDesignSummary(cultureCode, roomPlanData, detectBundles, detectPackages, fetchAttributes, groupFlags)
Will return the summary (with possible bundles and packaging) for the items included in the parsedRoomPlanData.
GetFilteredProducts(cultureCode, catalogViewId, productOptionFilterId, activeProductsOnly)
Retrieves all the products that match a particular P.O. filter and catalog View.
GetLoginName()
Return the UserName
GetMenuByUIContext(cultureCode, iUIContextID)
Retrieves the menu structure under a ui context id
GetMenuByUniqueLabel(cultureCode, uniqueLabel)
Retrieves the menu structure under a menu name
GetNbUserDesigns()
Return the number of design UserName
GetOptionByName(cultureCode, optionName)
Retrieves a particular option by Name
GetOptionGroup(cultureCode, optionGroupId)
Retrieves an option group object
GetOptionGroupByName(cultureCode, optionGroupName)
Retrieves an option group object
GetOptionGroupByUniqueLabelListWithAllOptions(cultureCode, optionGroupUniqueLabelList)
Retrieves the union of all optionGroups for a list of products
GetOptionGroupByUniqueLabelListWithCommonOptions(cultureCode, optionGroupUniqueLabelList)
Retrieves the intersection of all optionGroups for a list of products
GetOptionGroupsByDecorateItem(cultureCode, decorateItemId)
Retrieves the List of option group objects by the decorate item
GetOptionsByRGBCodeOrImageURL(cultureCode, RGBCode, imageURL, coveringProperty)
Retrieves the List of options/option by the option rgbcode or imageurl
GetPresetRoom(cultureCode, presetRoomId)
Retrieves a particular PresetRoom object
GetPresetRoomByName(cultureCode, presetRoomName)
Retrieves a particular PresetRoom object using the PresetRoomName
GetPresetRoomCategories(cultureCode)
Retrieves a list of the PresetRoomCategory objects available in the database
GetPresetRoomCategoryWithSubCategories(cultureCode, presetRoomCategoryId)
Retrieves a PresetRoomCategory object with the list of PresetRoomCategories that are under
GetPresetRoomsByCategory(cultureCode, categoryId)
Retrieves a list of the PresetRoomCategory objects and their related presetRooms
GetPresetRoomsByPresetRoomCategory(cultureCode, presetRoomCategoryId)
Retrieves a List of PresetRoom objects that are under to the requested category
GetProductAttributesByProduct(productId)
Retrieves a particular product attributes list.
GetProductByIdWithOptionGroups(cultureCode, productId)
Retrieves a product object with its option groups if exists.
GetProductByUniqueLabel(cultureCode, uniqueLabel)
Retrieves a product by its unique label.
GetProductsByUniqueLabelListWithAllFeatures(cultureCode, productUniqueLabelList)
Retrieves all the features for a list of products
GetProductsByUniqueLabelListWithCommonFeatures(cultureCode, productUniqueLabelList)
Retrieves the common features for a list of products
GetProductWithAttributesAndOptions(cultureCode, productId)
Retrieves the details of a product
GetProfileProperty(propertyName)
Retrieves a property from the stored user profile
GetResourcesByCultureCode(cultureCode, resourceType)
Retrieves a map of resources by Culture Code and Resource Type. (Note: if the resource type is null, filter will by by culture code only.)
GetRoomContextByPresetRoom(cultureCode, presetRoomId)
Retrieves a room context object for a particular preset room
GetRoomSelectorData()
Retrieves a list of the PresetRoomCategory objects and their related presetRooms
GetSavedDesignBySerialNumber(serialNumber)
Retrieves a particular design objects by its serial id.
GetSharedDesign(designId)
Retrieves a particular design objects by Id. This design must have been saved with the SharedDesign flag to ON
GetSubOptionGroups(cultureCode, optionId)
Retrieves the List of sub option groups linked to style option
GetUserProfile(username)
Gets a user's profile data
GetVisualOptionByUniqueLabel(cultureCode, optionUniqueLabel)
Retrieves a visual option by its unique label
GetWebSiteOwner(webSiteOwnerID)
This function will gather all the information needed to display who is the Web Site Owner (mainly used for Virtual Showroom). If Parameter webSiteOwnerID.IsNullOrEmpty is true, the function will return the first owner found. Returns a fully configured WebSiteOwnerDTO or null if an error occured or the ID was not found.
Logout(tokenToLogout)
This function will log-out the user and clear any cache related to the previous session.
ObjectFactory(objectType)
Gets an copy of an object
RecoverPassword(cultureCode, email)
Will reset and send the new password to the user's email
SaveDesign(design, largeImageData, thumbImageData)
Saves a Design object
SaveDesignSN(design, largeImageData, thumbImageData)
Saves a Design object, returns the serial number
SavePhysicalImage(imageData, dontUseTempFolder)
Saves an image object file
SaveSharedDesign(RP3DesignData, largeImageData, thumbImageData, presetRoomName)
Saves a shared Design object
SaveSharedDesignSN(RP3DesignData, largeImageData, thumbImageData, presetRoomName)
Saves a shared Design object, returns the serial number
SearchRetailCodeOrKeywords(cultureCode, searchMask, startSearchIndex, maxSearchresult, filter)
Retrieves the List of products by matching the exact retail code (SKU) or if not found, by looking through the product's keywords
SignOut()
Signs Out a user
system.about()
Returns a summary about the server implementation for display purposes.
system.listMethods()
Returns an array of method names implemented by this service.
system.version()
Returns the version server implementation using the major, minor, build and revision format.
UpdateUserProfile(username, profileData)
Updates information about a user in the data source.
ValidateToken(token, sessionid)
Validate if the token: ACTUALLY IN MOCKUP: must be adapt to External Provider

The following method(s) of this service are marked as idempotent and therefore safe for use with HTTP GET: