ClubReady Api

<back to all web services

ClubVisitHistoryRequest

The following routes are available for this service:
GET/club/visit-historyReturn list of club visits, by club or entire chain.

export class ApiDtoBase
{
    public ApiKey: string;
    public StoreId?: number;
    public ChainId?: number;

    public constructor(init?: Partial<ApiDtoBase>) { (Object as any).assign(this, init); }
}

export class ClubVisitHistoryRequestDto extends ApiDtoBase
{
    public FromDate: string;
    public ToDate: string;

    public constructor(init?: Partial<ClubVisitHistoryRequestDto>) { super(init); (Object as any).assign(this, init); }
}

export enum RestrictedResourceType
{
    Store = 'Store',
    Chain = 'Chain',
    User = 'User',
    Undefined = 'Undefined',
}

export class ClubVisitHistoryRequest extends ClubVisitHistoryRequestDto implements IRestrictedApiRequest
{
    /**
    * Api Key - grants access to resources
    */
    // @ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")
    public ApiKey: string;

    /**
    * Either StoreId or ChainId is required
    */
    // @ApiMember(DataType="integer", Description="Either StoreId or ChainId is required", Name="StoreId", ParameterType="query")
    public StoreId?: number;

    /**
    * Either StoreId or ChainId is required
    */
    // @ApiMember(DataType="integer", Description="Either StoreId or ChainId is required", Name="ChainId", ParameterType="query")
    public ChainId?: number;

    /**
    * UTC Format
    */
    // @ApiMember(DataType="date", Description="UTC Format", IsRequired=true, Name="FromDate", ParameterType="query")
    public FromDate: string;

    /**
    * Max 24 Hours (UTC Format)
    */
    // @ApiMember(DataType="date", Description="Max 24 Hours (UTC Format)", IsRequired=true, Name="ToDate", ParameterType="query")
    public ToDate: string;

    public RestrictedId?: number;
    public RestrictedResourceType: RestrictedResourceType;

    public constructor(init?: Partial<ClubVisitHistoryRequest>) { super(init); (Object as any).assign(this, init); }
}

export class ApiResponseBase
{
    public Success: boolean;
    public Message: string;

    public constructor(init?: Partial<ApiResponseBase>) { (Object as any).assign(this, init); }
}

export class ClubVisitHistoryItem
{
    public CheckinLogId: number;
    public UserId: number;
    public FirstName: string;
    public LastName: string;
    public CheckinStoreId: number;
    public CheckinLocationName: string;
    public HomeStoreId: number;
    public HomeStoreLocationName: string;
    public UtcTime: string;

    public constructor(init?: Partial<ClubVisitHistoryItem>) { (Object as any).assign(this, init); }
}

export class ClubVisitHistoryResponseDto extends ApiResponseBase
{
    public TotalVisits: number;
    public Visits: ClubVisitHistoryItem[];

    public constructor(init?: Partial<ClubVisitHistoryResponseDto>) { super(init); (Object as any).assign(this, init); }
}

export class ClubVisitHistoryResponse extends ClubVisitHistoryResponseDto
{
    public Success: boolean;
    public Message: string;
    public TotalVisits: number;
    public Visits: ClubVisitHistoryItem[];

    public constructor(init?: Partial<ClubVisitHistoryResponse>) { super(init); (Object as any).assign(this, init); }
}

TypeScript ClubVisitHistoryRequest 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/visit-history HTTP/1.1 
Host: clubready.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Success: False,
	Message: String,
	TotalVisits: 0,
	Visits: 
	[
		{
			CheckinLogId: 0,
			UserId: 0,
			FirstName: String,
			LastName: String,
			CheckinStoreId: 0,
			CheckinLocationName: String,
			HomeStoreId: 0,
			HomeStoreLocationName: String,
			UtcTime: 0001-01-01
		}
	]
}