ConsumerApi

<back to all web services

GetSavedSearchesRequest

Consumer
Requires Authentication
Required role:Consumer
The following routes are available for this service:
GET/searches/GetSavedSearches
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum

# module ConsumerApi


class Parking(str, Enum):
    STREET_PARKING = 'StreetParking'
    PARKING_GARAGE_NEARBY = 'ParkingGarageNearby'


class PaymentOption(str, Enum):
    VISA = 'Visa'
    MASTER_CARD = 'MasterCard'
    AMERICAN_EXPRESS = 'AmericanExpress'
    DINERS = 'Diners'
    VIPPS = 'Vipps'


class PriceMainDish(str, Enum):
    VALUE = 'Value'
    MEDIUM = 'Medium'
    HIGH = 'High'
    FINE_DINING = 'FineDining'


class DayOfWeek(str, Enum):
    SUNDAY = 'Sunday'
    MONDAY = 'Monday'
    TUESDAY = 'Tuesday'
    WEDNESDAY = 'Wednesday'
    THURSDAY = 'Thursday'
    FRIDAY = 'Friday'
    SATURDAY = 'Saturday'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class OpenAtTimeDto:
    week_day: Optional[DayOfWeek] = None
    hour: int = 0
    minute: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CategoryDto:
    name: Optional[str] = None
    slug: Optional[str] = None
    absolute_slug: Optional[str] = None
    image_url: Optional[str] = None
    all_image_url: Optional[str] = None
    icon_image_url: Optional[str] = None
    position: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BarSpecialityEsDto:
    slug: Optional[str] = None
    title: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BarTypeEsDto:
    slug: Optional[str] = None
    title: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BrandApiDto:
    name: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CuisineEsDto:
    label: Optional[str] = None
    slug: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class MealTypeApiDto:
    label: Optional[str] = None
    slug: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ParkingApiDto:
    label: Optional[str] = None
    slug: Optional[Parking] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PaymentOptionApiDto:
    label: Optional[str] = None
    slug: Optional[PaymentOption] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceMainDishApiDto:
    title: Optional[str] = None
    slug: Optional[PriceMainDish] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class EatingSuitabilityApiDto:
    label: Optional[str] = None
    slug: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class TakeAwayApiDto:
    label: Optional[str] = None
    slug: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class WearPriceProfileEsDto:
    slug: Optional[str] = None
    label: Optional[str] = None


Python GetSavedSearchesRequest 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 /searches/GetSavedSearches HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	searches: 
	[
		{
			id: 0,
			name: String,
			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
				}
			},
			location: 
			{
				longitude: 0,
				latitude: 0,
				searchRadiusInKm: 0
			},
			filterDetails: 
			{
				categories: 
				[
					{
						name: String,
						slug: String,
						absoluteSlug: String,
						imageUrl: String,
						allImageUrl: String,
						iconImageUrl: String,
						position: 0
					}
				],
				barSpecialities: 
				[
					{
						slug: String,
						title: String
					}
				],
				barTypes: 
				[
					{
						slug: String,
						title: String
					}
				],
				brands: 
				[
					{
						name: String
					}
				],
				cuisines: 
				[
					{
						label: String,
						slug: String
					}
				],
				mealTypes: 
				[
					{
						label: String,
						slug: String
					}
				],
				parking: 
				[
					{
						label: String,
						slug: StreetParking
					}
				],
				paymentOptions: 
				[
					{
						label: String,
						slug: Visa
					}
				],
				priceMainDishes: 
				[
					{
						title: String,
						slug: Value
					}
				],
				eatingSuitability: 
				[
					{
						label: String,
						slug: String
					}
				],
				takeAways: 
				[
					{
						label: String,
						slug: String
					}
				],
				wearPriceProfiles: 
				[
					{
						slug: String,
						label: String
					}
				],
				rootCategories: 
				[
					{
						name: String,
						slug: String,
						absoluteSlug: String,
						imageUrl: String,
						allImageUrl: String,
						iconImageUrl: String,
						position: 0
					}
				]
			},
			createdAt: 0001-01-01T00:00:00.0000000+00:00,
			updatedAt: 0001-01-01T00:00:00.0000000+00:00
		}
	]
}