TicketUserServices

<back to all web services

GiftCardBalanceRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
POST/GiftCard/Balance
import 'package:servicestack/servicestack.dart';

class LocalizedMessage implements IConvertible
{
    String? Is;
    String? en;

    LocalizedMessage({this.Is,this.en});
    LocalizedMessage.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Is = json['is'];
        en = json['en'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'is': Is,
        'en': en
    };

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

class GiftCardValidateResult implements IConvertible
{
    bool? ok;
    String? reason;
    LocalizedMessage? message;
    String? status;
    int? availableMinor;
    int? applicableMinor;
    String? scope;
    int? scopeOwnerId;
    DateTime? expiresAt;
    int? statusCode;

    GiftCardValidateResult({this.ok,this.reason,this.message,this.status,this.availableMinor,this.applicableMinor,this.scope,this.scopeOwnerId,this.expiresAt,this.statusCode});
    GiftCardValidateResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ok = json['ok'];
        reason = json['reason'];
        message = JsonConverters.fromJson(json['message'],'LocalizedMessage',context!);
        status = json['status'];
        availableMinor = json['availableMinor'];
        applicableMinor = json['applicableMinor'];
        scope = json['scope'];
        scopeOwnerId = json['scopeOwnerId'];
        expiresAt = JsonConverters.fromJson(json['expiresAt'],'DateTime',context!);
        statusCode = json['statusCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ok': ok,
        'reason': reason,
        'message': JsonConverters.toJson(message,'LocalizedMessage',context!),
        'status': status,
        'availableMinor': availableMinor,
        'applicableMinor': applicableMinor,
        'scope': scope,
        'scopeOwnerId': scopeOwnerId,
        'expiresAt': JsonConverters.toJson(expiresAt,'DateTime',context!),
        'statusCode': statusCode
    };

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

class GiftCardBalanceRequest implements IConvertible
{
    String? code;

    GiftCardBalanceRequest({this.code});
    GiftCardBalanceRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        code = json['code'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'code': code
    };

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

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

Dart GiftCardBalanceRequest 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/Balance HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	code: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ok: False,
	reason: String,
	message: 
	{
		is: String,
		en: String
	},
	status: String,
	availableMinor: 0,
	applicableMinor: 0,
	scope: String,
	scopeOwnerId: 0,
	expiresAt: 0001-01-01,
	statusCode: 0
}