TicketUserServices

<back to all web services

DiscountCodeCreateRequest

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

class DiscountCode implements IConvertible
{
    int? id;
    int? discountCodeType;
    String? code;
    bool? isMultiUse;
    int? maxTickets;
    bool? isSingleUse;
    bool? isForPhoneNumberOnly;
    String? fullPhoneNumber;
    bool? isUsed;
    bool? isValid;

    DiscountCode({this.id,this.discountCodeType,this.code,this.isMultiUse,this.maxTickets,this.isSingleUse,this.isForPhoneNumberOnly,this.fullPhoneNumber,this.isUsed,this.isValid});
    DiscountCode.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        discountCodeType = json['discountCodeType'];
        code = json['code'];
        isMultiUse = json['isMultiUse'];
        maxTickets = json['maxTickets'];
        isSingleUse = json['isSingleUse'];
        isForPhoneNumberOnly = json['isForPhoneNumberOnly'];
        fullPhoneNumber = json['fullPhoneNumber'];
        isUsed = json['isUsed'];
        isValid = json['isValid'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'discountCodeType': discountCodeType,
        'code': code,
        'isMultiUse': isMultiUse,
        'maxTickets': maxTickets,
        'isSingleUse': isSingleUse,
        'isForPhoneNumberOnly': isForPhoneNumberOnly,
        'fullPhoneNumber': fullPhoneNumber,
        'isUsed': isUsed,
        'isValid': isValid
    };

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

class DiscountCodeResult implements IConvertible
{
    DiscountCode? item;
    int? statusCode;
    String? message;

    DiscountCodeResult({this.item,this.statusCode,this.message});
    DiscountCodeResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        item = JsonConverters.fromJson(json['item'],'DiscountCode',context!);
        statusCode = json['statusCode'];
        message = json['message'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'item': JsonConverters.toJson(item,'DiscountCode',context!),
        'statusCode': statusCode,
        'message': message
    };

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

class DiscountCodeCreateRequest implements IConvertible
{
    DiscountCode? item;

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

    fromMap(Map<String, dynamic> json) {
        item = JsonConverters.fromJson(json['item'],'DiscountCode',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'item': JsonConverters.toJson(item,'DiscountCode',context!)
    };

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

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

Dart DiscountCodeCreateRequest 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

HTTP + JSON

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

POST /DiscountCode HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"item":{"id":0,"discountCodeType":0,"code":"String","isMultiUse":false,"maxTickets":0,"isSingleUse":false,"isForPhoneNumberOnly":false,"fullPhoneNumber":"String","isUsed":false,"isValid":false}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"item":{"id":0,"discountCodeType":0,"code":"String","isMultiUse":false,"maxTickets":0,"isSingleUse":false,"isForPhoneNumberOnly":false,"fullPhoneNumber":"String","isUsed":false,"isValid":false},"statusCode":0,"message":"String"}