TicketUserServices

<back to all web services

PaymentCardsRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
POST/paymentCardsGet All Credit, Debit and KSI cards for this phone
import 'package:servicestack/servicestack.dart';

class BorgunSavedCards implements IConvertible
{
    int? id;
    DateTime? creationDate;
    DateTime? lastTokenDate;
    bool? isDebit;
    String? phoneVerificationNumber;
    String? deviceId;
    String? virtualCardNumber;
    String? panLastFour;
    String? expYear;
    String? expMonth;
    String? token;
    String? cardType;
    bool? deletedByUser;
    bool? deletedFromOrigin;
    DateTime? dateDeletedByUser;
    DateTime? dateDeletedFromOrigin;
    bool? isDeleted;
    DateTime? dateDeletedBySystem;
    bool? deletedBySystem;

    BorgunSavedCards({this.id,this.creationDate,this.lastTokenDate,this.isDebit,this.phoneVerificationNumber,this.deviceId,this.virtualCardNumber,this.panLastFour,this.expYear,this.expMonth,this.token,this.cardType,this.deletedByUser,this.deletedFromOrigin,this.dateDeletedByUser,this.dateDeletedFromOrigin,this.isDeleted,this.dateDeletedBySystem,this.deletedBySystem});
    BorgunSavedCards.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        creationDate = JsonConverters.fromJson(json['creationDate'],'DateTime',context!);
        lastTokenDate = JsonConverters.fromJson(json['lastTokenDate'],'DateTime',context!);
        isDebit = json['isDebit'];
        phoneVerificationNumber = json['phoneVerificationNumber'];
        deviceId = json['deviceId'];
        virtualCardNumber = json['virtualCardNumber'];
        panLastFour = json['panLastFour'];
        expYear = json['expYear'];
        expMonth = json['expMonth'];
        token = json['token'];
        cardType = json['cardType'];
        deletedByUser = json['deletedByUser'];
        deletedFromOrigin = json['deletedFromOrigin'];
        dateDeletedByUser = JsonConverters.fromJson(json['dateDeletedByUser'],'DateTime',context!);
        dateDeletedFromOrigin = JsonConverters.fromJson(json['dateDeletedFromOrigin'],'DateTime',context!);
        isDeleted = json['isDeleted'];
        dateDeletedBySystem = JsonConverters.fromJson(json['dateDeletedBySystem'],'DateTime',context!);
        deletedBySystem = json['deletedBySystem'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'creationDate': JsonConverters.toJson(creationDate,'DateTime',context!),
        'lastTokenDate': JsonConverters.toJson(lastTokenDate,'DateTime',context!),
        'isDebit': isDebit,
        'phoneVerificationNumber': phoneVerificationNumber,
        'deviceId': deviceId,
        'virtualCardNumber': virtualCardNumber,
        'panLastFour': panLastFour,
        'expYear': expYear,
        'expMonth': expMonth,
        'token': token,
        'cardType': cardType,
        'deletedByUser': deletedByUser,
        'deletedFromOrigin': deletedFromOrigin,
        'dateDeletedByUser': JsonConverters.toJson(dateDeletedByUser,'DateTime',context!),
        'dateDeletedFromOrigin': JsonConverters.toJson(dateDeletedFromOrigin,'DateTime',context!),
        'isDeleted': isDeleted,
        'dateDeletedBySystem': JsonConverters.toJson(dateDeletedBySystem,'DateTime',context!),
        'deletedBySystem': deletedBySystem
    };

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

class KsiCards implements IConvertible
{
    int? id;
    DateTime? creationDate;
    String? phoneFullVerificationNumber;
    String? deviceId;
    String? ksiCardTypeId;
    String? ksiClubId;
    String? holderName;
    String? canTransferToPhoneFullNumber;
    String? canTransferToNName;
    String? expYear;
    String? expMonth;

