| GET | /user/status |
|---|
import Foundation
import ServiceStack
public enum Locale : String, Codable
{
case EnUs
case NbNo
}
public enum BusinessRole : String, Codable
{
case Owner
case Manager
case Sales
case Marketing
case Other
}
public class BusinessContact : Codable
{
public var firstName:String
public var lastName:String
public var position:String
public var phone:String
public var email:String
required public init(){}
}
public class OpeningHours : Codable
{
public var weekly:WeeklyOpeningHours
required public init(){}
}
public class WeeklyOpeningHours : Codable
{
public var monday:OpeningHour
public var tuesday:OpeningHour
public var wednesday:OpeningHour
public var thursday:OpeningHour
public var friday:OpeningHour
public var saturday:OpeningHour
public var sunday:OpeningHour
required public init(){}
}
public class OpeningHour : Codable
{
public var openAtHour:Int
public var openAtMinute:Int
public var closeAtHour:Int
public var closeAtMinute:Int
required public init(){}
}
public enum PlaceType : String, Codable
{
case Mall
case Regular
}
public class PlaceContact : Codable
{
public var phone:String
public var email:String
public var website:String
public var webShop:String
required public init(){}
}
public class PlaceAddress : Codable
{
public var street:String
public var postalCode:String
public var region:String
public var countryCode:String
required public init(){}
}
public class TimeZoneDto : Codable
{
@TimeSpan public var baseUtcOffset:TimeInterval
public var daylightName:String
public var displayName:String
public var id:String
public var standardName:String
public var supportsDaylightSavingTime:Bool
required public init(){}
}
public class PriceMainDishDto : Codable
{
public var title:String
public var slug:PriceMainDish
required public init(){}
}
public enum PriceMainDish : String, Codable
{
case Value
case Medium
case High
case FineDining
}
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.
GET /user/status HTTP/1.1 Host: business-api.brovs.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
status: SignInOrUp,
userDto:
{
id: 0,
email: String,
firstName: String,
lastName: String,
mobilePhone: String,
legalIdentityVerified: False,
locale: EnUs
},
invitations:
[
{
id: 0,
userId: 0,
placeId: 0,
placeGuid: 00000000-0000-0000-0000-000000000000,
inviteKey: String,
businessId: 0,
firstName: String,
lastName: String,
placeName: String,
businessName: String,
role: Owner,
businessRole: Owner,
createdAt: 0001-01-01,
updatedAt: 0001-01-01
}
],
roles:
[
String
],
businesses:
[
{
id: 0,
name: String,
organizationNumber: String,
streetAddress: String,
postalCode: String,
city: String,
country: String,
contact:
{
firstName: String,
lastName: String,
position: String,
phone: String,
email: String
}
}
],
places:
[
{
id: 0,
name: String,
businessId: 0,
longitude: 0,
latitude: 0,
claimed: False,
organizationNumber: String,
countryCode: String,
overview: 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
}
}
},
placeType: Mall,
contact:
{
phone: String,
email: String,
website: String,
webShop: String
},
address:
{
street: String,
postalCode: String,
region: String,
countryCode: String
},
wheelChairAccessible: False,
wifi: False,
outdoorSeating: False,
saveFoodAndMoney: False,
timeZoneDto:
{
baseUtcOffset: PT0S,
daylightName: String,
displayName: String,
id: String,
standardName: String,
supportsDaylightSavingTime: False
},
priceMainDish:
{
title: String,
slug: Value
},
otherServices:
[
{
id: 0,
serviceName: String,
floor: String
}
],
floor: String
}
]
}