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

    [<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

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

    [<AllowNullLiteral>]
    type WearPriceProfileEsDto() = 
        member val Slug:String = null with get,set
        member val Label: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 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 AdMessageDetailsBase() = 
        member val Description:String = null with get,set
        member val MoreInformation:ResizeArray<String> = new ResizeArray<String>() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsPercentageDiscountOnAllMerchandise() = 
        inherit AdMessageDetailsBase()
        member val Value:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsPercentageDiscountRangeOnAllMerchandise() = 
        inherit AdMessageDetailsBase()
        member val Start:Double = new Double() with get,set
        member val Stop:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsPercentageDiscountOnSelectedMerchandise() = 
        inherit AdMessageDetailsBase()
        member val Value:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise() = 
        inherit AdMessageDetailsBase()
        member val Value:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise() = 
        inherit AdMessageDetailsBase()
        member val Start:Double = new Double() with get,set
        member val Stop:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsTotalAmountOverXgivesYdiscount() = 
        inherit AdMessageDetailsBase()
        member val IfTotalAmountMoreThanX:Double = new Double() with get,set
        member val ThenYouGetDiscountPercentageY:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsXforYdiscount() = 
        inherit AdMessageDetailsBase()
        member val IfYouBuyX:Int32 = new Int32() with get,set
        member val ThenYouGetY:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsNewArrivals() = 
        inherit AdMessageDetailsBase()

    [<AllowNullLiteral>]
    type AdMessageDetailsFreetext() = 
        inherit AdMessageDetailsBase()
        member val Title:String = null with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsTodaysBreakFastOffer() = 
        inherit AdMessageDetailsBase()
        member val Value:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsTodaysLunchOffer() = 
        inherit AdMessageDetailsBase()
        member val Value:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsTodaysDinnerOffer() = 
        inherit AdMessageDetailsBase()
        member val Value:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsSaveFoodAndMoney() = 
        inherit AdMessageDetailsBase()
        member val Value:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsPercentageOffYourFoodBill() = 
        inherit AdMessageDetailsBase()
        member val Percentage:Double = new Double() with get,set

    [<AllowNullLiteral>]
    type AdMessageDetailsHappyHour() = 
        inherit AdMessageDetailsBase()

    [<AllowNullLiteral>]
    type AdMessageDetailsSomeFreeTablesLeftToday() = 
        inherit AdMessageDetailsBase()

    [<AllowNullLiteral>]
    type AdMessageDetailsTwoDishesForThePriceOfOne() = 
        inherit AdMessageDetailsBase()

    [<AllowNullLiteral>]
    type AdMessageDetailsUnion() = 
        member val PercentageOnAllMerchandise:AdMessageDetailsPercentageDiscountOnAllMerchandise = null with get,set
        member val PercentageRangeOnAllMerchandise:AdMessageDetailsPercentageDiscountRangeOnAllMerchandise = null with get,set
        member val PercentageOnSelectedMerchandise:AdMessageDetailsPercentageDiscountOnSelectedMerchandise = null with get,set
        member val AbsoluteOnSelectedMerchandise:AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise = null with get,set
        member val AbsoluteRangeOnAllMerchandise:AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise = null with get,set
        member val TotalAmountOverXgivesYdiscount:AdMessageDetailsTotalAmountOverXgivesYdiscount = null with get,set
        member val XforY:AdMessageDetailsXforYdiscount = null with get,set
        member val NewArrivals:AdMessageDetailsNewArrivals = null with get,set
        member val Freetext:AdMessageDetailsFreetext = null with get,set
        member val TodaysBreakFastOffer:AdMessageDetailsTodaysBreakFastOffer = null with get,set
        member val TodaysLunchOffer:AdMessageDetailsTodaysLunchOffer = null with get,set
        member val TodaysDinnerOffer:AdMessageDetailsTodaysDinnerOffer = null with get,set
        member val SaveFoodAndMoney:AdMessageDetailsSaveFoodAndMoney = null with get,set
        member val PercentageOfYourFoodBill:AdMessageDetailsPercentageOffYourFoodBill = null with get,set
        member val HappyHour:AdMessageDetailsHappyHour = null with get,set
        member val SomeFreeTablesLeftToday:AdMessageDetailsSomeFreeTablesLeftToday = null with get,set
        member val TwoDishesForThePriceOfOne:AdMessageDetailsTwoDishesForThePriceOfOne = null with get,set

    [<AllowNullLiteral>]
    type AdMessageDto() = 
        member val Id:Int64 = new Int64() with get,set
        member val Guid:Guid = new Guid() with get,set
        member val Title:String = null with get,set
        member val StartAt:DateTimeOffset = new DateTimeOffset() with get,set
        member val StopAt:DateTimeOffset = new DateTimeOffset() with get,set
        member val PublishAt:DateTimeOffset = new DateTimeOffset() with get,set
        member val ImageUrls:ResizeArray<ImageUrls> = new ResizeArray<ImageUrls>() with get,set
        member val Place:PlaceBasicApiDto = null with get,set
        member val DetailsUnion:AdMessageDetailsUnion = null with get,set
        member val StarredCount:Int64 = new Int64() with get,set

    type SharingState =
        | Teaser = 0
        | Awarded = 1
        | SelfShare = 2
        | Expired = 3

    [<AllowNullLiteral>]
    type ShareAdMessageLinkUsedResponse() = 
        member val User:SharingUser = null with get,set
        member val AdMessage:AdMessageDto = null with get,set
        member val Place:PlaceBasicApiDto = null with get,set
        member val State:SharingState = new SharingState() with get,set

    type Locale =
        | EnUs = 0
        | NbNo = 1

    [<AllowNullLiteral>]
    type ShareAdMessageLinkUsedRequest() = 
        interface IPost
        member val ShareAdMessageToken:String = null with get,set
        member val Locale:Nullable<Locale> = new Nullable<Locale>() with get,set

F# ShareAdMessageLinkUsedRequest DTOs

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

HTTP + OTHER

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: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"shareAdMessageToken":"String","locale":"EnUs"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"user":{"firstName":"String","lastName":"String","profilePhotoUrl":"String"},"adMessage":{"id":0,"title":"String","startAt":"0001-01-01T00:00:00.0000000+00:00","stopAt":"0001-01-01T00:00:00.0000000+00:00","publishAt":"0001-01-01T00:00:00.0000000+00:00","imageUrls":[{"preview":"String","small":"String","medium":"String","large":"String"}],"place":{"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"},"detailsUnion":{"percentageOnAllMerchandise":{"value":0,"description":"String","moreInformation":["String"]},"percentageRangeOnAllMerchandise":{"start":0,"stop":0,"description":"String","moreInformation":["String"]},"percentageOnSelectedMerchandise":{"value":0,"description":"String","moreInformation":["String"]},"absoluteOnSelectedMerchandise":{"value":0,"description":"String","moreInformation":["String"]},"absoluteRangeOnAllMerchandise":{"start":0,"stop":0,"description":"String","moreInformation":["String"]},"totalAmountOverXgivesYdiscount":{"ifTotalAmountMoreThanX":0,"thenYouGetDiscountPercentageY":0,"description":"String","moreInformation":["String"]},"xforY":{"ifYouBuyX":0,"thenYouGetY":0,"description":"String","moreInformation":["String"]},"newArrivals":{"description":"String","moreInformation":["String"]},"freetext":{"title":"String","description":"String","moreInformation":["String"]},"todaysBreakFastOffer":{"value":0,"description":"String","moreInformation":["String"]},"todaysLunchOffer":{"value":0,"description":"String","moreInformation":["String"]},"todaysDinnerOffer":{"value":0,"description":"String","moreInformation":["String"]},"saveFoodAndMoney":{"value":0,"description":"String","moreInformation":["String"]},"percentageOfYourFoodBill":{"percentage":0,"description":"String","moreInformation":["String"]},"happyHour":{"description":"String","moreInformation":["String"]},"someFreeTablesLeftToday":{"description":"String","moreInformation":["String"]},"twoDishesForThePriceOfOne":{"description":"String","moreInformation":["String"]}},"starredCount":0},"place":{"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"},"state":"Teaser"}