Magelia WebStore

Client API Documentation

This page lists the methods of the Magelia client API for Yourcegid Retail WebStore version 3.0, which includes minor changes with the Client API for version 2.6. By designing this API, Magelia decided to create a reduced set of powerful methods in order to facilitate the work for developers. This API implemented in the Yourcegid Retail WebStore Client library NuGet package, eases the project set-up, and start developing your e-commerce store in minutes. 


To benefit from this API, please download and install the Yourcegid Retail WebStore Client library NuGet package available here http://www.nuget.org/packages/Magelia.Webstore.Client and run the following command in the Package Manager Console PM>Install-Package Magelia.Webstore.Client.


The Yourcegid Retail WebStore Client API is divided in five main areas:

Catalog and products service client

The catalog and products service client enable you to retrieve catalog data, products data including prices and dynamic data, categories, brands, suppliers, etc.  

In order to create a CatalogServiceClient, simply call the GetCatalog method provided by the WeStoreContext object using the parameters described below.  

The instance returned by the GetCatalog method allows you to make requests against the catalogs data model through services using LINQ queries. If you are not familiar with LINQ, please refer to the following documentation: http://msdn.microsoft.com/en-us/library/bb397926.aspx.

TCatalogServiceClient GetCatalogClient(
    ICatalogContext catalogContext
)

Creates the appropriate CatalogServiceClient instance regarding catalogContext parameters

ICatalogContext catalogContext
Catalog context such as CurrencyId, CultureId, CountryId, RegionId and ZipCode to create the appropriate CatalogServiceClient instance.
TCatalogServiceClient GetCatalogClient(
    Int32? cultureId = null, 
    Int32? currencyId = null, 
    Int32? countryId = null, 
    Guid? regionId = null, 
    String zipCode = null
)

Creates the appropriate CatalogServiceClient instance regarding contextual parameters

Int32? cultureId
Identifier of the culture that will be used to localize information. If not specified, the default store culture will be used.
Int32? currencyId
Identifier of the currency that will be used to query prices. If not specified, the default store currency wil be used.
Int32? countryId
Identifier of the country that will be used to define available catalogs. If not specified, the default country if the store will be used.
Guid? regionId
Identified of the region that will be used to define available catalogs.
String zipCode
Zip code that will be used to define available catalogs.

Store service client

IEnumerable<Country> GetAllCountries(
    Int32 cultureId
)

Retrieves all the countries in a given language, which are defined at the platform level (used for address management).

Int32 cultureId
Culture identifier used to localize countries names.
return IEnumerable<Country>
A list of countries.
IEnumerable<ProductType> GetAllProductTypes(
    Int32 cultureId
)

Retrieves all the product types, which are available for the stores (used for client side constants generation).

Int32 cultureId
Culture identifier used to localize product types names and attributes.
return IEnumerable<ProductType>
A list of product types.
StoreContext GetContext(
    Nullable<Int32> cultureId
)

Retrieves contexual information relative to the store for the specified culture.

Nullable<Int32> cultureId
Culture used for localized information. If null, default culture of the store will be used.
return StoreContext
Structure containing the following information :
  • Countries available for delivery that have at least one shipping rate.
  • Cultures (country and language or languages); a ssociated with the store.
  • Currencies associated with the store.
  • Status of this store (active or inactive);.
IEnumerable<Stock> GetInventory(
    IEnumerable<Guid> productIds,
    Location location
)

Retrieves the relative stocks for a product collection for a geographic shipping zone.

IEnumerable<Guid> productIds
ID of the products for which an inventory must be obtained.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone.
return IEnumerable<Stock>
Returns an inventory for each product.
IEnumerable<Price> GetPrices(
    IEnumerable<Guid> productIds,
    Int32 currencyId,
    Int32 cultureId,
    Location location
)

Obtains prices by quantity within a currency group for a group of products.

Remarks
A single product can have multiple prices for the same currency when a different price per quantity is assigned.
IEnumerable<Guid> productIds
List of unique product identifiers for which prices must be obtained.
Int32 currencyId
identifier of the currency in which product prices must be obtained.
Int32 cultureId
Identifer of the culture for which the price will be localized.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone.
return IEnumerable<Price>
A collection of prices for the requested products in the requested currencies
IEnumerable<Region> GetRegions(
    Int32 countryId,
    Int32 cultureId
)

Retrieves all regions associated with a given country and defined in terms of the platform (used for address management).

Int32 countryId
Country ID for which the regions must be obtained.
Int32 cultureId
Culture identifier used to localize regions names.
return IEnumerable<Region>
A list of regions relative to the requested country.
String MakeQuery(
    CatalogContext catalogContext,
    String assembly,
    String namespace,
    ExpressionMetaModel metaModel
)

This service method is used internally to perform Linq queries against catalog data model. It should not be used directly.

CatalogContext catalogContext
Contextual information to pick the appropriate model.
String assembly
Client assembly name to bind in results.
String namespace
Client namespace to bind in results.
ExpressionMetaModel metaModel
Expression model to build the query.
return String
void SendMail(
    MailAddress destinationEmail,
    String templateCode,
    Object dataSource,
    Int32 cultureId
)

Sends e-mails to an address generated from a template configured at the administration level.

MailAddress destinationEmail
Destination e-mail address.
String templateCode
The template code used for sending e-mails.
Object dataSource
The data source to which the e-mail template must be assigned in order to generate e-mails.
Int32 cultureId
Culture of the mail
void SendMail(
    MailAddress[] destinationEmails,
    String templateCode,
    Object dataSource,
    Int32 cultureId
)

Sends e-mails to a group of addresses generated from a template configured at the administration level.

MailAddress[] destinationEmails
Destination e-mail addresses.
String templateCode
The template code used for sending e-mails.
Object dataSource
The data source to which the e-mail template must be assigned in order to generate e-mails.
Int32 cultureId
culture of the mail
void SendMail(
    MailAddress destinationEmail,
    MailAddress senderEmail,
    String emailSubject,
    String emailBody,
    MailFormat mailFormat,
    Int32 cultureId
)

Sends mail.

MailAddress destinationEmail
Email of the destination.
MailAddress senderEmail
Email of the sender.
String emailSubject
Subject of the email.
String emailBody
content of the email.
MailFormat mailFormat
Sender e-mail format, text or html
Int32 cultureId
culture of the mail
void SendMail(
    MailAddress destinationEmail,
    MailAddress senderEmail,
    String emailSubject,
    String emailBody,
    MailFormat mailFormat,
    Int32 cultureId,
    Byte priority
)

