| Requires any of the roles: | Admin, TeamAdmin, MobileApp | Requires the permission: | ReadData |
| All Verbs | /ksiCards/Search | ||
|---|---|---|---|
| All Verbs | /ksiCards/Search/{Id} | ||
| All Verbs | /ksiCards/Search/Club/{KsiClubId}/{ExpiryYear} | ||
| All Verbs | /ksiCards/Search/Club/CardType/{KsiClubId}/{KsiCardType}/{ExpiryYear} |
import 'package:servicestack/servicestack.dart';
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;
bool? isActive;
DateTime? validFromDate;
DateTime? validToDate;
DateTime? lastModifiedDate;
DateTime? revokedDate;
String? revokedReason;
KsiCards({this.id,this.creationDate,this.phoneFullVerificationNumber,this.deviceId,this.ksiCardTypeId,this.ksiClubId,this.holderName,this.canTransferToPhoneFullNumber,this.canTransferToNName,this.expYear,this.expMonth,this.isActive,this.validFromDate,this.validToDate,this.lastModifiedDate,this.revokedDate,this.revokedReason});
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'];
isActive = json['isActive'];
validFromDate = JsonConverters.fromJson(json['validFromDate'],'DateTime',context!);
validToDate = JsonConverters.fromJson(json['validToDate'],'DateTime',context!);
lastModifiedDate = JsonConverters.fromJson(json['lastModifiedDate'],'DateTime',context!);
revokedDate = JsonConverters.fromJson(json['revokedDate'],'DateTime',context!);
revokedReason = json['revokedReason'];
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,
'isActive': isActive,
'validFromDate': JsonConverters.toJson(validFromDate,'DateTime',context!),
'validToDate': JsonConverters.toJson(validToDate,'DateTime',context!),
'lastModifiedDate': JsonConverters.toJson(lastModifiedDate,'DateTime',context!),
'revokedDate': JsonConverters.toJson(revokedDate,'DateTime',context!),
'revokedReason': revokedReason
};
getTypeName() => "KsiCards";
TypeContext? context = _ctx;
}
class KsiCardsSearchResult implements IConvertible
{
List<KsiCards>? cards;
int? statusCode;
String? message;
KsiCardsSearchResult({this.cards,this.statusCode,this.message});
KsiCardsSearchResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
cards = JsonConverters.fromJson(json['cards'],'List<KsiCards>',context!);
statusCode = json['statusCode'];
message = json['message'];
return this;
}
Map<String, dynamic> toJson() => {
'cards': JsonConverters.toJson(cards,'List<KsiCards>',context!),
'statusCode': statusCode,
'message': message
};
getTypeName() => "KsiCardsSearchResult";
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 KsiCardsSearchRequest implements IConvertible
{
int? id;
String? ksiClubId;
String? expiryYear;
String? ksiCardType;
String? fullPhoneNumber;
int? onlyValidForEventId;
bool? includeInactive;
bool? includeExpired;
int? requestUnixUTCTimeStamp;
RequestSignature? signature;
KsiCardsSearchRequest({this.id,this.ksiClubId,this.expiryYear,this.ksiCardType,this.fullPhoneNumber,this.onlyValidForEventId,this.includeInactive,this.includeExpired,this.requestUnixUTCTimeStamp,this.signature});
KsiCardsSearchRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
ksiClubId = json['ksiClubId'];
expiryYear = json['expiryYear'];
ksiCardType = json['ksiCardType'];
fullPhoneNumber = json['fullPhoneNumber'];
onlyValidForEventId = json['onlyValidForEventId'];
includeInactive = json['includeInactive'];
includeExpired = json['includeExpired'];
requestUnixUTCTimeStamp = json['requestUnixUTCTimeStamp'];
signature = JsonConverters.fromJson(json['signature'],'RequestSignature',context!);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'ksiClubId': ksiClubId,
'expiryYear': expiryYear,
'ksiCardType': ksiCardType,
'fullPhoneNumber': fullPhoneNumber,
'onlyValidForEventId': onlyValidForEventId,
'includeInactive': includeInactive,
'includeExpired': includeExpired,
'requestUnixUTCTimeStamp': requestUnixUTCTimeStamp,
'signature': JsonConverters.toJson(signature,'RequestSignature',context!)
};
getTypeName() => "KsiCardsSearchRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
'KsiCards': TypeInfo(TypeOf.Class, create:() => KsiCards()),
'KsiCardsSearchResult': TypeInfo(TypeOf.Class, create:() => KsiCardsSearchResult()),
'List<KsiCards>': TypeInfo(TypeOf.Class, create:() => <KsiCards>[]),
'RequestSignature': TypeInfo(TypeOf.Class, create:() => RequestSignature()),
'KsiCardsSearchRequest': TypeInfo(TypeOf.Class, create:() => KsiCardsSearchRequest()),
});
Dart KsiCardsSearchRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /ksiCards/Search HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
id: 0,
ksiClubId: String,
expiryYear: String,
ksiCardType: String,
fullPhoneNumber: String,
onlyValidForEventId: 0,
includeInactive: False,
includeExpired: False,
requestUnixUTCTimeStamp: 0,
signature:
{
systemId: String,
systemSecret: String,
signature: String
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
cards:
[
{
id: 0,
creationDate: 0001-01-01,
phoneFullVerificationNumber: String,
deviceId: String,
ksiCardTypeId: String,
ksiClubId: String,
holderName: String,
canTransferToPhoneFullNumber: String,
canTransferToNName: String,
expYear: String,
expMonth: String,
isActive: False,
validFromDate: 0001-01-01,
validToDate: 0001-01-01,
lastModifiedDate: 0001-01-01,
revokedDate: 0001-01-01,
revokedReason: String
}
],
statusCode: 0,
message: String
}