ASH.ResourceLibrary.WebApi

<back to all web services

FilterDataRequest

Requires Authentication
The following routes are available for this service:
GET/filterResultsReturns paginated filtered data based on the requested filters.
import java.math.*
import java.util.*
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


open class FilterDataRequest : BasicResourceLibraryRequest()
{
    var workoutCategoryId:String? = null
    var bitwiseLevel:Int? = null
    var bitwiseDuration:Int? = null
    var bitwiseInstructor:BigInteger? = null
    var offset:String? = null
    var limit:String? = null
    var digitalFitness:Boolean? = null
    var topicId:String? = null
}

open class BasicResourceLibraryRequest
{
    var resourceLibraryMemberId:Int? = null
}

open class FilterDataResponse
{
    var filterResults:FilterResult? = null
}

open class FilterResult
{
    var id:String? = null
    var categoryName:String? = null
    var itemCount:Long? = null
    var resourceItems:ArrayList<ResourceCard> = ArrayList<ResourceCard>()
}

open class ResourceCard
{
    var id:String? = null
    var title:String? = null
    var description:String? = null
    var descriptionSummary:String? = null
    @SerializedName("type") var Type:String? = null
    var content:String? = null
    var isComplete:Boolean? = null
    var isFavorite:Boolean? = null
    var isImplicitlyComplete:Boolean? = null
    var mediaPath:String? = null
    var isConfirmable:Boolean? = null
    var isWcagCompliant:Boolean? = null
    var duration:String? = null
    var preview:String? = null
    var calories:Int? = null
    var instructor:String? = null
    var thumbnail:String? = null
    var difficulty:String? = null
    var tags:ArrayList<Tag> = ArrayList<Tag>()
    var subtitles:String? = null
    var screenshots:ArrayList<ScreenshotItem> = ArrayList<ScreenshotItem>()
    var drmEncrypted:Boolean? = null
}

open class Tag
{
    var id:String? = null
    var title:String? = null
}

open class ScreenshotItem
{
    var largeFilepathS3:String? = null
    var thumbFilepathS3:String? = null
    var order:BigDecimal? = null
    var description:String? = null
}

Kotlin FilterDataRequest DTOs

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

HTTP + XML

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

GET /filterResults HTTP/1.1 
Host: resourcelibrary.api.ashcompanies.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<FilterDataResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ASH.ResourceLibrary.Interfaces.ServiceModels">
  <FilterResults xmlns:d2p1="http://schemas.datacontract.org/2004/07/ASH.ResourceLibrary.Interfaces.Models">
    <d2p1:CategoryName>String</d2p1:CategoryName>
    <d2p1:Id>String</d2p1:Id>
    <d2p1:ItemCount>0</d2p1:ItemCount>
    <d2p1:ResourceItems i:nil="true" />
  </FilterResults>
</FilterDataResponse>