POST | /share/share-place-link-used | A share place link was used | Validates the JWT token with the identity of the sharing user and the shared place and returns relevant information. |
---|
namespace ConsumerApi
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type SharingUser() =
member val FirstName:String = null with get,set
member val LastName:String = null with get,set
member val ProfilePhotoUrl:String = null with get,set
[<AllowNullLiteral>]
type OpeningHour() =
member val OpenAtHour:Int32 = new Int32() with get,set
member val OpenAtMinute:Int32 = new Int32() with get,set
member val CloseAtHour:Int32 = new Int32() with get,set
member val CloseAtMinute:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type WeeklyOpeningHours() =
member val Monday:OpeningHour = null with get,set
member val Tuesday:OpeningHour = null with get,set
member val Wednesday:OpeningHour = null with get,set
member val Thursday:OpeningHour = null with get,set
member val Friday:OpeningHour = null with get,set
member val Saturday:OpeningHour = null with get,set
member val Sunday:OpeningHour = null with get,set
[<AllowNullLiteral>]
type OpeningHours() =
member val Weekly:WeeklyOpeningHours = null with get,set
[<AllowNullLiteral>]
type CategoryTreeApiDto() =
member val Name:String = null with get,set
member val Slug:String = null with get,set
member val AbsoluteSlug:String = null with get,set
member val ImageUrl:String = null with get,set
member val AllImageUrl:String = null with get,set
member val IconImageUrl:String = null with get,set
member val Position:Int32 = new Int32() with get,set
member val Children:ResizeArray<CategoryTreeApiDto> = new ResizeArray<CategoryTreeApiDto>() with get,set
type FeatureType =
| BarSpeciality = 0
| BarType = 1
| Cuisine = 2
| SaveFoodAndMoney = 3
| MealType = 4
| Menu = 5
| OutdoorSeating = 6
| Parking = 7
| PaymentOptions = 8
| PriceMainDish = 9
| SubCategories = 10
| SubCategoriesAndBrands = 11
| EatingSuitabilities = 12
| TakeAway = 13
| WearPriceProfile = 14
| WheelChairAccessible = 15
| Wifi = 16
| WebShop = 17
| Filtering = 18
[<AllowNullLiteral>]
type IndividualFeatureDataApiDto() =
member val Slug:FeatureType = new FeatureType() with get,set
member val Label:String = null with get,set
[<AllowNullLiteral>]
type BarSpecialityEsDto() =
member val Slug:String = null with get,set
member val Title:String = null with get,set
[<AllowNullLiteral>]
type BarTypeEsDto() =
member val Slug:String = null with get,set
member val Title:String = null with get,set
[<AllowNullLiteral>]
type BrandApiDto() =
member val Name:String = null with get,set
[<AllowNullLiteral>]
type PlaceCustomBrandApiDto() =
member val Name:String = null with get,set
[<AllowNullLiteral>]
type PlaceSelectedBrandApiDto() =
member val Brand:BrandApiDto = null with get,set
member val CategoryAbsoluteSlugs:String[] = [||] with get,set
member val PlaceCustomBrand:PlaceCustomBrandApiDto = null with get,set
[<AllowNullLiteral>]
type CuisineEsDto() =
member val Label:String = null with get,set
member val Slug:String = null with get,set
[<AllowNullLiteral>]
type MealTypeApiDto() =
member val Label:String = null with get,set
member val Slug:String = null with get,set
type Parking =
| StreetParking = 0
| ParkingGarageNearby = 1
[<AllowNullLiteral>]
type ParkingApiDto() =
member val Label:String = null with get,set
member val Slug:Parking = new Parking() with get,set
type PaymentOption =
| Visa = 0
| MasterCard = 1
| AmericanExpress = 2
| Diners = 3
| Vipps = 4
[<AllowNullLiteral>]
type PaymentOptionApiDto() =
member val Label:String = null with get,set
member val Slug:PaymentOption = new PaymentOption() with get,set
[<AllowNullLiteral>]
type EatingSuitabilityApiDto() =
member val Label:String = null with get,set
member val Slug:String = null with get,set
[<AllowNullLiteral>]
type TakeAwayApiDto() =
member val Label:String = null with get,set
member val Slug:String = null with get,set
[<AllowNullLiteral>]
type WearPriceProfileEsDto() =
member val Slug:String = null with get,set
member val Label:String = null with get,set
[<AllowNullLiteral>]
type MenuEsDto() =
member val Name:String = null with get,set
member val Url:String = null with get,set
member val Position:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type ImageUrls() =
member val Preview:String = null with get,set
member val Small:String = null with get,set
member val Medium:String = null with get,set
member val Large:String = null with get,set
type PlaceType =
| Mall = 0
| Regular = 1
type PriceMainDish =
| Value = 0
| Medium = 1
| High = 2
| FineDining = 3
[<AllowNullLiteral>]
type PriceMainDishApiDto() =
member val Title:String = null with get,set
member val Slug:PriceMainDish = new PriceMainDish() with get,set
[<AllowNullLiteral>]
type TimeZoneDto() =
member val BaseUtcOffset:TimeSpan = new TimeSpan() with get,set
member val DaylightName:String = null with get,set
member val DisplayName:String = null with get,set
member val Id:String = null with get,set
member val StandardName:String = null with get,set
member val SupportsDaylightSavingTime:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type PlaceContact() =
member val Phone:String = null with get,set
member val Email:String = null with get,set
member val Website:String = null with get,set
member val WebShop:String = null with get,set
[<AllowNullLiteral>]
type PlaceAddress() =
member val Street:String = null with get,set
member val PostalCode:String = null with get,set
member val Region:String = null with get,set
member val CountryCode:String = null with get,set
[<AllowNullLiteral>]
type PlaceBasicApiDto() =
member val Id:Int64 = new Int64() with get,set
member val Guid:Guid = new Guid() with get,set
member val Overview:String = null with get,set
member val Name:String = null with get,set
member val Longitude:Single = new Single() with get,set
member val Latitude:Single = new Single() with get,set
member val Claimed:Boolean = new Boolean() with get,set
member val OrganizationNumber:String = null with get,set
member val CountryCode:String = null with get,set
member val OpeningHours:OpeningHours = null with get,set
member val WheelchairAccessible:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val Wifi:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val OutdoorSeating:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val SaveFoodAndMoney:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val PlaceType:PlaceType = new PlaceType() with get,set
member val PriceMainDish:PriceMainDishApiDto = null with get,set
member val TimeZoneDto:TimeZoneDto = null with get,set
member val BusinessId:Nullable<Int64> = new Nullable<Int64>() with get,set
member val Contact:PlaceContact = null with get,set
member val Address:PlaceAddress = null with get,set
member val Categories:ResizeArray<CategoryTreeApiDto> = new ResizeArray<CategoryTreeApiDto>() with get,set
member val LogoUrl:ImageUrls = null with get,set
member val ImageUrl:ImageUrls = null with get,set
member val WearPriceProfiles:ResizeArray<WearPriceProfileEsDto> = new ResizeArray<WearPriceProfileEsDto>() with get,set
member val Brands:ResizeArray<PlaceSelectedBrandApiDto> = new ResizeArray<PlaceSelectedBrandApiDto>() with get,set
member val Floor:String = null with get,set
[<AllowNullLiteral>]
type MallOtherServiceApiDto() =
member val ServiceName:String = null with get,set
member val Floor:String = null with get,set
[<AllowNullLiteral>]
type PlaceApiDto() =
member val Id:Int64 = new Int64() with get,set
member val Guid:Guid = new Guid() with get,set
member val Overview:String = null with get,set
member val Name:String = null with get,set
member val Longitude:Single = new Single() with get,set
member val Latitude:Single = new Single() with get,set
member val Claimed:Boolean = new Boolean() with get,set
member val OrganizationNumber:String = null with get,set
member val CountryCode:String = null with get,set
member val PlaceState:String = null with get,set
member val FollowersCount:Int64 = new Int64() with get,set
member val OpeningHours:OpeningHours = null with get,set
member val Categories:ResizeArray<CategoryTreeApiDto> = new ResizeArray<CategoryTreeApiDto>() with get,set
member val FeatureData:ResizeArray<IndividualFeatureDataApiDto> = new ResizeArray<IndividualFeatureDataApiDto>() with get,set
member val BarSpecialities:ResizeArray<BarSpecialityEsDto> = new ResizeArray<BarSpecialityEsDto>() with get,set
member val BarTypes:ResizeArray<BarTypeEsDto> = new ResizeArray<BarTypeEsDto>() with get,set
member val Brands:ResizeArray<PlaceSelectedBrandApiDto> = new ResizeArray<PlaceSelectedBrandApiDto>() with get,set
member val Cuisines:ResizeArray<CuisineEsDto> = new ResizeArray<CuisineEsDto>() with get,set
member val MealTypes:ResizeArray<MealTypeApiDto> = new ResizeArray<MealTypeApiDto>() with get,set
member val Parking:ResizeArray<ParkingApiDto> = new ResizeArray<ParkingApiDto>() with get,set
member val PaymentOptions:ResizeArray<PaymentOptionApiDto> = new ResizeArray<PaymentOptionApiDto>() with get,set
member val EatingSuitabilities:ResizeArray<EatingSuitabilityApiDto> = new ResizeArray<EatingSuitabilityApiDto>() with get,set
member val TakeAways:ResizeArray<TakeAwayApiDto> = new ResizeArray<TakeAwayApiDto>() with get,set
member val WearPriceProfiles:ResizeArray<WearPriceProfileEsDto> = new ResizeArray<WearPriceProfileEsDto>() with get,set
member val Menus:ResizeArray<MenuEsDto> = new ResizeArray<MenuEsDto>() with get,set
member val LogoUrl:ImageUrls = null with get,set
member val ImageUrl:ImageUrls = null with get,set
member val WheelchairAccessible:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val Wifi:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val OutdoorSeating:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val SaveFoodAndMoney:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val PlaceType:PlaceType = new PlaceType() with get,set
member val Mall:PlaceBasicApiDto = null with get,set
member val PriceMainDish:PriceMainDishApiDto = null with get,set
member val Places:ResizeArray<PlaceBasicApiDto> = new ResizeArray<PlaceBasicApiDto>() with get,set
member val OtherServices:ResizeArray<MallOtherServiceApiDto> = new ResizeArray<MallOtherServiceApiDto>() with get,set
member val Floor:String = null with get,set
member val TimeZoneDto:TimeZoneDto = null with get,set
member val BusinessId:Nullable<Int64> = new Nullable<Int64>() with get,set
member val Contact:PlaceContact = null with get,set
member val Address:PlaceAddress = null with get,set
type SharingState =
| Teaser = 0
| Awarded = 1
| SelfShare = 2
| Expired = 3
[<AllowNullLiteral>]
type SharePlaceLinkUsedResponse() =
member val SharingUser:SharingUser = null with get,set
member val Place:PlaceApiDto = null with get,set
member val State:SharingState = new SharingState() with get,set
type Locale =
| EnUs = 0
| NbNo = 1
[<AllowNullLiteral>]
type SharePlaceLinkUsedRequest() =
interface IPost
member val SharePlaceToken:String = null with get,set
member val Locale:Nullable<Locale> = new Nullable<Locale>() with get,set
F# SharePlaceLinkUsedRequest 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 /share/share-place-link-used HTTP/1.1
Host: unstable-consumer-api.brovs.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
sharePlaceToken: String,
locale: EnUs
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { sharingUser: { firstName: String, lastName: String, profilePhotoUrl: String }, 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 } }, state: Teaser }