Mercedes.VehicleManagement.API

<back to all web services

HealthRequest

The following routes are available for this service:
GET/status
import 'package:servicestack/servicestack.dart';

enum HealthStatus
{
    Unhealthy,
    Degraded,
    Healthy,
}

class HealthCheckReportEntry implements IConvertible
{
    String? key;
    String? description;
    Duration? duration;
    HealthStatus? status;
    String? error;

    HealthCheckReportEntry({this.key,this.description,this.duration,this.status,this.error});
    HealthCheckReportEntry.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        key = json['key'];
        description = json['description'];
        duration = JsonConverters.fromJson(json['duration'],'Duration',context!);
        status = JsonConverters.fromJson(json['status'],'HealthStatus',context!);
        error = json['error'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'key': key,
        'description': description,
        'duration': JsonConverters.toJson(duration,'Duration',context!),
        'status': JsonConverters.toJson(status,'HealthStatus',context!),
        'error': error
    };

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

class HealthCheckReport implements IConvertible
{
    HealthStatus? status;
    Duration? duration;
    String? version;
    String? buildDate;
    List<HealthCheckReportEntry>? entries;

    HealthCheckReport({this.status,this.duration,this.version,this.buildDate,this.entries});
    HealthCheckReport.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        status = JsonConverters.fromJson(json['status'],'HealthStatus',context!);
        duration = JsonConverters.fromJson(json['duration'],'Duration',context!);
        version = json['version'];
        buildDate = json['buildDate'];
        entries = JsonConverters.fromJson(json['entries'],'List<HealthCheckReportEntry>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'status': JsonConverters.toJson(status,'HealthStatus',context!),
        'duration': JsonConverters.toJson(duration,'Duration',context!),
        'version': version,
        'buildDate': buildDate,
        'entries': JsonConverters.toJson(entries,'List<HealthCheckReportEntry>',context!)
    };

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

class HealthResponse implements IConvertible
{
    HealthCheckReport? result;

    HealthResponse({this.result});
    HealthResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        result = JsonConverters.fromJson(json['result'],'HealthCheckReport',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'result': JsonConverters.toJson(result,'HealthCheckReport',context!)
    };

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

class HealthRequest implements IGet, IConvertible
{
    HealthRequest();
    HealthRequest.fromJson(Map<String, dynamic> json) : super();
    fromMap(Map<String, dynamic> json) {
        return this;
    }

    Map<String, dynamic> toJson() => {};
    getTypeName() => "HealthRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'uat_api_vehicle_mgt_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
    'HealthStatus': TypeInfo(TypeOf.Enum, enumValues:HealthStatus.values),
    'HealthCheckReportEntry': TypeInfo(TypeOf.Class, create:() => HealthCheckReportEntry()),
    'HealthCheckReport': TypeInfo(TypeOf.Class, create:() => HealthCheckReport()),
    'List<HealthCheckReportEntry>': TypeInfo(TypeOf.Class, create:() => <HealthCheckReportEntry>[]),
    'HealthResponse': TypeInfo(TypeOf.Class, create:() => HealthResponse()),
    'HealthRequest': TypeInfo(TypeOf.Class, create:() => HealthRequest()),
});

Dart HealthRequest 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 /status HTTP/1.1 
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"result":{"status":"Unhealthy","duration":"PT0S","version":"String","buildDate":"String"}}