Trendsic Platform Service

<back to all web services

ReportDefinitionUpdateRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
PUT,OPTIONS/v1/report/definitions/{Uid}
import 'package:servicestack/servicestack.dart';

class SavedReportDefinition implements IConvertible
{
    int? ReportDefinitionID;
    String? ReportDefinitionUID;
    String? Name;
    String? Folder;
    String? Kind;
    String? ChartType;
    String? DefinitionJson;
    bool? IsShared;
    bool? IsSystem;
    String? OwnerUserId;
    bool? IsMine;
    DateTime? CreatedAt;
    DateTime? UpdatedAt;

    SavedReportDefinition({this.ReportDefinitionID,this.ReportDefinitionUID,this.Name,this.Folder,this.Kind,this.ChartType,this.DefinitionJson,this.IsShared,this.IsSystem,this.OwnerUserId,this.IsMine,this.CreatedAt,this.UpdatedAt});
    SavedReportDefinition.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ReportDefinitionID = json['ReportDefinitionID'];
        ReportDefinitionUID = json['ReportDefinitionUID'];
        Name = json['Name'];
        Folder = json['Folder'];
        Kind = json['Kind'];
        ChartType = json['ChartType'];
        DefinitionJson = json['DefinitionJson'];
        IsShared = json['IsShared'];
        IsSystem = json['IsSystem'];
        OwnerUserId = json['OwnerUserId'];
        IsMine = json['IsMine'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ReportDefinitionID': ReportDefinitionID,
        'ReportDefinitionUID': ReportDefinitionUID,
        'Name': Name,
        'Folder': Folder,
        'Kind': Kind,
        'ChartType': ChartType,
        'DefinitionJson': DefinitionJson,
        'IsShared': IsShared,
        'IsSystem': IsSystem,
        'OwnerUserId': OwnerUserId,
        'IsMine': IsMine,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!)
    };

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

class ReportDefinitionResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    SavedReportDefinition? Definition;

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

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

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

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

class ReportDefinitionUpdateRequest implements IConvertible
{
    String? Uid;
    String? Name;
    String? Folder;
    String? Kind;
    String? ChartType;
    String? DefinitionJson;
    bool? IsShared;

    ReportDefinitionUpdateRequest({this.Uid,this.Name,this.Folder,this.Kind,this.ChartType,this.DefinitionJson,this.IsShared});
    ReportDefinitionUpdateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Uid = json['Uid'];
        Name = json['Name'];
        Folder = json['Folder'];
        Kind = json['Kind'];
        ChartType = json['ChartType'];
        DefinitionJson = json['DefinitionJson'];
        IsShared = json['IsShared'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Uid': Uid,
        'Name': Name,
        'Folder': Folder,
        'Kind': Kind,
        'ChartType': ChartType,
        'DefinitionJson': DefinitionJson,
        'IsShared': IsShared
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'SavedReportDefinition': TypeInfo(TypeOf.Class, create:() => SavedReportDefinition()),
    'ReportDefinitionResponse': TypeInfo(TypeOf.Class, create:() => ReportDefinitionResponse()),
    'ReportDefinitionUpdateRequest': TypeInfo(TypeOf.Class, create:() => ReportDefinitionUpdateRequest()),
});

Dart ReportDefinitionUpdateRequest DTOs

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

HTTP + JSON

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

PUT /v1/report/definitions/{Uid} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"Uid":"00000000000000000000000000000000","Name":"String","Folder":"String","Kind":"String","ChartType":"String","DefinitionJson":"String","IsShared":false}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Definition":{"ReportDefinitionID":0,"ReportDefinitionUID":"00000000000000000000000000000000","Name":"String","Folder":"String","Kind":"String","ChartType":"String","DefinitionJson":"String","IsShared":false,"IsSystem":false,"OwnerUserId":"String","IsMine":false,"CreatedAt":"0001-01-01T00:00:00.0000000","UpdatedAt":"0001-01-01T00:00:00.0000000"}}