Mercedes.Auth.API

<back to all web services

SessionTimeLeftRequest

UserSession
Requires Authentication
The following routes are available for this service:
POST/v1/User/SessionDurationGet User Remaining Session Time
import 'package:servicestack/servicestack.dart';

class SessionTimeLeftResponse implements IConvertible
{
    String? UserTokenLastModifiedDate;
    int? SessionTimeLeft;
    int? SessionPreTimeOut;
    bool? TokenExpired;
    bool? IsAuthenticated;
    bool? IsOrderManagementEnabled;
    List<int>? UserRoleId;

    SessionTimeLeftResponse({this.UserTokenLastModifiedDate,this.SessionTimeLeft,this.SessionPreTimeOut,this.TokenExpired,this.IsAuthenticated,this.IsOrderManagementEnabled,this.UserRoleId});
    SessionTimeLeftResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        UserTokenLastModifiedDate = json['UserTokenLastModifiedDate'];
        SessionTimeLeft = json['SessionTimeLeft'];
        SessionPreTimeOut = json['SessionPreTimeOut'];
        TokenExpired = json['TokenExpired'];
        IsAuthenticated = json['IsAuthenticated'];
        IsOrderManagementEnabled = json['IsOrderManagementEnabled'];
        UserRoleId = JsonConverters.fromJson(json['UserRoleId'],'List<int>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'UserTokenLastModifiedDate': UserTokenLastModifiedDate,
        'SessionTimeLeft': SessionTimeLeft,
        'SessionPreTimeOut': SessionPreTimeOut,
        'TokenExpired': TokenExpired,
        'IsAuthenticated': IsAuthenticated,
        'IsOrderManagementEnabled': IsOrderManagementEnabled,
        'UserRoleId': JsonConverters.toJson(UserRoleId,'List<int>',context!)
    };

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

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

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

TypeContext _ctx = TypeContext(library: 'prod_api_auth_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
    'SessionTimeLeftResponse': TypeInfo(TypeOf.Class, create:() => SessionTimeLeftResponse()),
    'SessionTimeLeftRequest': TypeInfo(TypeOf.Class, create:() => SessionTimeLeftRequest()),
});

Dart SessionTimeLeftRequest DTOs

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

HTTP + XML

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

POST /v1/User/SessionDuration HTTP/1.1 
Host: prod-api-auth-mb-dhc.rapp-customers.co.uk 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SessionTimeLeftRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Auth.API.ServiceModel.UserSession" />
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<SessionTimeLeftResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Auth.API.ServiceModel.UserSession">
  <IsAuthenticated>false</IsAuthenticated>
  <IsOrderManagementEnabled>false</IsOrderManagementEnabled>
  <SessionPreTimeOut>0</SessionPreTimeOut>
  <SessionTimeLeft>0</SessionTimeLeft>
  <TokenExpired>false</TokenExpired>
  <UserRoleId xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </UserRoleId>
  <UserTokenLastModifiedDate>String</UserTokenLastModifiedDate>
</SessionTimeLeftResponse>