GET,POST | /resourceItems | Use to get a list Resource Items |
---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using ASH.ResourceLibrary.Interfaces.ServiceModels;
using ASH.ResourceLibrary.Interfaces.Models;
namespace ASH.ResourceLibrary.Interfaces.Models
{
public partial class ActivityItem
{
public virtual string Name { get; set; }
public virtual string Id { get; set; }
}
public partial class AltMediaPaths
{
public virtual string Webm { get; set; }
public virtual string Ogv { get; set; }
public virtual string Mp4Low { get; set; }
public virtual string Mp4High { get; set; }
}
public partial class Category
{
public virtual string Id { get; set; }
public virtual ICollection<SubTopic> SubtopicItems { get; set; }
public virtual ICollection<ResourceItem> ResourceItems { get; set; }
public virtual string Title { get; set; }
public virtual string IsVisible { get; set; }
public virtual int ResourceCount { get; set; }
}
public partial class ResourceCard
{
public ResourceCard()
{
Tags = new List<Tag>{};
Screenshots = new List<ScreenshotItem>{};
}
public virtual string Id { get; set; }
public virtual string Title { get; set; }
public virtual string Description { get; set; }
public virtual string DescriptionSummary { get; set; }
public virtual string Type { get; set; }
public virtual string Content { get; set; }
public virtual bool IsComplete { get; set; }
public virtual bool IsFavorite { get; set; }
public virtual bool IsImplicitlyComplete { get; set; }
public virtual string MediaPath { get; set; }
public virtual bool IsConfirmable { get; set; }
public virtual bool IsWcagCompliant { get; set; }
public virtual string Duration { get; set; }
public virtual string Preview { get; set; }
public virtual int Calories { get; set; }
public virtual string Instructor { get; set; }
public virtual string Thumbnail { get; set; }
public virtual string Difficulty { get; set; }
public virtual List<Tag> Tags { get; set; }
public virtual string Subtitles { get; set; }
public virtual List<ScreenshotItem> Screenshots { get; set; }
public virtual bool DrmEncrypted { get; set; }
}
public partial class ResourceItem
: ResourceCard
{
public ResourceItem()
{
Tags = new List<Tag>{};
Categories = new List<Category>{};
Activities = new List<ActivityItem>{};
SeriesItems = new List<SeriesItem>{};
Equipments = new List<string>{};
Screenshots = new List<ScreenshotItem>{};
}
public virtual string Content { get; set; }
public virtual string Credit { get; set; }
public virtual string References { get; set; }
public virtual string Disclaimer { get; set; }
public virtual string HeaderImage { get; set; }
public virtual string Origin { get; set; }
public virtual string OriginId { get; set; }
public virtual List<Tag> Tags { get; set; }
public virtual List<Category> Categories { get; set; }
public virtual int Index { get; set; }
public virtual string ActivityLevel { get; set; }
public virtual string ActivityDetails { get; set; }
public virtual string Transcript { get; set; }
public virtual bool IsArchived { get; set; }
public virtual List<ActivityItem> Activities { get; set; }
public virtual List<SeriesItem> SeriesItems { get; set; }
public virtual string VideoId { get; set; }
public virtual string Focus { get; set; }
public virtual string Series { get; set; }
public virtual string SeriesUrl { get; set; }
public virtual string Category { get; set; }
public virtual List<string> Equipments { get; set; }
public virtual string DurationRange { get; set; }
public virtual string ProviderName { get; set; }
public virtual string UploadDate { get; set; }
public virtual DateTime? CompletionDate { get; set; }
public virtual string Level { get; set; }
public virtual string BodyFocus { get; set; }
public virtual AltMediaPaths AltMediaPaths { get; set; }
public virtual string Subtitles { get; set; }
public virtual bool DrmEncrypted { get; set; }
public virtual List<ScreenshotItem> Screenshots { get; set; }
}
public partial class ScreenshotItem
{
public virtual string LargeFilepathS3 { get; set; }
public virtual string ThumbFilepathS3 { get; set; }
public virtual decimal Order { get; set; }
public virtual string Description { get; set; }
}
public partial class SeriesItem
{
public virtual string Id { get; set; }
public virtual string Title { get; set; }
}
public partial class SubTopic
{
public virtual string Id { get; set; }
public virtual string Title { get; set; }
public virtual int ResourceCount { get; set; }
public virtual ICollection<ResourceItem> ResourceItems { get; set; }
}
public partial class Tag
{
public virtual string Id { get; set; }
public virtual string Title { get; set; }
}
}
namespace ASH.ResourceLibrary.Interfaces.ServiceModels
{
public partial class BasicResourceLibraryRequest
{
public virtual int ResourceLibraryMemberId { get; set; }
}
public partial class ResourceItemsRequest
: BasicResourceLibraryRequest
{
public ResourceItemsRequest()
{
ResourceItemIds = new List<string>{};
}
public virtual bool IncludeCompletionStatus { get; set; }
public virtual bool IncludeContent { get; set; }
public virtual bool IsFavorite { get; set; }
public virtual bool IsDigitalWorkoutFeatured { get; set; }
public virtual bool MultipleDWFeaturedResources { get; set; }
public virtual string WorkoutCategoryId { get; set; }
public virtual List<string> ResourceItemIds { 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")]
public virtual bool DigitalFitness { 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")]
public virtual bool HealthLibrary { get; set; }
public virtual string Limit { get; set; }
public virtual string Offset { get; set; }
}
public partial class ResourceItemsResponse
: IResourceItemsLiteResponse
{
public ResourceItemsResponse()
{
ResourceItems = new List<ResourceItem>{};
}
public virtual List<ResourceItem> ResourceItems { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
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: application/json
Content-Type: application/json
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: application/json 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"}]}