Requires any of the roles: | Admin, TeamAdmin | Requires the permission: | ReadData |
GET POST | /system/apiVersionHistory |
---|
import 'package:servicestack/servicestack.dart';
class ApiVersionInfoRequest implements IConvertible
{
int? maxVersions;
DateTime? fromDate;
ApiVersionInfoRequest({this.maxVersions,this.fromDate});
ApiVersionInfoRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
maxVersions = json['maxVersions'];
fromDate = JsonConverters.fromJson(json['fromDate'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'maxVersions': maxVersions,
'fromDate': JsonConverters.toJson(fromDate,'DateTime',context!)
};
getTypeName() => "ApiVersionInfoRequest";
TypeContext? context = _ctx;
}
class ApiVersionInfoResult implements IConvertible
{
List<ApiVersionInfo>? history;
ApiVersionInfoResult({this.history});
ApiVersionInfoResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
history = JsonConverters.fromJson(json['history'],'List<ApiVersionInfo>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'history': JsonConverters.toJson(history,'List<ApiVersionInfo>',context!)
};
getTypeName() => "ApiVersionInfoResult";
TypeContext? context = _ctx;
}
class ApiVersionInfo implements IConvertible
{
String? version;
DateTime? releaseTime;
String? versionDescription;
String? versionDetails;
List<ApiCodeChangesInfo>? codeChanges;
ApiVersionInfo({this.version,this.releaseTime,this.versionDescription,this.versionDetails,this.codeChanges});
ApiVersionInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
version = json['version'];
releaseTime = JsonConverters.fromJson(json['releaseTime'],'DateTime',context!);
versionDescription = json['versionDescription'];
versionDetails = json['versionDetails'];
codeChanges = JsonConverters.fromJson(json['codeChanges'],'List<ApiCodeChangesInfo>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'version': version,
'releaseTime': JsonConverters.toJson(releaseTime,'DateTime',context!),
'versionDescription': versionDescription,
'versionDetails': versionDetails,
'codeChanges': JsonConverters.toJson(codeChanges,'List<ApiCodeChangesInfo>',context!)
};
getTypeName() => "ApiVersionInfo";
TypeContext? context = _ctx;
}
class ApiCodeChangesInfo implements IConvertible
{
String? codeChangesDescription;
String? codeChangesDetails;
DateTime? changesRegistered;
ApiCodeChangesInfo({this.codeChangesDescription,this.codeChangesDetails,this.changesRegistered});
ApiCodeChangesInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
codeChangesDescription = json['codeChangesDescription'];
codeChangesDetails = json['codeChangesDetails'];
changesRegistered = JsonConverters.fromJson(json['changesRegistered'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'codeChangesDescription': codeChangesDescription,
'codeChangesDetails': codeChangesDetails,
'changesRegistered': JsonConverters.toJson(changesRegistered,'DateTime',context!)
};
getTypeName() => "ApiCodeChangesInfo";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'stubbur_autoupdates_live.smartnewapis.com', types: <String, TypeInfo> {
'ApiVersionInfoRequest': TypeInfo(TypeOf.Class, create:() => ApiVersionInfoRequest()),
'ApiVersionInfoResult': TypeInfo(TypeOf.Class, create:() => ApiVersionInfoResult()),
'List<ApiVersionInfo>': TypeInfo(TypeOf.Class, create:() => <ApiVersionInfo>[]),
'ApiVersionInfo': TypeInfo(TypeOf.Class, create:() => ApiVersionInfo()),
'List<ApiCodeChangesInfo>': TypeInfo(TypeOf.Class, create:() => <ApiCodeChangesInfo>[]),
'ApiCodeChangesInfo': TypeInfo(TypeOf.Class, create:() => ApiCodeChangesInfo()),
});
Dart ApiVersionInfoRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /system/apiVersionHistory HTTP/1.1
Host: stubbur-autoupdates-live.smartnewapis.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
maxVersions: 0,
fromDate: 0001-01-01
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { history: [ { version: String, releaseTime: 0001-01-01, versionDescription: String, versionDetails: String, codeChanges: [ { codeChangesDescription: String, codeChangesDetails: String, changesRegistered: 0001-01-01 } ] } ] }