    KsiCards({this.id,this.creationDate,this.phoneFullVerificationNumber,this.deviceId,this.ksiCardTypeId,this.ksiClubId,this.holderName,this.canTransferToPhoneFullNumber,this.canTransferToNName,this.expYear,this.expMonth});
    KsiCards.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        creationDate = JsonConverters.fromJson(json['creationDate'],'DateTime',context!);
        phoneFullVerificationNumber = json['phoneFullVerificationNumber'];
        deviceId = json['deviceId'];
        ksiCardTypeId = json['ksiCardTypeId'];
        ksiClubId = json['ksiClubId'];
        holderName = json['holderName'];
        canTransferToPhoneFullNumber = json['canTransferToPhoneFullNumber'];
        canTransferToNName = json['canTransferToNName'];
        expYear = json['expYear'];
        expMonth = json['expMonth'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'creationDate': JsonConverters.toJson(creationDate,'DateTime',context!),
        'phoneFullVerificationNumber': phoneFullVerificationNumber,
        'deviceId': deviceId,
        'ksiCardTypeId': ksiCardTypeId,
        'ksiClubId': ksiClubId,
        'holderName': holderName,
        'canTransferToPhoneFullNumber': canTransferToPhoneFullNumber,
        'canTransferToNName': canTransferToNName,
        'expYear': expYear,
        'expMonth': expMonth
    };

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

class OwnerCards implements IConvertible
{
    int? id;
    int? ownerId;
    int? ownerCardTypeId;
    int? phoneVerificationId;
    int? initialMaxTickets;
    int? currentAvailableTickets;
    DateTime? timeStampCreatedUTC;
    DateTime? timeStampLastChangedUTC;
    DateTime? timeStampBoughtUTC;
    DateTime? timeStampOrderedUTC;
    DateTime? cardValidFromUTC;
    DateTime? cardValidToUTC;
    bool? hasStoreCredit;
    double? cardPrice;
    double? pricePaid;
    double? initialStoreCredit;
    double? currentStoreCredit;
    String? phoneFullVerificationNumber;
    String? holderId;
    String? holderName;
    String? holderEmail;
    String? cardPriceCurrency;
    String? pricePaidCurrency;
    String? deviceId;
    String? paymentMethodId;
    String? paymentReference;
    String? phoneVerificationNumber;
    String? paymentPhoneNumber;
    String? paymentId;
    String? paymentStatus;
    String? paymentTokenId;
    int? maxTicketsPerEvent;
    String? multiplePaymentsId;
    String? imageUrl;
    String? backgroundImageUrl;

