Trendsic Platform Service

<back to all web services

LobbyContentMediaRequest

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/lobby/content/{LobbyContentId}/media
import 'package:servicestack/servicestack.dart';

class LobbyContentItem implements IConvertible
{
    int? LobbyContentId;
    String? Title;
    String? Kind;
    bool? HasMedia;
    String? MediaUrl;
    String? Headline;
    String? Body;
    String? Accent;
    String? Url;
    int? DwellSec;
    DateTime? StartsAt;
    DateTime? EndsAt;
    int? DaysMask;
    int? HourFrom;
    int? HourTo;
    bool? IsThirdParty;
    String? Status;
    bool? AllBranches;
    List<String>? BranchIds = [];
    int? Plays7d;
    bool? OnNow;
    int? SortOrder;
    String? CreatedBy;
    DateTime? UpdatedAt;

    LobbyContentItem({this.LobbyContentId,this.Title,this.Kind,this.HasMedia,this.MediaUrl,this.Headline,this.Body,this.Accent,this.Url,this.DwellSec,this.StartsAt,this.EndsAt,this.DaysMask,this.HourFrom,this.HourTo,this.IsThirdParty,this.Status,this.AllBranches,this.BranchIds,this.Plays7d,this.OnNow,this.SortOrder,this.CreatedBy,this.UpdatedAt});
    LobbyContentItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        LobbyContentId = json['LobbyContentId'];
        Title = json['Title'];
        Kind = json['Kind'];
        HasMedia = json['HasMedia'];
        MediaUrl = json['MediaUrl'];
        Headline = json['Headline'];
        Body = json['Body'];
        Accent = json['Accent'];
        Url = json['Url'];
        DwellSec = json['DwellSec'];
        StartsAt = JsonConverters.fromJson(json['StartsAt'],'DateTime',context!);
        EndsAt = JsonConverters.fromJson(json['EndsAt'],'DateTime',context!);
        DaysMask = json['DaysMask'];
        HourFrom = json['HourFrom'];
        HourTo = json['HourTo'];
        IsThirdParty = json['IsThirdParty'];
        Status = json['Status'];
        AllBranches = json['AllBranches'];
        BranchIds = JsonConverters.fromJson(json['BranchIds'],'List<String>',context!);
        Plays7d = json['Plays7d'];
        OnNow = json['OnNow'];
        SortOrder = json['SortOrder'];
        CreatedBy = json['CreatedBy'];
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'LobbyContentId': LobbyContentId,
        'Title': Title,
        'Kind': Kind,
        'HasMedia': HasMedia,
        'MediaUrl': MediaUrl,
        'Headline': Headline,
        'Body': Body,
        'Accent': Accent,
        'Url': Url,
        'DwellSec': DwellSec,
        'StartsAt': JsonConverters.toJson(StartsAt,'DateTime',context!),
        'EndsAt': JsonConverters.toJson(EndsAt,'DateTime',context!),
        'DaysMask': DaysMask,
        'HourFrom': HourFrom,
        'HourTo': HourTo,
        'IsThirdParty': IsThirdParty,
        'Status': Status,
        'AllBranches': AllBranches,
        'BranchIds': JsonConverters.toJson(BranchIds,'List<String>',context!),
        'Plays7d': Plays7d,
        'OnNow': OnNow,
        'SortOrder': SortOrder,
        'CreatedBy': CreatedBy,
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!)
    };

    getTypeName() => "LobbyContentItem";
    TypeContext? context = _ctx;
}

class LobbyContentResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<LobbyContentItem>? Items = [];

    LobbyContentResponse({this.ResponseStatus,this.Items});
    LobbyContentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Items = JsonConverters.fromJson(json['Items'],'List<LobbyContentItem>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Items': JsonConverters.toJson(Items,'List<LobbyContentItem>',context!)
    };

    getTypeName() => "LobbyContentResponse";
    TypeContext? context = _ctx;
}

class LobbyContentMediaRequest implements IConvertible
{
    int? LobbyContentId;

    LobbyContentMediaRequest({this.LobbyContentId});
    LobbyContentMediaRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        LobbyContentId = json['LobbyContentId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'LobbyContentId': LobbyContentId
    };

    getTypeName() => "LobbyContentMediaRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'LobbyContentItem': TypeInfo(TypeOf.Class, create:() => LobbyContentItem()),
    'LobbyContentResponse': TypeInfo(TypeOf.Class, create:() => LobbyContentResponse()),
    'List<LobbyContentItem>': TypeInfo(TypeOf.Class, create:() => <LobbyContentItem>[]),
    'LobbyContentMediaRequest': TypeInfo(TypeOf.Class, create:() => LobbyContentMediaRequest()),
});

Dart LobbyContentMediaRequest 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 /v1/lobby/content/{LobbyContentId}/media HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"LobbyContentId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Items":[{"LobbyContentId":0,"Title":"String","Kind":"String","HasMedia":false,"MediaUrl":"String","Headline":"String","Body":"String","Accent":"String","Url":"String","DwellSec":0,"StartsAt":"0001-01-01T00:00:00.0000000","EndsAt":"0001-01-01T00:00:00.0000000","DaysMask":0,"HourFrom":0,"HourTo":0,"IsThirdParty":false,"Status":"String","AllBranches":false,"BranchIds":["00000000000000000000000000000000"],"Plays7d":0,"OnNow":false,"SortOrder":0,"CreatedBy":"String","UpdatedAt":"0001-01-01T00:00:00.0000000"}]}