BusinessApi

<back to all web services

GetAdMessageRequest

Business
Requires Authentication
Required role:Business
The following routes are available for this service:
GET/admessage/get

library BusinessApi;
import 'package:servicestack/servicestack.dart';

class ImageUrls implements IConvertible
{
    String? preview;
    String? small;
    String? medium;
    String? large;

    ImageUrls({this.preview,this.small,this.medium,this.large});
    ImageUrls.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        preview = json['preview'];
        small = json['small'];
        medium = json['medium'];
        large = json['large'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'preview': preview,
        'small': small,
        'medium': medium,
        'large': large
    };

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

class OpeningHour implements IConvertible
{
    int? openAtHour;
    int? openAtMinute;
    int? closeAtHour;
    int? closeAtMinute;

    OpeningHour({this.openAtHour,this.openAtMinute,this.closeAtHour,this.closeAtMinute});
    OpeningHour.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        openAtHour = json['openAtHour'];
        openAtMinute = json['openAtMinute'];
        closeAtHour = json['closeAtHour'];
        closeAtMinute = json['closeAtMinute'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'openAtHour': openAtHour,
        'openAtMinute': openAtMinute,
        'closeAtHour': closeAtHour,
        'closeAtMinute': closeAtMinute
    };

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

class WeeklyOpeningHours implements IConvertible
{
    OpeningHour? monday;
    OpeningHour? tuesday;
    OpeningHour? wednesday;
    OpeningHour? thursday;
    OpeningHour? friday;
    OpeningHour? saturday;
    OpeningHour? sunday;

    WeeklyOpeningHours({this.monday,this.tuesday,this.wednesday,this.thursday,this.friday,this.saturday,this.sunday});
    WeeklyOpeningHours.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        monday = JsonConverters.fromJson(json['monday'],'OpeningHour',context!);
        tuesday = JsonConverters.fromJson(json['tuesday'],'OpeningHour',context!);
        wednesday = JsonConverters.fromJson(json['wednesday'],'OpeningHour',context!);
        thursday = JsonConverters.fromJson(json['thursday'],'OpeningHour',context!);
        friday = JsonConverters.fromJson(json['friday'],'OpeningHour',context!);
        saturday = JsonConverters.fromJson(json['saturday'],'OpeningHour',context!);
        sunday = JsonConverters.fromJson(json['sunday'],'OpeningHour',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'monday': JsonConverters.toJson(monday,'OpeningHour',context!),
        'tuesday': JsonConverters.toJson(tuesday,'OpeningHour',context!),
        'wednesday': JsonConverters.toJson(wednesday,'OpeningHour',context!),
        'thursday': JsonConverters.toJson(thursday,'OpeningHour',context!),
        'friday': JsonConverters.toJson(friday,'OpeningHour',context!),
        'saturday': JsonConverters.toJson(saturday,'OpeningHour',context!),
        'sunday': JsonConverters.toJson(sunday,'OpeningHour',context!)
    };

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

class OpeningHours implements IConvertible
{
    WeeklyOpeningHours? weekly;

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

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

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

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

enum PlaceType
{
    Mall,
    Regular,
}

class PlaceContact implements IConvertible
{
    String? phone;
    String? email;
    String? website;
    String? webShop;

    PlaceContact({this.phone,this.email,this.website,this.webShop});
    PlaceContact.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        phone = json['phone'];
        email = json['email'];
        website = json['website'];
        webShop = json['webShop'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'phone': phone,
        'email': email,
        'website': website,
        'webShop': webShop
    };

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

class PlaceAddress implements IConvertible
{
    String? street;
    String? postalCode;
    String? region;
    String? countryCode;

    PlaceAddress({this.street,this.postalCode,this.region,this.countryCode});
    PlaceAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        street = json['street'];
        postalCode = json['postalCode'];
        region = json['region'];
        countryCode = json['countryCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'street': street,
        'postalCode': postalCode,
        'region': region,
        'countryCode': countryCode
    };

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

class TimeZoneDto implements IConvertible
{
    Duration? baseUtcOffset;
    String? daylightName;
    String? displayName;
    String? id;
    String? standardName;
    bool? supportsDaylightSavingTime;