    OwnerCards({this.id,this.ownerId,this.ownerCardTypeId,this.phoneVerificationId,this.initialMaxTickets,this.currentAvailableTickets,this.timeStampCreatedUTC,this.timeStampLastChangedUTC,this.timeStampBoughtUTC,this.timeStampOrderedUTC,this.cardValidFromUTC,this.cardValidToUTC,this.hasStoreCredit,this.cardPrice,this.pricePaid,this.initialStoreCredit,this.currentStoreCredit,this.phoneFullVerificationNumber,this.holderId,this.holderName,this.holderEmail,this.cardPriceCurrency,this.pricePaidCurrency,this.deviceId,this.paymentMethodId,this.paymentReference,this.phoneVerificationNumber,this.paymentPhoneNumber,this.paymentId,this.paymentStatus,this.paymentTokenId,this.maxTicketsPerEvent,this.multiplePaymentsId,this.imageUrl,this.backgroundImageUrl});
    OwnerCards.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        ownerId = json['ownerId'];
        ownerCardTypeId = json['ownerCardTypeId'];
        phoneVerificationId = json['phoneVerificationId'];
        initialMaxTickets = json['initialMaxTickets'];
        currentAvailableTickets = json['currentAvailableTickets'];
        timeStampCreatedUTC = JsonConverters.fromJson(json['timeStampCreatedUTC'],'DateTime',context!);
        timeStampLastChangedUTC = JsonConverters.fromJson(json['timeStampLastChangedUTC'],'DateTime',context!);
        timeStampBoughtUTC = JsonConverters.fromJson(json['timeStampBoughtUTC'],'DateTime',context!);
        timeStampOrderedUTC = JsonConverters.fromJson(json['timeStampOrderedUTC'],'DateTime',context!);
        cardValidFromUTC = JsonConverters.fromJson(json['cardValidFromUTC'],'DateTime',context!);
        cardValidToUTC = JsonConverters.fromJson(json['cardValidToUTC'],'DateTime',context!);
        hasStoreCredit = json['hasStoreCredit'];
        cardPrice = JsonConverters.toDouble(json['cardPrice']);
        pricePaid = JsonConverters.toDouble(json['pricePaid']);
        initialStoreCredit = JsonConverters.toDouble(json['initialStoreCredit']);
        currentStoreCredit = JsonConverters.toDouble(json['currentStoreCredit']);
        phoneFullVerificationNumber = json['phoneFullVerificationNumber'];
        holderId = json['holderId'];
        holderName = json['holderName'];
        holderEmail = json['holderEmail'];
        cardPriceCurrency = json['cardPriceCurrency'];
        pricePaidCurrency = json['pricePaidCurrency'];
        deviceId = json['deviceId'];
        paymentMethodId = json['paymentMethodId'];
        paymentReference = json['paymentReference'];
        phoneVerificationNumber = json['phoneVerificationNumber'];
        paymentPhoneNumber = json['paymentPhoneNumber'];
        paymentId = json['paymentId'];
        paymentStatus = json['paymentStatus'];
        paymentTokenId = json['paymentTokenId'];
        maxTicketsPerEvent = json['maxTicketsPerEvent'];
        multiplePaymentsId = json['multiplePaymentsId'];
        imageUrl = json['imageUrl'];
        backgroundImageUrl = json['backgroundImageUrl'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'ownerId': ownerId,
        'ownerCardTypeId': ownerCardTypeId,
        'phoneVerificationId': phoneVerificationId,
        'initialMaxTickets': initialMaxTickets,
        'currentAvailableTickets': currentAvailableTickets,
        'timeStampCreatedUTC': JsonConverters.toJson(timeStampCreatedUTC,'DateTime',context!),
        'timeStampLastChangedUTC': JsonConverters.toJson(timeStampLastChangedUTC,'DateTime',context!),
        'timeStampBoughtUTC': JsonConverters.toJson(timeStampBoughtUTC,'DateTime',context!),
        'timeStampOrderedUTC': JsonConverters.toJson(timeStampOrderedUTC,'DateTime',context!),
        'cardValidFromUTC': JsonConverters.toJson(cardValidFromUTC,'DateTime',context!),
        'cardValidToUTC': JsonConverters.toJson(cardValidToUTC,'DateTime',context!),
        'hasStoreCredit': hasStoreCredit,
        'cardPrice': cardPrice,
        'pricePaid': pricePaid,
        'initialStoreCredit': initialStoreCredit,
        'currentStoreCredit': currentStoreCredit,
        'phoneFullVerificationNumber': phoneFullVerificationNumber,
        'holderId': holderId,
        'holderName': holderName,
        'holderEmail': holderEmail,
        'cardPriceCurrency': cardPriceCurrency,
        'pricePaidCurrency': pricePaidCurrency,
        'deviceId': deviceId,
        'paymentMethodId': paymentMethodId,
        'paymentReference': paymentReference,
        'phoneVerificationNumber': phoneVerificationNumber,
        'paymentPhoneNumber': paymentPhoneNumber,
        'paymentId': paymentId,
        'paymentStatus': paymentStatus,
        'paymentTokenId': paymentTokenId,
        'maxTicketsPerEvent': maxTicketsPerEvent,
        'multiplePaymentsId': multiplePaymentsId,
        'imageUrl': imageUrl,
        'backgroundImageUrl': backgroundImageUrl
    };

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

class KsiCardTypes implements IConvertible
{
    String? ksiCardTypeId;
    String? ksiCardTypeName;
    String? ksiCardTypeDescription;
    String? cardTypeOwner;
    int? maxTicketsPerEvent;

