TicketUserServices

<back to all web services

GiftCardIssueRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdminRequired permission:Tickets.Add
The following routes are available for this service:
POST/GiftCard/Issue
import 'package:servicestack/servicestack.dart';

class GiftCardIssueResult implements IConvertible
{
    bool? success;
    int? giftCardId;
    String? code;
    String? codeLast4;
    String? status;
    DateTime? expiresAt;
    String? paymentId;
    int? statusCode;
    String? message;

    GiftCardIssueResult({this.success,this.giftCardId,this.code,this.codeLast4,this.status,this.expiresAt,this.paymentId,this.statusCode,this.message});
    GiftCardIssueResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        success = json['success'];
        giftCardId = json['giftCardId'];
        code = json['code'];
        codeLast4 = json['codeLast4'];
        status = json['status'];
        expiresAt = JsonConverters.fromJson(json['expiresAt'],'DateTime',context!);
        paymentId = json['paymentId'];
        statusCode = json['statusCode'];
        message = json['message'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'success': success,
        'giftCardId': giftCardId,
        'code': code,
        'codeLast4': codeLast4,
        'status': status,
        'expiresAt': JsonConverters.toJson(expiresAt,'DateTime',context!),
        'paymentId': paymentId,
        'statusCode': statusCode,
        'message': message
    };

    getTypeName() => "GiftCardIssueResult";
    TypeContext? context = _ctx;
}

class GiftCardIssueRequest implements IConvertible
{
    int? giftCardTypeId;
    int? amountMinor;
    String? code;
    bool? activate;
    String? buyerName;
    String? buyerEmail;
    String? buyerPhone;
    String? recipientName;
    String? idempotencyKey;
    String? note;

    GiftCardIssueRequest({this.giftCardTypeId,this.amountMinor,this.code,this.activate,this.buyerName,this.buyerEmail,this.buyerPhone,this.recipientName,this.idempotencyKey,this.note});
    GiftCardIssueRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        giftCardTypeId = json['giftCardTypeId'];
        amountMinor = json['amountMinor'];
        code = json['code'];
        activate = json['activate'];
        buyerName = json['buyerName'];
        buyerEmail = json['buyerEmail'];
        buyerPhone = json['buyerPhone'];
        recipientName = json['recipientName'];
        idempotencyKey = json['idempotencyKey'];
        note = json['note'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'giftCardTypeId': giftCardTypeId,
        'amountMinor': amountMinor,
        'code': code,
        'activate': activate,
        'buyerName': buyerName,
        'buyerEmail': buyerEmail,
        'buyerPhone': buyerPhone,
        'recipientName': recipientName,
        'idempotencyKey': idempotencyKey,
        'note': note
    };

    getTypeName() => "GiftCardIssueRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
    'GiftCardIssueResult': TypeInfo(TypeOf.Class, create:() => GiftCardIssueResult()),
    'GiftCardIssueRequest': TypeInfo(TypeOf.Class, create:() => GiftCardIssueRequest()),
});

Dart GiftCardIssueRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /GiftCard/Issue HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	giftCardTypeId: 0,
	amountMinor: 0,
	code: String,
	activate: False,
	buyerName: String,
	buyerEmail: String,
	buyerPhone: String,
	recipientName: String,
	idempotencyKey: String,
	note: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	success: False,
	giftCardId: 0,
	code: String,
	codeLast4: String,
	status: String,
	expiresAt: 0001-01-01,
	paymentId: String,
	statusCode: 0,
	message: String
}