| 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 java.math.*
import java.util.*
import net.servicestack.client.*
open class PaymentCardsRequest
{
var phoneVerificationNumber:String? = null
var deviceId:String? = null
var onlyForEventId:Int? = null
var checkForExpiry:Boolean? = null
var excludeHiddenCards:Boolean? = null
var requestUnixUTCTimeStamp:Long? = null
var includeDeletedCards:Boolean? = null
var signature:RequestSignature? = null
}
open class RequestSignature
{
var systemId:String? = null
var systemSecret:String? = null
var signature:String? = null
}
open class PaymentCardsResult
{
var cards:ArrayList<BorgunSavedCards> = ArrayList<BorgunSavedCards>()
var ksiCards:ArrayList<KsiCards> = ArrayList<KsiCards>()
var ownerCards:ArrayList<OwnerCards> = ArrayList<OwnerCards>()
var ksiCardInfoList:ArrayList<KsiCardInfo> = ArrayList<KsiCardInfo>()
var ownerCardInfoList:ArrayList<OwnerCardInfo> = ArrayList<OwnerCardInfo>()
var statusCode:Int? = null
var message:String? = null
}
open class BorgunSavedCards
{
var id:Int? = null
var creationDate:Date? = null
var lastTokenDate:Date? = null
var isDebit:Boolean? = null
var phoneVerificationNumber:String? = null
var deviceId:String? = null
var virtualCardNumber:String? = null
var panLastFour:String? = null
var expYear:String? = null
var expMonth:String? = null
var token:String? = null
var cardType:String? = null
var deletedByUser:Boolean? = null
var deletedFromOrigin:Boolean? = null
var dateDeletedByUser:Date? = null
var dateDeletedFromOrigin:Date? = null
var isDeleted:Boolean? = null
var dateDeletedBySystem:Date? = null
var deletedBySystem:Boolean? = null
}
open class KsiCards
{
var id:Int? = null
var creationDate:Date? = null
var phoneFullVerificationNumber:String? = null
var deviceId:String? = null
var ksiCardTypeId:String? = null
var ksiClubId:String? = null
var holderName:String? = null
var canTransferToPhoneFullNumber:String? = null
var canTransferToNName:String? = null
var expYear:String? = null
var expMonth:String? = null
var isActive:Boolean? = null
var validFromDate:Date? = null
var validToDate:Date? = null
var lastModifiedDate:Date? = null
var revokedDate:Date? = null
var revokedReason:String? = null
}
open class OwnerCards
{
var id:Int? = null
var ownerId:Int? = null
var ownerCardTypeId:Int? = null
var phoneVerificationId:Int? = null
var initialMaxTickets:Int? = null
var currentAvailableTickets:Int? = null
var timeStampCreatedUTC:Date? = null
var timeStampLastChangedUTC:Date? = null
var timeStampBoughtUTC:Date? = null
var timeStampOrderedUTC:Date? = null
var cardValidFromUTC:Date? = null
var cardValidToUTC:Date? = null
var hasStoreCredit:Boolean? = null
var cardPrice:BigDecimal? = null
var pricePaid:BigDecimal? = null
var initialStoreCredit:BigDecimal? = null
var currentStoreCredit:BigDecimal? = null
var phoneFullVerificationNumber:String? = null
var holderId:String? = null
var holderName:String? = null
var holderEmail:String? = null
var cardPriceCurrency:String? = null
var pricePaidCurrency:String? = null
var deviceId:String? = null
var paymentMethodId:String? = null
var paymentReference:String? = null
var phoneVerificationNumber:String? = null
var paymentPhoneNumber:String? = null
var paymentId:String? = null
var paymentStatus:String? = null
var paymentTokenId:String? = null
var maxTicketsPerEvent:Int? = null
var multiplePaymentsId:String? = null
var imageUrl:String? = null
var backgroundImageUrl:String? = null
}
open class KsiCardInfo
{
var card:KsiCards? = null
var cardType:KsiCardTypes? = null
}
open class KsiCardTypes
{
var ksiCardTypeId:String? = null
var ksiCardTypeName:String? = null
var ksiCardTypeDescription:String? = null
var cardTypeOwner:String? = null
var maxTicketsPerEvent:Int? = null
}
open class OwnerCardInfo
{
var card:OwnerCards? = null
var cardType:OwnerCardType? = null
var ownerName:String? = null
}
open class OwnerCardType
{
var id:Int? = null
var ownerId:Int? = null
var maxTickets:Int? = null
var timeStampCreatedUTC:Date? = null
var timeStampLastChangedUTC:Date? = null
var saleStartDateUTC:Date? = null
var saleEndDateUTC:Date? = null
var validStartDateForNewCardsUTC:Date? = null
var validEndDateForNewCardsUTC:Date? = null
var hasStoreCredit:Boolean? = null
var isActive:Boolean? = null
var onlyForTeamUse:Boolean? = null
var price:BigDecimal? = null
var initialStoreCredit:BigDecimal? = null
var description:String? = null
var name:String? = null
var imageUrl:String? = null
var currency:String? = null
var maxTicketsPerEvent:Int? = null
var backgroundImageUrl:String? = null
var validForConnectedOwners:Boolean? = null
var superOwnerId:Int? = null
}
Kotlin 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
}