    KsiCardTypes({this.ksiCardTypeId,this.ksiCardTypeName,this.ksiCardTypeDescription,this.cardTypeOwner,this.maxTicketsPerEvent});
    KsiCardTypes.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ksiCardTypeId = json['ksiCardTypeId'];
        ksiCardTypeName = json['ksiCardTypeName'];
        ksiCardTypeDescription = json['ksiCardTypeDescription'];
        cardTypeOwner = json['cardTypeOwner'];
        maxTicketsPerEvent = json['maxTicketsPerEvent'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ksiCardTypeId': ksiCardTypeId,
        'ksiCardTypeName': ksiCardTypeName,
        'ksiCardTypeDescription': ksiCardTypeDescription,
        'cardTypeOwner': cardTypeOwner,
        'maxTicketsPerEvent': maxTicketsPerEvent
    };

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

class KsiCardInfo implements IConvertible
{
    KsiCards? card;
    KsiCardTypes? cardType;

    KsiCardInfo({this.card,this.cardType});
    KsiCardInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'card': JsonConverters.toJson(card,'KsiCards',context!),
        'cardType': JsonConverters.toJson(cardType,'KsiCardTypes',context!)
    };

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

class OwnerCardType implements IConvertible
{
    int? id;
    int? ownerId;
    int? maxTickets;
    DateTime? timeStampCreatedUTC;
    DateTime? timeStampLastChangedUTC;
    DateTime? saleStartDateUTC;
    DateTime? saleEndDateUTC;
    DateTime? validStartDateForNewCardsUTC;
    DateTime? validEndDateForNewCardsUTC;
    bool? hasStoreCredit;
    bool? isActive;
    bool? onlyForTeamUse;
    double? price;
    double? initialStoreCredit;
    String? description;
    String? name;
    String? imageUrl;
    String? currency;
    int? maxTicketsPerEvent;
    String? backgroundImageUrl;
    bool? validForConnectedOwners;
    int? superOwnerId;

    OwnerCardType({this.id,this.ownerId,this.maxTickets,this.timeStampCreatedUTC,this.timeStampLastChangedUTC,this.saleStartDateUTC,this.saleEndDateUTC,this.validStartDateForNewCardsUTC,this.validEndDateForNewCardsUTC,this.hasStoreCredit,this.isActive,this.onlyForTeamUse,this.price,this.initialStoreCredit,this.description,this.name,this.imageUrl,this.currency,this.maxTicketsPerEvent,this.backgroundImageUrl,this.validForConnectedOwners,this.superOwnerId});
    OwnerCardType.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        ownerId = json['ownerId'];
        maxTickets = json['maxTickets'];
        timeStampCreatedUTC = JsonConverters.fromJson(json['timeStampCreatedUTC'],'DateTime',context!);
        timeStampLastChangedUTC = JsonConverters.fromJson(json['timeStampLastChangedUTC'],'DateTime',context!);
        saleStartDateUTC = JsonConverters.fromJson(json['saleStartDateUTC'],'DateTime',context!);
        saleEndDateUTC = JsonConverters.fromJson(json['saleEndDateUTC'],'DateTime',context!);
        validStartDateForNewCardsUTC = JsonConverters.fromJson(json['validStartDateForNewCardsUTC'],'DateTime',context!);
        validEndDateForNewCardsUTC = JsonConverters.fromJson(json['validEndDateForNewCardsUTC'],'DateTime',context!);
        hasStoreCredit = json['hasStoreCredit'];
        isActive = json['isActive'];
        onlyForTeamUse = json['onlyForTeamUse'];
        price = JsonConverters.toDouble(json['price']);
        initialStoreCredit = JsonConverters.toDouble(json['initialStoreCredit']);
        description = json['description'];
        name = json['name'];
        imageUrl = json['imageUrl'];
        currency = json['currency'];
        maxTicketsPerEvent = json['maxTicketsPerEvent'];
        backgroundImageUrl = json['backgroundImageUrl'];
        validForConnectedOwners = json['validForConnectedOwners'];
        superOwnerId = json['superOwnerId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'ownerId': ownerId,
        'maxTickets': maxTickets,
        'timeStampCreatedUTC': JsonConverters.toJson(timeStampCreatedUTC,'DateTime',context!),
        'timeStampLastChangedUTC': JsonConverters.toJson(timeStampLastChangedUTC,'DateTime',context!),
        'saleStartDateUTC': JsonConverters.toJson(saleStartDateUTC,'DateTime',context!),
        'saleEndDateUTC': JsonConverters.toJson(saleEndDateUTC,'DateTime',context!),
        'validStartDateForNewCardsUTC': JsonConverters.toJson(validStartDateForNewCardsUTC,'DateTime',context!),
        'validEndDateForNewCardsUTC': JsonConverters.toJson(validEndDateForNewCardsUTC,'DateTime',context!),
        'hasStoreCredit': hasStoreCredit,
        'isActive': isActive,
        'onlyForTeamUse': onlyForTeamUse,
        'price': price,
        'initialStoreCredit': initialStoreCredit,
        'description': description,
        'name': name,
        'imageUrl': imageUrl,
        'currency': currency,
        'maxTicketsPerEvent': maxTicketsPerEvent,
        'backgroundImageUrl': backgroundImageUrl,
        'validForConnectedOwners': validForConnectedOwners,
        'superOwnerId': superOwnerId
    };

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

class OwnerCardInfo implements IConvertible
{
    OwnerCards? card;
    OwnerCardType? cardType;
    String? ownerName;

