Richemont.Booster2.PublicApi

<back to all web services

GetCustomerV2

Requires Authentication
The following routes are available for this service:
GET/customer/v2/{customerId}Get customer detailsGet Customer info based on the Booster or Elevate Customer ID
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Richemont.Booster2.PublicApi.CRM.ServiceModel

Namespace Global

    Namespace Richemont.Booster2.PublicApi.CRM.ServiceModel

        Public Partial Class Address
            '''<Summary>
            '''Address type e.g. Home, Office, Shipping
            '''</Summary>
            <ApiMember(Description:="Address type e.g. Home, Office, Shipping", IsRequired:=true)>
            Public Overridable Property addressType As String

            '''<Summary>
            '''Country Id e.g. it, cn, az, gb, de
            '''</Summary>
            <ApiMember(Description:="Country Id e.g. it, cn, az, gb, de", IsRequired:=true)>
            Public Overridable Property countryId As String

            '''<Summary>
            '''House Number
            '''</Summary>
            <ApiMember(Description:="House Number")>
            Public Overridable Property houseNumber As String

            '''<Summary>
            '''Region/State
            '''</Summary>
            <ApiMember(Description:="Region/State")>
            Public Overridable Property stateId As String

            '''<Summary>
            '''City Name
            '''</Summary>
            <ApiMember(Description:="City Name")>
            Public Overridable Property city As String

            '''<Summary>
            '''Postal Code
            '''</Summary>
            <ApiMember(Description:="Postal Code")>
            Public Overridable Property zipCode As String

            '''<Summary>
            '''Street Name and Number
            '''</Summary>
            <ApiMember(Description:="Street Name and Number")>
            Public Overridable Property street As String

            '''<Summary>
            '''Street 2
            '''</Summary>
            <ApiMember(Description:="Street 2")>
            Public Overridable Property street2 As String

            '''<Summary>
            '''Street 3
            '''</Summary>
            <ApiMember(Description:="Street 3")>
            Public Overridable Property street3 As String

            '''<Summary>
            '''Street 4
            '''</Summary>
            <ApiMember(Description:="Street 4")>
            Public Overridable Property street4 As String

            '''<Summary>
            '''Street 5
            '''</Summary>
            <ApiMember(Description:="Street 5")>
            Public Overridable Property street5 As String

            '''<Summary>
            '''Main Address
            '''</Summary>
            <ApiMember(Description:="Main Address", IsRequired:=true)>
            Public Overridable Property isMainAddress As Boolean

            '''<Summary>
            '''Post Office Box
            '''</Summary>
            <ApiMember(Description:="Post Office Box")>
            Public Overridable Property poBox As String

            '''<Summary>
            '''Additional Information
            '''</Summary>
            <ApiMember(Description:="Additional Information")>
            Public Overridable Property additionalInformation As String
        End Class

        Public Partial Class CustomerEventV2
            '''<Summary>
            '''Event type e.g. 'Birthday', 'Wedding', 'Anniversary', 'Barmitza', 'Other'
            '''</Summary>
            <ApiMember(Description:="Event type e.g. 'Birthday', 'Wedding', 'Anniversary', 'Barmitza', 'Other'", IsRequired:=true)>
            Public Overridable Property eventType As String

            '''<Summary>
            '''Event date e.g. '2021-01-20'
            '''</Summary>
            <ApiMember(Description:="Event date e.g. '2021-01-20'", IsRequired:=true)>
            Public Overridable Property eventDate As String

            '''<Summary>
            '''Event notes
            '''</Summary>
            <ApiMember(Description:="Event notes")>
            Public Overridable Property eventNotes As String

            '''<Summary>
            '''Event other name
            '''</Summary>
            <ApiMember(Description:="Event other name")>
            Public Overridable Property eventOtherName As String
        End Class

        Public Partial Class Email
            '''<Summary>
            '''Email
            '''</Summary>
            <ApiMember(Description:="Email", IsRequired:=true)>
            Public Overridable Property email As String

            '''<Summary>
            '''Main email
            '''</Summary>
            <ApiMember(Description:="Main email", IsRequired:=true)>
            Public Overridable Property isMainEmail As Boolean
        End Class

        Public Partial Class GetCustomerV2
            '''<Summary>
            '''Booster or Elevate Customer ID
            '''</Summary>
            <ApiMember(Description:="Booster or Elevate Customer ID", IsRequired:=true)>
            Public Overridable Property customerId As String
        End Class

        Public Partial Class GetCustomerV2Response
            Public Sub New()
                emails = New List(Of Email)
                phones = New List(Of Phone)
                addresses = New List(Of Address)
                events = New List(Of CustomerEventV2)
                interests = New List(Of Interest)
                hobbies = New List(Of Hobby)
                productCollections = New List(Of ProductCollection)
            End Sub

            '''<Summary>
            '''Booster Customer ID
            '''</Summary>
            <ApiMember(Description:="Booster Customer ID")>
            Public Overridable Property boosterCustomerId As Nullable(Of Integer)

            '''<Summary>
            '''Elevate Customer ID
            '''</Summary>
            <ApiMember(Description:="Elevate Customer ID")>
            Public Overridable Property elevateCustomerId As String

            '''<Summary>
            '''SAP ID
            '''</Summary>
            <ApiMember(Description:="SAP ID", IsRequired:=true)>
            Public Overridable Property sapId As String

            '''<Summary>
            '''Title e.g. 'Mr & Mrs', 'Mr.', 'Mrs.', 'Sama', 'Captain' - Mandatory only when customer type is 'Personal'
            '''</Summary>
            <ApiMember(Description:="Title e.g. 'Mr & Mrs', 'Mr.', 'Mrs.', 'Sama', 'Captain' - Mandatory only when customer type is 'Personal'", IsRequired:=true)>
            Public Overridable Property title As String

            '''<Summary>
            '''First Name
            '''</Summary>
            <ApiMember(Description:="First Name", IsRequired:=true)>
            Public Overridable Property firstName As String

            '''<Summary>
            '''Last Name - Mandatory only when customer type is 'Personal'
            '''</Summary>
            <ApiMember(Description:="Last Name - Mandatory only when customer type is 'Personal'", IsRequired:=true)>
            Public Overridable Property lastName As String

            '''<Summary>
            '''First Name Not Latin, e.g. Arabic
            '''</Summary>
            <ApiMember(Description:="First Name Not Latin, e.g. Arabic", IsRequired:=true)>
            Public Overridable Property firstNameNotLatin As String

            '''<Summary>
            '''Last Name Not Latin, e.g. Arabic; Mandatory only when customer type is 'Personal'
            '''</Summary>
            <ApiMember(Description:="Last Name Not Latin, e.g. Arabic; Mandatory only when customer type is 'Personal'", IsRequired:=true)>
            Public Overridable Property lastNameNotLatin As String

            '''<Summary>
            '''Middle Name
            '''</Summary>
            <ApiMember(Description:="Middle Name")>
            Public Overridable Property middleName As String

            '''<Summary>
            '''Name Suffix
            '''</Summary>
            <ApiMember(Description:="Name Suffix")>
            Public Overridable Property nameSuffix As String

            '''<Summary>
            '''Can be Contacted by Maison e.g. true or false
            '''</Summary>
            <ApiMember(Description:="Can be Contacted by Maison e.g. true or false", IsRequired:=true)>
            Public Overridable Property canBeContactedByMaison As Boolean

            '''<Summary>
            '''clientType e.g. Private, Company
            '''</Summary>
            <ApiMember(Description:="clientType e.g. Private, Company", IsRequired:=true)>
            Public Overridable Property clientType As String

            '''<Summary>
            '''Company Name - Mandatory only when customer type is 'Company'
            '''</Summary>
            <ApiMember(Description:="Company Name - Mandatory only when customer type is 'Company'")>
            Public Overridable Property companyName As String

            '''<Summary>
            '''Language Id e.g. ita, chi, aze, eng, ger - Mandatory only when customer type is 'Personal'
            '''</Summary>
            <ApiMember(Description:="Language Id e.g. ita, chi, aze, eng, ger - Mandatory only when customer type is 'Personal'")>
            Public Overridable Property languageId As String

            '''<Summary>
            '''Gender e.g. M, F - Mandatory only when customer type is 'Personal'
            '''</Summary>
            <ApiMember(Description:="Gender e.g. M, F - Mandatory only when customer type is 'Personal'")>
            Public Overridable Property gender As String

            '''<Summary>
            '''Country Id e.g. it, ch, az, gb, de
            '''</Summary>
            <ApiMember(Description:="Country Id e.g. it, ch, az, gb, de", IsRequired:=true)>
            Public Overridable Property countryId As String

            '''<Summary>
            '''Country Description e.g. Italy, Switzerland, Azerbaijan, Great Britain, Germany
            '''</Summary>
            <ApiMember(Description:="Country Description e.g. Italy, Switzerland, Azerbaijan, Great Britain, Germany", IsRequired:=true)>
            Public Overridable Property countryDs As String

            '''<Summary>
            '''Birth Date e.g. '2020-12-30'
            '''</Summary>
            <ApiMember(Description:="Birth Date e.g. '2020-12-30'")>
            Public Overridable Property birthDate As String

            '''<Summary>
            '''Customer reference
            '''</Summary>
            <ApiMember(Description:="Customer reference")>
            Public Overridable Property customerReference As String

            '''<Summary>
            '''POS Code e.g. ES100:102048
            '''</Summary>
            <ApiMember(Description:="POS Code e.g. ES100:102048", IsRequired:=true)>
            Public Overridable Property posCode As String

            '''<Summary>
            '''Brand e.g. CAR, MTB
            '''</Summary>
            <ApiMember(Description:="Brand e.g. CAR, MTB", IsRequired:=true)>
            Public Overridable Property brand As String

            '''<Summary>
            '''Wedding Date, e.g. '2020-01-18'
            '''</Summary>
            <ApiMember(Description:="Wedding Date, e.g. '2020-01-18'")>
            Public Overridable Property weddingDate As String

            '''<Summary>
            '''Preferred Contact Method e.g. 'Fax', 'Tel', 'EMail', 'Mail', 'Survey'
            '''</Summary>
            <ApiMember(Description:="Preferred Contact Method e.g. 'Fax', 'Tel', 'EMail', 'Mail', 'Survey'")>
            Public Overridable Property preferredContactMethod As String

            '''<Summary>
            '''Provide 'true' if you want to be contacted by email. Leave empty or 'false' if you do not.
            '''</Summary>
            <ApiMember(Description:="Provide 'true' if you want to be contacted by email. Leave empty or 'false' if you do not.")>
            Public Overridable Property contactByEmailFlag As Boolean

            '''<Summary>
            '''Provide 'true' if you want to be contacted by mail. Leave empty or 'false' if you do not.
            '''</Summary>
            <ApiMember(Description:="Provide 'true' if you want to be contacted by mail. Leave empty or 'false' if you do not.")>
            Public Overridable Property contactByMailFlag As Boolean

            '''<Summary>
            '''Provide 'true' if you want to be contacted by phone. Leave empty or 'false' if you do not.
            '''</Summary>
            <ApiMember(Description:="Provide 'true' if you want to be contacted by phone. Leave empty or 'false' if you do not.")>
            Public Overridable Property contactByPhoneFlag As Boolean

            '''<Summary>
            '''Provide 'true' if you want to be contacted by SMS. Leave empty or 'false' if you do not.
            '''</Summary>
            <ApiMember(Description:="Provide 'true' if you want to be contacted by SMS. Leave empty or 'false' if you do not.")>
            Public Overridable Property contactBySMSFlag As Boolean

            '''<Summary>
            '''Provide 'true' if you want to be contacted by social media. Leave empty or 'false' if you do not.
            '''</Summary>
            <ApiMember(Description:="Provide 'true' if you want to be contacted by social media. Leave empty or 'false' if you do not.")>
            Public Overridable Property contactBySocialMediaFlag As Boolean

            '''<Summary>
            '''Sale Representative Email e.g. rauf.aliyev@richemont.com
            '''</Summary>
            <ApiMember(Description:="Sale Representative Email e.g. rauf.aliyev@richemont.com")>
            Public Overridable Property saleRepresentativeEmail As String

            '''<Summary>
            '''Consent for allowing Cross Border Data Transfer
            '''</Summary>
            <ApiMember(Description:="Consent for allowing Cross Border Data Transfer")>
            Public Overridable Property allowStoreDataAbroad As Nullable(Of Boolean)

            '''<Summary>
            '''Provide 'true' if you allow data sharing consent. Leave empty or 'false' if you do not.
            '''</Summary>
            <ApiMember(Description:="Provide 'true' if you allow data sharing consent. Leave empty or 'false' if you do not.")>
            Public Overridable Property dataSharingConsent As Nullable(Of Boolean)

            '''<Summary>
            '''Data Sharing Consent Timestamp
            '''</Summary>
            <ApiMember(Description:="Data Sharing Consent Timestamp")>
            Public Overridable Property dataSharingConsentTimestamp As String

            '''<Summary>
            '''Client Registration Date
            '''</Summary>
            <ApiMember(Description:="Client Registration Date")>
            Public Overridable Property clientRegistrationDate As String

            '''<Summary>
            '''Client Creation Date
            '''</Summary>
            <ApiMember(Description:="Client Creation Date")>
            Public Overridable Property createdOn As String

            '''<Summary>
            '''Notes
            '''</Summary>
            <ApiMember(Description:="Notes")>
            Public Overridable Property notes As String

            '''<Summary>
            '''Customer emails
            '''</Summary>
            <ApiMember(Description:="Customer emails")>
            Public Overridable Property emails As List(Of Email)

            '''<Summary>
            '''Customer phones
            '''</Summary>
            <ApiMember(Description:="Customer phones")>
            Public Overridable Property phones As List(Of Phone)

            '''<Summary>
            '''Customer addresses
            '''</Summary>
            <ApiMember(Description:="Customer addresses")>
            Public Overridable Property addresses As List(Of Address)

            '''<Summary>
            '''Customer events
            '''</Summary>
            <ApiMember(Description:="Customer events")>
            Public Overridable Property events As List(Of CustomerEventV2)

            '''<Summary>
            '''Customer interests
            '''</Summary>
            <ApiMember(Description:="Customer interests")>
            Public Overridable Property interests As List(Of Interest)

            '''<Summary>
            '''Customer hobbies
            '''</Summary>
            <ApiMember(Description:="Customer hobbies")>
            Public Overridable Property hobbies As List(Of Hobby)

            '''<Summary>
            '''Customer Product Collections
            '''</Summary>
            <ApiMember(Description:="Customer Product Collections")>
            Public Overridable Property productCollections As List(Of ProductCollection)

            '''<Summary>
            '''Registration date
            '''</Summary>
            <ApiMember(Description:="Registration date")>
            Public Overridable Property registrationDate As Nullable(Of Date)

            '''<Summary>
            '''Sap Crm Error Message
            '''</Summary>
            <ApiMember(Description:="Sap Crm Error Message")>
            Public Overridable Property sapCrmErrorMessage As String
        End Class

        Public Partial Class Hobby
            '''<Summary>
            '''Hobby description
            '''</Summary>
            <ApiMember(Description:="Hobby description", IsRequired:=true)>
            Public Overridable Property hobby As String

            '''<Summary>
            '''SAP Hobby ID, e.g. 'ART'
            '''</Summary>
            <ApiMember(Description:="SAP Hobby ID, e.g. 'ART'", IsRequired:=true)>
            Public Overridable Property sapHobbyId As String

            '''<Summary>
            '''Hobby description translation
            '''</Summary>
            <ApiMember(Description:="Hobby description translation")>
            Public Overridable Property translation As String
        End Class

        Public Partial Class Interest
            '''<Summary>
            '''Interest description
            '''</Summary>
            <ApiMember(Description:="Interest description", IsRequired:=true)>
            Public Overridable Property interest As String

            '''<Summary>
            '''SAP Interest ID, e.g. 'CA-1'
            '''</Summary>
            <ApiMember(Description:="SAP Interest ID, e.g. 'CA-1'", IsRequired:=true)>
            Public Overridable Property sapInterestId As String

            '''<Summary>
            '''Interest description translation
            '''</Summary>
            <ApiMember(Description:="Interest description translation")>
            Public Overridable Property translation As String
        End Class

        Public Partial Class Phone
            '''<Summary>
            '''Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456
            '''</Summary>
            <ApiMember(Description:="Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456", IsRequired:=true)>
            Public Overridable Property phone As String

            '''<Summary>
            '''Prefix Country Id e.g. it, fr, az
            '''</Summary>
            <ApiMember(Description:="Prefix Country Id e.g. it, fr, az", IsRequired:=true)>
            Public Overridable Property countryPrefix As String

            '''<Summary>
            '''Phone type e.g. 'Home', 'Mobile', 'Work', 'Other', 'Secondary Address'
            '''</Summary>
            <ApiMember(Description:="Phone type e.g. 'Home', 'Mobile', 'Work', 'Other', 'Secondary Address'")>
            Public Overridable Property phoneType As String

            '''<Summary>
            '''Main Phone
            '''</Summary>
            <ApiMember(Description:="Main Phone", IsRequired:=true)>
            Public Overridable Property isMainPhone As Boolean
        End Class

        Public Partial Class ProductCollection
            '''<Summary>
            '''Product Collection description
            '''</Summary>
            <ApiMember(Description:="Product Collection description", IsRequired:=true)>
            Public Overridable Property productCollection As String

            '''<Summary>
            '''SAP ProductCollection ID, e.g. 'CA-1'
            '''</Summary>
            <ApiMember(Description:="SAP ProductCollection ID, e.g. 'CA-1'", IsRequired:=true)>
            Public Overridable Property sapProductCollectionId As String

            '''<Summary>
            '''Product Collection description translation
            '''</Summary>
            <ApiMember(Description:="Product Collection description translation", IsRequired:=true)>
            Public Overridable Property translation As String
        End Class
    End Namespace
