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
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*


open class GetCustomer
{
    /**
    * Booster Customer ID
    */
    @ApiMember(Description="Booster Customer ID", IsRequired=true)
    open var boosterCustomerId:Int? = null
}

open class GetCustomerResponse
{
    /**
    * Booster Customer ID
    */
    @ApiMember(Description="Booster Customer ID", IsRequired=true)
    open var id:Int? = null

    /**
    * SAP Customer ID
    */
    @ApiMember(Description="SAP Customer ID", IsRequired=true)
    open var sapId:String? = null

    /**
    * Customer Reference
    */
    @ApiMember(Description="Customer Reference", IsRequired=true)
    open var customerReference:String? = null

    /**
    * Gender
    */
    @ApiMember(Description="Gender", IsRequired=true)
    open var gender:String? = null

    /**
    * Personal Title
    */
    @ApiMember(Description="Personal Title", IsRequired=true)
    open var personalTitle:String? = null

    /**
    * First Name
    */
    @ApiMember(Description="First Name", IsRequired=true)
    open var firstName:String? = null

    /**
    * Customer Last Name
    */
    @ApiMember(Description="Customer Last Name", IsRequired=true)
    open var lastName:String? = null

    /**
    * First Name Not Latin
    */
    @ApiMember(Description="First Name Not Latin", IsRequired=true)
    open var firstNameNotLatin:String? = null

    /**
    * Customer Last Name Not Latin
    */
    @ApiMember(Description="Customer Last Name Not Latin", IsRequired=true)
    open var lastNameNotLatin:String? = null

    /**
    * Middle Name
    */
    @ApiMember(Description="Middle Name", IsRequired=true)
    open var middleName:String? = null

    /**
    * Can be contacted or not?
    */
    @ApiMember(Description="Can be contacted or not?", IsRequired=true)
    open var canBeContacted:Boolean? = null

    /**
    * Language
    */
    @ApiMember(Description="Language", IsRequired=true)
    open var language:String? = null

    /**
    * Country
    */
    @ApiMember(Description="Country", IsRequired=true)
    open var countryId:String? = null

    /**
    * Brand Trigram
    */
    @ApiMember(Description="Brand Trigram", IsRequired=true)
    open var brand:String? = null

    /**
    * List of Emails
    */
    @ApiMember(Description="List of Emails", IsRequired=true)
    open var emails:ArrayList<CustomerEmail> = ArrayList<CustomerEmail>()

    /**
    * List of Phone Numbers
    */
    @ApiMember(Description="List of Phone Numbers", IsRequired=true)
    open var phones:ArrayList<CustomerPhone> = ArrayList<CustomerPhone>()

    /**
    * List of Events
    */
    @ApiMember(Description="List of Events", IsRequired=true)
    open var events:ArrayList<CustomerEvent> = ArrayList<CustomerEvent>()

    /**
    * Registration date
    */
    @ApiMember(Description="Registration date")
    open var registrationDate:Date? = null
}

open class CustomerEmail
{
    /**
    * Description
    */
    @ApiMember(Description="Description", IsRequired=true)
    open var description:String? = null

    /**
    * Email Address
    */
    @ApiMember(Description="Email Address", IsRequired=true)
    open var email:String? = null

    /**
    * Is main email address
    */
    @ApiMember(Description="Is main email address", IsRequired=true)
    open var isMain:Boolean? = null
}

open class CustomerPhone
{
    /**
    * Description
    */
    @ApiMember(Description="Description", IsRequired=true)
    open var description:String? = null

    /**
    * Phone Number
    */
    @ApiMember(Description="Phone Number", IsRequired=true)
    open var phone:String? = null

    /**
    * Is main phone number 
    */
    @ApiMember(Description="Is main phone number ", IsRequired=true)
    open var isMain:Boolean? = null

    /**
    * Phone number country prefix
    */
    @ApiMember(Description="Phone number country prefix", IsRequired=true)
    open var prefixCountryId:String? = null

    /**
    * Telephone prefix
    */
    @ApiMember(Description="Telephone prefix", IsRequired=true)
    open var telephonePrefix:String? = null
}

open class CustomerEvent
{
    /**
    * Event Id
    */
    @ApiMember(Description="Event Id", IsRequired=true)
    open var eventId:Int? = null

    /**
    * Event Description 
    */
    @ApiMember(Description="Event Description ", IsRequired=true)
    open var eventDescription:String? = null

    /**
    * Event Other
    */
    @ApiMember(Description="Event Other", IsRequired=true)
    open var eventTypeOther:String? = null

    /**
    * Comment
    */
    @ApiMember(Description="Comment", IsRequired=true)
    open var comment:String? = null

    /**
    * Event Day
    */
    @ApiMember(Description="Event Day", IsRequired=true)
    open var eventDay:Int? = null

    /**
    * Event Month
    */
    @ApiMember(Description="Event Month", IsRequired=true)
    open var eventMonth:Int? = null

    /**
    * Event Year
    */
    @ApiMember(Description="Event Year", IsRequired=true)
    open var eventYear:Int? = null
}

Kotlin GetCustomer DTOs

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

HTTP + JSV

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/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
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: 0001-01-01
}