ASH.ResourceLibrary.WebApi

<back to all web services

ResourceItemsRequest

Requires Authentication
The following routes are available for this service:
GET,POST/resourceItemsUse to get a list Resource Items
namespace ASH.ResourceLibrary.Interfaces.Models

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type Tag() = 
        member val Id:String = null with get,set
        member val Title:String = null with get,set

    [<AllowNullLiteral>]
    type ScreenshotItem() = 
        member val LargeFilepathS3:String = null with get,set
        member val ThumbFilepathS3:String = null with get,set
        member val Order:Decimal = new Decimal() with get,set
        member val Description:String = null with get,set

    [<AllowNullLiteral>]
    type ResourceCard() = 
        member val Id:String = null with get,set
        member val Title:String = null with get,set
        member val Description:String = null with get,set
        member val DescriptionSummary:String = null with get,set
        member val Type:String = null with get,set
        member val Content:String = null with get,set
        member val IsComplete:Boolean = new Boolean() with get,set
        member val IsFavorite:Boolean = new Boolean() with get,set
        member val IsImplicitlyComplete:Boolean = new Boolean() with get,set
        member val MediaPath:String = null with get,set
        member val IsConfirmable:Boolean = new Boolean() with get,set
        member val IsWcagCompliant:Boolean = new Boolean() with get,set
        member val Duration:String = null with get,set
        member val Preview:String = null with get,set
        member val Calories:Int32 = new Int32() with get,set
        member val Instructor:String = null with get,set
        member val Thumbnail:String = null with get,set
        member val Difficulty:String = null with get,set
        member val Tags:ResizeArray<Tag> = new ResizeArray<Tag>() with get,set
        member val Subtitles:String = null with get,set
        member val Screenshots:ResizeArray<ScreenshotItem> = new ResizeArray<ScreenshotItem>() with get,set
        member val DrmEncrypted:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type SubTopic() = 
        member val Id:String = null with get,set
        member val Title:String = null with get,set
        member val ResourceCount:Int32 = new Int32() with get,set
        member val ResourceItems:ICollection<ResourceItem> = null with get,set

    [<AllowNullLiteral>]
    type Category() = 
        member val Id:String = null with get,set
        member val SubtopicItems:ICollection<SubTopic> = null with get,set
        member val ResourceItems:ICollection<ResourceItem> = null with get,set
        member val Title:String = null with get,set
        member val IsVisible:String = null with get,set
        member val ResourceCount:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type ActivityItem() = 
        member val Name:String = null with get,set
        member val Id:String = null with get,set

    [<AllowNullLiteral>]
    type SeriesItem() = 
        member val Id:String = null with get,set
        member val Title:String = null with get,set

    [<AllowNullLiteral>]
    type AltMediaPaths() = 
        member val Webm:String = null with get,set
        member val Ogv:String = null with get,set
        member val Mp4Low:String = null with get,set
        member val Mp4High:String = null with get,set

    [<AllowNullLiteral>]
    type ResourceItem() = 
        inherit ResourceCard()
        member val Content:String = null with get,set
        member val Credit:String = null with get,set
        member val References:String = null with get,set
        member val Disclaimer:String = null with get,set
        member val HeaderImage:String = null with get,set
        member val Origin:String = null with get,set
        member val OriginId:String = null with get,set
        member val Tags:ResizeArray<Tag> = new ResizeArray<Tag>() with get,set
        member val Categories:ResizeArray<Category> = new ResizeArray<Category>() with get,set
        member val Index:Int32 = new Int32() with get,set
        member val ActivityLevel:String = null with get,set
        member val ActivityDetails:String = null with get,set
        member val Transcript:String = null with get,set
        member val IsArchived:Boolean = new Boolean() with get,set
        member val Activities:ResizeArray<ActivityItem> = new ResizeArray<ActivityItem>() with get,set
        member val SeriesItems:ResizeArray<SeriesItem> = new ResizeArray<SeriesItem>() with get,set
        member val VideoId:String = null with get,set
        member val Focus:String = null with get,set
        member val Series:String = null with get,set
        member val SeriesUrl:String = null with get,set
        member val Category:String = null with get,set
        member val Equipments:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val DurationRange:String = null with get,set
        member val ProviderName:String = null with get,set
        member val UploadDate:String = null with get,set
        member val CompletionDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Level:String = null with get,set
        member val BodyFocus:String = null with get,set
        member val AltMediaPaths:AltMediaPaths = null with get,set
        member val Subtitles:String = null with get,set
        member val DrmEncrypted:Boolean = new Boolean() with get,set
        member val Screenshots:ResizeArray<ScreenshotItem> = new ResizeArray<ScreenshotItem>() with get,set

    [<AllowNullLiteral>]
    type ResourceItemsResponse() = 
        member val ResourceItems:ResizeArray<ResourceItem> = new ResizeArray<ResourceItem>() with get,set

    [<AllowNullLiteral>]
    type BasicResourceLibraryRequest() = 
        member val ResourceLibraryMemberId:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type ResourceItemsRequest() = 
        inherit BasicResourceLibraryRequest()
        member val IncludeCompletionStatus:Boolean = new Boolean() with get,set
        member val IncludeContent:Boolean = new Boolean() with get,set
        member val IsFavorite:Boolean = new Boolean() with get,set
        member val IsDigitalWorkoutFeatured:Boolean = new Boolean() with get,set
        member val MultipleDWFeaturedResources:Boolean = new Boolean() with get,set
        member val WorkoutCategoryId:String = null with get,set
        member val ResourceItemIds:ResizeArray<String> = new ResizeArray<String>() with get,set
        ///<summary>
        ///Set it to true if requesting resources only from digital library
        ///</summary>
        [<ApiMember(Description="Set it to true if requesting resources only from digital library")>]
        member val DigitalFitness:Boolean = new Boolean() with get,set

        ///<summary>
        ///Set it to true if requesting resources only from health library
        ///</summary>
        [<ApiMember(Description="Set it to true if requesting resources only from health library")>]
        member val HealthLibrary:Boolean = new Boolean() with get,set

        member val Limit:String = null with get,set
        member val Offset:String = null with get,set