    TimeZoneDto({this.baseUtcOffset,this.daylightName,this.displayName,this.id,this.standardName,this.supportsDaylightSavingTime});
    TimeZoneDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        baseUtcOffset = JsonConverters.fromJson(json['baseUtcOffset'],'Duration',context!);
        daylightName = json['daylightName'];
        displayName = json['displayName'];
        id = json['id'];
        standardName = json['standardName'];
        supportsDaylightSavingTime = json['supportsDaylightSavingTime'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'baseUtcOffset': JsonConverters.toJson(baseUtcOffset,'Duration',context!),
        'daylightName': daylightName,
        'displayName': displayName,
        'id': id,
        'standardName': standardName,
        'supportsDaylightSavingTime': supportsDaylightSavingTime
    };

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

enum PriceMainDish
{
    Value,
    Medium,
    High,
    FineDining,
}

class PriceMainDishDto implements IConvertible
{
    String? title;
    PriceMainDish? slug;

    PriceMainDishDto({this.title,this.slug});
    PriceMainDishDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'title': title,
        'slug': JsonConverters.toJson(slug,'PriceMainDish',context!)
    };

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

class AdMessageDetailsBase implements IConvertible
{
    String? description;
    List<String>? moreInformation = [];

    AdMessageDetailsBase({this.description,this.moreInformation});
    AdMessageDetailsBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'description': description,
        'moreInformation': JsonConverters.toJson(moreInformation,'List<String>',context!)
    };

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

class AdMessageDetailsPercentageDiscountOnAllMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? value;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

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

class AdMessageDetailsPercentageDiscountRangeOnAllMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? start;
    double? stop;

    AdMessageDetailsPercentageDiscountRangeOnAllMerchandise({this.start,this.stop});
    AdMessageDetailsPercentageDiscountRangeOnAllMerchandise.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        start = JsonConverters.toDouble(json['start']);
        stop = JsonConverters.toDouble(json['stop']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'start': start,
        'stop': stop
    });

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

class AdMessageDetailsPercentageDiscountOnSelectedMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? value;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

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

class AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? value;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

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

class AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? start;
    double? stop;

    AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise({this.start,this.stop});
    AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        start = JsonConverters.toDouble(json['start']);
        stop = JsonConverters.toDouble(json['stop']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'start': start,
        'stop': stop
    });

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

class AdMessageDetailsTotalAmountOverXgivesYdiscount extends AdMessageDetailsBase implements IConvertible
{
    double? ifTotalAmountMoreThanX;
    double? thenYouGetDiscountPercentageY;

    AdMessageDetailsTotalAmountOverXgivesYdiscount({this.ifTotalAmountMoreThanX,this.thenYouGetDiscountPercentageY});
    AdMessageDetailsTotalAmountOverXgivesYdiscount.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        ifTotalAmountMoreThanX = JsonConverters.toDouble(json['ifTotalAmountMoreThanX']);
        thenYouGetDiscountPercentageY = JsonConverters.toDouble(json['thenYouGetDiscountPercentageY']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'ifTotalAmountMoreThanX': ifTotalAmountMoreThanX,
        'thenYouGetDiscountPercentageY': thenYouGetDiscountPercentageY
    });

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

class AdMessageDetailsXforYdiscount extends AdMessageDetailsBase implements IConvertible
{
    int? ifYouBuyX;
    int? thenYouGetY;