    OwnerCardInfo({this.card,this.cardType,this.ownerName});
    OwnerCardInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        card = JsonConverters.fromJson(json['card'],'OwnerCards',context!);
        cardType = JsonConverters.fromJson(json['cardType'],'OwnerCardType',context!);
        ownerName = json['ownerName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'card': JsonConverters.toJson(card,'OwnerCards',context!),
        'cardType': JsonConverters.toJson(cardType,'OwnerCardType',context!),
        'ownerName': ownerName
    };

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

class PaymentCardsResult implements IConvertible
{
    List<BorgunSavedCards>? cards;
    List<KsiCards>? ksiCards;
    List<OwnerCards>? ownerCards;
    List<KsiCardInfo>? ksiCardInfoList;
    List<OwnerCardInfo>? ownerCardInfoList;
    int? statusCode;
    String? message;

    PaymentCardsResult({this.cards,this.ksiCards,this.ownerCards,this.ksiCardInfoList,this.ownerCardInfoList,this.statusCode,this.message});
    PaymentCardsResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        cards = JsonConverters.fromJson(json['cards'],'List<BorgunSavedCards>',context!);
        ksiCards = JsonConverters.fromJson(json['ksiCards'],'List<KsiCards>',context!);
        ownerCards = JsonConverters.fromJson(json['ownerCards'],'List<OwnerCards>',context!);
        ksiCardInfoList = JsonConverters.fromJson(json['ksiCardInfoList'],'List<KsiCardInfo>',context!);
        ownerCardInfoList = JsonConverters.fromJson(json['ownerCardInfoList'],'List<OwnerCardInfo>',context!);
        statusCode = json['statusCode'];
        message = json['message'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'cards': JsonConverters.toJson(cards,'List<BorgunSavedCards>',context!),
        'ksiCards': JsonConverters.toJson(ksiCards,'List<KsiCards>',context!),
        'ownerCards': JsonConverters.toJson(ownerCards,'List<OwnerCards>',context!),
        'ksiCardInfoList': JsonConverters.toJson(ksiCardInfoList,'List<KsiCardInfo>',context!),
        'ownerCardInfoList': JsonConverters.toJson(ownerCardInfoList,'List<OwnerCardInfo>',context!),
        'statusCode': statusCode,
        'message': message
    };

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

class RequestSignature implements IConvertible
{
    String? systemId;
    String? systemSecret;
    String? signature;

    RequestSignature({this.systemId,this.systemSecret,this.signature});
    RequestSignature.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        systemId = json['systemId'];
        systemSecret = json['systemSecret'];
        signature = json['signature'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'systemId': systemId,
        'systemSecret': systemSecret,
        'signature': signature
    };

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

class PaymentCardsRequest implements IConvertible
{
    String? phoneVerificationNumber;
    String? deviceId;
    int? onlyForEventId;
    bool? checkForExpiry;
    bool? excludeHiddenCards;
    int? requestUnixUTCTimeStamp;
    bool? includeDeletedCards;
    RequestSignature? signature;

