ClubManager.Api

<back to all web services

WebService.GetHeaderMenuRequest

Requires Authentication
The following routes are available for this service:
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

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