| GET | /customer/v2/{customerId} | Get customer details | Get 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
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
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/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"boosterCustomerId":0,"elevateCustomerId":"String","sapId":"String","title":"String","firstName":"String","lastName":"String","firstNameNotLatin":"String","lastNameNotLatin":"String","middleName":"String","nameSuffix":"String","canBeContactedByMaison":false,"clientType":"String","companyName":"String","languageId":"String","gender":"String","countryId":"String","countryDs":"String","birthDate":"String","customerReference":"String","posCode":"String","brand":"String","weddingDate":"String","preferredContactMethod":"String","contactByEmailFlag":false,"contactByMailFlag":false,"contactByPhoneFlag":false,"contactBySMSFlag":false,"contactBySocialMediaFlag":false,"saleRepresentativeEmail":"String","allowStoreDataAbroad":false,"dataSharingConsent":false,"dataSharingConsentTimestamp":"String","clientRegistrationDate":"String","createdOn":"String","notes":"String","emails":[{"email":"String","isMainEmail":false}],"phones":[{"phone":"String","countryPrefix":"String","phoneType":"String","isMainPhone":false}],"addresses":[{"addressType":"String","countryId":"String","houseNumber":"String","stateId":"String","city":"String","zipCode":"String","street":"String","street2":"String","street3":"String","street4":"String","street5":"String","isMainAddress":false,"poBox":"String","additionalInformation":"String"}],"events":[{"eventType":"String","eventDate":"String","eventNotes":"String","eventOtherName":"String"}],"interests":[{"interest":"String","sapInterestId":"String","translation":"String"}],"hobbies":[{"hobby":"String","sapHobbyId":"String","translation":"String"}],"productCollections":[{"productCollection":"String","sapProductCollectionId":"String","translation":"String"}],"registrationDate":"\/Date(-62135596800000-0000)\/","sapCrmErrorMessage":"String"}