Power.Dev Optimization Services

<back to all web services

WorkerRequest

The following routes are available for this service:
POST,GET/worker
import 'package:servicestack/servicestack.dart';

enum DataProvider
{
    Undefined,
    SPP,
    ERCOT,
    MISO,
    CAISO,
    PJM,
    ISONE,
    NYISO,
    NW,
    SW,
    SE,
    AESO,
    IESO,
    CENACE,
    NONISO,
    EIA,
    PNM,
    NREL,
    NOAA,
    ENTSOE,
    EPIAS,
    SELF,
}

enum PriceMarketType
{
    Undefined,
    Realtime,
    DayAhead,
    DART,
}

enum ShadowPriceNodeScoreType
{
    Undefined,
    DailyAvgStd,
    HourlyAvg,
}

class WorkerRequest implements IConvertible
{
    DataProvider? provider;
    String? key;
    DateTime? startDate;
    DateTime? endDate;
    List<int>? nodeIds;
    PriceMarketType? marketType;
    ShadowPriceNodeScoreType? scoreType;

    WorkerRequest({this.provider,this.key,this.startDate,this.endDate,this.nodeIds,this.marketType,this.scoreType});
    WorkerRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        provider = JsonConverters.fromJson(json['provider'],'DataProvider',context!);
        key = json['key'];
        startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!);
        endDate = JsonConverters.fromJson(json['endDate'],'DateTime',context!);
        nodeIds = JsonConverters.fromJson(json['nodeIds'],'List<int>',context!);
        marketType = JsonConverters.fromJson(json['marketType'],'PriceMarketType',context!);
        scoreType = JsonConverters.fromJson(json['scoreType'],'ShadowPriceNodeScoreType',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'provider': JsonConverters.toJson(provider,'DataProvider',context!),
        'key': key,
        'startDate': JsonConverters.toJson(startDate,'DateTime',context!),
        'endDate': JsonConverters.toJson(endDate,'DateTime',context!),
        'nodeIds': JsonConverters.toJson(nodeIds,'List<int>',context!),
        'marketType': JsonConverters.toJson(marketType,'PriceMarketType',context!),
        'scoreType': JsonConverters.toJson(scoreType,'ShadowPriceNodeScoreType',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'dev_optimization.power.dev', types: <String, TypeInfo> {
    'DataProvider': TypeInfo(TypeOf.Enum, enumValues:DataProvider.values),
    'PriceMarketType': TypeInfo(TypeOf.Enum, enumValues:PriceMarketType.values),
    'ShadowPriceNodeScoreType': TypeInfo(TypeOf.Enum, enumValues:ShadowPriceNodeScoreType.values),
    'WorkerRequest': TypeInfo(TypeOf.Class, create:() => WorkerRequest()),
});

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

POST /worker HTTP/1.1 
Host: dev-optimization.power.dev 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"provider":"Undefined","key":"String","nodeIds":[0],"marketType":"Undefined","scoreType":"Undefined"}