Sends mail.

MailAddress destinationEmail
Email of the destination.
MailAddress senderEmail
Email of the sender.
String emailSubject
Subject of the email.
String emailBody
content of the email.
MailFormat mailFormat
Sender e-mail format, text or html
Int32 cultureId
culture of the mail
Byte priority
Priority for the mailer (not the priority of the mail);.
void SendMail(
    MailAddress[] destinationEmails,
    MailAddress senderEmail,
    String emailSubject,
    String emailBody,
    MailFormat mailFormat,
    Int32 cultureId
)

Sends e-mails to a group of addresses.

MailAddress[] destinationEmails
Destination e-mail addresses.
MailAddress senderEmail
E-mail address from where messages will be sent.
String emailSubject
Subject of the email.
String emailBody
Body of the email.
MailFormat mailFormat
Sender e-mail format, text or html
Int32 cultureId
culture of the mail
void SendMail(
    MailAddress[] destinationEmails,
    MailAddress senderEmail,
    String emailSubject,
    String emailBody,
    MailFormat mailFormat,
    Int32 cultureId,
    Byte priority
)

Sends e-mails to a group of addresses.

MailAddress[] destinationEmails
Destination e-mail addresses.
MailAddress senderEmail
E-mail address from where messages will be sent.
String emailSubject
Subject of the email.
String emailBody
Body of the email.
MailFormat mailFormat
Sender e-mail format, text or html
Int32 cultureId
culture of the mail
Byte priority
Priority for the mailer (not the priority of the mail);.

Basket service client

IEnumerable<BasketEntryResult> AddProductsToBasket(
    String userName,
    Boolean isAnonymous,
    Guid productId,
    Int32 quantity,
    Nullable<Int32> currencyId,
    Int32 cultureId,
    Location location
)

Adds products to a given basket for a specific user. A basket will be created if it hasn't been already.

Remarks
If the basket already exists and the currencyId is different, then the basket will be updated with the new currency (products may be deleted if not available in the new currency);.
If the basket already exists and the location is different, then the basket will be updated with the new location (products may be de leted if not available in the new location);.
Store default currency will be used when currencyId doesn't have any value.
Store default country will be used when location is null
String userName
Username of the user who owns the basket.
Boolean isAnonymous
Indicated if the user who owns the basket is an anonymous user.
Guid productId
Identifiers of the product to add to the basket.
Int32 quantity
Number of products to the basket.
Nullable<Int32> currencyId
identifier of the currency that will be used for the basket, if not yet created.
Int32 cultureId
identifier of the culture that will be used for the basket, if not yet created.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone to take into account to perform the necessary calcula tions for the products in the basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain information about the added product.
IEnumerable<BasketEntryResult> AddProductsToBasket(
    String userName,
    Boolean isAnonymous,
    Dictionary<Guid, Int32> products,
    Nullable<Int32> currencyId,
    Int32 cultureId,
    Location location
)

Adds products to a given basket for a specific user. A basket will be created if it hasn't been already.

Remarks
If the basket already exists and the currencyId is different, then the basket will be updated with the new currency (products may be deleted if not available in the new currency);.
If the basket already exists and the location is different, then the basket will be updated with the new location (products may be de leted if not available in the new location);.
Store default currency will be used when currencyId doesn't have any value.
Store default country will be used when location is null
String userName
Username of the user who owns the basket.
Boolean isAnonymous
Indicated if the user who owns the basket is an anonymous user.
Dictionary<Guid, Int32> products
Identifiers and quantities of the product to add to the basket.
Nullable<Int32> currencyId
identifier of the currency that will be used for the basket, if not yet created.
Int32 cultureId
identifier of the culture that will be used for the basket, if not yet created.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone to take into account to perform the necessary calcula tions for the products in the basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain information about the added product.
IEnumerable<BasketEntryResult> AddProductsToBasket(
    String userName,
    Boolean isAnonymous,
    String basketName,
    Guid productId,
    Int32 quantity,
    Nullable<Int32> currencyId,
    Int32 cultureId,
    Location location
)

Adds products to a given basket for a specific user. A basket will be created if it hasn't been already.

Remarks
If the basket already exists and the currencyId is different, then the basket will be updated with the new currency (products may be deleted if not available in the new currency);.
If the basket already exists and the location is different, then the basket will be updated with the new location (products may be de leted if not available in the new location);.
Store default currency will be used when currencyId doesn't have any value.
Store default country will be used when location is null
String userName
Username of the user who owns the basket.
Boolean isAnonymous
Indicated if the user who owns the basket is an anonymous user.
String basketName
Shopping basket name.
Guid productId
Identifiers of the product to add to the basket.
Int32 quantity
Number of products to the basket.
Nullable<Int32> currencyId
identifier of the currency that will be used for the basket, if not yet created.
Int32 cultureId
identifier of the culture that will be used for the basket, if not yet created.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone to take into account to perform the necessary calcula tions for the products in the basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain information about the added product.
IEnumerable<BasketEntryResult> AddProductsToBasket(
    String userName,
    Boolean isAnonymous,
    String basketName,
    Dictionary<Guid, Int32> products,
    Nullable<Int32> currencyId,
    Int32 cultureId,
    Location location
)

Adds products to a given basket for a specific user. A basket will be created if it hasn't been already.

Remarks
If the basket already exists and the currencyId is different, then the basket will be updated with the new currency (products may be deleted if not available in the new currency);.
If the basket already exists and the location is different, then the basket will be updated with the new location (products may be de leted if not available in the new location);.
Store default currency will be used when currencyId doesn't have any value.
Store default country will be used when location is null
String userName
Username of the user who owns the basket.
Boolean isAnonymous
Indicated if the user who owns the basket is an anonymous user.
String basketName
Shopping basket name.
Dictionary<Guid, Int32> products
Identifiers and quantities of the product to add to the basket.
Nullable<Int32> currencyId
identifier of the currency that will be used for the basket, if not yet created.
Int32 cultureId
identifier of the culture that will be used for the basket, if not yet created.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone to take into account to perform the necessary calcula tions for the products in the basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain information about the added product.
IEnumerable<PromoCodeEntryResult> ApplyPromoCode(
    String userName,
    String promoCode
)