    AdMessageDetailsXforYdiscount({this.ifYouBuyX,this.thenYouGetY});
    AdMessageDetailsXforYdiscount.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        ifYouBuyX = json['ifYouBuyX'];
        thenYouGetY = json['thenYouGetY'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'ifYouBuyX': ifYouBuyX,
        'thenYouGetY': thenYouGetY
    });

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

class AdMessageDetailsNewArrivals extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsNewArrivals();
    AdMessageDetailsNewArrivals.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsNewArrivals";
    TypeContext? context = _ctx;
}

class AdMessageDetailsFreetext extends AdMessageDetailsBase implements IConvertible
{
    String? title;

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

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

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'title': title
    });

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

class AdMessageDetailsTodaysBreakFastOffer extends AdMessageDetailsBase implements IConvertible
{
    double? value;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

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

class AdMessageDetailsTodaysLunchOffer extends AdMessageDetailsBase implements IConvertible
{
    double? value;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

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

class AdMessageDetailsTodaysDinnerOffer extends AdMessageDetailsBase implements IConvertible
{
    double? value;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

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

class AdMessageDetailsSaveFoodAndMoney extends AdMessageDetailsBase implements IConvertible
{
    double? value;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

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

class AdMessageDetailsPercentageOffYourFoodBill extends AdMessageDetailsBase implements IConvertible
{
    double? percentage;

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

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        percentage = JsonConverters.toDouble(json['percentage']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'percentage': percentage
    });

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

class AdMessageDetailsHappyHour extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsHappyHour();
    AdMessageDetailsHappyHour.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsHappyHour";
    TypeContext? context = _ctx;
}

class AdMessageDetailsSomeFreeTablesLeftToday extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsSomeFreeTablesLeftToday();
    AdMessageDetailsSomeFreeTablesLeftToday.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsSomeFreeTablesLeftToday";
    TypeContext? context = _ctx;
}

class AdMessageDetailsTwoDishesForThePriceOfOne extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsTwoDishesForThePriceOfOne();
    AdMessageDetailsTwoDishesForThePriceOfOne.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsTwoDishesForThePriceOfOne";
    TypeContext? context = _ctx;
}

class AdMessageDetailsUnion implements IConvertible
{
    AdMessageDetailsPercentageDiscountOnAllMerchandise? percentageOnAllMerchandise;
    AdMessageDetailsPercentageDiscountRangeOnAllMerchandise? percentageRangeOnAllMerchandise;
    AdMessageDetailsPercentageDiscountOnSelectedMerchandise? percentageOnSelectedMerchandise;
    AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise? absoluteOnSelectedMerchandise;
    AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise? absoluteRangeOnAllMerchandise;
    AdMessageDetailsTotalAmountOverXgivesYdiscount? totalAmountOverXgivesYdiscount;
    AdMessageDetailsXforYdiscount? xforY;
    AdMessageDetailsNewArrivals? newArrivals;
    AdMessageDetailsFreetext? freetext;
    AdMessageDetailsTodaysBreakFastOffer? todaysBreakFastOffer;
    AdMessageDetailsTodaysLunchOffer? todaysLunchOffer;
    AdMessageDetailsTodaysDinnerOffer? todaysDinnerOffer;
    AdMessageDetailsSaveFoodAndMoney? saveFoodAndMoney;
    AdMessageDetailsPercentageOffYourFoodBill? percentageOfYourFoodBill;
    AdMessageDetailsHappyHour? happyHour;
    AdMessageDetailsSomeFreeTablesLeftToday? someFreeTablesLeftToday;
    AdMessageDetailsTwoDishesForThePriceOfOne? twoDishesForThePriceOfOne;

