GET | /scheduling/{UserId}/credit-detail | Breakdown of a user's credits. |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class CreditDetailRequest : ApiDtoBase(), IRestrictedApiRequest
{
/**
* Api Key - grants access to resources
*/
@ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")
var ApiKey:String? = null
/**
* Chain ID
*/
@ApiMember(DataType="integer", Description="Chain ID", Name="ChainId", ParameterType="query")
var ChainId:Int? = null
/**
* Store ID
*/
@ApiMember(DataType="integer", Description="Store ID", Name="StoreId", ParameterType="query")
var StoreId:Int? = null
/**
* ClubReady User ID
*/
@ApiMember(DataType="integer", Description="ClubReady User ID", IsRequired=true, Name="UserId", ParameterType="path")
var UserId:Int? = null
/**
* Determines if the list of the user's credits are broken out by store ID.
*/
@ApiMember(DataType="Boolean", Description="Determines if the list of the user's credits are broken out by store ID.", Name="FullDetail", ParameterType="query")
var FullDetail:Boolean? = null
var RestrictedId:Int? = null
var RestrictedResourceType:RestrictedResourceType? = null
}
open class ApiDtoBase
{
var ApiKey:String? = null
var StoreId:Int? = null
var ChainId:Int? = null
}
enum class RestrictedResourceType
{
Store,
Chain,
User,
Undefined,
}
open class CreditDetailResponse : CreditDetailResponseDto()
{
var Success:Boolean? = null
var Message:String? = null
var TotalPurchased:Int? = null
var TotalAvailable:Int? = null
var Credits:ArrayList<SessionCreditDetail> = ArrayList<SessionCreditDetail>()
}
open class CreditDetailResponseDto : ApiResponseBase()
{
var TotalPurchased:Int? = null
var TotalAvailable:Int? = null
var Credits:ArrayList<SessionCreditDetail> = ArrayList<SessionCreditDetail>()
}
open class ApiResponseBase
{
var Success:Boolean? = null
var Message:String? = null
}
open class SessionCreditDetail
{
var ServiceId:Int? = null
var SessionSizeId:Int? = null
var ClassId:Int? = null
var Name:String? = null
var Total:Int? = null
var Available:Int? = null
var StoreId:Int? = null
}
Kotlin CreditDetailRequest 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 /scheduling/{UserId}/credit-detail 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, TotalPurchased: 0, TotalAvailable: 0, Credits: [ { ServiceId: 0, SessionSizeId: 0, ClassId: 0, Name: String, Total: 0, Available: 0, StoreId: 0 } ] }