GET | /regions |
---|
import 'package:servicestack/servicestack.dart';
class RegionViewModel implements IConvertible
{
String? regionId;
String? regionDescription;
RegionViewModel({this.regionId,this.regionDescription});
RegionViewModel.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
regionId = json['regionId'];
regionDescription = json['regionDescription'];
return this;
}
Map<String, dynamic> toJson() => {
'regionId': regionId,
'regionDescription': regionDescription
};
getTypeName() => "RegionViewModel";
TypeContext? context = _ctx;
}
class RegionGetListResponse extends GetListResponse<RegionViewModel> implements IConvertible
{
RegionGetListResponse();
RegionGetListResponse.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "RegionGetListResponse";
TypeContext? context = _ctx;
}
class RegionGetList implements IGet, IConvertible
{
RegionGetList();
RegionGetList.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "RegionGetList";
TypeContext? context = _ctx;
}
class GetListResponse<TEntity> implements IConvertible
{
List<TEntity>? items;
ResponseStatus? responseStatus;
GetListResponse({this.items,this.responseStatus});
GetListResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
items = JsonConverters.fromJson(json['items'],'List<${runtimeGenericTypeDefs(this,[0]).join(",")}>',context!);
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'items': JsonConverters.toJson(items,'List<TEntity>',context!),
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
};
getTypeName() => "GetListResponse<$TEntity>";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'extensions.avon.ca', types: <String, TypeInfo> {
'RegionViewModel': TypeInfo(TypeOf.Class, create:() => RegionViewModel()),
'RegionGetListResponse': TypeInfo(TypeOf.Class, create:() => RegionGetListResponse()),
'RegionGetList': TypeInfo(TypeOf.Class, create:() => RegionGetList()),
'GetListResponse<TEntity>': TypeInfo(TypeOf.GenericDef,create:() => GetListResponse()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /regions HTTP/1.1 Host: extensions.avon.ca Accept: text/csv
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"items":[{"regionId":"String","regionDescription":"String"}],"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}