Applies discount code to a basket.

String userName
Username of the user who owns the basket.
String promoCode
A discount code to apply to the basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was appli ed or not.
IEnumerable<PromoCodeEntryResult> ApplyPromoCode(
    String userName,
    String basketName,
    String promoCode
)

Applies discount codes to a basket.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket for which the discount codes will be applied.
String promoCode
A discount code to apply to the basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was applied or not.
IEnumerable<PromoCodeEntryResult> ApplyPromoCodes(
    String userName,
    IEnumerable<String> promoCodes
)

Applies discount codes to a basket.

String userName
Username of the user who owns the basket.
IEnumerable<String> promoCodes
A group of discount codes to apply to the basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was applie d or not.
IEnumerable<PromoCodeEntryResult> ApplyPromoCodes(
    String userName,
    String basketName,
    IEnumerable<String> promoCodes
)

Applies discount codes to a basket.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket for which the discount codes will be applied.
IEnumerable<String> promoCodes
A group of discount codes to apply to the basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was applie d or not.
IEnumerable<String> DeleteBasket(
    String userName
)

Deletes a user's basket and reassigns the product inventory accordingly.

String userName
Username of the user who owns the default basket to delete
return IEnumerable<String>
Names of deleted baskets.
IEnumerable<String> DeleteBasket(
    String userName,
    String basketName
)

Deletes a user's basket and reassigns the product inventory accordingly.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket to delete.
return IEnumerable<String>
Names of deleted baskets.
IEnumerable<String> DeleteBaskets(
    String userName,
    IEnumerable<String> basketNames
)

Deletes a user's basket and reassigns the product inventory accordingly.

String userName
owner of the basket
IEnumerable<String> basketNames
Name of the basket to delete.
return IEnumerable<String>
Names of deleted baskets.
Basket GetBasket(
    String userName
)

Retrieves the default basket of the current user.

String userName
Username of the user who owns the basket.
return Basket
the default basket if any.
Basket GetBasket(
    String userName,
    String basketName
)

Retrieves the basket of the current user by basket name.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket.
return Basket
The requested basket.
String GetBasketHash(
    String userName
)

Retrieves the specified signature for the specified basket. This signature will be used by the SaveAsOrder service method in order to ensu re that the user has not modified the basket amount between choosing a shipping method and the processing of the order.

String userName
Username of the user who owns the basket.
return String
A unique hash for the default basket at the current date.
String GetBasketHash(
    String userName,
    String basketName
)

Retrieves the specified signature for the specified basket. This signature will be used by the SaveAsOrder service method in order to ensu re that the user has not modified the basket amount between choosing a shipping method and the processing of the order.

String userName
Username of the user who owns the basket.
String basketName
Shopping basket name for which a signature is requested.
return String
A unique hash for the basketName at the current date.
BasketCountResult GetBasketProductsCount(
    String userName
)

Retrieves the different product reference numbers present in a user's basket.

String userName
Username of the user who owns the basket.
return BasketCountResult
Products countings of the default basket
BasketCountResult GetBasketProductsCount(
    String userName,
    String basketName
)

Retrieves the different product reference numbers present in a user's basket.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket for which products have to be counted.
return BasketCountResult
Products countings for the specified basket
IEnumerable<Basket> GetBaskets(
    String userName,
    IEnumerable<String> basketNames
)

Retrieves the basket of the current user by basket name.

String userName
Username of the user who owns the basket.
IEnumerable<String> basketNames
Names of the basket.
return IEnumerable<Basket>
A group of baskets.
IDictionary<String, BasketCountResult> GetBasketsProductsCount(
    String userName,
    IEnumerable<String> basketNames
)

Retrieves the different product reference numbers present in a user's basket.

String userName
Username of the user who owns the basket.
IEnumerable<String> basketNames
Name of the baskets for which the products have to be counted.
return IDictionary<String, BasketCountResult>
A collection of products counting for specified baskets
Dictionary<Guid, IEnumerable<ShippingRateValue>> GetShippingRateValues(
    String userName,
    Int32 cultureId
)

Retrieves the available shipping methods for a basket per package.

String userName
Username of the user who owns the basket.
Int32 cultureId
Culture identifier of the culture which will be used the localize shipping rates information.
return Dictionary<Guid, IEnumerable<ShippingRateValue>>
Username of the user who owns the basket.
Culture identifier of the culture which will be used the localize shipping rates information. A collection of T:Magelia.WebStore.Services.Contract.Data.Store.ShippingRateValue for each package.
Dictionary<Guid, IEnumerable<ShippingRateValue>> GetShippingRateValues(
    String userName,
    String basketName,
    Int32 cultureId
)

Retrieves the available shipping methods for a basket per package.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket for which the shipping methods are to be retrieved.
Int32 cultureId
Culture identifier of the culture which will be used the localize shipping rates information.
return Dictionary<Guid, IEnumerable<ShippingRateValue>>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.ShippingRateValue for each package.
IEnumerable<PromoCodeEntryResult> RemovePromoCode(
    String userName,
    String promoCode
)

Removes discount code from the user's basket.

String userName
Username of the user who owns the basket.
String promoCode
A discount code to remove from a basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was applie d or not.
IEnumerable<PromoCodeEntryResult> RemovePromoCode(
    String userName,
    String basketName,
    String promoCode
)

Removes discount code from the user's basket.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket for which the discount codes will be applied.
String promoCode
A discount code to remove from a basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was applie d or not.
IEnumerable<PromoCodeEntryResult> RemovePromoCodes(
    String userName,
    IEnumerable<String> promoCodes
)

Removes discount codes from the user's basket.

String userName
Username of the user who owns the basket.
IEnumerable<String> promoCodes
A group of discount codes to remove from a basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was applie d or not.
IEnumerable<PromoCodeEntryResult> RemovePromoCodes(
    String userName,
    String basketName,
    String[] promoCodes
)

Removes discount codes from the user's basket.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket for which the discount codes will be applied.
String[] promoCodes
A group of discount codes to remove from a basket.
return IEnumerable<PromoCodeEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.PromoCodeEntryResult indicating if the promoCode was applie d or not.
SaveAsOrderResult SaveAsOrder(
    String userName,
    String basketHash,
    String IP
)

Processes an order from the basket.

