Richemont.Booster2.PublicApi

<back to all web services

GetSerialNumberDetails

Requires Authentication
The following routes are available for this service:
GET/serialnumber/{articleCode}/{serialNumber}Get a serial number with details
import 'package:servicestack/servicestack.dart';

class Service implements IConvertible
{
    /**
    * Language Code
    */
    // @ApiMember(Description="Language Code")
    String? languageCode;

    /**
    * Service
    */
    // @ApiMember(Description="Service")
    String? service;

    Service({this.languageCode,this.service});
    Service.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        languageCode = json['languageCode'];
        service = json['service'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'languageCode': languageCode,
        'service': service
    };

    getTypeName() => "Service";
    TypeContext? context = _ctx;
}

class GetSerialNumberDetailsResponse implements IConvertible
{
    /**
    * Brand
    */
    // @ApiMember(Description="Brand")
    String? brand;

    /**
    * Article code
    */
    // @ApiMember(Description="Article code", IsRequired=true)
    String? articleCode;

    /**
    * Serial Number
    */
    // @ApiMember(Description="Serial Number", IsRequired=true)
    String? serialNumber;

    /**
    * Article Description
    */
    // @ApiMember(Description="Article Description")
    String? articleDescription;

    /**
    * Warranty Start Date
    */
    // @ApiMember(Description="Warranty Start Date")
    String? warrantyStartDate;

    /**
    * Warranty End Date
    */
    // @ApiMember(Description="Warranty End Date")
    String? warrantyEndDate;

    /**
    * Last Repair Date
    */
    // @ApiMember(Description="Last Repair Date")
    String? lastRepairDate;

    /**
    * Sell In Date
    */
    // @ApiMember(Description="Sell In Date")
    String? sellInDate;

    /**
    * Last Repair Site
    */
    // @ApiMember(Description="Last Repair Site")
    String? lastRepairSite;

    /**
    * Services
    */
    // @ApiMember(Description="Services")
    List<Service>? services;

    /**
    * Enquirus lost or stolen
    */
    // @ApiMember(Description="Enquirus lost or stolen")
    bool? lostOrStolenStatus;

    /**
    * Warranty CPO Start Date
    */
    // @ApiMember(Description="Warranty CPO Start Date")
    String? warrantyResaleStartDate;

    /**
    * Warranty CPO End Date
    */
    // @ApiMember(Description="Warranty CPO End Date")
    String? warrantyResaleEndDate;

    GetSerialNumberDetailsResponse({this.brand,this.articleCode,this.serialNumber,this.articleDescription,this.warrantyStartDate,this.warrantyEndDate,this.lastRepairDate,this.sellInDate,this.lastRepairSite,this.services,this.lostOrStolenStatus,this.warrantyResaleStartDate,this.warrantyResaleEndDate});
    GetSerialNumberDetailsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        brand = json['brand'];
        articleCode = json['articleCode'];
        serialNumber = json['serialNumber'];
        articleDescription = json['articleDescription'];
        warrantyStartDate = json['warrantyStartDate'];
        warrantyEndDate = json['warrantyEndDate'];
        lastRepairDate = json['lastRepairDate'];
        sellInDate = json['sellInDate'];
        lastRepairSite = json['lastRepairSite'];
        services = JsonConverters.fromJson(json['services'],'List<Service>',context!);
        lostOrStolenStatus = json['lostOrStolenStatus'];
        warrantyResaleStartDate = json['warrantyResaleStartDate'];
        warrantyResaleEndDate = json['warrantyResaleEndDate'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'brand': brand,
        'articleCode': articleCode,
        'serialNumber': serialNumber,
        'articleDescription': articleDescription,
        'warrantyStartDate': warrantyStartDate,
        'warrantyEndDate': warrantyEndDate,
        'lastRepairDate': lastRepairDate,
        'sellInDate': sellInDate,
        'lastRepairSite': lastRepairSite,
        'services': JsonConverters.toJson(services,'List<Service>',context!),
        'lostOrStolenStatus': lostOrStolenStatus,
        'warrantyResaleStartDate': warrantyResaleStartDate,
        'warrantyResaleEndDate': warrantyResaleEndDate
    };

    getTypeName() => "GetSerialNumberDetailsResponse";
    TypeContext? context = _ctx;
}

class GetSerialNumberDetails implements IConvertible
{
    /**
    * Article Code
    */
    // @ApiMember(Description="Article Code", IsRequired=true)
    String? articleCode;

    /**
    * Serial Number
    */
    // @ApiMember(Description="Serial Number", IsRequired=true)
    String? serialNumber;

    /**
    * POS Code e.g. ES100:102048
    */
    // @ApiMember(Description="POS Code e.g. ES100:102048")
    String? posCode;

    GetSerialNumberDetails({this.articleCode,this.serialNumber,this.posCode});
    GetSerialNumberDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        articleCode = json['articleCode'];
        serialNumber = json['serialNumber'];
        posCode = json['posCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'articleCode': articleCode,
        'serialNumber': serialNumber,
        'posCode': posCode
    };

    getTypeName() => "GetSerialNumberDetails";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: <String, TypeInfo> {
    'Service': TypeInfo(TypeOf.Class, create:() => Service()),
    'GetSerialNumberDetailsResponse': TypeInfo(TypeOf.Class, create:() => GetSerialNumberDetailsResponse()),
    'List<Service>': TypeInfo(TypeOf.Class, create:() => <Service>[]),
    'GetSerialNumberDetails': TypeInfo(TypeOf.Class, create:() => GetSerialNumberDetails()),
});

Dart GetSerialNumberDetails 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 /serialnumber/{articleCode}/{serialNumber} HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"brand":"String","articleCode":"String","serialNumber":"String","articleDescription":"String","warrantyStartDate":"String","warrantyEndDate":"String","lastRepairDate":"String","sellInDate":"String","lastRepairSite":"String","services":[{"languageCode":"String","service":"String"}],"lostOrStolenStatus":false,"warrantyResaleStartDate":"String","warrantyResaleEndDate":"String"}