POST,GET | /api/Web/GetHeaderMenu |
---|
import Foundation
import ServiceStack
public class HeaderMenu : Codable
{
public var header:String?
public var headerMenuItems:[HeaderMenuItem] = []
required public init(){}
}
public class HeaderMenuItem : Codable
{
public var name:String?
public var url:String?
public var isCurrent:Bool?
public var feature:Feature?
public var hideFeature:Bool?
public var roles:[String] = []
public var subHeaderMenuItems:[SubHeaderMenuItem] = []
required public init(){}
}
// @Flags()
public enum Feature : Int, Codable
{
case None = 0
case Standard = 1
case Bookings = 2
case Rota = 4
case GoCardless = 8
case HomeScreen = 16
case EPos = 32
case Attendance = 64
case Sales = 128
case PaymentCollections = 256
case MailChimp = 512
case MultiSite = 1024
case AccountingDashboard = 2048
case OtherDashboards = 4096
case Reports = 8192
case AdvancedAccounting = 16384
case MemberLicenseDates = 32768
case FaceRecognition = 65536
case MemberAccountCreation = 131072
case Automation = 262144
case FacebookMarketing = 524288
case Grades = 1048576
case ZoomIntegration = 2097152
case SalesTargetChart = 4194304
case CustomApp = 8388608
case CustomAttributesOnPortal = 16777216
case NoExport = 33554432
case EnterpriseClubPerformanceDashboards = 67108864
}
public class SubHeaderMenuItem : Codable
{
public var name:String?
public var Description:String?
public var url:String?
public var icon:String?
public var roles:[String] = []
public var feature:Feature?
public var hideForCMGo:Bool?
public var showFeatureUnavailable:Bool?
public var hasIcon:Bool?
public var hasFontAwesomeIcon:Bool?
required public init(){}
}
Swift WebService.GetHeaderMenuRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
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: application/xml
Content-Type: application/xml
Content-Length: length
<WebService.GetHeaderMenuRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ClubManager.Api.Services">
<MemberId>0</MemberId>
<UserId>0</UserId>
</WebService.GetHeaderMenuRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <HeaderMenu xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ClubManager.Interfaces.Models.UI"> <Header>String</Header> <HeaderMenuItems> <HeaderMenuItem> <Feature>None</Feature> <HideFeature>false</HideFeature> <IsCurrent>false</IsCurrent> <Name>String</Name> <Roles xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:string>String</d4p1:string> </Roles> <SubHeaderMenuItems> <SubHeaderMenuItem> <Description>String</Description> <Feature>None</Feature> <HideForCMGo>false</HideForCMGo> <Icon>String</Icon> <Name>String</Name> <Roles xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d6p1:string>String</d6p1:string> </Roles> <ShowFeatureUnavailable>false</ShowFeatureUnavailable> <Url>String</Url> </SubHeaderMenuItem> </SubHeaderMenuItems> <Url>String</Url> </HeaderMenuItem> </HeaderMenuItems> </HeaderMenu>