F# ResourceItemsRequest DTOs

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

HTTP + CSV

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

POST /resourceItems HTTP/1.1 
Host: resourcelibrary.api.ashcompanies.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"includeCompletionStatus":false,"includeContent":false,"isFavorite":false,"isDigitalWorkoutFeatured":false,"multipleDWFeaturedResources":false,"workoutCategoryId":"String","resourceItemIds":["String"],"digitalFitness":false,"healthLibrary":false,"limit":"String","offset":"String","resourceLibraryMemberId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"resourceItems":[{"content":"String","credit":"String","references":"String","disclaimer":"String","headerImage":"String","origin":"String","originId":"String","tags":[{"id":"String","title":"String"}],"categories":[{"id":"String","subtopicItems":null,"resourceItems":null,"title":"String","isVisible":"String","resourceCount":0}],"index":0,"activityLevel":"String","activityDetails":"String","transcript":"String","isArchived":false,"activities":[{"name":"String","id":"String"}],"seriesItems":[{"id":"String","title":"String"}],"videoId":"String","focus":"String","series":"String","seriesUrl":"String","category":"String","equipments":["String"],"durationRange":"String","providerName":"String","uploadDate":"String","completionDate":"0001-01-01T00:00:00.0000000","level":"String","bodyFocus":"String","altMediaPaths":{"webm":"String","ogv":"String","mp4Low":"String","mp4High":"String"},"subtitles":"String","drmEncrypted":false,"screenshots":[{"largeFilepathS3":"String","thumbFilepathS3":"String","order":0,"description":"String"}],"id":"String","title":"String","description":"String","descriptionSummary":"String","type":"String","isComplete":false,"isFavorite":false,"isImplicitlyComplete":false,"mediaPath":"String","isConfirmable":false,"isWcagCompliant":false,"duration":"String","preview":"String","calories":0,"instructor":"String","thumbnail":"String","difficulty":"String"}]}