| Requires any of the roles: | Admin, TeamAdmin, MobileApp | Requires the permission: | ReadData |
| POST | /paymentCards | Get All Credit, Debit and KSI cards for this phone |
|---|
import Foundation
import ServiceStack
public class PaymentCardsRequest : Codable
{
public var phoneVerificationNumber:String?
public var deviceId:String?
public var onlyForEventId:Int?
public var checkForExpiry:Bool?
public var excludeHiddenCards:Bool?
public var requestUnixUTCTimeStamp:Int?
public var includeDeletedCards:Bool?
public var signature:RequestSignature?
required public init(){}
}
public class RequestSignature : Codable
{
public var systemId:String?
public var systemSecret:String?
public var signature:String?
required public init(){}
}
public class PaymentCardsResult : Codable
{
public var cards:[BorgunSavedCards] = []
public var ksiCards:[KsiCards] = []
public var ownerCards:[OwnerCards] = []
public var ksiCardInfoList:[KsiCardInfo] = []
public var ownerCardInfoList:[OwnerCardInfo] = []
public var statusCode:Int?
public var message:String?
required public init(){}
}
public class BorgunSavedCards : Codable
{
public var id:Int?
public var creationDate:Date?
public var lastTokenDate:Date?
public var isDebit:Bool?
public var phoneVerificationNumber:String?
public var deviceId:String?
public var virtualCardNumber:String?
public var panLastFour:String?
public var expYear:String?
public var expMonth:String?
public var token:String?
public var cardType:String?
public var deletedByUser:Bool?
public var deletedFromOrigin:Bool?
public var dateDeletedByUser:Date?
public var dateDeletedFromOrigin:Date?
public var isDeleted:Bool?
public var dateDeletedBySystem:Date?
public var deletedBySystem:Bool?
required public init(){}
}
public class KsiCards : Codable
{
public var id:Int?
public var creationDate:Date?
public var phoneFullVerificationNumber:String?
public var deviceId:String?
public var ksiCardTypeId:String?
public var ksiClubId:String?
public var holderName:String?
public var canTransferToPhoneFullNumber:String?
public var canTransferToNName:String?
public var expYear:String?
public var expMonth:String?
public var isActive:Bool?
public var validFromDate:Date?
public var validToDate:Date?
public var lastModifiedDate:Date?
public var revokedDate:Date?
public var revokedReason:String?
required public init(){}
}
public class OwnerCards : Codable
{
public var id:Int?
public var ownerId:Int?
public var ownerCardTypeId:Int?
public var phoneVerificationId:Int?
public var initialMaxTickets:Int?
public var currentAvailableTickets:Int?
public var timeStampCreatedUTC:Date?
public var timeStampLastChangedUTC:Date?
public var timeStampBoughtUTC:Date?
public var timeStampOrderedUTC:Date?
public var cardValidFromUTC:Date?
public var cardValidToUTC:Date?
public var hasStoreCredit:Bool?
public var cardPrice:Double?
public var pricePaid:Double?
public var initialStoreCredit:Double?
public var currentStoreCredit:Double?
public var phoneFullVerificationNumber:String?
public var holderId:String?
public var holderName:String?
public var holderEmail:String?
public var cardPriceCurrency:String?
public var pricePaidCurrency:String?
public var deviceId:String?
public var paymentMethodId:String?
public var paymentReference:String?
public var phoneVerificationNumber:String?
public var paymentPhoneNumber:String?
public var paymentId:String?
public var paymentStatus:String?
public var paymentTokenId:String?
public var maxTicketsPerEvent:Int?
public var multiplePaymentsId:String?
public var imageUrl:String?
public var backgroundImageUrl:String?
required public init(){}
}
public class KsiCardInfo : Codable
{
public var card:KsiCards?
public var cardType:KsiCardTypes?
required public init(){}
}
public class KsiCardTypes : Codable
{
public var ksiCardTypeId:String?
public var ksiCardTypeName:String?
public var ksiCardTypeDescription:String?
public var cardTypeOwner:String?
public var maxTicketsPerEvent:Int?
required public init(){}
}
public class OwnerCardInfo : Codable
{
public var card:OwnerCards?
public var cardType:OwnerCardType?
public var ownerName:String?
required public init(){}
}
public class OwnerCardType : Codable
{
public var id:Int?
public var ownerId:Int?
public var maxTickets:Int?
public var timeStampCreatedUTC:Date?
public var timeStampLastChangedUTC:Date?
public var saleStartDateUTC:Date?
public var saleEndDateUTC:Date?
public var validStartDateForNewCardsUTC:Date?
public var validEndDateForNewCardsUTC:Date?
public var hasStoreCredit:Bool?
public var isActive:Bool?
public var onlyForTeamUse:Bool?
public var price:Double?
public var initialStoreCredit:Double?
public var Description:String?
public var name:String?
public var imageUrl:String?
public var currency:String?
public var maxTicketsPerEvent:Int?
public var backgroundImageUrl:String?
public var validForConnectedOwners:Bool?
public var superOwnerId:Int?
required public init(){}
}
Swift PaymentCardsRequest 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 /paymentCards HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
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/jsv
Content-Length: length
{
cards:
[
{
id: 0,
creationDate: 0001-01-01,
lastTokenDate: 0001-01-01,
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-01,
dateDeletedFromOrigin: 0001-01-01,
isDeleted: False,
dateDeletedBySystem: 0001-01-01,
deletedBySystem: False
}
],
ksiCards:
[
{
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
}
],
ownerCards:
[
{
id: 0,
ownerId: 0,
ownerCardTypeId: 0,
phoneVerificationId: 0,
initialMaxTickets: 0,
currentAvailableTickets: 0,
timeStampCreatedUTC: 0001-01-01,
timeStampLastChangedUTC: 0001-01-01,
timeStampBoughtUTC: 0001-01-01,
timeStampOrderedUTC: 0001-01-01,
cardValidFromUTC: 0001-01-01,
cardValidToUTC: 0001-01-01,
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-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
},
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-01,
timeStampLastChangedUTC: 0001-01-01,
timeStampBoughtUTC: 0001-01-01,
timeStampOrderedUTC: 0001-01-01,
cardValidFromUTC: 0001-01-01,
cardValidToUTC: 0001-01-01,
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-01,
timeStampLastChangedUTC: 0001-01-01,
saleStartDateUTC: 0001-01-01,
saleEndDateUTC: 0001-01-01,
validStartDateForNewCardsUTC: 0001-01-01,
validEndDateForNewCardsUTC: 0001-01-01,
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
}