ClubReady Api

<back to all web services

GetGuestPassTypesRequest

The following routes are available for this service:
GET/club/guest-pass/typesGuest passes available at location.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using ClubReady.Web.Api.ClubAccess.Model;
using ClubReady.Core.Api.Models;
using ClubReady.Web.Api;
using ClubReady.Core.ClubAccess.GuestPasses.Dtos;

namespace ClubReady.Core.Api.Models
{
    public partial class ApiDtoBase
    {
        public virtual string ApiKey { get; set; }
        public virtual int? StoreId { get; set; }
        public virtual int? ChainId { get; set; }
    }

    public partial class ApiResponseBase
    {
        public virtual bool Success { get; set; }
        public virtual string Message { get; set; }
    }

    public partial class GetGuestPassTypesRequestDto
        : ApiDtoBase
    {
    }

    public partial class GetGuestPassTypesResponseDto
        : ApiResponseBase
    {
        public GetGuestPassTypesResponseDto()
        {
            GuestPassTypes = new List<GuestPassTypeDto>{};
        }

        public virtual List<GuestPassTypeDto> GuestPassTypes { get; set; }
    }

}

namespace ClubReady.Core.ClubAccess.GuestPasses.Dtos
{
    public partial class GuestPassTypeDto
    {
        public virtual int GuestPassTypeId { get; set; }
        public virtual int? ChainId { get; set; }
        public virtual int? StoreId { get; set; }
        public virtual string PassName { get; set; }
        public virtual int DurationDays { get; set; }
        public virtual bool ExpirationEditable { get; set; }
        public virtual int MaxDurationDays { get; set; }
        public virtual bool AutoActivateWhenIssued { get; set; }
        public virtual bool IssueBarcodeWhenActivated { get; set; }
        public virtual string TagWhenActivated { get; set; }
        public virtual int MaxIssuedCount { get; set; }
        public virtual bool IsDeleted { get; set; }
        public virtual int InactiveCount { get; set; }
        public virtual int ActiveCount { get; set; }
        public virtual int ExpiredCount { get; set; }
        public virtual int TotalCount { get; set; }
    }

}

namespace ClubReady.Web.Api
{
    public enum RestrictedResourceType
    {
        Store,
        Chain,
        User,
        Undefined,
    }

}

namespace ClubReady.Web.Api.ClubAccess.Model
{
    public partial class GetGuestPassTypesRequest
        : GetGuestPassTypesRequestDto, IRestrictedApiRequest
    {
        ///<summary>
        ///Api Key - grants access to resources
        ///</summary>
        [ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")]
        public virtual string ApiKey { get; set; }

        ///<summary>
        ///Either StoreId or ChainId is required
        ///</summary>
        [ApiMember(DataType="integer", Description="Either StoreId or ChainId is required", Name="StoreId", ParameterType="query")]
        public virtual int? StoreId { get; set; }

        ///<summary>
        ///Either StoreId or ChainId is required
        ///</summary>
        [ApiMember(DataType="integer", Description="Either StoreId or ChainId is required", Name="ChainId", ParameterType="query")]
        public virtual int? ChainId { get; set; }

        public virtual int? RestrictedId { get; set; }
        public virtual RestrictedResourceType RestrictedResourceType { get; set; }
    }

    public partial class GetGuestPassTypesResponse
        : GetGuestPassTypesResponseDto
    {
        public GetGuestPassTypesResponse()
        {
            GuestPassTypes = new List<GuestPassTypeDto>{};
        }

        public virtual List<GuestPassTypeDto> GuestPassTypes { get; set; }
    }

}

C# GetGuestPassTypesRequest DTOs

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

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /club/guest-pass/types HTTP/1.1 
Host: www.clubready.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	GuestPassTypes: 
	[
		{
			GuestPassTypeId: 0,
			ChainId: 0,
			StoreId: 0,
			PassName: String,
			DurationDays: 0,
			ExpirationEditable: False,
			MaxDurationDays: 0,
			AutoActivateWhenIssued: False,
			IssueBarcodeWhenActivated: False,
			TagWhenActivated: String,
			MaxIssuedCount: 0,
			IsDeleted: False,
			InactiveCount: 0,
			ActiveCount: 0,
			ExpiredCount: 0,
			TotalCount: 0
		}
	],
	Success: False,
	Message: String
}