Required role: | Consumer |
POST | /business/next-to-claim |
---|
namespace ConsumerApi
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
type NextClaimStep =
| AuthenticateWithVipps = 0
| CreatePassword = 1
| AcceptBusinessTermsOfService = 2
| Claim = 3
| Completed = 4
[<AllowNullLiteral>]
type ClaimUserInfo() =
member val FirstName:String = null with get,set
member val LastName:String = null with get,set
member val Email:String = null with get,set
member val LegalIdentityVerified:Boolean = new Boolean() with get,set
member val PhoneNumber: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 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 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 NextToClaimBusinessResponse() =
member val NextStep:NextClaimStep = new NextClaimStep() with get,set
member val User:ClaimUserInfo = null with get,set
member val Place:PlaceBasicApiDto = null with get,set
[<AllowNullLiteral>]
type NextToClaimBusinessRequest() =
interface IPost
member val PlaceGuid:Nullable<Guid> = new Nullable<Guid>() with get,set
F# NextToClaimBusinessRequest 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 /business/next-to-claim HTTP/1.1
Host: unstable-consumer-api.brovs.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
placeGuid: 00000000-0000-0000-0000-000000000000
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { nextStep: AuthenticateWithVipps, user: { firstName: String, lastName: String, email: String, legalIdentityVerified: False, phoneNumber: 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 } }