| POST | /api/logs |
|---|
import 'package:servicestack/servicestack.dart';
// @ApiResponse(Description="Returns the log reference id and response status")
class AddLogResponse implements IConvertible
{
String? LogId;
ResponseStatus? ResponseStatus;
AddLogResponse({this.LogId,this.ResponseStatus});
AddLogResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
LogId = json['LogId'];
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'LogId': LogId,
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "AddLogResponse";
TypeContext? context = _ctx;
}
/**
* Add a log entry to the logging database
*/
// @Api(Description="Add a log entry to the logging database")
class AddLog implements IConvertible
{
/**
* Log Category - Information = 1, Warning = 2, AppError = 3
*/
// @ApiMember(Description="Log Category - Information = 1, Warning = 2, AppError = 3")
int? Category;
String? LogEntry;
String? Browser;
String? PerspectiveSessionId;
AddLog({this.Category,this.LogEntry,this.Browser,this.PerspectiveSessionId});
AddLog.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Category = json['Category'];
LogEntry = json['LogEntry'];
Browser = json['Browser'];
PerspectiveSessionId = json['PerspectiveSessionId'];
return this;
}
Map<String, dynamic> toJson() => {
'Category': Category,
'LogEntry': LogEntry,
'Browser': Browser,
'PerspectiveSessionId': PerspectiveSessionId
};
getTypeName() => "AddLog";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
'AddLogResponse': TypeInfo(TypeOf.Class, create:() => AddLogResponse()),
'AddLog': TypeInfo(TypeOf.Class, create:() => AddLog()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/logs HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<AddLog xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
<Browser>String</Browser>
<Category>0</Category>
<LogEntry>String</LogEntry>
<PerspectiveSessionId>00000000-0000-0000-0000-000000000000</PerspectiveSessionId>
</AddLog>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<AddLogResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
<LogId>00000000-0000-0000-0000-000000000000</LogId>
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
</AddLogResponse>