GET | /topics | Use to get Resource Library Topics |
---|
export class BasicResourceLibraryRequest
{
public resourceLibraryMemberId?: number;
public constructor(init?: Partial<BasicResourceLibraryRequest>) { (Object as any).assign(this, init); }
}
export class Tag
{
public id?: string;
public title?: string;
public constructor(init?: Partial<Tag>) { (Object as any).assign(this, init); }
}
export class ScreenshotItem
{
public largeFilepathS3?: string;
public thumbFilepathS3?: string;
public order?: number;
public description?: string;
public constructor(init?: Partial<ScreenshotItem>) { (Object as any).assign(this, init); }
}
export class ResourceCard
{
public id?: string;
public title?: string;
public description?: string;
public descriptionSummary?: string;
public type?: string;
public content?: string;
public isComplete?: boolean;
public isFavorite?: boolean;
public isImplicitlyComplete?: boolean;
public mediaPath?: string;
public isConfirmable?: boolean;
public isWcagCompliant?: boolean;
public duration?: string;
public preview?: string;
public calories?: number;
public instructor?: string;
public thumbnail?: string;
public difficulty?: string;
public tags?: Tag[];
public subtitles?: string;
public screenshots?: ScreenshotItem[];
public drmEncrypted?: boolean;
public constructor(init?: Partial<ResourceCard>) { (Object as any).assign(this, init); }
}
export class Category
{
public id?: string;
public subtopicItems?: SubTopic[];
public resourceItems?: ResourceItem[];
public title?: string;
public isVisible?: string;
public resourceCount?: number;
public constructor(init?: Partial<Category>) { (Object as any).assign(this, init); }
}
export class ActivityItem
{
public name?: string;
public id?: string;
public constructor(init?: Partial<ActivityItem>) { (Object as any).assign(this, init); }
}
export class SeriesItem
{
public id?: string;
public title?: string;
public constructor(init?: Partial<SeriesItem>) { (Object as any).assign(this, init); }
}
export class AltMediaPaths
{
public webm?: string;
public ogv?: string;
public mp4Low?: string;
public mp4High?: string;
public constructor(init?: Partial<AltMediaPaths>) { (Object as any).assign(this, init); }
}
export class ResourceItem extends ResourceCard
{
public content?: string;
public credit?: string;
public references?: string;
public disclaimer?: string;
public headerImage?: string;
public origin?: string;
public originId?: string;
public tags?: Tag[];
public categories?: Category[];
public index?: number;
public activityLevel?: string;
public activityDetails?: string;
public transcript?: string;
public isArchived?: boolean;
public activities?: ActivityItem[];
public seriesItems?: SeriesItem[];
public videoId?: string;
public focus?: string;
public series?: string;
public seriesUrl?: string;
public category?: string;
public equipments?: string[];
public durationRange?: string;
public providerName?: string;
public uploadDate?: string;
public completionDate?: string;
public level?: string;
public bodyFocus?: string;
public altMediaPaths?: AltMediaPaths;
public subtitles?: string;
public drmEncrypted?: boolean;
public screenshots?: ScreenshotItem[];
public constructor(init?: Partial<ResourceItem>) { super(init); (Object as any).assign(this, init); }
}
export class SubTopic
{
public id?: string;
public title?: string;
public resourceCount?: number;
public resourceItems?: ResourceItem[];
public constructor(init?: Partial<SubTopic>) { (Object as any).assign(this, init); }
}
export class Topic
{
public id?: string;
public subtopicItems?: SubTopic[];
public resourceItems?: ResourceItem[];
public title?: string;
public isVisible?: string;
public resourceCount?: number;
public constructor(init?: Partial<Topic>) { (Object as any).assign(this, init); }
}
export class TopicsResponse
{
public topics?: Topic[];
public constructor(init?: Partial<TopicsResponse>) { (Object as any).assign(this, init); }
}
export class TopicsRequest extends BasicResourceLibraryRequest
{
public includeCompletionStatus?: boolean;
public isMobile?: boolean;
public includeSubtopicItems?: boolean;
public includeResourceItems?: boolean;
/**
* Set it to true if the topics being requested belogs to digital fitness. Don't set it if unsure.
*/
// @ApiMember(Description="Set it to true if the topics being requested belogs to digital fitness. Don't set it if unsure.")
public digitalFitness?: boolean;
public constructor(init?: Partial<TopicsRequest>) { super(init); (Object as any).assign(this, init); }
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /topics HTTP/1.1 Host: resourcelibrary.api.ashcompanies.com Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <TopicsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ASH.ResourceLibrary.Interfaces.ServiceModels"> <Topics xmlns:d2p1="http://schemas.datacontract.org/2004/07/ASH.ResourceLibrary.Interfaces.Models" i:nil="true" /> </TopicsResponse>