/* Options:
Date: 2025-07-07 13:33:16
Version: 8.22
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://dev-api-booster.richemont.com
//GlobalNamespace:
//MakePartial: True
//MakeVirtual: True
//MakeInternal: False
//MakeDataContractsExtensible: False
//AddNullableAnnotations: False
//AddReturnMarker: True
//AddDescriptionAsComments: True
//AddDataContractAttributes: False
//AddIndexesToDataMembers: False
//AddGeneratedCodeAttributes: False
//AddResponseStatus: False
//AddImplicitVersion:
//InitializeCollections: True
//ExportValueTypes: False
IncludeTypes: CreateCustomer.*
//ExcludeTypes:
//AddNamespaces:
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Richemont.Booster2.PublicApi.CRM.ServiceModel;
using Richemont.Booster2.PublicApi.Purchase.ServiceModel;
namespace Richemont.Booster2.PublicApi.CRM.ServiceModel
{
public partial class Address
{
///
///Address type e.g. Home, Office, Shipping
///
[ApiMember(Description="Address type e.g. Home, Office, Shipping", IsRequired=true)]
public virtual string addressType { get; set; }
///
///Country Id e.g. it, cn, az, gb, de
///
[ApiMember(Description="Country Id e.g. it, cn, az, gb, de", IsRequired=true)]
public virtual string countryId { get; set; }
///
///House Number
///
[ApiMember(Description="House Number")]
public virtual string houseNumber { get; set; }
///
///Region/State
///
[ApiMember(Description="Region/State")]
public virtual string stateId { get; set; }
///
///City Name
///
[ApiMember(Description="City Name")]
public virtual string city { get; set; }
///
///Postal Code
///
[ApiMember(Description="Postal Code")]
public virtual string zipCode { get; set; }
///
///Street Name and Number
///
[ApiMember(Description="Street Name and Number")]
public virtual string street { get; set; }
///
///Street 2
///
[ApiMember(Description="Street 2")]
public virtual string street2 { get; set; }
///
///Street 3
///
[ApiMember(Description="Street 3")]
public virtual string street3 { get; set; }
///
///Street 4
///
[ApiMember(Description="Street 4")]
public virtual string street4 { get; set; }
///
///Street 5
///
[ApiMember(Description="Street 5")]
public virtual string street5 { get; set; }
///
///Main Address
///
[ApiMember(Description="Main Address", IsRequired=true)]
public virtual bool isMainAddress { get; set; }
///
///Post Office Box
///
[ApiMember(Description="Post Office Box")]
public virtual string poBox { get; set; }
///
///Additional Information
///
[ApiMember(Description="Additional Information")]
public virtual string additionalInformation { get; set; }
}
[Route("/customer", "POST")]
public partial class CreateCustomer
: Customer, IReturn
{
///
///Privacy policy acceptance for data storage
///
[ApiMember(Description="Privacy policy acceptance for data storage", IsRequired=true)]
public virtual bool privacyPolicyAcceptanceStorage { get; set; }
///
///Privacy policy acceptance of data storage for TimeVallée
///
[ApiMember(Description="Privacy policy acceptance of data storage for TimeVallée")]
public virtual bool? tvPrivacyPolicyAcceptanceStorage { get; set; }
}
public partial class CreateCustomerResponse
{
///
///Booster Customer ID
///
[ApiMember(Description="Booster Customer ID", IsRequired=true)]
public virtual int boosterCustomerId { get; set; }
}
public partial class Customer
{
public Customer()
{
emails = new List{};
phones = new List{};
addresses = new List{};
events = new List{};
interests = new List{};
hobbies = new List{};
productCollections = new List{};
}
///
///Title e.g. 'Mr & Mrs', 'Mr.', 'Mrs.', 'Sama', 'Captain' - Mandatory only when customer type is 'PRIVATE'
///
[ApiMember(Description="Title e.g. 'Mr & Mrs', 'Mr.', 'Mrs.', 'Sama', 'Captain' - Mandatory only when customer type is 'PRIVATE'")]
public virtual string title { get; set; }
///
///First Name
///
[ApiMember(Description="First Name")]
public virtual string firstName { get; set; }
///
///Last Name - Mandatory only when customer type is 'PRIVATE'
///
[ApiMember(Description="Last Name - Mandatory only when customer type is 'PRIVATE'")]
public virtual string lastName { get; set; }
///
///First Name Not Latin
///
[ApiMember(Description="First Name Not Latin")]
public virtual string firstNameNotLatin { get; set; }
///
///Last Name Not Latin
///
[ApiMember(Description="Last Name Not Latin")]
public virtual string lastNameNotLatin { get; set; }
///
///Middle Name
///
[ApiMember(Description="Middle Name")]
public virtual string middleName { get; set; }
///
///Name Suffix
///
[ApiMember(Description="Name Suffix")]
public virtual string nameSuffix { get; set; }
///
///Can be Contacted by Maison e.g. true or false
///
[ApiMember(Description="Can be Contacted by Maison e.g. true or false", IsRequired=true)]
public virtual bool canBeContactedByMaison { get; set; }
///
///Customer Type e.g. 'PRIVATE' or 'COMPANY'
///
[ApiMember(Description="Customer Type e.g. 'PRIVATE' or 'COMPANY'", IsRequired=true)]
public virtual string clientType { get; set; }
///
///Company Name - Mandatory only when customer type is 'COMPANY'
///
[ApiMember(Description="Company Name - Mandatory only when customer type is 'COMPANY'")]
public virtual string companyName { get; set; }
///
///Language Id e.g. ita, chi, aze, eng, ger - Mandatory only when customer type is 'PRIVATE'
///
[ApiMember(Description="Language Id e.g. ita, chi, aze, eng, ger - Mandatory only when customer type is 'PRIVATE'")]
public virtual string languageId { get; set; }
///
///Gender e.g. M, F - Mandatory only when customer type is 'PRIVATE'
///
[ApiMember(Description="Gender e.g. M, F - Mandatory only when customer type is 'PRIVATE'")]
public virtual string gender { get; set; }
///
///Country Id e.g. it, cn, az, gb, de
///
[ApiMember(Description="Country Id e.g. it, cn, az, gb, de", IsRequired=true)]
public virtual string countryId { get; set; }
///
///Birth Date e.g. '2020-12-30'
///
[ApiMember(Description="Birth Date e.g. '2020-12-30'")]
public virtual DateTime? birthDate { get; set; }
///
///Customer reference
///
[ApiMember(Description="Customer reference")]
public virtual string customerReference { get; set; }
///
///POS Code e.g. ES100:102048
///
[ApiMember(Description="POS Code e.g. ES100:102048", IsRequired=true)]
public virtual string posCode { get; set; }
///
///Brand e.g. CAR, MTB
///
[ApiMember(Description="Brand e.g. CAR, MTB", IsRequired=true)]
public virtual string brand { get; set; }
///
///Wedding Date, e.g. '2020-01-18'
///
[ApiMember(Description="Wedding Date, e.g. '2020-01-18'")]
public virtual DateTime? weddingDate { get; set; }
///
///Preferred Contact Method e.g. 'Fax', 'Tel', 'EMail', 'Mail', 'Survey'
///
[ApiMember(Description="Preferred Contact Method e.g. 'Fax', 'Tel', 'EMail', 'Mail', 'Survey'")]
public virtual string preferredContactMethod { get; set; }
///
///Provide 'true' if you want to be contacted by email. Leave empty or 'false' if you do not.
///
[ApiMember(Description="Provide 'true' if you want to be contacted by email. Leave empty or 'false' if you do not.")]
public virtual bool contactByEmailFlag { get; set; }
///
///Provide 'true' if you want to be contacted by mail. Leave empty or 'false' if you do not.
///
[ApiMember(Description="Provide 'true' if you want to be contacted by mail. Leave empty or 'false' if you do not.")]
public virtual bool contactByMailFlag { get; set; }
///
///Provide 'true' if you want to be contacted by phone. Leave empty or 'false' if you do not.
///
[ApiMember(Description="Provide 'true' if you want to be contacted by phone. Leave empty or 'false' if you do not.")]
public virtual bool contactByPhoneFlag { get; set; }
///
///Provide 'true' if you want to be contacted by SMS. Leave empty or 'false' if you do not.
///
[ApiMember(Description="Provide 'true' if you want to be contacted by SMS. Leave empty or 'false' if you do not.")]
public virtual bool contactBySMSFlag { get; set; }
///
///Provide 'true' if you want to be contacted by social media. Leave empty or 'false' if you do not.
///
[ApiMember(Description="Provide 'true' if you want to be contacted by social media. Leave empty or 'false' if you do not.")]
public virtual bool contactBySocialMediaFlag { get; set; }
///
///Sale Representative Email e.g. rauf.aliyev@richemont.com
///
[ApiMember(Description="Sale Representative Email e.g. rauf.aliyev@richemont.com")]
public virtual string saleRepresentativeEmail { get; set; }
///
///Consent for allowing Cross Border Data Transfer
///
[ApiMember(Description="Consent for allowing Cross Border Data Transfer")]
public virtual bool? allowStoreDataAbroad { get; set; }
///
///Consent for allowing Cross Border Data Transfer For TimeVallée
///
[ApiMember(Description="Consent for allowing Cross Border Data Transfer For TimeVallée")]
public virtual bool? tvAllowStoreDataAbroad { get; set; }
///
///Customer emails
///
[ApiMember(Description="Customer emails")]
public virtual List emails { get; set; }
///
///Customer phones
///
[ApiMember(Description="Customer phones")]
public virtual List phones { get; set; }
///
///Customer addresses
///
[ApiMember(Description="Customer addresses")]
public virtual List addresses { get; set; }
///
///Customer events
///
[ApiMember(Description="Customer events")]
public virtual List events { get; set; }
///
///Customer interests
///
[ApiMember(Description="Customer interests")]
public virtual List interests { get; set; }
///
///Customer hobbies
///
[ApiMember(Description="Customer hobbies")]
public virtual List hobbies { get; set; }
///
///Customer product collections
///
[ApiMember(Description="Customer product collections")]
public virtual List productCollections { get; set; }
///
///Provide 'true' if you allow data sharing consent. Leave empty or 'false' if you do not.
///
[ApiMember(Description="Provide 'true' if you allow data sharing consent. Leave empty or 'false' if you do not.")]
public virtual bool? dataSharingConsent { get; set; }
///
///Notes
///
[ApiMember(Description="Notes")]
public virtual string notes { get; set; }
///
///Reference Sale Representative Email
///
[ApiMember(Description="Reference Sale Representative Email")]
public virtual string referenceSaleRepresentativeEmail { get; set; }
///
///Registration Date
///
[ApiMember(Description="Registration Date")]
public virtual DateTime? registrationDate { get; set; }
}
public partial class Email
{
///
///Email
///
[ApiMember(Description="Email", IsRequired=true)]
public virtual string email { get; set; }
///
///Main email
///
[ApiMember(Description="Main email", IsRequired=true)]
public virtual bool isMainEmail { get; set; }
}
public partial class Event
{
///
///Event type e.g. 'Birthday', 'Wedding', 'Anniversary', 'Barmitza', 'Other'
///
[ApiMember(Description="Event type e.g. 'Birthday', 'Wedding', 'Anniversary', 'Barmitza', 'Other'", IsRequired=true)]
public virtual string eventType { get; set; }
///
///Event date e.g. '2021-01-20'
///
[ApiMember(Description="Event date e.g. '2021-01-20'", IsRequired=true)]
public virtual DateTime eventDate { get; set; }
///
///Event notes
///
[ApiMember(Description="Event notes")]
public virtual string eventNotes { get; set; }
///
///Event other name
///
[ApiMember(Description="Event other name")]
public virtual string eventOtherName { get; set; }
}
public partial class Hobby
{
///
///Hobby description
///
[ApiMember(Description="Hobby description", IsRequired=true)]
public virtual string hobby { get; set; }
///
///SAP Hobby ID, e.g. 'ART'
///
[ApiMember(Description="SAP Hobby ID, e.g. 'ART'", IsRequired=true)]
public virtual string sapHobbyId { get; set; }
///
///Hobby description translation
///
[ApiMember(Description="Hobby description translation")]
public virtual string translation { get; set; }
}
public partial class Interest
{
///
///Interest description
///
[ApiMember(Description="Interest description", IsRequired=true)]
public virtual string interest { get; set; }
///
///SAP Interest ID, e.g. 'CA-1'
///
[ApiMember(Description="SAP Interest ID, e.g. 'CA-1'", IsRequired=true)]
public virtual string sapInterestId { get; set; }
///
///Interest description translation
///
[ApiMember(Description="Interest description translation")]
public virtual string translation { get; set; }
}
public partial class Phone
{
///
///Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456
///
[ApiMember(Description="Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456", IsRequired=true)]
public virtual string phone { get; set; }
///
///Prefix Country Id e.g. it, fr, az
///
[ApiMember(Description="Prefix Country Id e.g. it, fr, az", IsRequired=true)]
public virtual string countryPrefix { get; set; }
///
///Phone type e.g. 'Home', 'Mobile', 'Work', 'Other', 'Secondary Address'
///
[ApiMember(Description="Phone type e.g. 'Home', 'Mobile', 'Work', 'Other', 'Secondary Address'")]
public virtual string phoneType { get; set; }
///
///Main Phone
///
[ApiMember(Description="Main Phone", IsRequired=true)]
public virtual bool isMainPhone { get; set; }
}
public partial class ProductCollection
{
///
///Product Collection description
///
[ApiMember(Description="Product Collection description", IsRequired=true)]
public virtual string productCollection { get; set; }
///
///SAP ProductCollection ID, e.g. 'CA-1'
///
[ApiMember(Description="SAP ProductCollection ID, e.g. 'CA-1'", IsRequired=true)]
public virtual string sapProductCollectionId { get; set; }
///
///Product Collection description translation
///
[ApiMember(Description="Product Collection description translation", IsRequired=true)]
public virtual string translation { get; set; }
}
}
namespace Richemont.Booster2.PublicApi.Purchase.ServiceModel
{
public partial class Address
{
///
///Country ID
///
[ApiMember(Description="Country ID")]
public virtual string countryId { get; set; }
///
///State ID
///
[ApiMember(Description="State ID")]
public virtual string stateId { get; set; }
///
///City Name
///
[ApiMember(Description="City Name")]
public virtual string city { get; set; }
///
///Street Name and Number
///
[ApiMember(Description="Street Name and Number")]
public virtual string street { get; set; }
///
///Postal Code
///
[ApiMember(Description="Postal Code")]
public virtual string zipCode { get; set; }
}
}