ConsumerApi

<back to all web services

ShareAdMessageLinkUsedRequest

Consumer
The following routes are available for this service:
POST/share/share-ad-message-link-usedA share AD Message link was usedValidates the JWT token with the identity of the sharing user and the shared AD Message and returns relevant information.

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

class SharingUser implements IConvertible
{
    String? firstName;
    String? lastName;
    String? profilePhotoUrl;

    SharingUser({this.firstName,this.lastName,this.profilePhotoUrl});
    SharingUser.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'firstName': firstName,
        'lastName': lastName,
        'profilePhotoUrl': profilePhotoUrl
    };

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

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,
}

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

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

    PriceMainDishApiDto({this.title,this.slug});
    PriceMainDishApiDto.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() => "PriceMainDishApiDto";
    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;
}

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 CategoryTreeApiDto implements IConvertible
{
    String? name;
    String? slug;
    String? absoluteSlug;
    String? imageUrl;
    String? allImageUrl;
    String? iconImageUrl;
    int? position;
    List<CategoryTreeApiDto>? children = [];

    CategoryTreeApiDto({this.name,this.slug,this.absoluteSlug,this.imageUrl,this.allImageUrl,this.iconImageUrl,this.position,this.children});
    CategoryTreeApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        slug = json['slug'];
        absoluteSlug = json['absoluteSlug'];
        imageUrl = json['imageUrl'];
        allImageUrl = json['allImageUrl'];
        iconImageUrl = json['iconImageUrl'];
        position = json['position'];
        children = JsonConverters.fromJson(json['children'],'List<CategoryTreeApiDto>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'slug': slug,
        'absoluteSlug': absoluteSlug,
        'imageUrl': imageUrl,
        'allImageUrl': allImageUrl,
        'iconImageUrl': iconImageUrl,
        'position': position,
        'children': JsonConverters.toJson(children,'List<CategoryTreeApiDto>',context!)
    };

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

class WearPriceProfileEsDto implements IConvertible
{
    String? slug;
    String? label;

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

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

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

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

class BrandApiDto implements IConvertible
{
    String? name;

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

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

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

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

class PlaceCustomBrandApiDto implements IConvertible
{
    String? name;

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

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

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

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

class PlaceSelectedBrandApiDto implements IConvertible
{
    BrandApiDto? brand;
    List<String>? categoryAbsoluteSlugs = [];
    PlaceCustomBrandApiDto? placeCustomBrand;

    PlaceSelectedBrandApiDto({this.brand,this.categoryAbsoluteSlugs,this.placeCustomBrand});
    PlaceSelectedBrandApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        brand = JsonConverters.fromJson(json['brand'],'BrandApiDto',context!);
        categoryAbsoluteSlugs = JsonConverters.fromJson(json['categoryAbsoluteSlugs'],'List<String>',context!);
        placeCustomBrand = JsonConverters.fromJson(json['placeCustomBrand'],'PlaceCustomBrandApiDto',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'brand': JsonConverters.toJson(brand,'BrandApiDto',context!),
        'categoryAbsoluteSlugs': JsonConverters.toJson(categoryAbsoluteSlugs,'List<String>',context!),
        'placeCustomBrand': JsonConverters.toJson(placeCustomBrand,'PlaceCustomBrandApiDto',context!)
    };

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

class PlaceBasicApiDto implements IConvertible
{
    int? id;
    String? guid;
    String? overview;
    String? name;
    double? longitude;
    double? latitude;
    bool? claimed;
    String? organizationNumber;
    String? countryCode;
    OpeningHours? openingHours;
    bool? wheelchairAccessible;
    bool? wifi;
    bool? outdoorSeating;
    bool? saveFoodAndMoney;
    PlaceType? placeType;
    PriceMainDishApiDto? priceMainDish;
    TimeZoneDto? timeZoneDto;
    int? businessId;
    PlaceContact? contact;
    PlaceAddress? address;
    List<CategoryTreeApiDto>? categories = [];
    ImageUrls? logoUrl;
    ImageUrls? imageUrl;
    List<WearPriceProfileEsDto>? wearPriceProfiles = [];
    List<PlaceSelectedBrandApiDto>? brands = [];
    String? floor;

    PlaceBasicApiDto({this.id,this.guid,this.overview,this.name,this.longitude,this.latitude,this.claimed,this.organizationNumber,this.countryCode,this.openingHours,this.wheelchairAccessible,this.wifi,this.outdoorSeating,this.saveFoodAndMoney,this.placeType,this.priceMainDish,this.timeZoneDto,this.businessId,this.contact,this.address,this.categories,this.logoUrl,this.imageUrl,this.wearPriceProfiles,this.brands,this.floor});
    PlaceBasicApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        guid = json['guid'];
        overview = json['overview'];
        name = json['name'];
        longitude = JsonConverters.toDouble(json['longitude']);
        latitude = JsonConverters.toDouble(json['latitude']);
        claimed = json['claimed'];
        organizationNumber = json['organizationNumber'];
        countryCode = json['countryCode'];
        openingHours = JsonConverters.fromJson(json['openingHours'],'OpeningHours',context!);
        wheelchairAccessible = json['wheelchairAccessible'];
        wifi = json['wifi'];
        outdoorSeating = json['outdoorSeating'];
        saveFoodAndMoney = json['saveFoodAndMoney'];
        placeType = JsonConverters.fromJson(json['placeType'],'PlaceType',context!);
        priceMainDish = JsonConverters.fromJson(json['priceMainDish'],'PriceMainDishApiDto',context!);
        timeZoneDto = JsonConverters.fromJson(json['timeZoneDto'],'TimeZoneDto',context!);
        businessId = json['businessId'];
        contact = JsonConverters.fromJson(json['contact'],'PlaceContact',context!);
        address = JsonConverters.fromJson(json['address'],'PlaceAddress',context!);
        categories = JsonConverters.fromJson(json['categories'],'List<CategoryTreeApiDto>',context!);
        logoUrl = JsonConverters.fromJson(json['logoUrl'],'ImageUrls',context!);
        imageUrl = JsonConverters.fromJson(json['imageUrl'],'ImageUrls',context!);
        wearPriceProfiles = JsonConverters.fromJson(json['wearPriceProfiles'],'List<WearPriceProfileEsDto>',context!);
        brands = JsonConverters.fromJson(json['brands'],'List<PlaceSelectedBrandApiDto>',context!);
        floor = json['floor'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'guid': guid,
        'overview': overview,
        'name': name,
        'longitude': longitude,
        'latitude': latitude,
        'claimed': claimed,
        'organizationNumber': organizationNumber,
        'countryCode': countryCode,
        'openingHours': JsonConverters.toJson(openingHours,'OpeningHours',context!),
        'wheelchairAccessible': wheelchairAccessible,
        'wifi': wifi,
        'outdoorSeating': outdoorSeating,
        'saveFoodAndMoney': saveFoodAndMoney,
        'placeType': JsonConverters.toJson(placeType,'PlaceType',context!),
        'priceMainDish': JsonConverters.toJson(priceMainDish,'PriceMainDishApiDto',context!),
        'timeZoneDto': JsonConverters.toJson(timeZoneDto,'TimeZoneDto',context!),
        'businessId': businessId,
        'contact': JsonConverters.toJson(contact,'PlaceContact',context!),
        'address': JsonConverters.toJson(address,'PlaceAddress',context!),
        'categories': JsonConverters.toJson(categories,'List<CategoryTreeApiDto>',context!),
        'logoUrl': JsonConverters.toJson(logoUrl,'ImageUrls',context!),
        'imageUrl': JsonConverters.toJson(imageUrl,'ImageUrls',context!),
        'wearPriceProfiles': JsonConverters.toJson(wearPriceProfiles,'List<WearPriceProfileEsDto>',context!),
        'brands': JsonConverters.toJson(brands,'List<PlaceSelectedBrandApiDto>',context!),
        'floor': floor
    };

    getTypeName() => "PlaceBasicApiDto";
    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;
}

class AdMessageDto implements IConvertible
{
    int? id;
    String? guid;
    String? title;
    DateTime? startAt;
    DateTime? stopAt;
    DateTime? publishAt;
    List<ImageUrls>? imageUrls = [];
    PlaceBasicApiDto? place;
    AdMessageDetailsUnion? detailsUnion;
    int? starredCount;

    AdMessageDto({this.id,this.guid,this.title,this.startAt,this.stopAt,this.publishAt,this.imageUrls,this.place,this.detailsUnion,this.starredCount});
    AdMessageDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        guid = json['guid'];
        title = json['title'];
        startAt = JsonConverters.fromJson(json['startAt'],'DateTime',context!);
        stopAt = JsonConverters.fromJson(json['stopAt'],'DateTime',context!);
        publishAt = JsonConverters.fromJson(json['publishAt'],'DateTime',context!);
        imageUrls = JsonConverters.fromJson(json['imageUrls'],'List<ImageUrls>',context!);
        place = JsonConverters.fromJson(json['place'],'PlaceBasicApiDto',context!);
        detailsUnion = JsonConverters.fromJson(json['detailsUnion'],'AdMessageDetailsUnion',context!);
        starredCount = json['starredCount'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'guid': guid,
        'title': title,
        'startAt': JsonConverters.toJson(startAt,'DateTime',context!),
        'stopAt': JsonConverters.toJson(stopAt,'DateTime',context!),
        'publishAt': JsonConverters.toJson(publishAt,'DateTime',context!),
        'imageUrls': JsonConverters.toJson(imageUrls,'List<ImageUrls>',context!),
        'place': JsonConverters.toJson(place,'PlaceBasicApiDto',context!),
        'detailsUnion': JsonConverters.toJson(detailsUnion,'AdMessageDetailsUnion',context!),
        'starredCount': starredCount
    };

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

enum SharingState
{
    Teaser,
    Awarded,
    SelfShare,
    Expired,
}

class ShareAdMessageLinkUsedResponse implements IConvertible
{
    SharingUser? user;
    AdMessageDto? adMessage;
    PlaceBasicApiDto? place;
    SharingState? state;

    ShareAdMessageLinkUsedResponse({this.user,this.adMessage,this.place,this.state});
    ShareAdMessageLinkUsedResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        user = JsonConverters.fromJson(json['user'],'SharingUser',context!);
        adMessage = JsonConverters.fromJson(json['adMessage'],'AdMessageDto',context!);
        place = JsonConverters.fromJson(json['place'],'PlaceBasicApiDto',context!);
        state = JsonConverters.fromJson(json['state'],'SharingState',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'user': JsonConverters.toJson(user,'SharingUser',context!),
        'adMessage': JsonConverters.toJson(adMessage,'AdMessageDto',context!),
        'place': JsonConverters.toJson(place,'PlaceBasicApiDto',context!),
        'state': JsonConverters.toJson(state,'SharingState',context!)
    };

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

enum Locale
{
    EnUs,
    NbNo,
}

class ShareAdMessageLinkUsedRequest implements IPost, IConvertible
{
    String? shareAdMessageToken;
    Locale? locale;

    ShareAdMessageLinkUsedRequest({this.shareAdMessageToken,this.locale});
    ShareAdMessageLinkUsedRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'shareAdMessageToken': shareAdMessageToken,
        'locale': JsonConverters.toJson(locale,'Locale',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'ConsumerApi', types: <String, TypeInfo> {
    'SharingUser': TypeInfo(TypeOf.Class, create:() => SharingUser()),
    '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),
    'PriceMainDish': TypeInfo(TypeOf.Enum, enumValues:PriceMainDish.values),
    'PriceMainDishApiDto': TypeInfo(TypeOf.Class, create:() => PriceMainDishApiDto()),
    'TimeZoneDto': TypeInfo(TypeOf.Class, create:() => TimeZoneDto()),
    'PlaceContact': TypeInfo(TypeOf.Class, create:() => PlaceContact()),
    'PlaceAddress': TypeInfo(TypeOf.Class, create:() => PlaceAddress()),
    'CategoryTreeApiDto': TypeInfo(TypeOf.Class, create:() => CategoryTreeApiDto()),
    'List<CategoryTreeApiDto>': TypeInfo(TypeOf.Class, create:() => <CategoryTreeApiDto>[]),
    'WearPriceProfileEsDto': TypeInfo(TypeOf.Class, create:() => WearPriceProfileEsDto()),
    'BrandApiDto': TypeInfo(TypeOf.Class, create:() => BrandApiDto()),
    'PlaceCustomBrandApiDto': TypeInfo(TypeOf.Class, create:() => PlaceCustomBrandApiDto()),
    'PlaceSelectedBrandApiDto': TypeInfo(TypeOf.Class, create:() => PlaceSelectedBrandApiDto()),
    'PlaceBasicApiDto': TypeInfo(TypeOf.Class, create:() => PlaceBasicApiDto()),
    'List<WearPriceProfileEsDto>': TypeInfo(TypeOf.Class, create:() => <WearPriceProfileEsDto>[]),
    'List<PlaceSelectedBrandApiDto>': TypeInfo(TypeOf.Class, create:() => <PlaceSelectedBrandApiDto>[]),
    '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()),
    'AdMessageDto': TypeInfo(TypeOf.Class, create:() => AdMessageDto()),
    'List<ImageUrls>': TypeInfo(TypeOf.Class, create:() => <ImageUrls>[]),
    'SharingState': TypeInfo(TypeOf.Enum, enumValues:SharingState.values),
    'ShareAdMessageLinkUsedResponse': TypeInfo(TypeOf.Class, create:() => ShareAdMessageLinkUsedResponse()),
    'Locale': TypeInfo(TypeOf.Enum, enumValues:Locale.values),
    'ShareAdMessageLinkUsedRequest': TypeInfo(TypeOf.Class, create:() => ShareAdMessageLinkUsedRequest()),
});

Dart ShareAdMessageLinkUsedRequest DTOs

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

HTTP + XML

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

POST /share/share-ad-message-link-used HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<ShareAdMessageLinkUsedRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Api.Dto">
  <Locale>EnUs</Locale>
  <ShareAdMessageToken>String</ShareAdMessageToken>
</ShareAdMessageLinkUsedRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ShareAdMessageLinkUsedResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Api.Dto">
  <AdMessage>
    <DetailsUnion xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:AbsoluteOnSelectedMerchandise>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:AbsoluteOnSelectedMerchandise>
      <d3p1:AbsoluteRangeOnAllMerchandise>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Start>0</d3p1:Start>
        <d3p1:Stop>0</d3p1:Stop>
      </d3p1:AbsoluteRangeOnAllMerchandise>
      <d3p1:Freetext>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Title>String</d3p1:Title>
      </d3p1:Freetext>
      <d3p1:HappyHour>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
      </d3p1:HappyHour>
      <d3p1:NewArrivals>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
      </d3p1:NewArrivals>
      <d3p1:PercentageOfYourFoodBill>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Percentage>0</d3p1:Percentage>
      </d3p1:PercentageOfYourFoodBill>
      <d3p1:PercentageOnAllMerchandise>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:PercentageOnAllMerchandise>
      <d3p1:PercentageOnSelectedMerchandise>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:PercentageOnSelectedMerchandise>
      <d3p1:PercentageRangeOnAllMerchandise>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Start>0</d3p1:Start>
        <d3p1:Stop>0</d3p1:Stop>
      </d3p1:PercentageRangeOnAllMerchandise>
      <d3p1:SaveFoodAndMoney>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:SaveFoodAndMoney>
      <d3p1:SomeFreeTablesLeftToday>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
      </d3p1:SomeFreeTablesLeftToday>
      <d3p1:TodaysBreakFastOffer>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:TodaysBreakFastOffer>
      <d3p1:TodaysDinnerOffer>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:TodaysDinnerOffer>
      <d3p1:TodaysLunchOffer>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:TodaysLunchOffer>
      <d3p1:TotalAmountOverXgivesYdiscount>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:IfTotalAmountMoreThanX>0</d3p1:IfTotalAmountMoreThanX>
        <d3p1:ThenYouGetDiscountPercentageY>0</d3p1:ThenYouGetDiscountPercentageY>
      </d3p1:TotalAmountOverXgivesYdiscount>
      <d3p1:TwoDishesForThePriceOfOne>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
      </d3p1:TwoDishesForThePriceOfOne>
      <d3p1:XforY>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:MoreInformation xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </d3p1:MoreInformation>
        <d3p1:IfYouBuyX>0</d3p1:IfYouBuyX>
        <d3p1:ThenYouGetY>0</d3p1:ThenYouGetY>
      </d3p1:XforY>
    </DetailsUnion>
    <Guid>00000000-0000-0000-0000-000000000000</Guid>
    <Id>0</Id>
    <ImageUrls xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:ImageUrls>
        <d3p1:Large>String</d3p1:Large>
        <d3p1:Medium>String</d3p1:Medium>
        <d3p1:Preview>String</d3p1:Preview>
        <d3p1:Small>String</d3p1:Small>
      </d3p1:ImageUrls>
    </ImageUrls>
    <Place>
      <Address xmlns:d4p1="http://schemas.datacontract.org/2004/07/Entities.Common">
        <d4p1:CountryCode>String</d4p1:CountryCode>
        <d4p1:PostalCode>String</d4p1:PostalCode>
        <d4p1:Region>String</d4p1:Region>
        <d4p1:Street>String</d4p1:Street>
      </Address>
      <Brands>
        <PlaceSelectedBrandApiDto>
          <Brand>
            <Name>String</Name>
          </Brand>
          <CategoryAbsoluteSlugs xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:string>String</d6p1:string>
          </CategoryAbsoluteSlugs>
          <PlaceCustomBrand>
            <Name>String</Name>
          </PlaceCustomBrand>
        </PlaceSelectedBrandApiDto>
      </Brands>
      <BusinessId>0</BusinessId>
      <Categories>
        <CategoryTreeApiDto>
          <AbsoluteSlug>String</AbsoluteSlug>
          <AllImageUrl>String</AllImageUrl>
          <Children>
            <CategoryTreeApiDto>
              <AbsoluteSlug>String</AbsoluteSlug>
              <AllImageUrl>String</AllImageUrl>
              <Children>
                <CategoryTreeApiDto>
                  <AbsoluteSlug>String</AbsoluteSlug>
                  <AllImageUrl>String</AllImageUrl>
                  <Children i:nil="true" />
                  <IconImageUrl>String</IconImageUrl>
                  <ImageUrl>String</ImageUrl>
                  <Name>String</Name>
                  <Position>0</Position>
                  <Slug>String</Slug>
                </CategoryTreeApiDto>
              </Children>
              <IconImageUrl>String</IconImageUrl>
              <ImageUrl>String</ImageUrl>
              <Name>String</Name>
              <Position>0</Position>
              <Slug>String</Slug>
            </CategoryTreeApiDto>
          </Children>
          <IconImageUrl>String</IconImageUrl>
          <ImageUrl>String</ImageUrl>
          <Name>String</Name>
          <Position>0</Position>
          <Slug>String</Slug>
        </CategoryTreeApiDto>
      </Categories>
      <Claimed>false</Claimed>
      <Contact xmlns:d4p1="http://schemas.datacontract.org/2004/07/Entities.Common">
        <d4p1:Email>String</d4p1:Email>
        <d4p1:Phone>String</d4p1:Phone>
        <d4p1:WebShop>String</d4p1:WebShop>
        <d4p1:Website>String</d4p1:Website>
      </Contact>
      <CountryCode>String</CountryCode>
      <Floor>String</Floor>
      <Guid>00000000-0000-0000-0000-000000000000</Guid>
      <Id>0</Id>
      <ImageUrl xmlns:d4p1="http://schemas.datacontract.org/2004/07/Entities.Common">
        <d4p1:Large>String</d4p1:Large>
        <d4p1:Medium>String</d4p1:Medium>
        <d4p1:Preview>String</d4p1:Preview>
        <d4p1:Small>String</d4p1:Small>
      </ImageUrl>
      <Latitude>0</Latitude>
      <LogoUrl xmlns:d4p1="http://schemas.datacontract.org/2004/07/Entities.Common">
        <d4p1:Large>String</d4p1:Large>
        <d4p1:Medium>String</d4p1:Medium>
        <d4p1:Preview>String</d4p1:Preview>
        <d4p1:Small>String</d4p1:Small>
      </LogoUrl>
      <Longitude>0</Longitude>
      <Name>String</Name>
      <OpeningHours xmlns:d4p1="http://schemas.datacontract.org/2004/07/Entities.Common">
        <d4p1:Weekly>
          <d4p1:Friday>
            <d4p1:CloseAtHour>0</d4p1:CloseAtHour>
            <d4p1:CloseAtMinute>0</d4p1:CloseAtMinute>
            <d4p1:OpenAtHour>0</d4p1:OpenAtHour>
            <d4p1:OpenAtMinute>0</d4p1:OpenAtMinute>
          </d4p1:Friday>
          <d4p1:Monday>
            <d4p1:CloseAtHour>0</d4p1:CloseAtHour>
            <d4p1:CloseAtMinute>0</d4p1:CloseAtMinute>
            <d4p1:OpenAtHour>0</d4p1:OpenAtHour>
            <d4p1:OpenAtMinute>0</d4p1:OpenAtMinute>
          </d4p1:Monday>
          <d4p1:Saturday>
            <d4p1:CloseAtHour>0</d4p1:CloseAtHour>
            <d4p1:CloseAtMinute>0</d4p1:CloseAtMinute>
            <d4p1:OpenAtHour>0</d4p1:OpenAtHour>
            <d4p1:OpenAtMinute>0</d4p1:OpenAtMinute>
          </d4p1:Saturday>
          <d4p1:Sunday>
            <d4p1:CloseAtHour>0</d4p1:CloseAtHour>
            <d4p1:CloseAtMinute>0</d4p1:CloseAtMinute>
            <d4p1:OpenAtHour>0</d4p1:OpenAtHour>
            <d4p1:OpenAtMinute>0</d4p1:OpenAtMinute>
          </d4p1:Sunday>
          <d4p1:Thursday>
            <d4p1:CloseAtHour>0</d4p1:CloseAtHour>
            <d4p1:CloseAtMinute>0</d4p1:CloseAtMinute>
            <d4p1:OpenAtHour>0</d4p1:OpenAtHour>
            <d4p1:OpenAtMinute>0</d4p1:OpenAtMinute>
          </d4p1:Thursday>
          <d4p1:Tuesday>
            <d4p1:CloseAtHour>0</d4p1:CloseAtHour>
            <d4p1:CloseAtMinute>0</d4p1:CloseAtMinute>
            <d4p1:OpenAtHour>0</d4p1:OpenAtHour>
            <d4p1:OpenAtMinute>0</d4p1:OpenAtMinute>
          </d4p1:Tuesday>
          <d4p1:Wednesday>
            <d4p1:CloseAtHour>0</d4p1:CloseAtHour>
            <d4p1:CloseAtMinute>0</d4p1:CloseAtMinute>
            <d4p1:OpenAtHour>0</d4p1:OpenAtHour>
            <d4p1:OpenAtMinute>0</d4p1:OpenAtMinute>
          </d4p1:Wednesday>
        </d4p1:Weekly>
      </OpeningHours>
      <OrganizationNumber>String</OrganizationNumber>
      <OutdoorSeating>false</OutdoorSeating>
      <Overview>String</Overview>
      <PlaceType>Mall</PlaceType>
      <PriceMainDish>
        <Slug>Value</Slug>
        <Title>String</Title>
      </PriceMainDish>
      <SaveFoodAndMoney>false</SaveFoodAndMoney>
      <TimeZoneDto xmlns:d4p1="http://schemas.datacontract.org/2004/07/Entities.Common">
        <d4p1:BaseUtcOffset>PT0S</d4p1:BaseUtcOffset>
        <d4p1:DaylightName>String</d4p1:DaylightName>
        <d4p1:DisplayName>String</d4p1:DisplayName>
        <d4p1:Id>String</d4p1:Id>
        <d4p1:StandardName>String</d4p1:StandardName>
        <d4p1:SupportsDaylightSavingTime>false</d4p1:SupportsDaylightSavingTime>
      </TimeZoneDto>
      <WearPriceProfiles>
        <WearPriceProfileEsDto>
          <Label>String</Label>
          <Slug>String</Slug>
        </WearPriceProfileEsDto>
      </WearPriceProfiles>
      <WheelchairAccessible>false</WheelchairAccessible>
      <Wifi>false</Wifi>
    </Place>
    <PublishAt xmlns:d3p1="http://schemas.datacontract.org/2004/07/System">
      <d3p1:DateTime>0001-01-01T00:00:00Z</d3p1:DateTime>
      <d3p1:OffsetMinutes>0</d3p1:OffsetMinutes>
    </PublishAt>
    <StarredCount>0</StarredCount>
    <StartAt xmlns:d3p1="http://schemas.datacontract.org/2004/07/System">
      <d3p1:DateTime>0001-01-01T00:00:00Z</d3p1:DateTime>
      <d3p1:OffsetMinutes>0</d3p1:OffsetMinutes>
    </StartAt>
    <StopAt xmlns:d3p1="http://schemas.datacontract.org/2004/07/System">
      <d3p1:DateTime>0001-01-01T00:00:00Z</d3p1:DateTime>
      <d3p1:OffsetMinutes>0</d3p1:OffsetMinutes>
    </StopAt>
    <Title>String</Title>
  </AdMessage>
  <Place>
    <Address xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:CountryCode>String</d3p1:CountryCode>
      <d3p1:PostalCode>String</d3p1:PostalCode>
      <d3p1:Region>String</d3p1:Region>
      <d3p1:Street>String</d3p1:Street>
    </Address>
    <Brands>
      <PlaceSelectedBrandApiDto>
        <Brand>
          <Name>String</Name>
        </Brand>
        <CategoryAbsoluteSlugs xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </CategoryAbsoluteSlugs>
        <PlaceCustomBrand>
          <Name>String</Name>
        </PlaceCustomBrand>
      </PlaceSelectedBrandApiDto>
    </Brands>
    <BusinessId>0</BusinessId>
    <Categories>
      <CategoryTreeApiDto>
        <AbsoluteSlug>String</AbsoluteSlug>
        <AllImageUrl>String</AllImageUrl>
        <Children>
          <CategoryTreeApiDto>
            <AbsoluteSlug>String</AbsoluteSlug>
            <AllImageUrl>String</AllImageUrl>
            <Children>
              <CategoryTreeApiDto>
                <AbsoluteSlug>String</AbsoluteSlug>
                <AllImageUrl>String</AllImageUrl>
                <Children i:nil="true" />
                <IconImageUrl>String</IconImageUrl>
                <ImageUrl>String</ImageUrl>
                <Name>String</Name>
                <Position>0</Position>
                <Slug>String</Slug>
              </CategoryTreeApiDto>
            </Children>
            <IconImageUrl>String</IconImageUrl>
            <ImageUrl>String</ImageUrl>
            <Name>String</Name>
            <Position>0</Position>
            <Slug>String</Slug>
          </CategoryTreeApiDto>
        </Children>
        <IconImageUrl>String</IconImageUrl>
        <ImageUrl>String</ImageUrl>
        <Name>String</Name>
        <Position>0</Position>
        <Slug>String</Slug>
      </CategoryTreeApiDto>
    </Categories>
    <Claimed>false</Claimed>
    <Contact xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:Email>String</d3p1:Email>
      <d3p1:Phone>String</d3p1:Phone>
      <d3p1:WebShop>String</d3p1:WebShop>
      <d3p1:Website>String</d3p1:Website>
    </Contact>
    <CountryCode>String</CountryCode>
    <Floor>String</Floor>
    <Guid>00000000-0000-0000-0000-000000000000</Guid>
    <Id>0</Id>
    <ImageUrl xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:Large>String</d3p1:Large>
      <d3p1:Medium>String</d3p1:Medium>
      <d3p1:Preview>String</d3p1:Preview>
      <d3p1:Small>String</d3p1:Small>
    </ImageUrl>
    <Latitude>0</Latitude>
    <LogoUrl xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:Large>String</d3p1:Large>
      <d3p1:Medium>String</d3p1:Medium>
      <d3p1:Preview>String</d3p1:Preview>
      <d3p1:Small>String</d3p1:Small>
    </LogoUrl>
    <Longitude>0</Longitude>
    <Name>String</Name>
    <OpeningHours xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:Weekly>
        <d3p1:Friday>
          <d3p1:CloseAtHour>0</d3p1:CloseAtHour>
          <d3p1:CloseAtMinute>0</d3p1:CloseAtMinute>
          <d3p1:OpenAtHour>0</d3p1:OpenAtHour>
          <d3p1:OpenAtMinute>0</d3p1:OpenAtMinute>
        </d3p1:Friday>
        <d3p1:Monday>
          <d3p1:CloseAtHour>0</d3p1:CloseAtHour>
          <d3p1:CloseAtMinute>0</d3p1:CloseAtMinute>
          <d3p1:OpenAtHour>0</d3p1:OpenAtHour>
          <d3p1:OpenAtMinute>0</d3p1:OpenAtMinute>
        </d3p1:Monday>
        <d3p1:Saturday>
          <d3p1:CloseAtHour>0</d3p1:CloseAtHour>
          <d3p1:CloseAtMinute>0</d3p1:CloseAtMinute>
          <d3p1:OpenAtHour>0</d3p1:OpenAtHour>
          <d3p1:OpenAtMinute>0</d3p1:OpenAtMinute>
        </d3p1:Saturday>
        <d3p1:Sunday>
          <d3p1:CloseAtHour>0</d3p1:CloseAtHour>
          <d3p1:CloseAtMinute>0</d3p1:CloseAtMinute>
          <d3p1:OpenAtHour>0</d3p1:OpenAtHour>
          <d3p1:OpenAtMinute>0</d3p1:OpenAtMinute>
        </d3p1:Sunday>
        <d3p1:Thursday>
          <d3p1:CloseAtHour>0</d3p1:CloseAtHour>
          <d3p1:CloseAtMinute>0</d3p1:CloseAtMinute>
          <d3p1:OpenAtHour>0</d3p1:OpenAtHour>
          <d3p1:OpenAtMinute>0</d3p1:OpenAtMinute>
        </d3p1:Thursday>
        <d3p1:Tuesday>
          <d3p1:CloseAtHour>0</d3p1:CloseAtHour>
          <d3p1:CloseAtMinute>0</d3p1:CloseAtMinute>
          <d3p1:OpenAtHour>0</d3p1:OpenAtHour>
          <d3p1:OpenAtMinute>0</d3p1:OpenAtMinute>
        </d3p1:Tuesday>
        <d3p1:Wednesday>
          <d3p1:CloseAtHour>0</d3p1:CloseAtHour>
          <d3p1:CloseAtMinute>0</d3p1:CloseAtMinute>
          <d3p1:OpenAtHour>0</d3p1:OpenAtHour>
          <d3p1:OpenAtMinute>0</d3p1:OpenAtMinute>
        </d3p1:Wednesday>
      </d3p1:Weekly>
    </OpeningHours>
    <OrganizationNumber>String</OrganizationNumber>
    <OutdoorSeating>false</OutdoorSeating>
    <Overview>String</Overview>
    <PlaceType>Mall</PlaceType>
    <PriceMainDish>
      <Slug>Value</Slug>
      <Title>String</Title>
    </PriceMainDish>
    <SaveFoodAndMoney>false</SaveFoodAndMoney>
    <TimeZoneDto xmlns:d3p1="http://schemas.datacontract.org/2004/07/Entities.Common">
      <d3p1:BaseUtcOffset>PT0S</d3p1:BaseUtcOffset>
      <d3p1:DaylightName>String</d3p1:DaylightName>
      <d3p1:DisplayName>String</d3p1:DisplayName>
      <d3p1:Id>String</d3p1:Id>
      <d3p1:StandardName>String</d3p1:StandardName>
      <d3p1:SupportsDaylightSavingTime>false</d3p1:SupportsDaylightSavingTime>
    </TimeZoneDto>
    <WearPriceProfiles>
      <WearPriceProfileEsDto>
        <Label>String</Label>
        <Slug>String</Slug>
      </WearPriceProfileEsDto>
    </WearPriceProfiles>
    <WheelchairAccessible>false</WheelchairAccessible>
    <Wifi>false</Wifi>
  </Place>
  <State>Teaser</State>
  <User>
    <FirstName>String</FirstName>
    <LastName>String</LastName>
    <ProfilePhotoUrl>String</ProfilePhotoUrl>
  </User>
</ShareAdMessageLinkUsedResponse>