| Requires the role: | Admin | Requires the permission: | ReadData |
| POST | /Support/Customer360 |
|---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class SupportCustomer360Request
{
var phone:String? = null
var email:String? = null
}
open class SupportCustomer360Result
{
var phone:String? = null
var email:String? = null
var tickets:ArrayList<SupportTicketRow> = ArrayList<SupportTicketRow>()
var ownerCards:ArrayList<SupportOwnerCardRow> = ArrayList<SupportOwnerCardRow>()
var webshopOrders:ArrayList<SupportWebshopOrderRow> = ArrayList<SupportWebshopOrderRow>()
var giftCards:ArrayList<SupportGiftCardRow> = ArrayList<SupportGiftCardRow>()
var sharedTicketLinks:ArrayList<SupportSharedLinkRow> = ArrayList<SupportSharedLinkRow>()
var totals:SupportCustomerTotals? = null
var warnings:ArrayList<String> = ArrayList<String>()
var statusCode:Int? = null
var message:String? = null
}
open class SupportTicketRow
{
var ticketId:Int? = null
var ticketTokenId:String? = null
var eventId:Int? = null
var event:String? = null
var timeOfEventUTC:Date? = null
var eventOwnerId:Int? = null
var eventOwnerName:String? = null
var ticketStatus:String? = null
var ticketName:String? = null
var paymentMethodId:String? = null
var paymentId:String? = null
var paymentReference:String? = null
var timestampBought:Date? = null
var timestampActivated:Date? = null
var holderName:String? = null
var phoneVerificationNumber:String? = null
var paymentPhoneNumber:String? = null
var seatDisplayString:String? = null
var sectionName:String? = null
var rowName:String? = null
var seatName:String? = null
var totalPrice:BigDecimal? = null
var count:Int? = null
var ticketTransferredFrom:Int? = null
var originalPhoneVerificationNumber:String? = null
var deviceId:String? = null
var neverOpened:Boolean? = null
}
open class SupportOwnerCardRow
{
var id:Int? = null
var ownerId:Int? = null
var ownerName:String? = null
var ownerCardTypeId:Int? = null
var ownerCardTypeName:String? = null
var holderName:String? = null
var holderEmail:String? = null
var phoneVerificationNumber:String? = null
var paymentPhoneNumber:String? = null
var paymentStatus:String? = null
var paymentMethodId:String? = null
var paymentId:String? = null
var paymentReference:String? = null
var timeStampBoughtUTC:Date? = null
var cardValidFromUTC:Date? = null
var cardValidToUTC:Date? = null
var initialMaxTickets:Int? = null
var currentAvailableTickets:Int? = null
var cardPrice:BigDecimal? = null
var pricePaid:BigDecimal? = null
var currentStoreCredit:BigDecimal? = null
}
open class SupportWebshopOrderRow
{
var id:Int? = null
var orderReference:String? = null
var ownerId:Int? = null
var ownerName:String? = null
var status:String? = null
var totalMinor:Int? = null
var deliveryFeeMinor:Int? = null
var totalDiscountMinor:Int? = null
var giftPaidMinor:Int? = null
var currency:String? = null
var deliveryType:String? = null
var paymentMethodId:String? = null
var paymentId:String? = null
var paymentReference:String? = null
var createdAt:Date? = null
var updatedAt:Date? = null
var buyerName:String? = null
var buyerEmail:String? = null
var buyerPhone:String? = null
var lines:ArrayList<WebshopOrderLine> = ArrayList<WebshopOrderLine>()
}
open class WebshopOrderLine
{
var id:Int? = null
var orderId:Int? = null
var productId:Int? = null
var variantId:Int? = null
@StringLength(200)
var productName:String? = null
@StringLength(50)
var size:String? = null
@StringLength(50)
var color:String? = null
var unitPriceMinor:Int? = null
var quantity:Int? = null
var lineTotalMinor:Int? = null
@StringLength(20)
var status:String? = null
var legacyDetailId:Int? = null
var createdAt:Date? = null
}
open class SupportGiftCardRow
{
var id:Int? = null
var codeLast4:String? = null
var codeMasked:String? = null
var status:String? = null
var scope:String? = null
var scopeOwnerId:Int? = null
var scopeOwnerName:String? = null
var purchaseOwnerId:Int? = null
var purchaseOwnerName:String? = null
var currency:String? = null
var initialValueMinor:Int? = null
var currentBalanceMinor:Int? = null
var createdAt:Date? = null
var activatedAt:Date? = null
var expiresAt:Date? = null
var purchasePaymentReference:String? = null
var paymentId:String? = null
var paymentMethodId:String? = null
var buyerName:String? = null
var buyerEmail:String? = null
var buyerPhone:String? = null
}
open class SupportSharedLinkRow
{
var id:Int? = null
var eventId:Int? = null
var eventName:String? = null
var eventOwnerId:Int? = null
var eventOwnerName:String? = null
var status:String? = null
var recipientPhone:String? = null
var recipientEmail:String? = null
var ticketCount:Int? = null
var createdAt:Date? = null
var validTo:Date? = null
var soldAt:Date? = null
var soldTicketOrderId:Int? = null
}
open class SupportCustomerTotals
{
var ticketSpend:BigDecimal? = null
var ticketSpendLive:BigDecimal? = null
var webshopSpendMinor:Long? = null
var giftCardSpendMinor:Long? = null
}
Kotlin SupportCustomer360Request DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Support/Customer360 HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: application/json
Content-Type: application/json
Content-Length: length
{"phone":"String","email":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"phone":"String","email":"String","tickets":[{"ticketId":0,"ticketTokenId":"String","eventId":0,"event":"String","timeOfEventUTC":"0001-01-01T00:00:00.0000000","eventOwnerId":0,"eventOwnerName":"String","ticketStatus":"String","ticketName":"String","paymentMethodId":"String","paymentId":"String","paymentReference":"String","timestampBought":"0001-01-01T00:00:00.0000000","timestampActivated":"0001-01-01T00:00:00.0000000","holderName":"String","phoneVerificationNumber":"String","paymentPhoneNumber":"String","seatDisplayString":"String","sectionName":"String","rowName":"String","seatName":"String","totalPrice":0,"count":0,"ticketTransferredFrom":0,"originalPhoneVerificationNumber":"String","deviceId":"String","neverOpened":false}],"ownerCards":[{"id":0,"ownerId":0,"ownerName":"String","ownerCardTypeId":0,"ownerCardTypeName":"String","holderName":"String","holderEmail":"String","phoneVerificationNumber":"String","paymentPhoneNumber":"String","paymentStatus":"String","paymentMethodId":"String","paymentId":"String","paymentReference":"String","timeStampBoughtUTC":"0001-01-01T00:00:00.0000000","cardValidFromUTC":"0001-01-01T00:00:00.0000000","cardValidToUTC":"0001-01-01T00:00:00.0000000","initialMaxTickets":0,"currentAvailableTickets":0,"cardPrice":0,"pricePaid":0,"currentStoreCredit":0}],"webshopOrders":[{"id":0,"orderReference":"String","ownerId":0,"ownerName":"String","status":"String","totalMinor":0,"deliveryFeeMinor":0,"totalDiscountMinor":0,"giftPaidMinor":0,"currency":"String","deliveryType":"String","paymentMethodId":"String","paymentId":"String","paymentReference":"String","createdAt":"0001-01-01T00:00:00.0000000","updatedAt":"0001-01-01T00:00:00.0000000","buyerName":"String","buyerEmail":"String","buyerPhone":"String","lines":[{"id":0,"orderId":0,"productId":0,"variantId":0,"productName":"String","size":"String","color":"String","unitPriceMinor":0,"quantity":0,"lineTotalMinor":0,"status":"String","legacyDetailId":0,"createdAt":"0001-01-01T00:00:00.0000000"}]}],"giftCards":[{"id":0,"codeLast4":"String","codeMasked":"String","status":"String","scope":"String","scopeOwnerId":0,"scopeOwnerName":"String","purchaseOwnerId":0,"purchaseOwnerName":"String","currency":"String","initialValueMinor":0,"currentBalanceMinor":0,"createdAt":"0001-01-01T00:00:00.0000000","activatedAt":"0001-01-01T00:00:00.0000000","expiresAt":"0001-01-01T00:00:00.0000000","purchasePaymentReference":"String","paymentId":"String","paymentMethodId":"String","buyerName":"String","buyerEmail":"String","buyerPhone":"String"}],"sharedTicketLinks":[{"id":0,"eventId":0,"eventName":"String","eventOwnerId":0,"eventOwnerName":"String","status":"String","recipientPhone":"String","recipientEmail":"String","ticketCount":0,"createdAt":"0001-01-01T00:00:00.0000000","validTo":"0001-01-01T00:00:00.0000000","soldAt":"0001-01-01T00:00:00.0000000","soldTicketOrderId":0}],"totals":{"ticketSpend":0,"ticketSpendLive":0,"webshopSpendMinor":0,"giftCardSpendMinor":0},"warnings":["String"],"statusCode":0,"message":"String"}