digitaluapi

<back to all web services

GetTableRecordsRequest

Requires Authentication
Requires any of the roles:Client, Admin, Partner
The following routes are available for this service:
GET, POST/scadmeta/tables/{TablesId}/dataGets table records
import 'package:servicestack/servicestack.dart';

class Filter implements IConvertible
{
    String? Column;
    String? Operator;
    dynamic? Value;
    String? FromVariable;
    dynamic? ToValue;
    String? ToVariable;

    Filter({this.Column,this.Operator,this.Value,this.FromVariable,this.ToValue,this.ToVariable});
    Filter.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Column = json['Column'];
        Operator = json['Operator'];
        Value = JsonConverters.fromJson(json['Value'],'dynamic',context!);
        FromVariable = json['FromVariable'];
        ToValue = JsonConverters.fromJson(json['ToValue'],'dynamic',context!);
        ToVariable = json['ToVariable'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Column': Column,
        'Operator': Operator,
        'Value': JsonConverters.toJson(Value,'dynamic',context!),
        'FromVariable': FromVariable,
        'ToValue': JsonConverters.toJson(ToValue,'dynamic',context!),
        'ToVariable': ToVariable
    };

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

class Paging implements IConvertible
{
    int? PageNumber;
    int? PageSize;

    Paging({this.PageNumber,this.PageSize});
    Paging.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class GetTableRecordsRequest implements IConvertible
{
    /**
    * Table id
    */
    // @ApiMember(Description="Table id", IsRequired=true)
    int? TablesId;

    /**
    * Query id
    */
    // @ApiMember(Description="Query id")
    int? QueryId;

    /**
    * Parameter list
    */
    // @ApiMember(Description="Parameter list")
    Map<String,dynamic?>? ParameterList;

    /**
    * Filter list
    */
    // @ApiMember(Description="Filter list")
    Map<String,dynamic?>? FilterList;

    List<Filter>? Filter;
    /**
    * Number of items to be returned per page
    */
    // @ApiMember(Description="Number of items to be returned per page")
    Paging? Paging;

    /**
    * Drill down filter list
    */
    // @ApiMember(Description="Drill down filter list")
    Map<String,dynamic?>? DrillDownFilterList;

    /**
    * Global parameter list
    */
    // @ApiMember(Description="Global parameter list")
    Map<String,dynamic?>? GlobalParamList;

    /**
    * View id
    */
    // @ApiMember(Description="View id")
    int? ViewId;

    /**
    * Whether or not to refresh the cache
    */
    // @ApiMember(Description="Whether or not to refresh the cache")
    bool? RefreshCache;

    GetTableRecordsRequest({this.TablesId,this.QueryId,this.ParameterList,this.FilterList,this.Filter,this.Paging,this.DrillDownFilterList,this.GlobalParamList,this.ViewId,this.RefreshCache});
    GetTableRecordsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        TablesId = json['TablesId'];
        QueryId = json['QueryId'];
        ParameterList = JsonConverters.fromJson(json['ParameterList'],'Map<String,dynamic?>',context!);
        FilterList = JsonConverters.fromJson(json['FilterList'],'Map<String,dynamic?>',context!);
        Filter = JsonConverters.fromJson(json['Filter'],'List<Filter>',context!);
        Paging = JsonConverters.fromJson(json['Paging'],'Paging',context!);
        DrillDownFilterList = JsonConverters.fromJson(json['DrillDownFilterList'],'Map<String,dynamic?>',context!);
        GlobalParamList = JsonConverters.fromJson(json['GlobalParamList'],'Map<String,dynamic?>',context!);
        ViewId = json['ViewId'];
        RefreshCache = json['RefreshCache'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'TablesId': TablesId,
        'QueryId': QueryId,
        'ParameterList': JsonConverters.toJson(ParameterList,'Map<String,dynamic?>',context!),
        'FilterList': JsonConverters.toJson(FilterList,'Map<String,dynamic?>',context!),
        'Filter': JsonConverters.toJson(Filter,'List<Filter>',context!),
        'Paging': JsonConverters.toJson(Paging,'Paging',context!),
        'DrillDownFilterList': JsonConverters.toJson(DrillDownFilterList,'Map<String,dynamic?>',context!),
        'GlobalParamList': JsonConverters.toJson(GlobalParamList,'Map<String,dynamic?>',context!),
        'ViewId': ViewId,
        'RefreshCache': RefreshCache
    };

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

TypeContext _ctx = TypeContext(library: 'duengageapi.uat.scadsoftware.com', types: <String, TypeInfo> {
    'Filter': TypeInfo(TypeOf.Class, create:() => Filter()),
    'Paging': TypeInfo(TypeOf.Class, create:() => Paging()),
    'GetTableRecordsRequest': TypeInfo(TypeOf.Class, create:() => GetTableRecordsRequest()),
    'Map<String,dynamic?>': TypeInfo(TypeOf.Class, create:() => Map<String,dynamic?>()),
    'List<Filter>': TypeInfo(TypeOf.Class, create:() => <Filter>[]),
});

Dart GetTableRecordsRequest 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 /scadmeta/tables/{TablesId}/data HTTP/1.1 
Host: duengageapi.uat.scadsoftware.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"TablesId":0,"QueryId":0,"ParameterList":{"String":{}},"FilterList":{"String":{}},"Filter":[{"Column":"String","Operator":"String","Value":{},"FromVariable":"String","ToValue":{},"ToVariable":"String"}],"Paging":{"PageNumber":0,"PageSize":0},"DrillDownFilterList":{"String":{}},"GlobalParamList":{"String":{}},"ViewId":0,"RefreshCache":false}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

[{}]