String userName
Username of the user who owns the basket.
String basketHash
Shopping basket signature encrypted to the user.
String IP
The IP address from where the user placed the order. This value can be null.
return SaveAsOrderResult
Result of the conversion of the Basket to an Order
SaveAsOrderResult SaveAsOrder(
    String userName,
    String basketHash,
    String IP,
    String channel
)

Processes an order from the basket.

String userName
Username of the user who owns the basket.
String basketHash
Shopping basket signature encrypted to the user.
String IP
The IP address from where the user placed the order. This value can be null.
String channel
The order channel code to flag the order. This value can be null.
return SaveAsOrderResult
Result of the conversion of the Basket to an Order
SaveAsOrderResult SaveAsOrder(
    String userName,
    String basketName,
    String basketHash,
    String IP,
    String channel
)

Processes an order from the basket.

String userName
Username of the user who owns the basket.
String basketName
The basket name to be processed into an order.
String basketHash
Shopping basket signature encrypted to the user.
String IP
The IP address from where the user placed the order. This value can be null.
String channel
The order channel code to flag the order. This value can be null.
return SaveAsOrderResult
Result of the conversion of the Basket to an Order
IEnumerable<BasketEntryResult> SetCustomerAddressToBasket(
    String userName,
    Guid billingAddressId,
    Nullable<Guid> shippingAddressId
)

Adds addresses already specified by the user to a basket (for delivery and billing);.

String userName
Username of the user who owns the basket.
Guid billingAddressId
The ID of the user's address that will be used for the billing and shipping address (unless otherwise specified);.
Nullable<Guid> shippingAddressId
The full shipping address if this address if different from the billing address (optional);.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult that will contain status information abou t each changed product.
IEnumerable<BasketEntryResult> SetCustomerAddressToBasket(
    String userName,
    String basketName,
    Guid billingAddressId,
    Nullable<Guid> shippingAddressId
)

Adds addresses already specified by the user to a basket (for delivery and billing);.

String userName
Username of the user who owns the basket.
String basketName
The name of the basket to which the user's addresse(s); will be applied.
Guid billingAddressId
The ID of the user's address that will be used for the billing and shipping address (unless otherwise specified);.
Nullable<Guid> shippingAddressId
The full shipping address if this address if different from the billing address (optional);.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult that will contain status information abou t each changed product.
IEnumerable<BasketEntryResult> SetRawAddressToBasket(
    String userName,
    Address billingAddress,
    Address shippingAddress
)

Applies addresses to a basket not yet specified by the user. For example, for a basket associated with an anonymous user.

String userName
Username of the user who owns the basket.
Address billingAddress
Full billing and shipping address to be used unless otherwise specified.
Address shippingAddress
Full shipping address. null if this address if different from the billing address.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult that will contain status information abou t each changed product.
IEnumerable<BasketEntryResult> SetRawAddressToBasket(
    String userName,
    String basketName,
    Address billingAddress,
    Address shippingAddress
)

Applies addresses to a basket not yet specified by the user. For example, for a basket associated with an anonymous user.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket to which the user's addresse(s); will be applied.
Address billingAddress
Full billing and shipping address to be used unless otherwise specified.
Address shippingAddress
Full shipping address. null if this address if different from the billing address.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult that will contain status information abou t each changed product.
IEnumerable<BasketEntryResult> SetShippingRateValues(
    String userName,
    Dictionary<Guid, String> shippingRateValues
)

Specifies, if necessary, a shipping method for each package in a basket.

String userName
Username of the user who owns the basket.
Dictionary<Guid, String> shippingRateValues
A pair of OrderSubsetIDs and ShippingRate code to assign to the packages in a basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult that will contain status information abou t each changed product .
IEnumerable<BasketEntryResult> SetShippingRateValues(
    String userName,
    String basketName,
    Dictionary<Guid, String> shippingRateValues
)

Specifies, if necessary, a shipping method for each package in a basket.

String userName
Username of the user who owns the basket.
String basketName
Name of the basket to which the shipping method will be assigned.
Dictionary<Guid, String> shippingRateValues
A pair of OrderSubsetIDs and ShippingRateCode to assign to the packages in a basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult that will contain status information abou t each changed product .
String TransferBasket(
    String fromUserName,
    String toUserName
)

Transfers a user's basket to another user (for example,an anonymous user to an authenticated user: when the user starts to create a basket before being authenticated);.

String fromUserName
Username of the user who owns the basket.
String toUserName
The user name that will receive the transferred basket.
return String
Name of basket transferred.
String TransferBasket(
    String fromUserName,
    String toUserName,
    String basketName
)

Transfers a user's basket to another user (for example,an anonymous user to an authenticated user: when the user starts to create a basket before being authenticated);.

String fromUserName
Username of the user who owns the basket.
String toUserName
The user name that will receive the transferred basket.
String basketName
name of the basket to be transferred.
return String
Name of basket transferred.
IEnumerable<String> TransferBaskets(
    String fromUserName,
    String toUserName,
    IEnumerable<String> basketNames
)

Transfers a user's basket to another user (for example,an anonymous user to an authenticated user: when the user starts to create a basket before being authenticated);.

String fromUserName
Username of the user who owns baskets to transfer.
String toUserName
The user name that will receive the transferred basket.
IEnumerable<String> basketNames
A collection of basket names to be transferred.
return IEnumerable<String>
Names of basket transferred.
IEnumerable<BasketEntryResult> UpdateBasket(
    String userName,
    Int32 currencyId,
    Int32 cultureId,
    Location location
)

Updates the basket calculation settings depending on the choices of the user: Culture (country and language or language);, currency and in tended shipping zone.

Remarks
If a basket is updated in a currency where a product is not defined, the product will be removed from the basket.
String userName
Username of the user who owns the basket.
Int32 currencyId
Currency identifier used to retrieve product prices, shipping fees and discounts.
Int32 cultureId
identifier of the culture. Do not use Thread.CurrentThread.CurrentCulture.LCID because the Thread culture may not be change d yet.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone to take into account to perform the necessary calcul ations for the products in the basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contains state information abo ut each product of the original basket.
IEnumerable<BasketEntryResult> UpdateBasket(
    String userName,
    String basketName,
    Int32 currencyId,
    Int32 cultureId,
    Location location
)

Updates the basket calculation settings depending on the choices of the user: Culture (country and language or language);, currency and in tended shipping zone.