End Namespace

VB.NET GetCustomerV2 DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /customer/v2/{customerId} HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetCustomerV2Response xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Richemont.Booster2.PublicApi.CRM.ServiceModel">
  <addresses>
    <Address>
      <additionalInformation>String</additionalInformation>
      <addressType>String</addressType>
      <city>String</city>
      <countryId>String</countryId>
      <houseNumber>String</houseNumber>
      <isMainAddress>false</isMainAddress>
      <poBox>String</poBox>
      <stateId>String</stateId>
      <street>String</street>
      <street2>String</street2>
      <street3>String</street3>
      <street4>String</street4>
      <street5>String</street5>
      <zipCode>String</zipCode>
    </Address>
  </addresses>
  <allowStoreDataAbroad>false</allowStoreDataAbroad>
  <birthDate>String</birthDate>
  <boosterCustomerId>0</boosterCustomerId>
  <brand>String</brand>
  <canBeContactedByMaison>false</canBeContactedByMaison>
  <clientRegistrationDate>String</clientRegistrationDate>
  <clientType>String</clientType>
  <companyName>String</companyName>
  <contactByEmailFlag>false</contactByEmailFlag>
  <contactByMailFlag>false</contactByMailFlag>
  <contactByPhoneFlag>false</contactByPhoneFlag>
  <contactBySMSFlag>false</contactBySMSFlag>
  <contactBySocialMediaFlag>false</contactBySocialMediaFlag>
  <countryDs>String</countryDs>
  <countryId>String</countryId>
  <createdOn>String</createdOn>
  <customerReference>String</customerReference>
  <dataSharingConsent>false</dataSharingConsent>
  <dataSharingConsentTimestamp>String</dataSharingConsentTimestamp>
  <elevateCustomerId>String</elevateCustomerId>
  <emails>
    <Email>
      <email>String</email>
      <isMainEmail>false</isMainEmail>
    </Email>
  </emails>
  <events>
    <CustomerEventV2>
      <eventDate>String</eventDate>
      <eventNotes>String</eventNotes>
      <eventOtherName>String</eventOtherName>
      <eventType>String</eventType>
    </CustomerEventV2>
  </events>
  <firstName>String</firstName>
  <firstNameNotLatin>String</firstNameNotLatin>
  <gender>String</gender>
  <hobbies>
    <Hobby>
      <hobby>String</hobby>
      <sapHobbyId>String</sapHobbyId>
      <translation>String</translation>
    </Hobby>
  </hobbies>
  <interests>
    <Interest>
      <interest>String</interest>
      <sapInterestId>String</sapInterestId>
      <translation>String</translation>
    </Interest>
  </interests>
  <languageId>String</languageId>
  <lastName>String</lastName>
  <lastNameNotLatin>String</lastNameNotLatin>
  <middleName>String</middleName>
  <nameSuffix>String</nameSuffix>
  <notes>String</notes>
  <phones>
    <Phone>
      <countryPrefix>String</countryPrefix>
      <isMainPhone>false</isMainPhone>
      <phone>String</phone>
      <phoneType>String</phoneType>
    </Phone>
  </phones>
  <posCode>String</posCode>
  <preferredContactMethod>String</preferredContactMethod>
  <productCollections>
    <ProductCollection>
      <productCollection>String</productCollection>
      <sapProductCollectionId>String</sapProductCollectionId>
      <translation>String</translation>
    </ProductCollection>
  </productCollections>
  <registrationDate>0001-01-01T00:00:00</registrationDate>
  <saleRepresentativeEmail>String</saleRepresentativeEmail>
  <sapCrmErrorMessage>String</sapCrmErrorMessage>
  <sapId>String</sapId>
  <title>String</title>
  <weddingDate>String</weddingDate>
</GetCustomerV2Response>