| Required role: | Consumer |
export module ConsumerApi
{
// @ts-nocheck
export enum Parking
{
StreetParking = 'StreetParking',
ParkingGarageNearby = 'ParkingGarageNearby',
}
export enum PaymentOption
{
Visa = 'Visa',
MasterCard = 'MasterCard',
AmericanExpress = 'AmericanExpress',
Diners = 'Diners',
Vipps = 'Vipps',
}
export enum PriceMainDish
{
Value = 'Value',
Medium = 'Medium',
High = 'High',
FineDining = 'FineDining',
}
export enum DayOfWeek
{
Sunday = 'Sunday',
Monday = 'Monday',
Tuesday = 'Tuesday',
Wednesday = 'Wednesday',
Thursday = 'Thursday',
Friday = 'Friday',
Saturday = 'Saturday',
}
export class OpenAtTimeDto
{
public weekDay?: DayOfWeek;
public hour?: number;
public minute?: number;
public constructor(init?: Partial<OpenAtTimeDto>) { (Object as any).assign(this, init); }
}
export class OpeningHour
{
public openAtHour?: number;
public openAtMinute?: number;
public closeAtHour?: number;
public closeAtMinute?: number;
public constructor(init?: Partial<OpeningHour>) { (Object as any).assign(this, init); }
}
export class WeeklyOpeningHours
{
public monday?: OpeningHour;
public tuesday?: OpeningHour;
public wednesday?: OpeningHour;
public thursday?: OpeningHour;
public friday?: OpeningHour;
public saturday?: OpeningHour;
public sunday?: OpeningHour;
public constructor(init?: Partial<WeeklyOpeningHours>) { (Object as any).assign(this, init); }
}
export class OpeningHours
{
public weekly: WeeklyOpeningHours;
public constructor(init?: Partial<OpeningHours>) { (Object as any).assign(this, init); }
}
export class CategoryTreeApiDto
{
public name: string;
public slug: string;
public absoluteSlug: string;
public imageUrl?: string;
public allImageUrl?: string;
public iconImageUrl?: string;
public position?: number;
public children?: CategoryTreeApiDto[] = [];
public constructor(init?: Partial<CategoryTreeApiDto>) { (Object as any).assign(this, init); }
}
export enum FeatureType
{
BarSpeciality = 'BarSpeciality',
BarType = 'BarType',
Cuisine = 'Cuisine',
SaveFoodAndMoney = 'SaveFoodAndMoney',
MealType = 'MealType',
Menu = 'Menu',
OutdoorSeating = 'OutdoorSeating',
Parking = 'Parking',
PaymentOptions = 'PaymentOptions',
PriceMainDish = 'PriceMainDish',
SubCategories = 'SubCategories',
SubCategoriesAndBrands = 'SubCategoriesAndBrands',
EatingSuitabilities = 'EatingSuitabilities',
TakeAway = 'TakeAway',
WearPriceProfile = 'WearPriceProfile',
WheelChairAccessible = 'WheelChairAccessible',
Wifi = 'Wifi',
WebShop = 'WebShop',
Filtering = 'Filtering',
}
export class IndividualFeatureDataApiDto
{
public slug?: FeatureType;
public label: string;
public constructor(init?: Partial<IndividualFeatureDataApiDto>) { (Object as any).assign(this, init); }
}
export class BarSpecialityEsDto
{
public slug: string;
public title: string;
public constructor(init?: Partial<BarSpecialityEsDto>) { (Object as any).assign(this, init); }
}
export class BarTypeEsDto
{
public slug: string;
public title: string;
public constructor(init?: Partial<BarTypeEsDto>) { (Object as any).assign(this, init); }
}
export class BrandApiDto
{
public name: string;
public constructor(init?: Partial<BrandApiDto>) { (Object as any).assign(this, init); }
}
export class PlaceCustomBrandApiDto
{
public name: string;
public constructor(init?: Partial<PlaceCustomBrandApiDto>) { (Object as any).assign(this, init); }
}
export class PlaceSelectedBrandApiDto
{
public brand?: BrandApiDto;
public categoryAbsoluteSlugs?: string[] = [];
public placeCustomBrand?: PlaceCustomBrandApiDto;
public constructor(init?: Partial<PlaceSelectedBrandApiDto>) { (Object as any).assign(this, init); }
}
export class CuisineEsDto
{
public label: string;
public slug: string;
public constructor(init?: Partial<CuisineEsDto>) { (Object as any).assign(this, init); }
}
export class MealTypeApiDto
{
public label: string;
public slug: string;
public constructor(init?: Partial<MealTypeApiDto>) { (Object as any).assign(this, init); }
}
export class ParkingApiDto
{
public label: string;
public slug?: Parking;
public constructor(init?: Partial<ParkingApiDto>) { (Object as any).assign(this, init); }
}
export class PaymentOptionApiDto
{
public label: string;
public slug?: PaymentOption;
public constructor(init?: Partial<PaymentOptionApiDto>) { (Object as any).assign(this, init); }
}
export class EatingSuitabilityApiDto
{
public label: string;
public slug: string;
public constructor(init?: Partial<EatingSuitabilityApiDto>) { (Object as any).assign(this, init); }
}
export class TakeAwayApiDto
{
public label: string;
public slug: string;
public constructor(init?: Partial<TakeAwayApiDto>) { (Object as any).assign(this, init); }
}
export class WearPriceProfileEsDto
{
public slug: string;
public label: string;
public constructor(init?: Partial<WearPriceProfileEsDto>) { (Object as any).assign(this, init); }
}
export class MenuEsDto
{
public name: string;
public url: string;
public position?: number;
public constructor(init?: Partial<MenuEsDto>) { (Object as any).assign(this, init); }
}
export class ImageUrls
{
public preview: string;
public small: string;
public medium: string;
public large: string;
public constructor(init?: Partial<ImageUrls>) { (Object as any).assign(this, init); }
}
export enum PlaceType
{
Mall = 'Mall',
Regular = 'Regular',
}
export class PriceMainDishApiDto
{
public title: string;
public slug?: PriceMainDish;
public constructor(init?: Partial<PriceMainDishApiDto>) { (Object as any).assign(this, init); }
}
export class TimeZoneDto
{
public baseUtcOffset?: string;
public daylightName: string;
public displayName: string;
public id: string;
public standardName: string;
public supportsDaylightSavingTime?: boolean;
public constructor(init?: Partial<TimeZoneDto>) { (Object as any).assign(this, init); }
}
export class PlaceContact
{
public phone?: string;
public email?: string;
public website?: string;
public webShop?: string;
public constructor(init?: Partial<PlaceContact>) { (Object as any).assign(this, init); }
}
export class PlaceAddress
{
public street: string;
public postalCode: string;
public region: string;
public countryCode: string;
public constructor(init?: Partial<PlaceAddress>) { (Object as any).assign(this, init); }
}
export class PlaceBasicApiDto
{
public id?: number;
public guid?: string;
public overview?: string;
public name: string;
public longitude?: number;
public latitude?: number;
public claimed?: boolean;
public organizationNumber?: string;
public countryCode: string;
public openingHours?: OpeningHours;
public wheelchairAccessible?: boolean;
public wifi?: boolean;
public outdoorSeating?: boolean;
public saveFoodAndMoney?: boolean;
public placeType?: PlaceType;
public priceMainDish?: PriceMainDishApiDto;
public timeZoneDto: TimeZoneDto;
public businessId?: number;
public contact: PlaceContact;
public address: PlaceAddress;
public categories: CategoryTreeApiDto[] = [];
public logoUrl?: ImageUrls;
public imageUrl?: ImageUrls;
public wearPriceProfiles: WearPriceProfileEsDto[] = [];
public brands: PlaceSelectedBrandApiDto[] = [];
public floor?: string;
public constructor(init?: Partial<PlaceBasicApiDto>) { (Object as any).assign(this, init); }
}
export class MallOtherServiceApiDto
{
public serviceName: string;
public floor: string;
public constructor(init?: Partial<MallOtherServiceApiDto>) { (Object as any).assign(this, init); }
}
export class PlaceApiDto
{
public id?: number;
public guid?: string;
public overview?: string;
public name: string;
public longitude?: number;
public latitude?: number;
public claimed?: boolean;
public organizationNumber?: string;
public countryCode: string;
public placeState: string;
public followersCount?: number;
public openingHours?: OpeningHours;
public categories: CategoryTreeApiDto[] = [];
public featureData: IndividualFeatureDataApiDto[] = [];
public barSpecialities: BarSpecialityEsDto[] = [];
public barTypes: BarTypeEsDto[] = [];
public brands: PlaceSelectedBrandApiDto[] = [];
public cuisines: CuisineEsDto[] = [];
public mealTypes: MealTypeApiDto[] = [];
public parking: ParkingApiDto[] = [];
public paymentOptions: PaymentOptionApiDto[] = [];
public eatingSuitabilities: EatingSuitabilityApiDto[] = [];
public takeAways: TakeAwayApiDto[] = [];
public wearPriceProfiles: WearPriceProfileEsDto[] = [];
public menus: MenuEsDto[] = [];
public logoUrl?: ImageUrls;
public imageUrl?: ImageUrls;
public wheelchairAccessible?: boolean;
public wifi?: boolean;
public outdoorSeating?: boolean;
public saveFoodAndMoney?: boolean;
public placeType?: PlaceType;
public mall?: PlaceBasicApiDto;
public priceMainDish?: PriceMainDishApiDto;
public places?: PlaceBasicApiDto[] = [];
public otherServices?: MallOtherServiceApiDto[] = [];
public floor?: string;
public timeZoneDto: TimeZoneDto;
public businessId?: number;
public contact: PlaceContact;
public address: PlaceAddress;
public constructor(init?: Partial<PlaceApiDto>) { (Object as any).assign(this, init); }
}
}
TypeScript FindBoundedMapPlacesRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/reply/FindBoundedMapPlacesRequest HTTP/1.1
Host: consumer-api.brovs.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
cacheVersion: 0,
filter:
{
term: String,
placeGuid: 00000000-0000-0000-0000-000000000000,
adMessageGuid: 00000000-0000-0000-0000-000000000000,
categoryAbsoluteSlugs:
[
String
],
barSpecialitySlugs:
[
String
],
barTypeSlugs:
[
String
],
brandNames:
[
String
],
cuisineSlugs:
[
String
],
mealTypeSlugs:
[
String
],
parking:
[
StreetParking
],
paymentOptions:
[
Visa
],
priceMainDishes:
[
Value
],
eatingSuitabilitySlugs:
[
String
],
takeAwaySlugs:
[
String
],
wearPriceProfileSlugs:
[
String
],
wheelChairAccessible: False,
wifi: False,
outdoorSeating: False,
saveFoodAndMoney: False,
openAt:
{
weekDay: Sunday,
hour: 0,
minute: 0
}
},
bounds:
{
north: 0,
south: 0,
east: 0,
west: 0,
clusterZoomLevel: 0
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
clusters:
[
{
count: 0,
latitude: 0,
longitude: 0
}
],
placesWithDisplayLocation:
[
{
place:
{
id: 0,
overview: String,
name: String,
longitude: 0,
latitude: 0,
claimed: False,
organizationNumber: String,
countryCode: String,
placeState: String,
followersCount: 0,
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
}
}
},
categories:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0
}
]
}
]
}
],
featureData:
[
{
slug: BarSpeciality,
label: String
}
],
barSpecialities:
[
{
slug: String,
title: String
}
],
barTypes:
[
{
slug: String,
title: String
}
],
brands:
[
{
brand:
{
name: String
},
categoryAbsoluteSlugs:
[
String
],
placeCustomBrand:
{
name: String
}
}
],
cuisines:
[
{
label: String,
slug: String
}
],
mealTypes:
[
{
label: String,
slug: String
}
],
parking:
[
{
label: String,
slug: StreetParking
}
],
paymentOptions:
[
{
label: String,
slug: Visa
}
],
eatingSuitabilities:
[
{
label: String,
slug: String
}
],
takeAways:
[
{
label: String,
slug: String
}
],
wearPriceProfiles:
[
{
slug: String,
label: String
}
],
menus:
[
{
name: String,
url: String,
position: 0
}
],
logoUrl:
{
preview: String,
small: String,
medium: String,
large: String
},
imageUrl:
{
preview: String,
small: String,
medium: String,
large: String
},
wheelchairAccessible: False,
wifi: False,
outdoorSeating: False,
saveFoodAndMoney: False,
placeType: Mall,
mall:
{
id: 0,
overview: String,
name: String,
longitude: 0,
latitude: 0,
claimed: False,
organizationNumber: String,
countryCode: 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
}
}
},
wheelchairAccessible: False,
wifi: False,
outdoorSeating: False,
saveFoodAndMoney: False,
placeType: Mall,
priceMainDish:
{
title: String,
slug: Value
},
timeZoneDto:
{
baseUtcOffset: PT0S,
daylightName: String,
displayName: String,
id: String,
standardName: String,
supportsDaylightSavingTime: False
},
businessId: 0,
contact:
{
phone: String,
email: String,
website: String,
webShop: String
},
address:
{
street: String,
postalCode: String,
region: String,
countryCode: String
},
categories:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0
}
]
}
]
}
],
logoUrl:
{
preview: String,
small: String,
medium: String,
large: String
},
imageUrl:
{
preview: String,
small: String,
medium: String,
large: String
},
wearPriceProfiles:
[
{
slug: String,
label: String
}
],
brands:
[
{
brand:
{
name: String
},
categoryAbsoluteSlugs:
[
String
],
placeCustomBrand:
{
name: String
}
}
],
floor: String
},
priceMainDish:
{
title: String,
slug: Value
},
places:
[
{
id: 0,
overview: String,
name: String,
longitude: 0,
latitude: 0,
claimed: False,
organizationNumber: String,
countryCode: 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
}
}
},
wheelchairAccessible: False,
wifi: False,
outdoorSeating: False,
saveFoodAndMoney: False,
placeType: Mall,
priceMainDish:
{
title: String,
slug: Value
},
timeZoneDto:
{
baseUtcOffset: PT0S,
daylightName: String,
displayName: String,
id: String,
standardName: String,
supportsDaylightSavingTime: False
},
businessId: 0,
contact:
{
phone: String,
email: String,
website: String,
webShop: String
},
address:
{
street: String,
postalCode: String,
region: String,
countryCode: String
},
categories:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0
}
]
}
]
}
],
logoUrl:
{
preview: String,
small: String,
medium: String,
large: String
},
imageUrl:
{
preview: String,
small: String,
medium: String,
large: String
},
wearPriceProfiles:
[
{
slug: String,
label: String
}
],
brands:
[
{
brand:
{
name: String
},
categoryAbsoluteSlugs:
[
String
],
placeCustomBrand:
{
name: String
}
}
],
floor: String
}
],
otherServices:
[
{
serviceName: String,
floor: String
}
],
floor: String,
timeZoneDto:
{
baseUtcOffset: PT0S,
daylightName: String,
displayName: String,
id: String,
standardName: String,
supportsDaylightSavingTime: False
},
businessId: 0,
contact:
{
phone: String,
email: String,
website: String,
webShop: String
},
address:
{
street: String,
postalCode: String,
region: String,
countryCode: String
}
},
crowdedMapDisplayLocation:
{
longitude: 0,
latitude: 0
}
}
],
categoryFacetTrees:
[
{
name: String,
slug: String,
absoluteSlug: String,
featureTypes:
[
BarSpeciality
],
type: Parent,
count: 0,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
featureTypes:
[
BarSpeciality
],
type: Parent,
count: 0,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0,
children:
[
{
name: String,
slug: String,
absoluteSlug: String,
featureTypes:
[
BarSpeciality
],
type: Parent,
count: 0,
imageUrl: String,
allImageUrl: String,
iconImageUrl: String,
position: 0
}
]
}
]
}
],
adMessageCount: 0,
adMessageSaveFoodAndMoneyCount: 0
}