    AdMessageDetailsUnion({this.percentageOnAllMerchandise,this.percentageRangeOnAllMerchandise,this.percentageOnSelectedMerchandise,this.absoluteOnSelectedMerchandise,this.absoluteRangeOnAllMerchandise,this.totalAmountOverXgivesYdiscount,this.xforY,this.newArrivals,this.freetext,this.todaysBreakFastOffer,this.todaysLunchOffer,this.todaysDinnerOffer,this.saveFoodAndMoney,this.percentageOfYourFoodBill,this.happyHour,this.someFreeTablesLeftToday,this.twoDishesForThePriceOfOne});
    AdMessageDetailsUnion.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        percentageOnAllMerchandise = JsonConverters.fromJson(json['percentageOnAllMerchandise'],'AdMessageDetailsPercentageDiscountOnAllMerchandise',context!);
        percentageRangeOnAllMerchandise = JsonConverters.fromJson(json['percentageRangeOnAllMerchandise'],'AdMessageDetailsPercentageDiscountRangeOnAllMerchandise',context!);
        percentageOnSelectedMerchandise = JsonConverters.fromJson(json['percentageOnSelectedMerchandise'],'AdMessageDetailsPercentageDiscountOnSelectedMerchandise',context!);
        absoluteOnSelectedMerchandise = JsonConverters.fromJson(json['absoluteOnSelectedMerchandise'],'AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise',context!);
        absoluteRangeOnAllMerchandise = JsonConverters.fromJson(json['absoluteRangeOnAllMerchandise'],'AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise',context!);
        totalAmountOverXgivesYdiscount = JsonConverters.fromJson(json['totalAmountOverXgivesYdiscount'],'AdMessageDetailsTotalAmountOverXgivesYdiscount',context!);
        xforY = JsonConverters.fromJson(json['xforY'],'AdMessageDetailsXforYdiscount',context!);
        newArrivals = JsonConverters.fromJson(json['newArrivals'],'AdMessageDetailsNewArrivals',context!);
        freetext = JsonConverters.fromJson(json['freetext'],'AdMessageDetailsFreetext',context!);
        todaysBreakFastOffer = JsonConverters.fromJson(json['todaysBreakFastOffer'],'AdMessageDetailsTodaysBreakFastOffer',context!);
        todaysLunchOffer = JsonConverters.fromJson(json['todaysLunchOffer'],'AdMessageDetailsTodaysLunchOffer',context!);
        todaysDinnerOffer = JsonConverters.fromJson(json['todaysDinnerOffer'],'AdMessageDetailsTodaysDinnerOffer',context!);
        saveFoodAndMoney = JsonConverters.fromJson(json['saveFoodAndMoney'],'AdMessageDetailsSaveFoodAndMoney',context!);
        percentageOfYourFoodBill = JsonConverters.fromJson(json['percentageOfYourFoodBill'],'AdMessageDetailsPercentageOffYourFoodBill',context!);
        happyHour = JsonConverters.fromJson(json['happyHour'],'AdMessageDetailsHappyHour',context!);
        someFreeTablesLeftToday = JsonConverters.fromJson(json['someFreeTablesLeftToday'],'AdMessageDetailsSomeFreeTablesLeftToday',context!);
        twoDishesForThePriceOfOne = JsonConverters.fromJson(json['twoDishesForThePriceOfOne'],'AdMessageDetailsTwoDishesForThePriceOfOne',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'percentageOnAllMerchandise': JsonConverters.toJson(percentageOnAllMerchandise,'AdMessageDetailsPercentageDiscountOnAllMerchandise',context!),
        'percentageRangeOnAllMerchandise': JsonConverters.toJson(percentageRangeOnAllMerchandise,'AdMessageDetailsPercentageDiscountRangeOnAllMerchandise',context!),
        'percentageOnSelectedMerchandise': JsonConverters.toJson(percentageOnSelectedMerchandise,'AdMessageDetailsPercentageDiscountOnSelectedMerchandise',context!),
        'absoluteOnSelectedMerchandise': JsonConverters.toJson(absoluteOnSelectedMerchandise,'AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise',context!),
        'absoluteRangeOnAllMerchandise': JsonConverters.toJson(absoluteRangeOnAllMerchandise,'AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise',context!),
        'totalAmountOverXgivesYdiscount': JsonConverters.toJson(totalAmountOverXgivesYdiscount,'AdMessageDetailsTotalAmountOverXgivesYdiscount',context!),
        'xforY': JsonConverters.toJson(xforY,'AdMessageDetailsXforYdiscount',context!),
        'newArrivals': JsonConverters.toJson(newArrivals,'AdMessageDetailsNewArrivals',context!),
        'freetext': JsonConverters.toJson(freetext,'AdMessageDetailsFreetext',context!),
        'todaysBreakFastOffer': JsonConverters.toJson(todaysBreakFastOffer,'AdMessageDetailsTodaysBreakFastOffer',context!),
        'todaysLunchOffer': JsonConverters.toJson(todaysLunchOffer,'AdMessageDetailsTodaysLunchOffer',context!),
        'todaysDinnerOffer': JsonConverters.toJson(todaysDinnerOffer,'AdMessageDetailsTodaysDinnerOffer',context!),
        'saveFoodAndMoney': JsonConverters.toJson(saveFoodAndMoney,'AdMessageDetailsSaveFoodAndMoney',context!),
        'percentageOfYourFoodBill': JsonConverters.toJson(percentageOfYourFoodBill,'AdMessageDetailsPercentageOffYourFoodBill',context!),
        'happyHour': JsonConverters.toJson(happyHour,'AdMessageDetailsHappyHour',context!),
        'someFreeTablesLeftToday': JsonConverters.toJson(someFreeTablesLeftToday,'AdMessageDetailsSomeFreeTablesLeftToday',context!),
        'twoDishesForThePriceOfOne': JsonConverters.toJson(twoDishesForThePriceOfOne,'AdMessageDetailsTwoDishesForThePriceOfOne',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'BusinessApi', types: <String, TypeInfo> {
    'ImageUrls': TypeInfo(TypeOf.Class, create:() => ImageUrls()),
    'OpeningHour': TypeInfo(TypeOf.Class, create:() => OpeningHour()),
    'WeeklyOpeningHours': TypeInfo(TypeOf.Class, create:() => WeeklyOpeningHours()),
    'OpeningHours': TypeInfo(TypeOf.Class, create:() => OpeningHours()),
    'PlaceType': TypeInfo(TypeOf.Enum, enumValues:PlaceType.values),
    'PlaceContact': TypeInfo(TypeOf.Class, create:() => PlaceContact()),
    'PlaceAddress': TypeInfo(TypeOf.Class, create:() => PlaceAddress()),
    'TimeZoneDto': TypeInfo(TypeOf.Class, create:() => TimeZoneDto()),
    'PriceMainDish': TypeInfo(TypeOf.Enum, enumValues:PriceMainDish.values),
    'PriceMainDishDto': TypeInfo(TypeOf.Class, create:() => PriceMainDishDto()),
    'AdMessageDetailsBase': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsBase()),
    'AdMessageDetailsPercentageDiscountOnAllMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageDiscountOnAllMerchandise()),
    'AdMessageDetailsPercentageDiscountRangeOnAllMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageDiscountRangeOnAllMerchandise()),
    'AdMessageDetailsPercentageDiscountOnSelectedMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageDiscountOnSelectedMerchandise()),
    'AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise()),
    'AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise()),
    'AdMessageDetailsTotalAmountOverXgivesYdiscount': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTotalAmountOverXgivesYdiscount()),
    'AdMessageDetailsXforYdiscount': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsXforYdiscount()),
    'AdMessageDetailsNewArrivals': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsNewArrivals()),
    'AdMessageDetailsFreetext': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsFreetext()),
    'AdMessageDetailsTodaysBreakFastOffer': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTodaysBreakFastOffer()),
    'AdMessageDetailsTodaysLunchOffer': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTodaysLunchOffer()),
    'AdMessageDetailsTodaysDinnerOffer': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTodaysDinnerOffer()),
    'AdMessageDetailsSaveFoodAndMoney': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsSaveFoodAndMoney()),
    'AdMessageDetailsPercentageOffYourFoodBill': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageOffYourFoodBill()),
    'AdMessageDetailsHappyHour': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsHappyHour()),
    'AdMessageDetailsSomeFreeTablesLeftToday': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsSomeFreeTablesLeftToday()),
    'AdMessageDetailsTwoDishesForThePriceOfOne': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTwoDishesForThePriceOfOne()),
    'AdMessageDetailsUnion': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsUnion()),
});

