Trendsic Platform Service

<back to all web services

SetWorkspaceModulesRequest

Requires Authentication
The following routes are available for this service:
PUT,OPTIONS/v1/workspace/modules
import 'package:servicestack/servicestack.dart';

class WorkspaceModuleFeature implements IConvertible
{
    String? Key;
    String? Name;
    bool? Enabled;

    WorkspaceModuleFeature({this.Key,this.Name,this.Enabled});
    WorkspaceModuleFeature.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'Key': Key,
        'Name': Name,
        'Enabled': Enabled
    };

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

class WorkspaceModule implements IConvertible
{
    String? Key;
    String? Name;
    String? Letter;
    String? Color;
    String? Question;
    String? Description;
    List<WorkspaceModuleFeature>? Features = [];

    WorkspaceModule({this.Key,this.Name,this.Letter,this.Color,this.Question,this.Description,this.Features});
    WorkspaceModule.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Key = json['Key'];
        Name = json['Name'];
        Letter = json['Letter'];
        Color = json['Color'];
        Question = json['Question'];
        Description = json['Description'];
        Features = JsonConverters.fromJson(json['Features'],'List<WorkspaceModuleFeature>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Key': Key,
        'Name': Name,
        'Letter': Letter,
        'Color': Color,
        'Question': Question,
        'Description': Description,
        'Features': JsonConverters.toJson(Features,'List<WorkspaceModuleFeature>',context!)
    };

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

class WorkspaceModulesResponse implements IConvertible
{
    List<WorkspaceModule>? Modules = [];
    ResponseStatus? ResponseStatus;

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

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

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

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

class WorkspaceFeatureSelection implements IConvertible
{
    String? Key;
    bool? Enabled;

    WorkspaceFeatureSelection({this.Key,this.Enabled});
    WorkspaceFeatureSelection.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class SetWorkspaceModulesRequest implements IConvertible
{
    List<WorkspaceFeatureSelection>? Features = [];

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

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

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

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'WorkspaceModuleFeature': TypeInfo(TypeOf.Class, create:() => WorkspaceModuleFeature()),
    'WorkspaceModule': TypeInfo(TypeOf.Class, create:() => WorkspaceModule()),
    'List<WorkspaceModuleFeature>': TypeInfo(TypeOf.Class, create:() => <WorkspaceModuleFeature>[]),
    'WorkspaceModulesResponse': TypeInfo(TypeOf.Class, create:() => WorkspaceModulesResponse()),
    'List<WorkspaceModule>': TypeInfo(TypeOf.Class, create:() => <WorkspaceModule>[]),
    'WorkspaceFeatureSelection': TypeInfo(TypeOf.Class, create:() => WorkspaceFeatureSelection()),
    'SetWorkspaceModulesRequest': TypeInfo(TypeOf.Class, create:() => SetWorkspaceModulesRequest()),
    'List<WorkspaceFeatureSelection>': TypeInfo(TypeOf.Class, create:() => <WorkspaceFeatureSelection>[]),
});

Dart SetWorkspaceModulesRequest 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.

PUT /v1/workspace/modules HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"Features":[{"Key":"String","Enabled":false}]}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Modules":[{"Key":"String","Name":"String","Letter":"String","Color":"String","Question":"String","Description":"String","Features":[{"Key":"String","Name":"String","Enabled":false}]}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}