Richemont.Booster2.PublicApi

<back to all web services

GetCustomer

Requires Authentication
The following routes are available for this service:
GET/customer/{boosterCustomerId}Get customer detailsGet Customer info based on the Booster Customer ID
namespace Richemont.Booster2.PublicApi.CRM.ServiceModel

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type CustomerEmail() = 
        ///<summary>
        ///Description
        ///</summary>
        [<ApiMember(Description="Description", IsRequired=true)>]
        member val description:String = null with get,set

        ///<summary>
        ///Email Address
        ///</summary>
        [<ApiMember(Description="Email Address", IsRequired=true)>]
        member val email:String = null with get,set

        ///<summary>
        ///Is main email address
        ///</summary>
        [<ApiMember(Description="Is main email address", IsRequired=true)>]
        member val isMain:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type CustomerPhone() = 
        ///<summary>
        ///Description
        ///</summary>
        [<ApiMember(Description="Description", IsRequired=true)>]
        member val description:String = null with get,set

        ///<summary>
        ///Phone Number
        ///</summary>
        [<ApiMember(Description="Phone Number", IsRequired=true)>]
        member val phone:String = null with get,set

        ///<summary>
        ///Is main phone number 
        ///</summary>
        [<ApiMember(Description="Is main phone number ", IsRequired=true)>]
        member val isMain:Boolean = new Boolean() with get,set

        ///<summary>
        ///Phone number country prefix
        ///</summary>
        [<ApiMember(Description="Phone number country prefix", IsRequired=true)>]
        member val prefixCountryId:String = null with get,set

        ///<summary>
        ///Telephone prefix
        ///</summary>
        [<ApiMember(Description="Telephone prefix", IsRequired=true)>]
        member val telephonePrefix:String = null with get,set

    [<AllowNullLiteral>]
    type CustomerEvent() = 
        ///<summary>
        ///Event Id
        ///</summary>
        [<ApiMember(Description="Event Id", IsRequired=true)>]
        member val eventId:Int32 = new Int32() with get,set

        ///<summary>
        ///Event Description 
        ///</summary>
        [<ApiMember(Description="Event Description ", IsRequired=true)>]
        member val eventDescription:String = null with get,set

        ///<summary>
        ///Event Other
        ///</summary>
        [<ApiMember(Description="Event Other", IsRequired=true)>]
        member val eventTypeOther:String = null with get,set

        ///<summary>
        ///Comment
        ///</summary>
        [<ApiMember(Description="Comment", IsRequired=true)>]
        member val comment:String = null with get,set

        ///<summary>
        ///Event Day
        ///</summary>
        [<ApiMember(Description="Event Day", IsRequired=true)>]
        member val eventDay:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///Event Month
        ///</summary>
        [<ApiMember(Description="Event Month", IsRequired=true)>]
        member val eventMonth:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///Event Year
        ///</summary>
        [<ApiMember(Description="Event Year", IsRequired=true)>]
        member val eventYear:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<AllowNullLiteral>]
    type GetCustomerResponse() = 
        ///<summary>
        ///Booster Customer ID
        ///</summary>
        [<ApiMember(Description="Booster Customer ID", IsRequired=true)>]
        member val id:Int32 = new Int32() with get,set

        ///<summary>
        ///SAP Customer ID
        ///</summary>
        [<ApiMember(Description="SAP Customer ID", IsRequired=true)>]
        member val sapId:String = null with get,set

        ///<summary>
        ///Customer Reference
        ///</summary>
        [<ApiMember(Description="Customer Reference", IsRequired=true)>]
        member val customerReference:String = null with get,set

        ///<summary>
        ///Gender
        ///</summary>
        [<ApiMember(Description="Gender", IsRequired=true)>]
        member val gender:String = null with get,set

        ///<summary>
        ///Personal Title
        ///</summary>
        [<ApiMember(Description="Personal Title", IsRequired=true)>]
        member val personalTitle:String = null with get,set

        ///<summary>
        ///First Name
        ///</summary>
        [<ApiMember(Description="First Name", IsRequired=true)>]
        member val firstName:String = null with get,set

        ///<summary>
        ///Customer Last Name
        ///</summary>
        [<ApiMember(Description="Customer Last Name", IsRequired=true)>]
        member val lastName:String = null with get,set

        ///<summary>
        ///First Name Not Latin
        ///</summary>
        [<ApiMember(Description="First Name Not Latin", IsRequired=true)>]
        member val firstNameNotLatin:String = null with get,set

        ///<summary>
        ///Customer Last Name Not Latin
        ///</summary>
        [<ApiMember(Description="Customer Last Name Not Latin", IsRequired=true)>]
        member val lastNameNotLatin:String = null with get,set

        ///<summary>
        ///Middle Name
        ///</summary>
        [<ApiMember(Description="Middle Name", IsRequired=true)>]
        member val middleName:String = null with get,set

        ///<summary>
        ///Can be contacted or not?
        ///</summary>
        [<ApiMember(Description="Can be contacted or not?", IsRequired=true)>]
        member val canBeContacted:Boolean = new Boolean() with get,set

        ///<summary>
        ///Language
        ///</summary>
        [<ApiMember(Description="Language", IsRequired=true)>]
        member val language:String = null with get,set

        ///<summary>
        ///Country
        ///</summary>
        [<ApiMember(Description="Country", IsRequired=true)>]
        member val countryId:String = null with get,set

        ///<summary>
        ///Brand Trigram
        ///</summary>
        [<ApiMember(Description="Brand Trigram", IsRequired=true)>]
        member val brand:String = null with get,set

        ///<summary>
        ///List of Emails
        ///</summary>
        [<ApiMember(Description="List of Emails", IsRequired=true)>]
        member val emails:ResizeArray<CustomerEmail> = new ResizeArray<CustomerEmail>() with get,set

        ///<summary>
        ///List of Phone Numbers
        ///</summary>
        [<ApiMember(Description="List of Phone Numbers", IsRequired=true)>]
        member val phones:ResizeArray<CustomerPhone> = new ResizeArray<CustomerPhone>() with get,set

        ///<summary>
        ///List of Events
        ///</summary>
        [<ApiMember(Description="List of Events", IsRequired=true)>]
        member val events:ResizeArray<CustomerEvent> = new ResizeArray<CustomerEvent>() with get,set

        ///<summary>
        ///Registration date
        ///</summary>
        [<ApiMember(Description="Registration date")>]
        member val registrationDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    [<AllowNullLiteral>]
    type GetCustomer() = 
        ///<summary>
        ///Booster Customer ID
        ///</summary>
        [<ApiMember(Description="Booster Customer ID", IsRequired=true)>]
        member val boosterCustomerId:Int32 = new Int32() with get,set

F# GetCustomer DTOs

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

HTTP + CSV

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

GET /customer/{boosterCustomerId} HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"id":0,"sapId":"String","customerReference":"String","gender":"String","personalTitle":"String","firstName":"String","lastName":"String","firstNameNotLatin":"String","lastNameNotLatin":"String","middleName":"String","canBeContacted":false,"language":"String","countryId":"String","brand":"String","emails":[{"description":"String","email":"String","isMain":false}],"phones":[{"description":"String","phone":"String","isMain":false,"prefixCountryId":"String","telephonePrefix":"String"}],"events":[{"eventId":0,"eventDescription":"String","eventTypeOther":"String","comment":"String","eventDay":0,"eventMonth":0,"eventYear":0}],"registrationDate":"\/Date(-62135596800000-0000)\/"}