FIBUdataServiceStack

<back to all web services

LoginMandantRequest

The following routes are available for this service:
GET, POST/auth/LoginMandant
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class mandlogin implements IMandnr, IPrimaryKey, ITableBaseErstelltAenderung, IConvertible
{
    int? Mandnr;
    DateTime? _erstellt;
    DateTime? _aenderung;
    int? Bnr;
    String? Passw;
    String? Email;
    String? PasswMD5;
    String? Kurzbezeichnung;
    int? IMGSec;
    String? auth_email;
    String? auth_token;
    int? Beraternr;
    int? BerMandantNr;
    int? Dbnr;
    double? Ver;
    String? Altern;
    String? Updatedatei;
    DateTime? Zugriffdat;
    double? Version;
    String? Pwberater_ALT;
    String? Pwberater;
    int? Post;
    String? Name;
    String? Strasse;
    String? Ort;
    int? Briefkasten;
    int? Mustermandant;
    int? Einzug;
    int? Konto;
    int? BLZ;
    String? Bank;
    String? Plz;
    String? Land;
    int? BMid;
    int? Bernrind;
    int? Speicherzeit;
    String? Kne;
    String? berater_zugriffsrechte_ids;
    int? plus_digifibu;
    DateTime? ersterlogin;
    DateTime? letzterlogin;
    int? abrechnung;
    int? gesamtrecht;
    String? datev_wj;
    int? skr_typ;
    String? skontozuordnung;
    int? gutschein;
    String? briefkastenArbeitsanweisung;
    String? kontaktTelefon;
    String? kontaktEmail;
    int? demo;
    DateTime? demo_reg_am;
    DateTime? demo_gueltig_bis;
    String? fibu_ext_login;
    int? isSkontoImmer;
    int? is_kne_nur_personen;
    int? is_ust_erfassung;
    String? mail_user;
    String? mail_adresse;
    String? mail_passwort;
    String? mail_passwort_aes;
    String? steuernummer;
    String? steuerid;
    int? ustva_typ;
    int? ustva_fertig;
    String? elster_steuernummer;
    String? fakt_uni1_bez;
    String? fakt_uni2_bez;
    String? fakt_uni1_regex;
    String? fakt_uni2_regex;
    String? fakt_text;
    String? sepa_gl_id;
    int? umstellung;
    String? hardlock;
    String? mahngebuer;
    String? mahnzins;
    String? mahntage;
    int? freigabe10;
    int? plusbearbeitung;
    String? iban_zugferd;
    String? universal;
    String? fremd_ID;
    String? freiFeld;
    String? kuerzel;
    String? buchhaltungstyp;
    DateTime? freigabe;
    String? mobil;
    String? hashtags;
    String? sstelle;
    String? sstelle_stamm;
    String? beraternummer_export;
    String? fibu_interface;
    // @Ignore()
    int? mandant;

    // @Ignore()
    int? PrimaryKey;

    // @Ignore()
    int? bd_anzahl1;

    mandlogin({this.Mandnr,this._erstellt,this._aenderung,this.Bnr,this.Passw,this.Email,this.PasswMD5,this.Kurzbezeichnung,this.IMGSec,this.auth_email,this.auth_token,this.Beraternr,this.BerMandantNr,this.Dbnr,this.Ver,this.Altern,this.Updatedatei,this.Zugriffdat,this.Version,this.Pwberater_ALT,this.Pwberater,this.Post,this.Name,this.Strasse,this.Ort,this.Briefkasten,this.Mustermandant,this.Einzug,this.Konto,this.BLZ,this.Bank,this.Plz,this.Land,this.BMid,this.Bernrind,this.Speicherzeit,this.Kne,this.berater_zugriffsrechte_ids,this.plus_digifibu,this.ersterlogin,this.letzterlogin,this.abrechnung,this.gesamtrecht,this.datev_wj,this.skr_typ,this.skontozuordnung,this.gutschein,this.briefkastenArbeitsanweisung,this.kontaktTelefon,this.kontaktEmail,this.demo,this.demo_reg_am,this.demo_gueltig_bis,this.fibu_ext_login,this.isSkontoImmer,this.is_kne_nur_personen,this.is_ust_erfassung,this.mail_user,this.mail_adresse,this.mail_passwort,this.mail_passwort_aes,this.steuernummer,this.steuerid,this.ustva_typ,this.ustva_fertig,this.elster_steuernummer,this.fakt_uni1_bez,this.fakt_uni2_bez,this.fakt_uni1_regex,this.fakt_uni2_regex,this.fakt_text,this.sepa_gl_id,this.umstellung,this.hardlock,this.mahngebuer,this.mahnzins,this.mahntage,this.freigabe10,this.plusbearbeitung,this.iban_zugferd,this.universal,this.fremd_ID,this.freiFeld,this.kuerzel,this.buchhaltungstyp,this.freigabe,this.mobil,this.hashtags,this.sstelle,this.sstelle_stamm,this.beraternummer_export,this.fibu_interface,this.mandant,this.PrimaryKey,this.bd_anzahl1});
    mandlogin.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Mandnr = json['Mandnr'];
        _erstellt = JsonConverters.fromJson(json['_erstellt'],'DateTime',context!);
        _aenderung = JsonConverters.fromJson(json['_aenderung'],'DateTime',context!);
        Bnr = json['Bnr'];
        Passw = json['Passw'];
        Email = json['Email'];
        PasswMD5 = json['PasswMD5'];
        Kurzbezeichnung = json['Kurzbezeichnung'];
        IMGSec = json['IMGSec'];
        auth_email = json['auth_email'];
        auth_token = json['auth_token'];
        Beraternr = json['Beraternr'];
        BerMandantNr = json['BerMandantNr'];
        Dbnr = json['Dbnr'];
        Ver = JsonConverters.toDouble(json['Ver']);
        Altern = json['Altern'];
        Updatedatei = json['Updatedatei'];
        Zugriffdat = JsonConverters.fromJson(json['Zugriffdat'],'DateTime',context!);
        Version = JsonConverters.toDouble(json['Version']);
        Pwberater_ALT = json['Pwberater_ALT'];
        Pwberater = json['Pwberater'];
        Post = json['Post'];
        Name = json['Name'];
        Strasse = json['Strasse'];
        Ort = json['Ort'];
        Briefkasten = json['Briefkasten'];
        Mustermandant = json['Mustermandant'];
        Einzug = json['Einzug'];
        Konto = json['Konto'];
        BLZ = json['BLZ'];
        Bank = json['Bank'];
        Plz = json['Plz'];
        Land = json['Land'];
        BMid = json['BMid'];
        Bernrind = json['Bernrind'];
        Speicherzeit = json['Speicherzeit'];
        Kne = json['Kne'];
        berater_zugriffsrechte_ids = json['berater_zugriffsrechte_ids'];
        plus_digifibu = json['plus_digifibu'];
        ersterlogin = JsonConverters.fromJson(json['ersterlogin'],'DateTime',context!);
        letzterlogin = JsonConverters.fromJson(json['letzterlogin'],'DateTime',context!);
        abrechnung = json['abrechnung'];
        gesamtrecht = json['gesamtrecht'];
        datev_wj = json['datev_wj'];
        skr_typ = json['skr_typ'];
        skontozuordnung = json['skontozuordnung'];
        gutschein = json['gutschein'];
        briefkastenArbeitsanweisung = json['briefkastenArbeitsanweisung'];
        kontaktTelefon = json['kontaktTelefon'];
        kontaktEmail = json['kontaktEmail'];
        demo = json['demo'];
        demo_reg_am = JsonConverters.fromJson(json['demo_reg_am'],'DateTime',context!);
        demo_gueltig_bis = JsonConverters.fromJson(json['demo_gueltig_bis'],'DateTime',context!);
        fibu_ext_login = json['fibu_ext_login'];
        isSkontoImmer = json['isSkontoImmer'];
        is_kne_nur_personen = json['is_kne_nur_personen'];
        is_ust_erfassung = json['is_ust_erfassung'];
        mail_user = json['mail_user'];
        mail_adresse = json['mail_adresse'];
        mail_passwort = json['mail_passwort'];
        mail_passwort_aes = json['mail_passwort_aes'];
        steuernummer = json['steuernummer'];
        steuerid = json['steuerid'];
        ustva_typ = json['ustva_typ'];
        ustva_fertig = json['ustva_fertig'];
        elster_steuernummer = json['elster_steuernummer'];
        fakt_uni1_bez = json['fakt_uni1_bez'];
        fakt_uni2_bez = json['fakt_uni2_bez'];
        fakt_uni1_regex = json['fakt_uni1_regex'];
        fakt_uni2_regex = json['fakt_uni2_regex'];
        fakt_text = json['fakt_text'];
        sepa_gl_id = json['sepa_gl_id'];
        umstellung = json['umstellung'];
        hardlock = json['hardlock'];
        mahngebuer = json['mahngebuer'];
        mahnzins = json['mahnzins'];
        mahntage = json['mahntage'];
        freigabe10 = json['freigabe10'];
        plusbearbeitung = json['plusbearbeitung'];
        iban_zugferd = json['iban_zugferd'];
        universal = json['universal'];
        fremd_ID = json['fremd_ID'];
        freiFeld = json['freiFeld'];
        kuerzel = json['kuerzel'];
        buchhaltungstyp = json['buchhaltungstyp'];
        freigabe = JsonConverters.fromJson(json['freigabe'],'DateTime',context!);
        mobil = json['mobil'];
        hashtags = json['hashtags'];
        sstelle = json['sstelle'];
        sstelle_stamm = json['sstelle_stamm'];
        beraternummer_export = json['beraternummer_export'];
        fibu_interface = json['fibu_interface'];
        mandant = json['mandant'];
        PrimaryKey = json['PrimaryKey'];
        bd_anzahl1 = json['bd_anzahl1'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Mandnr': Mandnr,
        '_erstellt': JsonConverters.toJson(_erstellt,'DateTime',context!),
        '_aenderung': JsonConverters.toJson(_aenderung,'DateTime',context!),
        'Bnr': Bnr,
        'Passw': Passw,
        'Email': Email,
        'PasswMD5': PasswMD5,
        'Kurzbezeichnung': Kurzbezeichnung,
        'IMGSec': IMGSec,
        'auth_email': auth_email,
        'auth_token': auth_token,
        'Beraternr': Beraternr,
        'BerMandantNr': BerMandantNr,
        'Dbnr': Dbnr,
        'Ver': Ver,
        'Altern': Altern,
        'Updatedatei': Updatedatei,
        'Zugriffdat': JsonConverters.toJson(Zugriffdat,'DateTime',context!),
        'Version': Version,
        'Pwberater_ALT': Pwberater_ALT,
        'Pwberater': Pwberater,
        'Post': Post,
        'Name': Name,
        'Strasse': Strasse,
        'Ort': Ort,
        'Briefkasten': Briefkasten,
        'Mustermandant': Mustermandant,
        'Einzug': Einzug,
        'Konto': Konto,
        'BLZ': BLZ,
        'Bank': Bank,
        'Plz': Plz,
        'Land': Land,
        'BMid': BMid,
        'Bernrind': Bernrind,
        'Speicherzeit': Speicherzeit,
        'Kne': Kne,
        'berater_zugriffsrechte_ids': berater_zugriffsrechte_ids,
        'plus_digifibu': plus_digifibu,
        'ersterlogin': JsonConverters.toJson(ersterlogin,'DateTime',context!),
        'letzterlogin': JsonConverters.toJson(letzterlogin,'DateTime',context!),
        'abrechnung': abrechnung,
        'gesamtrecht': gesamtrecht,
        'datev_wj': datev_wj,
        'skr_typ': skr_typ,
        'skontozuordnung': skontozuordnung,
        'gutschein': gutschein,
        'briefkastenArbeitsanweisung': briefkastenArbeitsanweisung,
        'kontaktTelefon': kontaktTelefon,
        'kontaktEmail': kontaktEmail,
        'demo': demo,
        'demo_reg_am': JsonConverters.toJson(demo_reg_am,'DateTime',context!),
        'demo_gueltig_bis': JsonConverters.toJson(demo_gueltig_bis,'DateTime',context!),
        'fibu_ext_login': fibu_ext_login,
        'isSkontoImmer': isSkontoImmer,
        'is_kne_nur_personen': is_kne_nur_personen,
        'is_ust_erfassung': is_ust_erfassung,
        'mail_user': mail_user,
        'mail_adresse': mail_adresse,
        'mail_passwort': mail_passwort,
        'mail_passwort_aes': mail_passwort_aes,
        'steuernummer': steuernummer,
        'steuerid': steuerid,
        'ustva_typ': ustva_typ,
        'ustva_fertig': ustva_fertig,
        'elster_steuernummer': elster_steuernummer,
        'fakt_uni1_bez': fakt_uni1_bez,
        'fakt_uni2_bez': fakt_uni2_bez,
        'fakt_uni1_regex': fakt_uni1_regex,
        'fakt_uni2_regex': fakt_uni2_regex,
        'fakt_text': fakt_text,
        'sepa_gl_id': sepa_gl_id,
        'umstellung': umstellung,
        'hardlock': hardlock,
        'mahngebuer': mahngebuer,
        'mahnzins': mahnzins,
        'mahntage': mahntage,
        'freigabe10': freigabe10,
        'plusbearbeitung': plusbearbeitung,
        'iban_zugferd': iban_zugferd,
        'universal': universal,
        'fremd_ID': fremd_ID,
        'freiFeld': freiFeld,
        'kuerzel': kuerzel,
        'buchhaltungstyp': buchhaltungstyp,
        'freigabe': JsonConverters.toJson(freigabe,'DateTime',context!),
        'mobil': mobil,
        'hashtags': hashtags,
        'sstelle': sstelle,
        'sstelle_stamm': sstelle_stamm,
        'beraternummer_export': beraternummer_export,
        'fibu_interface': fibu_interface,
        'mandant': mandant,
        'PrimaryKey': PrimaryKey,
        'bd_anzahl1': bd_anzahl1
    };

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

class zugriffsrechte implements IMandnr, IPrimaryKey, INutzerid, ITableBaseErstelltAenderung, IPKindex, IConvertible
{
    int? ID;
    DateTime? _erstellt;
    DateTime? _aenderung;
    int? Mandnr;
    String? PasswMD5;
    String? Name;
    String? Vorname;
    String? EMail;
    String? EMail_tax;
    String? auth_token;
    String? auth_email;
    int? Rechte;
    int? Gruppe;
    int? Aktiv;
    int? Admin;
    DateTime? Anlagedatum;
    String? guid;
    int? pers_typ;
    String? hardlock;
    double? stundensatz;
    int? freigabeberechtigter;
    int? vertretung;
    int? genehmiger;
    DateTime? eintritt;
    DateTime? austritt;
    String? abteilung_guid;
    bool? negativurlaub;
    bool? Alturlaub;
    int? bundesland;
    Uint8List? bild;
    String? mobil;
    DateTime? geburtstag;
    int? privatsspaehre;
    int? intern;
    String? strasse;
    String? plz;
    String? ort;
    bool? isAcc;
    String? email_abruf;
    String? email_abruf_tax;
    String? recht_taetigkeittyp;
    String? rechte_acc;
    String? bemerkung;
    int? is_main_mail;
    int? two_factor_method;
    int? two_factor_enabled;
    String? two_factor_secret;
    String? two_factor_backup_codes;
    DateTime? two_factor_enabled_date;
    int? two_factor_failed_attempts;
    DateTime? two_factor_last_failure;
    int? two_factor_is_lockedout;
    int? default_ja;
    int? default_fibu;
    int? default_lohn;
    int? default_acc;
    int? default_vw;
    bool? rechte_intern_mandanten;
    int? PKIndex;
    // @Ignore()
    int? mandant;

    // @Ignore()
    int? PrimaryKey;

    // @Ignore()
    int? nutzerid;

    zugriffsrechte({this.ID,this._erstellt,this._aenderung,this.Mandnr,this.PasswMD5,this.Name,this.Vorname,this.EMail,this.EMail_tax,this.auth_token,this.auth_email,this.Rechte,this.Gruppe,this.Aktiv,this.Admin,this.Anlagedatum,this.guid,this.pers_typ,this.hardlock,this.stundensatz,this.freigabeberechtigter,this.vertretung,this.genehmiger,this.eintritt,this.austritt,this.abteilung_guid,this.negativurlaub,this.Alturlaub,this.bundesland,this.bild,this.mobil,this.geburtstag,this.privatsspaehre,this.intern,this.strasse,this.plz,this.ort,this.isAcc,this.email_abruf,this.email_abruf_tax,this.recht_taetigkeittyp,this.rechte_acc,this.bemerkung,this.is_main_mail,this.two_factor_method,this.two_factor_enabled,this.two_factor_secret,this.two_factor_backup_codes,this.two_factor_enabled_date,this.two_factor_failed_attempts,this.two_factor_last_failure,this.two_factor_is_lockedout,this.default_ja,this.default_fibu,this.default_lohn,this.default_acc,this.default_vw,this.rechte_intern_mandanten,this.PKIndex,this.mandant,this.PrimaryKey,this.nutzerid});
    zugriffsrechte.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ID = json['ID'];
        _erstellt = JsonConverters.fromJson(json['_erstellt'],'DateTime',context!);
        _aenderung = JsonConverters.fromJson(json['_aenderung'],'DateTime',context!);
        Mandnr = json['Mandnr'];
        PasswMD5 = json['PasswMD5'];
        Name = json['Name'];
        Vorname = json['Vorname'];
        EMail = json['EMail'];
        EMail_tax = json['EMail_tax'];
        auth_token = json['auth_token'];
        auth_email = json['auth_email'];
        Rechte = json['Rechte'];
        Gruppe = json['Gruppe'];
        Aktiv = json['Aktiv'];
        Admin = json['Admin'];
        Anlagedatum = JsonConverters.fromJson(json['Anlagedatum'],'DateTime',context!);
        guid = json['guid'];
        pers_typ = json['pers_typ'];
        hardlock = json['hardlock'];
        stundensatz = JsonConverters.toDouble(json['stundensatz']);
        freigabeberechtigter = json['freigabeberechtigter'];
        vertretung = json['vertretung'];
        genehmiger = json['genehmiger'];
        eintritt = JsonConverters.fromJson(json['eintritt'],'DateTime',context!);
        austritt = JsonConverters.fromJson(json['austritt'],'DateTime',context!);
        abteilung_guid = json['abteilung_guid'];
        negativurlaub = json['negativurlaub'];
        Alturlaub = json['Alturlaub'];
        bundesland = json['bundesland'];
        bild = JsonConverters.fromJson(json['bild'],'Uint8List',context!);
        mobil = json['mobil'];
        geburtstag = JsonConverters.fromJson(json['geburtstag'],'DateTime',context!);
        privatsspaehre = json['privatsspaehre'];
        intern = json['intern'];
        strasse = json['strasse'];
        plz = json['plz'];
        ort = json['ort'];
        isAcc = json['isAcc'];
        email_abruf = json['email_abruf'];
        email_abruf_tax = json['email_abruf_tax'];
        recht_taetigkeittyp = json['recht_taetigkeittyp'];
        rechte_acc = json['rechte_acc'];
        bemerkung = json['bemerkung'];
        is_main_mail = json['is_main_mail'];
        two_factor_method = json['two_factor_method'];
        two_factor_enabled = json['two_factor_enabled'];
        two_factor_secret = json['two_factor_secret'];
        two_factor_backup_codes = json['two_factor_backup_codes'];
        two_factor_enabled_date = JsonConverters.fromJson(json['two_factor_enabled_date'],'DateTime',context!);
        two_factor_failed_attempts = json['two_factor_failed_attempts'];
        two_factor_last_failure = JsonConverters.fromJson(json['two_factor_last_failure'],'DateTime',context!);
        two_factor_is_lockedout = json['two_factor_is_lockedout'];
        default_ja = json['default_ja'];
        default_fibu = json['default_fibu'];
        default_lohn = json['default_lohn'];
        default_acc = json['default_acc'];
        default_vw = json['default_vw'];
        rechte_intern_mandanten = json['rechte_intern_mandanten'];
        PKIndex = json['PKIndex'];
        mandant = json['mandant'];
        PrimaryKey = json['PrimaryKey'];
        nutzerid = json['nutzerid'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ID': ID,
        '_erstellt': JsonConverters.toJson(_erstellt,'DateTime',context!),
        '_aenderung': JsonConverters.toJson(_aenderung,'DateTime',context!),
        'Mandnr': Mandnr,
        'PasswMD5': PasswMD5,
        'Name': Name,
        'Vorname': Vorname,
        'EMail': EMail,
        'EMail_tax': EMail_tax,
        'auth_token': auth_token,
        'auth_email': auth_email,
        'Rechte': Rechte,
        'Gruppe': Gruppe,
        'Aktiv': Aktiv,
        'Admin': Admin,
        'Anlagedatum': JsonConverters.toJson(Anlagedatum,'DateTime',context!),
        'guid': guid,
        'pers_typ': pers_typ,
        'hardlock': hardlock,
        'stundensatz': stundensatz,
        'freigabeberechtigter': freigabeberechtigter,
        'vertretung': vertretung,
        'genehmiger': genehmiger,
        'eintritt': JsonConverters.toJson(eintritt,'DateTime',context!),
        'austritt': JsonConverters.toJson(austritt,'DateTime',context!),
        'abteilung_guid': abteilung_guid,
        'negativurlaub': negativurlaub,
        'Alturlaub': Alturlaub,
        'bundesland': bundesland,
        'bild': JsonConverters.toJson(bild,'Uint8List',context!),
        'mobil': mobil,
        'geburtstag': JsonConverters.toJson(geburtstag,'DateTime',context!),
        'privatsspaehre': privatsspaehre,
        'intern': intern,
        'strasse': strasse,
        'plz': plz,
        'ort': ort,
        'isAcc': isAcc,
        'email_abruf': email_abruf,
        'email_abruf_tax': email_abruf_tax,
        'recht_taetigkeittyp': recht_taetigkeittyp,
        'rechte_acc': rechte_acc,
        'bemerkung': bemerkung,
        'is_main_mail': is_main_mail,
        'two_factor_method': two_factor_method,
        'two_factor_enabled': two_factor_enabled,
        'two_factor_secret': two_factor_secret,
        'two_factor_backup_codes': two_factor_backup_codes,
        'two_factor_enabled_date': JsonConverters.toJson(two_factor_enabled_date,'DateTime',context!),
        'two_factor_failed_attempts': two_factor_failed_attempts,
        'two_factor_last_failure': JsonConverters.toJson(two_factor_last_failure,'DateTime',context!),
        'two_factor_is_lockedout': two_factor_is_lockedout,
        'default_ja': default_ja,
        'default_fibu': default_fibu,
        'default_lohn': default_lohn,
        'default_acc': default_acc,
        'default_vw': default_vw,
        'rechte_intern_mandanten': rechte_intern_mandanten,
        'PKIndex': PKIndex,
        'mandant': mandant,
        'PrimaryKey': PrimaryKey,
        'nutzerid': nutzerid
    };

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

// @Flags()
class Role
{
    static const Role None = const Role._(0);
    static const Role Mandant = const Role._(1);
    static const Role Berater = const Role._(2);
    static const Role Benutzer = const Role._(4);
    static const Role WebClient = const Role._(8);
    static const Role Steuerberater = const Role._(16);
    static const Role ExternBerater = const Role._(32);
    static const Role MFA = const Role._(64);
    static const Role MFABerater = const Role._(128);

    final int _value;
    const Role._(this._value);
    int get value => _value;
    static List<Role> get values => const [None,Mandant,Berater,Benutzer,WebClient,Steuerberater,ExternBerater,MFA,MFABerater];
}

class LoginMandantResponse implements IConvertible
{
    DateTime? start;
    DateTime? loginmand_ende;
    DateTime? ende;
    mandlogin? mandlogin;
    zugriffsrechte? zugriffsrechte;
    String? Token;
    String? MFAToken;
    Role? rolle;
    bool? showSupportButton;
    bool? PasswortAbgelaufen;
    bool? NeuesPasswortGesetzt;
    String? ErrorMsg;
    int? Anmeldeversuche;
    List<String>? Configs;

    LoginMandantResponse({this.start,this.loginmand_ende,this.ende,this.mandlogin,this.zugriffsrechte,this.Token,this.MFAToken,this.rolle,this.showSupportButton,this.PasswortAbgelaufen,this.NeuesPasswortGesetzt,this.ErrorMsg,this.Anmeldeversuche,this.Configs});
    LoginMandantResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        start = JsonConverters.fromJson(json['start'],'DateTime',context!);
        loginmand_ende = JsonConverters.fromJson(json['loginmand_ende'],'DateTime',context!);
        ende = JsonConverters.fromJson(json['ende'],'DateTime',context!);
        mandlogin = JsonConverters.fromJson(json['mandlogin'],'mandlogin',context!);
        zugriffsrechte = JsonConverters.fromJson(json['zugriffsrechte'],'zugriffsrechte',context!);
        Token = json['Token'];
        MFAToken = json['MFAToken'];
        rolle = JsonConverters.fromJson(json['rolle'],'Role',context!);
        showSupportButton = json['showSupportButton'];
        PasswortAbgelaufen = json['PasswortAbgelaufen'];
        NeuesPasswortGesetzt = json['NeuesPasswortGesetzt'];
        ErrorMsg = json['ErrorMsg'];
        Anmeldeversuche = json['Anmeldeversuche'];
        Configs = JsonConverters.fromJson(json['Configs'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'start': JsonConverters.toJson(start,'DateTime',context!),
        'loginmand_ende': JsonConverters.toJson(loginmand_ende,'DateTime',context!),
        'ende': JsonConverters.toJson(ende,'DateTime',context!),
        'mandlogin': JsonConverters.toJson(mandlogin,'mandlogin',context!),
        'zugriffsrechte': JsonConverters.toJson(zugriffsrechte,'zugriffsrechte',context!),
        'Token': Token,
        'MFAToken': MFAToken,
        'rolle': JsonConverters.toJson(rolle,'Role',context!),
        'showSupportButton': showSupportButton,
        'PasswortAbgelaufen': PasswortAbgelaufen,
        'NeuesPasswortGesetzt': NeuesPasswortGesetzt,
        'ErrorMsg': ErrorMsg,
        'Anmeldeversuche': Anmeldeversuche,
        'Configs': JsonConverters.toJson(Configs,'List<String>',context!)
    };

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

enum Oem
{
    fibudata,
    spectrum,
}

class LoginMandantRequest implements IConvertible
{
    int? Mandnr;
    String? eMail;
    String? Password;
    List<String>? hardlock;
    Oem? OEM;
    int? isWebClient;
    double? fibuscan_version;
    String? token;
    String? einladungs_token;
    String? MFACode;
    String? MFAToken;

    LoginMandantRequest({this.Mandnr,this.eMail,this.Password,this.hardlock,this.OEM,this.isWebClient,this.fibuscan_version,this.token,this.einladungs_token,this.MFACode,this.MFAToken});
    LoginMandantRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Mandnr = json['Mandnr'];
        eMail = json['eMail'];
        Password = json['Password'];
        hardlock = JsonConverters.fromJson(json['hardlock'],'List<String>',context!);
        OEM = JsonConverters.fromJson(json['OEM'],'Oem',context!);
        isWebClient = json['isWebClient'];
        fibuscan_version = JsonConverters.toDouble(json['fibuscan_version']);
        token = json['token'];
        einladungs_token = json['einladungs_token'];
        MFACode = json['MFACode'];
        MFAToken = json['MFAToken'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Mandnr': Mandnr,
        'eMail': eMail,
        'Password': Password,
        'hardlock': JsonConverters.toJson(hardlock,'List<String>',context!),
        'OEM': JsonConverters.toJson(OEM,'Oem',context!),
        'isWebClient': isWebClient,
        'fibuscan_version': fibuscan_version,
        'token': token,
        'einladungs_token': einladungs_token,
        'MFACode': MFACode,
        'MFAToken': MFAToken
    };

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

TypeContext _ctx = TypeContext(library: 'ws4.fibudata.net', types: <String, TypeInfo> {
    'mandlogin': TypeInfo(TypeOf.Class, create:() => mandlogin()),
    'zugriffsrechte': TypeInfo(TypeOf.Class, create:() => zugriffsrechte()),
    'Uint8List': TypeInfo(TypeOf.Class, create:() => Uint8List(0)),
    'Role': TypeInfo(TypeOf.Enum, enumValues:Role.values),
    'LoginMandantResponse': TypeInfo(TypeOf.Class, create:() => LoginMandantResponse()),
    'Oem': TypeInfo(TypeOf.Enum, enumValues:Oem.values),
    'LoginMandantRequest': TypeInfo(TypeOf.Class, create:() => LoginMandantRequest()),
});

Dart LoginMandantRequest 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.

POST /auth/LoginMandant HTTP/1.1 
Host: ws4.fibudata.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Mandnr: 0,
	eMail: String,
	Password: String,
	OEM: fibudata,
	isWebClient: 0,
	fibuscan_version: 0,
	token: String,
	einladungs_token: String,
	MFACode: String,
	MFAToken: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	start: 0001-01-01,
	loginmand_ende: 0001-01-01,
	ende: 0001-01-01,
	mandlogin: 
	{
		Mandnr: 0,
		_erstellt: 0001-01-01,
		_aenderung: 0001-01-01,
		Bnr: 0,
		Passw: String,
		Email: String,
		PasswMD5: String,
		Kurzbezeichnung: String,
		IMGSec: 0,
		auth_email: String,
		auth_token: String,
		Beraternr: 0,
		BerMandantNr: 0,
		Dbnr: 0,
		Ver: 0,
		Altern: String,
		Updatedatei: String,
		Zugriffdat: 0001-01-01,
		Version: 0,
		Pwberater_ALT: String,
		Pwberater: String,
		Post: 0,
		Name: String,
		Strasse: String,
		Ort: String,
		Briefkasten: 0,
		Mustermandant: 0,
		Einzug: 0,
		Konto: 0,
		BLZ: 0,
		Bank: String,
		Plz: String,
		Land: String,
		BMid: 0,
		Bernrind: 0,
		Speicherzeit: 0,
		Kne: String,
		berater_zugriffsrechte_ids: String,
		plus_digifibu: 0,
		ersterlogin: 0001-01-01,
		letzterlogin: 0001-01-01,
		abrechnung: 0,
		gesamtrecht: 0,
		datev_wj: String,
		skr_typ: 0,
		skontozuordnung: String,
		gutschein: 0,
		briefkastenArbeitsanweisung: String,
		kontaktTelefon: String,
		kontaktEmail: String,
		demo: 0,
		demo_reg_am: 0001-01-01,
		demo_gueltig_bis: 0001-01-01,
		fibu_ext_login: String,
		isSkontoImmer: 0,
		is_kne_nur_personen: 0,
		is_ust_erfassung: 0,
		mail_user: String,
		mail_adresse: String,
		mail_passwort: String,
		mail_passwort_aes: String,
		steuernummer: String,
		steuerid: String,
		ustva_typ: 0,
		ustva_fertig: 0,
		elster_steuernummer: String,
		fakt_uni1_bez: String,
		fakt_uni2_bez: String,
		fakt_uni1_regex: String,
		fakt_uni2_regex: String,
		fakt_text: String,
		sepa_gl_id: String,
		umstellung: 0,
		hardlock: String,
		mahngebuer: String,
		mahnzins: String,
		mahntage: String,
		freigabe10: 0,
		plusbearbeitung: 0,
		iban_zugferd: String,
		universal: String,
		fremd_ID: String,
		freiFeld: String,
		kuerzel: String,
		buchhaltungstyp: String,
		freigabe: 0001-01-01,
		mobil: String,
		hashtags: String,
		sstelle: String,
		sstelle_stamm: String,
		beraternummer_export: String,
		fibu_interface: String,
		mandant: 0,
		PrimaryKey: 0,
		bd_anzahl1: 0
	},
	zugriffsrechte: 
	{
		ID: 0,
		_erstellt: 0001-01-01,
		_aenderung: 0001-01-01,
		Mandnr: 0,
		PasswMD5: String,
		Name: String,
		Vorname: String,
		EMail: String,
		EMail_tax: String,
		auth_token: String,
		auth_email: String,
		Rechte: 0,
		Gruppe: 0,
		Aktiv: 0,
		Admin: 0,
		Anlagedatum: 0001-01-01,
		guid: String,
		pers_typ: 0,
		hardlock: String,
		stundensatz: 0,
		freigabeberechtigter: 0,
		vertretung: 0,
		genehmiger: 0,
		eintritt: 0001-01-01,
		austritt: 0001-01-01,
		abteilung_guid: String,
		negativurlaub: False,
		Alturlaub: False,
		bundesland: 0,
		bild: AA==,
		mobil: String,
		geburtstag: 0001-01-01,
		privatsspaehre: 0,
		intern: 0,
		strasse: String,
		plz: String,
		ort: String,
		isAcc: False,
		email_abruf: String,
		email_abruf_tax: String,
		recht_taetigkeittyp: String,
		rechte_acc: String,
		bemerkung: String,
		is_main_mail: 0,
		two_factor_method: 0,
		two_factor_enabled: 0,
		two_factor_secret: String,
		two_factor_backup_codes: String,
		two_factor_enabled_date: 0001-01-01,
		two_factor_failed_attempts: 0,
		two_factor_last_failure: 0001-01-01,
		two_factor_is_lockedout: 0,
		default_ja: 0,
		default_fibu: 0,
		default_lohn: 0,
		default_acc: 0,
		default_vw: 0,
		rechte_intern_mandanten: False,
		PKIndex: 0,
		mandant: 0,
		PrimaryKey: 0,
		nutzerid: 0
	},
	Token: String,
	MFAToken: String,
	rolle: 0,
	showSupportButton: False,
	PasswortAbgelaufen: False,
	NeuesPasswortGesetzt: False,
	ErrorMsg: String,
	Anmeldeversuche: 0,
	Configs: 
	[
		String
	]
}