    PaymentCardsRequest({this.phoneVerificationNumber,this.deviceId,this.onlyForEventId,this.checkForExpiry,this.excludeHiddenCards,this.requestUnixUTCTimeStamp,this.includeDeletedCards,this.signature});
    PaymentCardsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        phoneVerificationNumber = json['phoneVerificationNumber'];
        deviceId = json['deviceId'];
        onlyForEventId = json['onlyForEventId'];
        checkForExpiry = json['checkForExpiry'];
        excludeHiddenCards = json['excludeHiddenCards'];
        requestUnixUTCTimeStamp = json['requestUnixUTCTimeStamp'];
        includeDeletedCards = json['includeDeletedCards'];
        signature = JsonConverters.fromJson(json['signature'],'RequestSignature',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'phoneVerificationNumber': phoneVerificationNumber,
        'deviceId': deviceId,
        'onlyForEventId': onlyForEventId,
        'checkForExpiry': checkForExpiry,
        'excludeHiddenCards': excludeHiddenCards,
        'requestUnixUTCTimeStamp': requestUnixUTCTimeStamp,
        'includeDeletedCards': includeDeletedCards,
        'signature': JsonConverters.toJson(signature,'RequestSignature',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'stubbur_autoupdates_live.smartnewapis.com', types: <String, TypeInfo> {
    'BorgunSavedCards': TypeInfo(TypeOf.Class, create:() => BorgunSavedCards()),
    'KsiCards': TypeInfo(TypeOf.Class, create:() => KsiCards()),
    'OwnerCards': TypeInfo(TypeOf.Class, create:() => OwnerCards()),
    'KsiCardTypes': TypeInfo(TypeOf.Class, create:() => KsiCardTypes()),
    'KsiCardInfo': TypeInfo(TypeOf.Class, create:() => KsiCardInfo()),
    'OwnerCardType': TypeInfo(TypeOf.Class, create:() => OwnerCardType()),
    'OwnerCardInfo': TypeInfo(TypeOf.Class, create:() => OwnerCardInfo()),
    'PaymentCardsResult': TypeInfo(TypeOf.Class, create:() => PaymentCardsResult()),
    'List<BorgunSavedCards>': TypeInfo(TypeOf.Class, create:() => <BorgunSavedCards>[]),
    'List<KsiCards>': TypeInfo(TypeOf.Class, create:() => <KsiCards>[]),
    'List<OwnerCards>': TypeInfo(TypeOf.Class, create:() => <OwnerCards>[]),
    'List<KsiCardInfo>': TypeInfo(TypeOf.Class, create:() => <KsiCardInfo>[]),
    'List<OwnerCardInfo>': TypeInfo(TypeOf.Class, create:() => <OwnerCardInfo>[]),
    'RequestSignature': TypeInfo(TypeOf.Class, create:() => RequestSignature()),
    'PaymentCardsRequest': TypeInfo(TypeOf.Class, create:() => PaymentCardsRequest()),
});

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

POST /paymentCards HTTP/1.1 
Host: stubbur-autoupdates-live.smartnewapis.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"phoneVerificationNumber":"String","deviceId":"String","onlyForEventId":0,"checkForExpiry":false,"excludeHiddenCards":false,"requestUnixUTCTimeStamp":0,"includeDeletedCards":false,"signature":{"systemId":"String","systemSecret":"String","signature":"String"}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"cards":[{"id":0,"creationDate":"0001-01-01T00:00:00.0000000","lastTokenDate":"0001-01-01T00:00:00.0000000","isDebit":false,"phoneVerificationNumber":"String","deviceId":"String","virtualCardNumber":"String","panLastFour":"String","expYear":"String","expMonth":"String","token":"String","cardType":"String","deletedByUser":false,"deletedFromOrigin":false,"dateDeletedByUser":"0001-01-01T00:00:00.0000000","dateDeletedFromOrigin":"0001-01-01T00:00:00.0000000","isDeleted":false,"dateDeletedBySystem":"0001-01-01T00:00:00.0000000","deletedBySystem":false}],"ksiCards":[{"id":0,"creationDate":"0001-01-01T00:00:00.0000000","phoneFullVerificationNumber":"String","deviceId":"String","ksiCardTypeId":"String","ksiClubId":"String","holderName":"String","canTransferToPhoneFullNumber":"String","canTransferToNName":"String","expYear":"String","expMonth":"String"}],"ownerCards":[{"id":0,"ownerId":0,"ownerCardTypeId":0,"phoneVerificationId":0,"initialMaxTickets":0,"currentAvailableTickets":0,"timeStampCreatedUTC":"0001-01-01T00:00:00.0000000","timeStampLastChangedUTC":"0001-01-01T00:00:00.0000000","timeStampBoughtUTC":"0001-01-01T00:00:00.0000000","timeStampOrderedUTC":"0001-01-01T00:00:00.0000000","cardValidFromUTC":"0001-01-01T00:00:00.0000000","cardValidToUTC":"0001-01-01T00:00:00.0000000","hasStoreCredit":false,"cardPrice":0,"pricePaid":0,"initialStoreCredit":0,"currentStoreCredit":0,"phoneFullVerificationNumber":"String","holderId":"String","holderName":"String","holderEmail":"String","cardPriceCurrency":"String","pricePaidCurrency":"String","deviceId":"String","paymentMethodId":"String","paymentReference":"String","phoneVerificationNumber":"String","paymentPhoneNumber":"String","paymentId":"String","paymentStatus":"String","paymentTokenId":"String","maxTicketsPerEvent":0,"multiplePaymentsId":"String","imageUrl":"String","backgroundImageUrl":"String"}],"ksiCardInfoList":[{"card":{"id":0,"creationDate":"0001-01-01T00:00:00.0000000","phoneFullVerificationNumber":"String","deviceId":"String","ksiCardTypeId":"String","ksiClubId":"String","holderName":"String","canTransferToPhoneFullNumber":"String","canTransferToNName":"String","expYear":"String","expMonth":"String"},"cardType":{"ksiCardTypeId":"String","ksiCardTypeName":"String","ksiCardTypeDescription":"String","cardTypeOwner":"String","maxTicketsPerEvent":0}}],"ownerCardInfoList":[{"card":{"id":0,"ownerId":0,"ownerCardTypeId":0,"phoneVerificationId":0,"initialMaxTickets":0,"currentAvailableTickets":0,"timeStampCreatedUTC":"0001-01-01T00:00:00.0000000","timeStampLastChangedUTC":"0001-01-01T00:00:00.0000000","timeStampBoughtUTC":"0001-01-01T00:00:00.0000000","timeStampOrderedUTC":"0001-01-01T00:00:00.0000000","cardValidFromUTC":"0001-01-01T00:00:00.0000000","cardValidToUTC":"0001-01-01T00:00:00.0000000","hasStoreCredit":false,"cardPrice":0,"pricePaid":0,"initialStoreCredit":0,"currentStoreCredit":0,"phoneFullVerificationNumber":"String","holderId":"String","holderName":"String","holderEmail":"String","cardPriceCurrency":"String","pricePaidCurrency":"String","deviceId":"String","paymentMethodId":"String","paymentReference":"String","phoneVerificationNumber":"String","paymentPhoneNumber":"String","paymentId":"String","paymentStatus":"String","paymentTokenId":"String","maxTicketsPerEvent":0,"multiplePaymentsId":"String","imageUrl":"String","backgroundImageUrl":"String"},"cardType":{"id":0,"ownerId":0,"maxTickets":0,"timeStampCreatedUTC":"0001-01-01T00:00:00.0000000","timeStampLastChangedUTC":"0001-01-01T00:00:00.0000000","saleStartDateUTC":"0001-01-01T00:00:00.0000000","saleEndDateUTC":"0001-01-01T00:00:00.0000000","validStartDateForNewCardsUTC":"0001-01-01T00:00:00.0000000","validEndDateForNewCardsUTC":"0001-01-01T00:00:00.0000000","hasStoreCredit":false,"isActive":false,"onlyForTeamUse":false,"price":0,"initialStoreCredit":0,"description":"String","name":"String","imageUrl":"String","currency":"String","maxTicketsPerEvent":0,"backgroundImageUrl":"String","validForConnectedOwners":false,"superOwnerId":0},"ownerName":"String"}],"statusCode":0,"message":"String"}