ConsumerApi

<back to all web services

AddSavedSearchRequest

Consumer
Requires Authentication
Required role:Consumer
The following routes are available for this service:
POST/searches/AddSavedSearch
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


Python AddSavedSearchRequest 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.

POST /searches/AddSavedSearch HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	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
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	savedSearchId: 0
}