| PUT | /api/dynamiccontent/{ObjectDynamicContentId} | ||
|---|---|---|---|
| POST | /api/dynamiccontent/ |
import Foundation
import ServiceStack
/**
* Add or update dynamic content.
*/
// @Api(Description="Add or update dynamic content.")
public class SaveDynamicContent : Codable
{
/**
* Dynamic Content details.
*/
// @ApiMember(Description="Dynamic Content details.")
public var dynamicContent:ObjectDynamicContentModel
/**
* Id of the Dynamic Content record.
*/
// @ApiMember(Description="Id of the Dynamic Content record.", ParameterType="path")
public var objectDynamicContentId:String
required public init(){}
}
public class ObjectDynamicContentModel : Codable
{
/**
* The dynamic content Id (PKID)
*/
// @ApiMember(Description="The dynamic content Id (PKID)", ParameterType="query")
public var objectDynamicContentId:String
/**
* The object Id this dynamic content record is for.
*/
// @ApiMember(Description="The object Id this dynamic content record is for.", ParameterType="query")
public var objectId:String
/**
* 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")
public var dynamicContentDefinitionId:String
/**
* Name of the dynamic content definition
*/
// @ApiMember(Description="Name of the dynamic content definition", ParameterType="query")
public var definitionName:String
/**
* The format Id the dynamic content is saved as
*/
// @ApiMember(Description="The format Id the dynamic content is saved as", ParameterType="query")
public var contentFormatId:String
/**
* Name of the content format
*/
// @ApiMember(Description="Name of the content format", ParameterType="query")
public var contentFormat:String
/**
* The content string regardless of the format.
*/
// @ApiMember(Description="The content string regardless of the format.", ParameterType="query")
public var content:String
/**
* XML content if the format is XML
*/
// @ApiMember(Description="XML content if the format is XML", ParameterType="query")
public var xmlContent:String
/**
* The contact id of the licensee who owns this record
*/
// @ApiMember(Description="The contact id of the licensee who owns this record", ParameterType="query")
public var ownerContactId:String
/**
* Record Status of the dynamic content
*/
// @ApiMember(Description="Record Status of the dynamic content", ParameterType="query")
public var recordStatus:String
required public init(){}
}
// @ApiResponse(Description="Dynamic Content Value")
public class GetDynamicContentResponse : Codable
{
/**
* Dynamic Content Value.
*/
// @ApiMember(Description="Dynamic Content Value.")
public var dynamicContent:ObjectDynamicContentModel
public var responseStatus:ResponseStatus
required public init(){}
}
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 /api/dynamiccontent/ HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
DynamicContent:
{
DefinitionName: String,
ContentFormat: String,
Content: String,
XmlContent: String,
RecordStatus: String
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
DynamicContent:
{
DefinitionName: String,
ContentFormat: String,
Content: String,
XmlContent: String,
RecordStatus: String
},
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}