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

export class CustomerEmail
{
    /** @description Description */
    // @ApiMember(Description="Description", IsRequired=true)
    public description: string;

    /** @description Email Address */
    // @ApiMember(Description="Email Address", IsRequired=true)
    public email: string;

    /** @description Is main email address */
    // @ApiMember(Description="Is main email address", IsRequired=true)
    public isMain: boolean;

    public constructor(init?: Partial<CustomerEmail>) { (Object as any).assign(this, init); }
}

export class CustomerPhone
{
    /** @description Description */
    // @ApiMember(Description="Description", IsRequired=true)
    public description: string;

    /** @description Phone Number */
    // @ApiMember(Description="Phone Number", IsRequired=true)
    public phone: string;

    /** @description Is main phone number  */
    // @ApiMember(Description="Is main phone number ", IsRequired=true)
    public isMain: boolean;

    /** @description Phone number country prefix */
    // @ApiMember(Description="Phone number country prefix", IsRequired=true)
    public prefixCountryId: string;

    /** @description Telephone prefix */
    // @ApiMember(Description="Telephone prefix", IsRequired=true)
    public telephonePrefix: string;

    public constructor(init?: Partial<CustomerPhone>) { (Object as any).assign(this, init); }
}

export class CustomerEvent
{
    /** @description Event Id */
    // @ApiMember(Description="Event Id", IsRequired=true)
    public eventId: number;

    /** @description Event Description  */
    // @ApiMember(Description="Event Description ", IsRequired=true)
    public eventDescription: string;

    /** @description Event Other */
    // @ApiMember(Description="Event Other", IsRequired=true)
    public eventTypeOther: string;

    /** @description Comment */
    // @ApiMember(Description="Comment", IsRequired=true)
    public comment: string;

    /** @description Event Day */
    // @ApiMember(Description="Event Day", IsRequired=true)
    public eventDay: number;

    /** @description Event Month */
    // @ApiMember(Description="Event Month", IsRequired=true)
    public eventMonth: number;

    /** @description Event Year */
    // @ApiMember(Description="Event Year", IsRequired=true)
    public eventYear: number;

    public constructor(init?: Partial<CustomerEvent>) { (Object as any).assign(this, init); }
}

export class GetCustomerResponse
{
    /** @description Booster Customer ID */
    // @ApiMember(Description="Booster Customer ID", IsRequired=true)
    public id: number;

    /** @description SAP Customer ID */
    // @ApiMember(Description="SAP Customer ID", IsRequired=true)
    public sapId: string;

    /** @description Customer Reference */
    // @ApiMember(Description="Customer Reference", IsRequired=true)
    public customerReference: string;

    /** @description Gender */
    // @ApiMember(Description="Gender", IsRequired=true)
    public gender: string;

    /** @description Personal Title */
    // @ApiMember(Description="Personal Title", IsRequired=true)
    public personalTitle: string;

    /** @description First Name */
    // @ApiMember(Description="First Name", IsRequired=true)
    public firstName: string;

    /** @description Customer Last Name */
    // @ApiMember(Description="Customer Last Name", IsRequired=true)
    public lastName: string;

    /** @description First Name Not Latin */
    // @ApiMember(Description="First Name Not Latin", IsRequired=true)
    public firstNameNotLatin: string;

    /** @description Customer Last Name Not Latin */
    // @ApiMember(Description="Customer Last Name Not Latin", IsRequired=true)
    public lastNameNotLatin: string;

    /** @description Middle Name */
    // @ApiMember(Description="Middle Name", IsRequired=true)
    public middleName: string;

    /** @description Can be contacted or not? */
    // @ApiMember(Description="Can be contacted or not?", IsRequired=true)
    public canBeContacted: boolean;

    /** @description Language */
    // @ApiMember(Description="Language", IsRequired=true)
    public language: string;

    /** @description Country */
    // @ApiMember(Description="Country", IsRequired=true)
    public countryId: string;

    /** @description Brand Trigram */
    // @ApiMember(Description="Brand Trigram", IsRequired=true)
    public brand: string;

    /** @description List of Emails */
    // @ApiMember(Description="List of Emails", IsRequired=true)
    public emails: CustomerEmail[];

    /** @description List of Phone Numbers */
    // @ApiMember(Description="List of Phone Numbers", IsRequired=true)
    public phones: CustomerPhone[];

    /** @description List of Events */
    // @ApiMember(Description="List of Events", IsRequired=true)
    public events: CustomerEvent[];

    /** @description Registration date */
    // @ApiMember(Description="Registration date")
    public registrationDate?: string;

    public constructor(init?: Partial<GetCustomerResponse>) { (Object as any).assign(this, init); }
}

export class GetCustomer
{
    /** @description Booster Customer ID */
    // @ApiMember(Description="Booster Customer ID", IsRequired=true)
    public boosterCustomerId: number;

    public constructor(init?: Partial<GetCustomer>) { (Object as any).assign(this, init); }
}

TypeScript 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
}