POST,GET | /api/Web/GetHeaderMenu |
---|
namespace ClubManager.Interfaces.Models.Branch
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<Flags>]
type Feature =
| None = 0
| Standard = 1
| Bookings = 2
| Rota = 4
| GoCardless = 8
| HomeScreen = 16
| EPos = 32
| Attendance = 64
| Sales = 128
| PaymentCollections = 256
| MailChimp = 512
| MultiSite = 1024
| AccountingDashboard = 2048
| OtherDashboards = 4096
| Reports = 8192
| AdvancedAccounting = 16384
| MemberLicenseDates = 32768
| FaceRecognition = 65536
| MemberAccountCreation = 131072
| Automation = 262144
| FacebookMarketing = 524288
| Grades = 1048576
| ZoomIntegration = 2097152
| SalesTargetChart = 4194304
| CustomApp = 8388608
| CustomAttributesOnPortal = 16777216
| NoExport = 33554432
| EnterpriseClubPerformanceDashboards = 67108864
[<AllowNullLiteral>]
type SubHeaderMenuItem() =
member val Name:String = null with get,set
member val Description:String = null with get,set
member val Url:String = null with get,set
member val Icon:String = null with get,set
member val Roles:String[] = [||] with get,set
member val Feature:Nullable<Feature> = new Nullable<Feature>() with get,set
member val HideForCMGo:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val ShowFeatureUnavailable:Boolean = new Boolean() with get,set
member val HasIcon:Boolean = new Boolean() with get,set
member val HasFontAwesomeIcon:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type HeaderMenuItem() =
member val Name:String = null with get,set
member val Url:String = null with get,set
member val IsCurrent:Boolean = new Boolean() with get,set
member val Feature:Nullable<Feature> = new Nullable<Feature>() with get,set
member val HideFeature:Boolean = new Boolean() with get,set
member val Roles:String[] = [||] with get,set
member val SubHeaderMenuItems:ResizeArray<SubHeaderMenuItem> = new ResizeArray<SubHeaderMenuItem>() with get,set
[<AllowNullLiteral>]
type HeaderMenu() =
member val Header:String = null with get,set
member val HeaderMenuItems:ResizeArray<HeaderMenuItem> = new ResizeArray<HeaderMenuItem>() with get,set
F# WebService.GetHeaderMenuRequest 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 /api/Web/GetHeaderMenu HTTP/1.1
Host: api.clubmanagercentral.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
UserId: 0,
MemberId: 0
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Header: String, HeaderMenuItems: [ { Name: String, Url: String, IsCurrent: False, Feature: 0, HideFeature: False, Roles: [ String ], SubHeaderMenuItems: [ { Name: String, Description: String, Url: String, Icon: String, Roles: [ String ], Feature: 0, HideForCMGo: False, ShowFeatureUnavailable: False, HasIcon: True, HasFontAwesomeIcon: False } ] } ] }