TicketUserServices

<back to all web services

SupportCustomer360Request

Requires Authentication
Requires the role:AdminRequires the permission:ReadData
The following routes are available for this service:
POST/Support/Customer360

export class SupportTicketRow
{
    public ticketId?: number;
    public ticketTokenId?: string;
    public eventId?: number;
    public event?: string;
    public timeOfEventUTC?: string;
    public eventOwnerId?: number;
    public eventOwnerName?: string;
    public ticketStatus?: string;
    public ticketName?: string;
    public paymentMethodId?: string;
    public paymentId?: string;
    public paymentReference?: string;
    public timestampBought?: string;
    public timestampActivated?: string;
    public holderName?: string;
    public phoneVerificationNumber?: string;
    public paymentPhoneNumber?: string;
    public seatDisplayString?: string;
    public sectionName?: string;
    public rowName?: string;
    public seatName?: string;
    public totalPrice?: number;
    public count?: number;
    public ticketTransferredFrom?: number;
    public originalPhoneVerificationNumber?: string;
    public deviceId?: string;
    public neverOpened?: boolean;

    public constructor(init?: Partial<SupportTicketRow>) { (Object as any).assign(this, init); }
}

export class SupportOwnerCardRow
{
    public id?: number;
    public ownerId?: number;
    public ownerName?: string;
    public ownerCardTypeId?: number;
    public ownerCardTypeName?: string;
    public holderName?: string;
    public holderEmail?: string;
    public phoneVerificationNumber?: string;
    public paymentPhoneNumber?: string;
    public paymentStatus?: string;
    public paymentMethodId?: string;
    public paymentId?: string;
    public paymentReference?: string;
    public timeStampBoughtUTC?: string;
    public cardValidFromUTC?: string;
    public cardValidToUTC?: string;
    public initialMaxTickets?: number;
    public currentAvailableTickets?: number;
    public cardPrice?: number;
    public pricePaid?: number;
    public currentStoreCredit?: number;

    public constructor(init?: Partial<SupportOwnerCardRow>) { (Object as any).assign(this, init); }
}

export class WebshopOrderLine
{
    public id?: number;
    public orderId?: number;
    public productId?: number;
    public variantId?: number;
    // @StringLength(200)
    public productName?: string;

    // @StringLength(50)
    public size?: string;

    // @StringLength(50)
    public color?: string;

    public unitPriceMinor?: number;
    public quantity?: number;
    public lineTotalMinor?: number;
    // @StringLength(20)
    public status?: string;

    public legacyDetailId?: number;
    public createdAt?: string;

    public constructor(init?: Partial<WebshopOrderLine>) { (Object as any).assign(this, init); }
}

export class SupportWebshopOrderRow
{
    public id?: number;
    public orderReference?: string;
    public ownerId?: number;
    public ownerName?: string;
    public status?: string;
    public totalMinor?: number;
    public deliveryFeeMinor?: number;
    public totalDiscountMinor?: number;
    public giftPaidMinor?: number;
    public currency?: string;
    public deliveryType?: string;
    public paymentMethodId?: string;
    public paymentId?: string;
    public paymentReference?: string;
    public createdAt?: string;
    public updatedAt?: string;
    public buyerName?: string;
    public buyerEmail?: string;
    public buyerPhone?: string;
    public lines?: WebshopOrderLine[];

    public constructor(init?: Partial<SupportWebshopOrderRow>) { (Object as any).assign(this, init); }
}

export class SupportGiftCardRow
{
    public id?: number;
    public codeLast4?: string;
    public codeMasked?: string;
    public status?: string;
    public scope?: string;
    public scopeOwnerId?: number;
    public scopeOwnerName?: string;
    public purchaseOwnerId?: number;
    public purchaseOwnerName?: string;
    public currency?: string;
    public initialValueMinor?: number;
    public currentBalanceMinor?: number;
    public createdAt?: string;
    public activatedAt?: string;
    public expiresAt?: string;
    public purchasePaymentReference?: string;
    public paymentId?: string;
    public paymentMethodId?: string;
    public buyerName?: string;
    public buyerEmail?: string;
    public buyerPhone?: string;

    public constructor(init?: Partial<SupportGiftCardRow>) { (Object as any).assign(this, init); }
}

export class SupportSharedLinkRow
{
    public id?: number;
    public eventId?: number;
    public eventName?: string;
    public eventOwnerId?: number;
    public eventOwnerName?: string;
    public status?: string;
    public recipientPhone?: string;
    public recipientEmail?: string;
    public ticketCount?: number;
    public createdAt?: string;
    public validTo?: string;
    public soldAt?: string;
    public soldTicketOrderId?: number;

    public constructor(init?: Partial<SupportSharedLinkRow>) { (Object as any).assign(this, init); }
}

export class SupportCustomerTotals
{
    public ticketSpend?: number;
    public ticketSpendLive?: number;
    public webshopSpendMinor?: number;
    public giftCardSpendMinor?: number;

    public constructor(init?: Partial<SupportCustomerTotals>) { (Object as any).assign(this, init); }
}

export class SupportCustomer360Result
{
    public phone?: string;
    public email?: string;
    public tickets?: SupportTicketRow[];
    public ownerCards?: SupportOwnerCardRow[];
    public webshopOrders?: SupportWebshopOrderRow[];
    public giftCards?: SupportGiftCardRow[];
    public sharedTicketLinks?: SupportSharedLinkRow[];
    public totals?: SupportCustomerTotals;
    public warnings?: string[];
    public statusCode?: number;
    public message?: string;

    public constructor(init?: Partial<SupportCustomer360Result>) { (Object as any).assign(this, init); }
}

export class SupportCustomer360Request
{
    public phone?: string;
    public email?: string;

    public constructor(init?: Partial<SupportCustomer360Request>) { (Object as any).assign(this, init); }
}

TypeScript SupportCustomer360Request 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 /Support/Customer360 HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"phone":"String","email":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
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"}