GET | /sales/members/{MemberId}/package-eligibility | Find out is a user is eligible to purchase a certain package. |
---|
namespace ClubReady.Core.Api.Models
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type ApiDtoBase() =
member val ApiKey:String = null with get,set
member val StoreId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val ChainId:Nullable<Int32> = new Nullable<Int32>() with get,set
[<AllowNullLiteral>]
type PackageEligibilityRequestDto() =
inherit ApiDtoBase()
member val PackageId:Int32 = new Int32() with get,set
member val MemberId:Int32 = new Int32() with get,set
type RestrictedResourceType =
| Store = 0
| Chain = 1
| User = 2
| Undefined = 3
[<AllowNullLiteral>]
type PackageEligibilityRequest() =
inherit PackageEligibilityRequestDto()
///<summary>
///Api Key - grants access to resources
///</summary>
[<ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")>]
member val ApiKey:String = null with get,set
///<summary>
///Store ID # member belongs to
///</summary>
[<ApiMember(DataType="integer", Description="Store ID # member belongs to", IsRequired=true, Name="StoreId", ParameterType="query")>]
member val StoreId:Nullable<Int32> = new Nullable<Int32>() with get,set
///<summary>
///ID of the member to lookup
///</summary>
[<ApiMember(DataType="integer", Description="ID of the member to lookup", IsRequired=true, Name="MemberId", ParameterType="path")>]
member val MemberId:Int32 = new Int32() with get,set
///<summary>
///ID of the package to check
///</summary>
[<ApiMember(DataType="integer", Description="ID of the package to check", IsRequired=true, Name="PackageId", ParameterType="query")>]
member val PackageId:Int32 = new Int32() with get,set
member val RestrictedId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val RestrictedResourceType:RestrictedResourceType = new RestrictedResourceType() with get,set
[<AllowNullLiteral>]
type ApiResponseBase() =
member val Success:Boolean = new Boolean() with get,set
member val Message:String = null with get,set
[<AllowNullLiteral>]
type PackageEligibilityItem() =
member val Name:String = null with get,set
member val Value:String = null with get,set
member val IsEligible:Boolean = new Boolean() with get,set
member val Message:String = null with get,set
[<AllowNullLiteral>]
type PackageEligibility() =
member val IsEligible:Boolean = new Boolean() with get,set
member val Eligibility:ResizeArray<PackageEligibilityItem> = new ResizeArray<PackageEligibilityItem>() with get,set
[<AllowNullLiteral>]
type PackageEligibilityResponseDto() =
inherit ApiResponseBase()
member val EligibilityInfo:PackageEligibility = null with get,set
[<AllowNullLiteral>]
type PackageEligibilityResponse() =
inherit PackageEligibilityResponseDto()
member val EligibilityInfo:PackageEligibility = null with get,set
F# PackageEligibilityRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /sales/members/{MemberId}/package-eligibility HTTP/1.1 Host: clubready.com Accept: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { EligibilityInfo: { IsEligible: False, Eligibility: [ { Name: String, Value: String, IsEligible: False, Message: String } ] }, Success: False, Message: String }