ClubManager.Api

<back to all web services

WebService.GetHeaderMenuRequest

Requires Authentication
The following routes are available for this service:
POST,GET/api/Web/GetHeaderMenu
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using ClubManager.Interfaces.Models.UI;
using ClubManager.Interfaces.Models.Branch;

namespace ClubManager.Interfaces.Models.Branch
{
    [Flags]
    public enum 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,
    }

}

namespace ClubManager.Interfaces.Models.UI
{
    public partial class HeaderMenu
    {
        public HeaderMenu()
        {
            HeaderMenuItems = new List<HeaderMenuItem>{};
        }

        public virtual string Header { get; set; }
        public virtual List<HeaderMenuItem> HeaderMenuItems { get; set; }
    }

    public partial class HeaderMenuItem
    {
        public HeaderMenuItem()
        {
            Roles = new string[]{};
            SubHeaderMenuItems = new List<SubHeaderMenuItem>{};
        }

        public virtual string Name { get; set; }
        public virtual string Url { get; set; }
        public virtual bool IsCurrent { get; set; }
        public virtual Feature? Feature { get; set; }
        public virtual bool HideFeature { get; set; }
        public virtual string[] Roles { get; set; }
        public virtual List<SubHeaderMenuItem> SubHeaderMenuItems { get; set; }
    }

    public partial class SubHeaderMenuItem
    {
        public SubHeaderMenuItem()
        {
            Roles = new string[]{};
        }

        public virtual string Name { get; set; }
        public virtual string Description { get; set; }
        public virtual string Url { get; set; }
        public virtual string Icon { get; set; }
        public virtual string[] Roles { get; set; }
        public virtual Feature? Feature { get; set; }
        public virtual bool? HideForCMGo { get; set; }
        public virtual bool ShowFeatureUnavailable { get; set; }
        public virtual bool HasIcon { get; set; }
        public virtual bool HasFontAwesomeIcon { get; set; }
    }

}

C# WebService.GetHeaderMenuRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

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/csv
Content-Type: text/csv
Content-Length: length

{"UserId":0,"MemberId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
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}]}]}