Dart GetAdMessageRequest 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.

GET /admessage/get HTTP/1.1 
Host: business-api.brovs.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	adMessage: 
	{
		id: 0,
		title: String,
		startAt: 
		{
			year: 0,
			month: 0,
			day: 0,
			hour: 0,
			minute: 0,
			second: 0
		},
		stopAt: 
		{
			year: 0,
			month: 0,
			day: 0,
			hour: 0,
			minute: 0,
			second: 0
		},
		publishAt: 
		{
			year: 0,
			month: 0,
			day: 0,
			hour: 0,
			minute: 0,
			second: 0
		},
		state: String,
		updatedAt: 0001-01-01T00:00:00.0000000+00:00,
		imageUrls: 
		[
			{
				preview: String,
				small: String,
				medium: String,
				large: String
			}
		],
		place: 
		{
			id: 0,
			name: String,
			businessId: 0,
			longitude: 0,
			latitude: 0,
			claimed: False,
			organizationNumber: String,
			countryCode: String,
			overview: String,
			openingHours: 
			{
				weekly: 
				{
					monday: 
					{
						openAtHour: 0,
						openAtMinute: 0,
						closeAtHour: 0,
						closeAtMinute: 0
					},
					tuesday: 
					{
						openAtHour: 0,
						openAtMinute: 0,
						closeAtHour: 0,
						closeAtMinute: 0
					},
					wednesday: 
					{
						openAtHour: 0,
						openAtMinute: 0,
						closeAtHour: 0,
						closeAtMinute: 0
					},
					thursday: 
					{
						openAtHour: 0,
						openAtMinute: 0,
						closeAtHour: 0,
						closeAtMinute: 0
					},
					friday: 
					{
						openAtHour: 0,
						openAtMinute: 0,
						closeAtHour: 0,
						closeAtMinute: 0
					},
					saturday: 
					{
						openAtHour: 0,
						openAtMinute: 0,
						closeAtHour: 0,
						closeAtMinute: 0
					},
					sunday: 
					{
						openAtHour: 0,
						openAtMinute: 0,
						closeAtHour: 0,
						closeAtMinute: 0
					}
				}
			},
			placeType: Mall,
			contact: 
			{
				phone: String,
				email: String,
				website: String,
				webShop: String
			},
			address: 
			{
				street: String,
				postalCode: String,
				region: String,
				countryCode: String
			},
			wheelChairAccessible: False,
			wifi: False,
			outdoorSeating: False,
			saveFoodAndMoney: False,
			timeZoneDto: 
			{
				baseUtcOffset: PT0S,
				daylightName: String,
				displayName: String,
				id: String,
				standardName: String,
				supportsDaylightSavingTime: False
			},
			priceMainDish: 
			{
				title: String,
				slug: Value
			},
			otherServices: 
			[
				{
					id: 0,
					serviceName: String,
					floor: String
				}
			],
			floor: String
		},
		detailsUnion: 
		{
			percentageOnAllMerchandise: 
			{
				value: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			percentageRangeOnAllMerchandise: 
			{
				start: 0,
				stop: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			percentageOnSelectedMerchandise: 
			{
				value: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			absoluteOnSelectedMerchandise: 
			{
				value: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			absoluteRangeOnAllMerchandise: 
			{
				start: 0,
				stop: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			totalAmountOverXgivesYdiscount: 
			{
				ifTotalAmountMoreThanX: 0,
				thenYouGetDiscountPercentageY: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			xforY: 
			{
				ifYouBuyX: 0,
				thenYouGetY: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			newArrivals: 
			{
				description: String,
				moreInformation: 
				[
					String
				]
			},
			freetext: 
			{
				title: String,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			todaysBreakFastOffer: 
			{
				value: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			todaysLunchOffer: 
			{
				value: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			todaysDinnerOffer: 
			{
				value: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			saveFoodAndMoney: 
			{
				value: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			percentageOfYourFoodBill: 
			{
				percentage: 0,
				description: String,
				moreInformation: 
				[
					String
				]
			},
			happyHour: 
			{
				description: String,
				moreInformation: 
				[
					String
				]
			},
			someFreeTablesLeftToday: 
			{
				description: String,
				moreInformation: 
				[
					String
				]
			},
			twoDishesForThePriceOfOne: 
			{
				description: String,
				moreInformation: 
				[
					String
				]
			}
		}
	}
}