| PUT | /api/dynamiccontent/{ObjectDynamicContentId} | ||
|---|---|---|---|
| POST | /api/dynamiccontent/ |
import 'package:servicestack/servicestack.dart';
class ObjectDynamicContentModel implements IConvertible
{
/**
* The dynamic content Id (PKID)
*/
// @ApiMember(Description="The dynamic content Id (PKID)", ParameterType="query")
String? ObjectDynamicContentId;
/**
* The object Id this dynamic content record is for.
*/
// @ApiMember(Description="The object Id this dynamic content record is for.", ParameterType="query")
String? ObjectId;
/**
* The dynamic content definition id that indicates what this dynamic content contains
*/
// @ApiMember(Description="The dynamic content definition id that indicates what this dynamic content contains", ParameterType="query")
String? DynamicContentDefinitionId;
/**
* Name of the dynamic content definition
*/
// @ApiMember(Description="Name of the dynamic content definition", ParameterType="query")
String? DefinitionName;
/**
* The format Id the dynamic content is saved as
*/
// @ApiMember(Description="The format Id the dynamic content is saved as", ParameterType="query")
String? ContentFormatId;
/**
* Name of the content format
*/
// @ApiMember(Description="Name of the content format", ParameterType="query")
String? ContentFormat;
/**
* The content string regardless of the format.
*/
// @ApiMember(Description="The content string regardless of the format.", ParameterType="query")
String? Content;
/**
* XML content if the format is XML
*/
// @ApiMember(Description="XML content if the format is XML", ParameterType="query")
String? XmlContent;
/**
* The contact id of the licensee who owns this record
*/
// @ApiMember(Description="The contact id of the licensee who owns this record", ParameterType="query")
String? OwnerContactId;
/**
* Record Status of the dynamic content
*/
// @ApiMember(Description="Record Status of the dynamic content", ParameterType="query")
String? RecordStatus;
ObjectDynamicContentModel({this.ObjectDynamicContentId,this.ObjectId,this.DynamicContentDefinitionId,this.DefinitionName,this.ContentFormatId,this.ContentFormat,this.Content,this.XmlContent,this.OwnerContactId,this.RecordStatus});
ObjectDynamicContentModel.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ObjectDynamicContentId = json['ObjectDynamicContentId'];
ObjectId = json['ObjectId'];
DynamicContentDefinitionId = json['DynamicContentDefinitionId'];
DefinitionName = json['DefinitionName'];
ContentFormatId = json['ContentFormatId'];
ContentFormat = json['ContentFormat'];
Content = json['Content'];
XmlContent = json['XmlContent'];
OwnerContactId = json['OwnerContactId'];
RecordStatus = json['RecordStatus'];
return this;
}
Map<String, dynamic> toJson() => {
'ObjectDynamicContentId': ObjectDynamicContentId,
'ObjectId': ObjectId,
'DynamicContentDefinitionId': DynamicContentDefinitionId,
'DefinitionName': DefinitionName,
'ContentFormatId': ContentFormatId,
'ContentFormat': ContentFormat,
'Content': Content,
'XmlContent': XmlContent,
'OwnerContactId': OwnerContactId,
'RecordStatus': RecordStatus
};
getTypeName() => "ObjectDynamicContentModel";
TypeContext? context = _ctx;
}
// @ApiResponse(Description="Dynamic Content Value")
class GetDynamicContentResponse implements IConvertible
{
/**
* Dynamic Content Value.
*/
// @ApiMember(Description="Dynamic Content Value.")
ObjectDynamicContentModel? DynamicContent;
ResponseStatus? ResponseStatus;
GetDynamicContentResponse({this.DynamicContent,this.ResponseStatus});
GetDynamicContentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DynamicContent = JsonConverters.fromJson(json['DynamicContent'],'ObjectDynamicContentModel',context!);
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'DynamicContent': JsonConverters.toJson(DynamicContent,'ObjectDynamicContentModel',context!),
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "GetDynamicContentResponse";
TypeContext? context = _ctx;
}
/**
* Add or update dynamic content.
*/
// @Api(Description="Add or update dynamic content.")
class SaveDynamicContent implements IConvertible
{
/**
* Dynamic Content details.
*/
// @ApiMember(Description="Dynamic Content details.")
ObjectDynamicContentModel? DynamicContent;
/**
* Id of the Dynamic Content record.
*/
// @ApiMember(Description="Id of the Dynamic Content record.", ParameterType="path")
String? ObjectDynamicContentId;
SaveDynamicContent({this.DynamicContent,this.ObjectDynamicContentId});
SaveDynamicContent.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DynamicContent = JsonConverters.fromJson(json['DynamicContent'],'ObjectDynamicContentModel',context!);
ObjectDynamicContentId = json['ObjectDynamicContentId'];
return this;
}
Map<String, dynamic> toJson() => {
'DynamicContent': JsonConverters.toJson(DynamicContent,'ObjectDynamicContentModel',context!),
'ObjectDynamicContentId': ObjectDynamicContentId
};
getTypeName() => "SaveDynamicContent";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
'ObjectDynamicContentModel': TypeInfo(TypeOf.Class, create:() => ObjectDynamicContentModel()),
'GetDynamicContentResponse': TypeInfo(TypeOf.Class, create:() => GetDynamicContentResponse()),
'SaveDynamicContent': TypeInfo(TypeOf.Class, create:() => SaveDynamicContent()),
});
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.
POST /api/dynamiccontent/ HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"DynamicContent":{"ObjectDynamicContentId":"00000000-0000-0000-0000-000000000000","ObjectId":"00000000-0000-0000-0000-000000000000","DynamicContentDefinitionId":"00000000-0000-0000-0000-000000000000","DefinitionName":"String","ContentFormatId":"00000000-0000-0000-0000-000000000000","ContentFormat":"String","Content":"String","XmlContent":"String","OwnerContactId":"00000000-0000-0000-0000-000000000000","RecordStatus":"String"},"ObjectDynamicContentId":"00000000-0000-0000-0000-000000000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"DynamicContent":{"ObjectDynamicContentId":"00000000-0000-0000-0000-000000000000","ObjectId":"00000000-0000-0000-0000-000000000000","DynamicContentDefinitionId":"00000000-0000-0000-0000-000000000000","DefinitionName":"String","ContentFormatId":"00000000-0000-0000-0000-000000000000","ContentFormat":"String","Content":"String","XmlContent":"String","OwnerContactId":"00000000-0000-0000-0000-000000000000","RecordStatus":"String"},"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}