Remarks
If a basket is updated in a currency where a product is not defined, the product will be removed from the basket.
String userName
Username of the user who owns the basket.
String basketName
Shopping basket name.
Int32 currencyId
Currency identifier used to retrieve product prices, shipping fees and discounts.
Int32 cultureId
identifier of the culture. Do not use Thread.CurrentThread.CurrentCulture.LCID because the Thread culture may not be change d yet.
Location location
Consists of a CountryID, RegionID and zip code; specifies the intended shipping zone to take into account to perform the necessary calcul ations for the products in the basket.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contains state information abo ut each product of the original basket.
void UpdateBasketAdditionalData(
    String userName,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of the default Basket

Remarks
A new version of the order will be created.
String userName
Username of the user who owns the basket.
IEnumerable<AdditionalDataItem> additionalData
Collection of additionalDataItem to update. The previous Colection of AdditionalDataItem will be replaced by this collection.
void UpdateBasketAdditionalData(
    String userName,
    String basketName,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of the specificied Basket

Remarks
A new version of the order will be created.
String userName
Username of the user who owns the basket.
String basketName
Name of the basket.
IEnumerable<AdditionalDataItem> additionalData
Collection of additionalDataItem to update. The previous Colection of AdditionalDataItem will be replaced by this collection.
void UpdateLineItemAdditionalData(
    Guid lineItemId,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of a specified LineItem

Remarks
If the specified lineItem is part of an Order, a new version of the order will be created.
Guid lineItemId
Identifer of the lineItem.
IEnumerable<AdditionalDataItem> additionalData
Collection of AdditionalDataItem to update. The previous collection of AdditionalDataItem will be replaced by this collection.
void UpdateLineItemAdditionalData(
    Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
)

Update AdditionalData of the specified LineItems

Remarks
If lineItems are part of an Order, a new version of the order will be created.
Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
Collection of pair of lineItemId and collection of AdditionalDataItem. Old collection fo AdditionalDataItem will be replaced by theses col lections.
void UpdateOrderSubsetAdditionalData(
    Guid orderSubsetId,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of a specified orderSubset

Remarks
If the specified orderSubset is part of an Order, a new version of the order will be created.
Guid orderSubsetId
Identifer of the orderSubset.
IEnumerable<AdditionalDataItem> additionalData
Collection of AdditionalDataItem to update. The previous collection of AdditionalDataItem will be replaced by this collection.
void UpdateOrderSubsetAdditionalData(
    Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
)

Update AdditionalData of the specified orderSubset

Remarks
If orderSubset are part of an Order, a new version of the order will be created.
Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
Collection of pair of orderSubsetId and collection of AdditionalDataItem. Old collection fo AdditionalDataItem will be replaced by theses collections.
IEnumerable<BasketEntryResult> UpdateProductQuantity(
    String userName,
    Guid productId,
    Int32 quantity
)

Updates product quantities in a given basket for a specific user.

Remarks
A quantity of 0 will remove the product from the basket.
String userName
Username of the user who owns the basket.
Guid productId
Product identifier of the product for which the quantity must be updated.
Int32 quantity
Quantity to affect to the product.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain status information abo ut each product changed.
IEnumerable<BasketEntryResult> UpdateProductQuantity(
    String userName,
    String basketName,
    Guid productId,
    Int32 quantity
)

Updates product quantities in a given basket for a specific user.

Remarks
A quantity of 0 will remove the product from the basket.
String userName
Username of the user who owns the basket.
String basketName
Name of the basket in which product quantities must be updated.
Guid productId
Product identifier of the product for which the quantity must be updated.
Int32 quantity
Quantity to affect to the product.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain status information abo ut each product changed.
IEnumerable<BasketEntryResult> UpdateProductQuantity(
    String userName,
    Nullable<Guid> orderSubsetId,
    Guid productId,
    Int32 quantity
)

Updates product quantities in a given basket for a specific user.

Remarks
A quantity of 0 will remove the product from the basket.
String userName
Username of the user who owns the basket.
Nullable<Guid> orderSubsetId
Identifier of the target OrderSubset.
Guid productId
Identifier of the product which quantity will be updated.
Int32 quantity
Quantity to affect to the product.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain status information abo ut each product changed.
IEnumerable<BasketEntryResult> UpdateProductQuantity(
    String userName,
    String basketName,
    Nullable<Guid> orderSubsetId,
    Guid productId,
    Int32 quantity
)

Updates product quantities in a given basket for a specific user.

Remarks
A quantity of 0 will remove the product from the basket.
String userName
Username of the user who owns the basket.
String basketName
Name of the basket in which product quantities must be updated.
Nullable<Guid> orderSubsetId
Identifier of the target OrderSubset
Guid productId
Identifier of the product which quantity will be updated.
Int32 quantity
Quantity to affect to the product.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain status information abo ut each product changed.
IEnumerable<BasketEntryResult> UpdateProductsQuantities(
    String userName,
    IEnumerable<QuantityUpdate> updates
)

Updates product quantities in a given basket for a specific user.

Remarks
A quantity of 0 will remove the product from the basket.
String userName
Username of the user who owns the basket.
IEnumerable<QuantityUpdate> updates
Collection of Product identifiers, new quantities and identifiers of the targeted order subsets.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain status information abo ut each product changed.
IEnumerable<BasketEntryResult> UpdateProductsQuantities(
    String userName,
    String basketName,
    IEnumerable<QuantityUpdate> updates
)

Updates product quantities in a given basket for a specific user.

Remarks
A quantity of 0 will remove the product from the basket.
String userName
Username of the user who owns the basket.
String basketName
Name of the basket in which product quantities must be updated.
IEnumerable<QuantityUpdate> updates
Collection of Product identifiers, new quantities and identifiers of the targeted order subsets.
return IEnumerable<BasketEntryResult>
A collection of T:Magelia.WebStore.Services.Contract.Data.Store.BasketEntryResult which will contain status information abo ut each product changed.

Order service client

void AddPayment(
    Guid orderId,
    Payment payment
)

Add a payment to the specified order.

Guid orderId
Unique identifier of the order.
Payment payment
Payment information to add
Order GetOrder(
    String userName,
    Guid orderId
)

Retrieves all the data relating to an order of a given user.

Remarks
return null if the OrderId is not associated to the underlying user of this proxy.
String userName
Username of the user who owns the order.
Guid orderId
Identifier of the requested order.
return Order
The requested order.
Order GetOrder(
    String userName,
    Int32 orderNumber
)

Retrieves all the data relating to an order of a given user.

Remarks
return null if the OrderId is not associated to the underlying user of this proxy.
String userName
Username of the user who owns the order.
Int32 orderNumber
Identifier of the requested order.
return Order
The requested order.
OrderList GetOrders(
    String userName,
    OrderSortExpression sortExpression,
    OrderSortDirection sortDirection,
    Int32 limit,
    Int32 page,
    Boolean loadOrderSubsets,
    Boolean loadLineItems
)

Retrieves the orders of a given user in numerical order as well as in paginated results.

String userName
Username of the user who owns the orders.
OrderSortExpression sortExpression
Name of the column from where the order will be sorted.
OrderSortDirection sortDirection
Direction from where the order will be sorted.
Int32 limit
Number of orders per page.
Int32 page
Index of the returned orders page.
Boolean loadOrderSubsets
Indicates if the orderSubsets are to be returned.
Boolean loadLineItems
Indicates if the LineItems are to be returned if the packages are to be returned.
return OrderList
A collection of orders with the total count.
void UpdateLineItemAdditionalData(
    Guid lineItemId,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of a specified LineItem

Remarks
If the specified lineItem is part of an Order, a new version of the order will be created.
Guid lineItemId
Identifier of the lineItem.
IEnumerable<AdditionalDataItem> additionalData
Collection of AdditionalDataItem to update. The previous collection of AdditionalDataItem will be replaced by this collection.
void UpdateLineItemAdditionalData(
    Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
)

Update AdditionalData of the specified LineItems

Remarks
If lineItems are part of an Order, a new version of the order will be created.
Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
Collection of pair of lineItemId and collection of AdditionalDataItem. Old collection fo AdditionalDataItem will be replaced by theses col lections.
void UpdateOrderAdditionalData(
    Guid orderId,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of the specified Order

Remarks
A new version of the order will be created.
Guid orderId
Identifier of the Order.
IEnumerable<AdditionalDataItem> additionalData
Collection of additionalDataItem to update. The previous collection of AdditionalDataItem will be replaced by this collection.
void UpdateOrderStatus(
    Guid orderId,
    OrderStatus newStatus
)

Update the status of the specified order.

Guid orderId
The unique identifier of the order.
OrderStatus newStatus
The new status of the order.
void UpdateOrderSubsetAdditionalData(
    Guid orderSubsetId,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of a specified orderSubset

Remarks
If the specified orderSubset is part of an Order, a new version of the order will be created.
Guid orderSubsetId
Identifier of the orderSubset.
IEnumerable<AdditionalDataItem> additionalData
Collection of AdditionalDataItem to update. The previous collection of AdditionalDataItem will be replaced by this collection.
void UpdateOrderSubsetAdditionalData(
    Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
)

Update AdditionalData of the specified orderSubset

Remarks
If orderSubset are part of an Order, a new version of the order will be created.
Dictionary<Guid, IEnumerable<AdditionalDataItem>> additionalData
Collection of pair of orderSubsetId and collection of AdditionalDataItem. Old collection fo AdditionalDataItem will be replaced by theses collections.
void UpdatePaymentAdditionalData(
    Guid paymentId,
    IEnumerable<AdditionalDataItem> additionalData
)

Update AdditionalData of the specified Payment

Guid paymentId
Unique identifier of the payment.
IEnumerable<AdditionalDataItem> additionalData
Collection of additionalDataItem to update. The previous collection of AdditionalDataItem will be replaced by this collection.
void UpdatePaymentStatus(
    Guid paymentId,
    PaymentStatus statusId
)

Update the status of the specified payment

Guid paymentId
Unique identifier of the payment.
PaymentStatus statusId
New status of the payment.

Customer service client

Boolean ChangePassword(
    String userName,
    String oldPassword,
    String newPassword
)

Changes the user's password.

String userName
The user name of the customer to be updated.
String oldPassword
The customer's former password.
String newPassword
The customer's new password.
return Boolean
true If the new password corresponds to the complexity criteria of the customerSet and if the previous password corresponds to the user. Otherwise, return false /
Boolean ChangePasswordQuestionAndAnswer(
    String userName,
    String password,
    String newPasswordQuestion,
    String newPasswordAnswer
)

Changes the secret question and answer of a user.

String userName
User name of the user for which information will be changed.
String password
The user's password.
String newPasswordQuestion
The new secret question.
String newPasswordAnswer
The new answer to the secret question.
return Boolean
true If the user corresponds to the password and if changes are applied, false otherwise,
AnonymousCustomer CreateAnonymousCustomer(
    String userName
)

Creates an anonymous customer.

String userName
The unique ID of the anonymous customer.
return AnonymousCustomer
The new anonymous customer created.
Customer CreateCustomer(
    String userName,
    String password,
    String email,
    String passwordQuestion,
    String passwordAnswer,
    Boolean isApproved,
    out MembershipCreateStatus status
)

Creates a Customer in the Magelia database.

Remarks
status May be the following values:
  • F:System.Web.Security.MembershipCreateStatus.DuplicateUserName if the user name is not unique.
  • F:System.Web.Security.MembershipCreateStatus.InvalidUserName if the user name does not correspond to the complexity criterion of the customer Set.
  • F:System.Web.Security.MembershipCreateStatus.InvalidPassword if the password does not correspond to the complexity criterio n of the customerSet.
  • F:System.Web.Security.MembershipCreateStatus.InvalidEmail if the email is not valid.
  • F:Syste m.Web.Security.MembershipCreateStatus.DuplicateEmail if the customerSet requires a unique email and the email is already being used.
  • < code>F:System.Web.Security.MembershipCreateStatus.InvalidQuestion if the customerSet requires a secret question and the secret question was no t filled in, or if an answer was given without a secret question.
  • F:System.Web.Security.MembershipCreateStatus.InvalidAnswer if a secret question was provided without a response.
  • F:System.Web.Security.MembershipCreateStatus.Success if the creation of the u ser was successful.
String userName
The name of the user.
Remarks
  • 200 characters maximum.
String password
The user's password.
String email
The user's email.
Remarks
  • May be null .
  • 200 characters maximum.
String passwordQuestion
The user's secret question.
Remarks
  • May be null if the CustomerSet does not require it.
  • 200 chara cters maximum.
String passwordAnswer
The answer to the user's secret question.
Remarks
  • Required if the parameter passwordQuestion is different from null.
  • 200 characters maximum.
Boolean isApproved
Indicates if the user is active at the time of creating the account.
out MembershipCreateStatus status
Gives the status of the creation of the customer.
return Customer
If the creation is successful, return the customer created. Otherwise, return null .
Customer CreateCustomer(
    String userName,
    String password,
    String email,
    String passwordQuestion,
    String passwordAnswer,
    Boolean isApproved,
    String firstName,
    String middleName,
    String lastName,
    out MembershipCreateStatus status
)

Creates a Customer in the Magelia database.

Remarks
status may have the following values:
  • F:System.Web.Security.MembershipCreateStatus.DuplicateUserName if the user name is not unique.
  • F:System.Web.Security.MembershipCreateStatus.InvalidUserName if the user name does not correspond to the complexity criterion of the customer Set.
  • F:System.Web.Security.MembershipCreateStatus.InvalidPassword if the password does not correspond to the complexity criterio n of the customerSet.
  • F:System.Web.Security.MembershipCreateStatus.InvalidEmail if the email is not valid.
  • F:Syste m.Web.Security.MembershipCreateStatus.DuplicateEmail if the customerSet requires a unique email and the email is already in use.
  • F:System.Web.Security.MembershipCreateStatus.InvalidQuestion if the customerSet requires a secret question and the question is not filled-in or if an answer was provided without a question.
  • F:System.Web.Security.MembershipCreateStatus.InvalidAnswer if a secret questio n was provided with no response.
  • F:System.Web.Security.MembershipCreateStatus.Success if the creation of a user was successful.< /li>
String userName
The name of the user.
Remarks
  • 200 characters maximum.
String password
The user's password.
String email
The user's email.
Remarks
  • May be null .
  • 200 characters maximum.
String passwordQuestion
The user's secret question.
Remarks
  • May be null if the customerSet does not require it.
  • 200 chara cters maximum.
String passwordAnswer
The answer to the user's secret question.
Remarks
  • Is required if the parameter passwordQuestion is different from null.
  • 200 characters maximum.
Boolean isApproved
Indicates if the user is active when creating an account.
String firstName
First name of the user.
Remarks
  • May be null
  • 50 characters maximum
String middleName
The user's middle name.
Remarks
  • May be null
  • 50 characters maximum
String lastName
Last name or family name of the user.
Remarks
  • May be null
  • 50 characters maximum
out MembershipCreateStatus status
Returns the status of the customer creation.
return Customer
If the creation is successful, returns customer created. Otherwise, return null .
Boolean DeleteCustomer(
    String userName
)

Supprime un client.

String userName
Le nom d'utilisateur pour qui l'on change les informations.
return Boolean
true if the user was successfully deleted.
IEnumerable<Customer> FindCustomersByEmail(
    String emailToMatch,
    Int32 pageIndex,
    Int32 pageSize,
    out Int32 totalRecords
)

Obtains a paginated list of customers that correspond to an email.

Remarks
If the current customerSet does not authorize the use of one email for several customers, then this method will return to the maximum of one customer.
String emailToMatch
The email to be searched.
Int32 pageIndex
The index of the page to be returned to.
Int32 pageSize
The maximum number of customers per page.
out Int32 totalRecords
Returns the total number of customers corresponding to the criteria.
return IEnumerable<Customer>
A collection of customers corresponding to the criteria.
IEnumerable<Customer> FindCustomersByName(
    String usernameToMatch,
    Int32 pageIndex,
    Int32 pageSize,
    out Int32 totalRecords
)

Obtains a paginated list of customers having usernameToMatch in their user name.

String usernameToMatch
The part of the user name to be searched.
Int32 pageIndex
The index of the page to be returned to.
Int32 pageSize
The maximum number of customers per page.
out Int32 totalRecords
Returns the total number of customers corresponding to the criteria.
return IEnumerable<Customer>
A collection of customers corresponding to the criteria.
IEnumerable<ProfileInfo> FindProfilesByUserName(
    ProfileAuthenticationOption authenticationOption,
    String usernameToMatch,
    Int32 pageIndex,
    Int32 pageSize,
    out Int32 totalRecords
)

Retrieves profile information for profiles in which the user name matches the specified user names.

ProfileAuthenticationOption authenticationOption
One of the System.Web.Profile.ProfileAuthenticationOption values, specifying whether anonymous, authenticated, or both types of profiles a re returned.
String usernameToMatch
The user name to search for.
Int32 pageIndex
The index of the page of results to return.
Int32 pageSize
The size of the page of results to return.
out Int32 totalRecords
total number of profile
return IEnumerable<ProfileInfo>
user-profile information for profiles where the user name matches the supplied usernameToMatch parameter.
IEnumerable<Address> GetAddresses(
    String userName,
    Int32 cultureId
)

Obtains all the addresses of a customer.

String userName
The user name of the customer for which addresses need to be obtained.
Int32 cultureId
The culture in which we should localized country and region properties.
return IEnumerable<Address>
All the addresses of a customer.
IEnumerable<Customer> GetAllCustomers(
    Int32 pageIndex,
    Int32 pageSize,
    out Int32 totalRecords
)

Obtains all the customers of the CustomerSet.

Int32 pageIndex
The index of the page to be returned to.
Int32 pageSize
The maximum number of customers per page.
out Int32 totalRecords
Returns the total number of customers corresponding to the criteria.
return IEnumerable<Customer>
All the customers from the CustomerSet.
Customer GetCustomer(
    String username,
    Boolean userIsOnline
)

Obtains a customer from his/her user name.

String username
The user name to be obtained.
Boolean userIsOnline
Indicates if the date of the last user activity must be updated.
return Customer
The user being searched or null if the user does not exist for this customerSet.
Customer GetCustomer(
    Guid customerId,
    Boolean userIsOnline
)

Obtains a customer from his/her unique ID.

Guid customerId
The unique user ID.
Boolean userIsOnline
Indicates if the date of the last user activity must be updated.
return Customer
The user being searched or null if the user does not exist for this customerSet.
IDictionary<String, String> GetProfiles(
    String userName
)

Obtains the customer profile.

String userName
The username of the customer whose profile will be accessed.
return IDictionary<String, String>
A dictionary containing the key/value pairs that correspond to a user profile.
String GetUserNameByEmail(
    String email
)

Obtains the user name from his/her email.

String email
The user's email to be searched.
return String
String ResetPassword(
    String userName,
    String answer
)

Reset password of a customer.

Remarks
The password that will be generated in terms of the complexity criterion of the customerSet.
If the customerSet contains a regular expression then it is possible that the password does not match this expression. However, the r egular expression is only used for creating a user.
String userName
The user name of the customer to be updated. .
String answer
The answer to the user's secret question.
return String
The new password of the user.
void SetProfiles(
    String userName,
    Boolean isAnonymous,
    IDictionary<String, String> dirtyProfileValues
)

Updates a customer's profile.

String userName
The user name for which a profile needs to be updated.
Boolean isAnonymous
Indicates if the user is anonymous or not. This enables the creation of a user, if needed.
IDictionary<String, String> dirtyProfileValues
The dictionary containing the key/value pairs that correspond to a user profile. The entire profile will be recreated from this dictionary .
Boolean UnlockUser(
    String userName
)

Unblocks a user.

String userName
The user name to be unblocked.
return Boolean
true if the user was unblocked, otherwise false .
void UpdateAddresses(
    String userName,
    IEnumerable<Address> addresses
)

Updates the addresses of a customer.

String userName
The user name of the customer whose addresses need to be updated.
IEnumerable<Address> addresses
The group of addresses of a customer. The addresses of the user that are not part of this list will be deleted.
void UpdateCustomer(
    Guid customerId,
    String userName,
    String email,
    Boolean isApproved
)

Updates certain clients' emails and statuses.

T:System.Exception
is activated when the customerSet requires a unique email and when the new customer email is already in use.
Guid customerId
The unique identifier of the the client to be updated.
String userName
The new user name of the client.
String email
The new email of the user.
Boolean isApproved
The new status of the user.
Boolean ValidateUser(
    String userName,
    String password
)

Verifies the correlation between a password and a user.

Remarks
If the password does not correspond correctly more than CustomerSet.MaxInvalidPasswordAttempts times within Custome rSet.PasswordAttemptWindow then the account is blocked.
String userName
Name of the user.
String password
password.
return Boolean
false If the password does not correspond to the user or if the account is deactivated or blocked true otherwise.

Content service client

IEnumerable<ContentType> GetContentTypes(

    Guid storeId,

    String culture,

)

Retrieves all the content Types associated to the store with their attributes

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext.

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return IEnumerable<ContentType>

A list of content types.

ContentType GetContentTypeById(

    Guid storeId,

    Guid contentTypeId,

    String culture

)

Retrieves a content type by his Id.

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext.

Guid contentTypeId

               Unique identifier of the contentType needed.

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return ContentType

A unique contentType.

ContentType GetContentTypeByCode(

    Guid storeId,

    String contentTypeCode,

    String culture

)

Retrieves a content type by his Code.

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext.

String contentTypeCode

               Code of the contentType needed.

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return ContentType

A unique contentType.

IEnumerable<ContentTypeAttribute> GetContentTypeAttributes(

    Guid storeId,

    String contentTypeCode,

    String culture

)

Retrieves all atributes associated to the defined content type.

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext.

String contentTypeCode

               Code of the contentType wich attributes are needed.

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return IEnumerable<ContentTypeAttribute>

A list of attributes wich are defined in the content type.

ContentItem GetContentItemByCode(

   Guid storeId,

   String contentTypeCode,

   String contentItemCode,

   String culture

)

Retrieve a specified contentItem with his attributes binded and localized if needed.

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext.

String contentTypeCode

Code of the content type of the needed content item.

String contentItemCode

Code of the needed content Item

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return ContentItem

List of contentItem (contains a list of customAttributes and persistent attributes like code, status, etc.)

ContentItemAttributeValue(

    Guid storeId,

    String contentTypeCode,

    String contentItemCode,

    String AttributeCode

    String culture

)

Retrieve only a specified attribute of a specified content Item (works with persistent attributes, customs, and localized ones)

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext.

String contentTypeCode

Code of the content type of the needed content item.

String contentItemCode

Code of the needed content Item

String AttributeCode

Code of the needed Attribute

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return ContentItemAttributeValue

A unique attribute value.

IEnumerable<ContentItem> GetContentItems(

    Guid storeId,

    String contentTypeCode,

    String culture

)

Retrieve all the content items in a specified content type ( will time out if you try to retrieve to many content items .. ) use with caution.

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext.

String contentTypeCode

Code of the content type wich content items are needed.

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return IEnumerable<ContentItem>

A list of content item wich are linked to the specified content type.

 

IEnumerable<ContentItem> GetContentItemsByCustomAttribute(

    Guid storeId,

    String contentTypeCode,

    String AttributeCode,

    String AttributeValue,

    String culture

)

 

 

Retrieve all content items who match with the specified custom attribute value.

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext..

String AttributeCode

Code of the attribute on wich the equality must be tested.

String AttributeValue

Value of the attribute for equality test.

String culture

Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

return IEnumerable<ContentItem>

A list of content item wich are linked to the specified content type and match with the specified attribute value.

void CreateContentItem(

    Guid storeId,

    String contentTypeCode,

    String Code,

    String UserName,

    String Status,

    String culture,

    IDictionnary<string, string> AttributesAndValues

)

Create a content Item of the predefined content type.

 

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext..

String ContentTypeCode

              Code of the content type.

String Code

              Code of the new content item.

String UserName

              UserName of a webstore user for the contentItem creator.

String Status

             Status of the new ContentItem.

String culture

              Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

IDictionary<string, string> AttributesAndValues

             Dictionnary of attributes and values wich will be binded in the new content item.

 

void UpdateContentItem(

    Guid storeId,

    String contentTypeCode,

    Guid ContentItemId,

    String AttributeName,

    String AttributeValue,

    String culture,

)

Update an existing content Item.

 

Guid storeId

               StoreID must be specified cause this Service don’t need a webStoreContext..

String ContentTypeCode

              Code of the content type.

Guid ContentItemId

              Id of the content item who need to be updated.

String AttributeName

              Name of the attribute to update

String AttributeValue

             New value of the attribute.

String culture

              Culture identifier (or ISO2) used to localize attributes names. (example for english « 9 » or « en » will work.

IDictionary<string, string> AttributesAndValues

             Dictionnary of attributes and values wich will be binded in the new content item.