| POST | /api/attachments |
|---|
import Foundation
import ServiceStack
public class AddAttachments : Codable
{
/**
* including file content, file type, content type and connected object.
*/
// @ApiMember(DataType="string", Description=" including file content, file type, content type and connected object.", Name="Files", ParameterType="query")
public var files:[MediaModel]
/**
* Appliance from which primary image file is to be uploaded.
*/
// @ApiMember(DataType="Guid", Description="Appliance from which primary image file is to be uploaded.", IsRequired=true, Name="ApplianceId")
public var applianceId:String
/**
* Object for which primary image is to be uploaded.
*/
// @ApiMember(DataType="Guid", Description="Object for which primary image is to be uploaded.", IsRequired=true, Name="ConnectedObjectId")
public var connectedObjectId:String
/**
* Licensee Id of the Object owner for which primary image is to be uploaded.
*/
// @ApiMember(DataType="Guid", Description="Licensee Id of the Object owner for which primary image is to be uploaded.", IsRequired=true, Name="ConnectedObjectLicenseeId")
public var connectedObjectLicenseeId:String
required public init(){}
}
public class MediaModel : Codable
{
public var mediaFileId:String
public var mediaName:String
public var fileContent:String
public var fileContentType:String
public var filePath:String
public var originalFileName:String
public var imageWidth:Int
public var imageHeight:Int
public var fileSizeKB:Int
public var blobUriRaw:String
public var blobUriFull:String
public var blobUriThumbnail:String
public var watermarkUri:String
public var capturedDate:Date
public var capturedByContactId:String?
public var capturedByContactName:String
public var capturedByContactThumbnailUrl:String
public var notes:String
public var resourceActionName:String
public var locationVerified:String
public var trafficLightLocationVerified:String
public var audienceLevel:String
public var worksFor:String
required public init(){}
}
public class AddAttachmentsResponse : Codable
{
public var responseStatus:ResponseStatus
required public init(){}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/attachments HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Files":[{"MediaFileId":"00000000-0000-0000-0000-000000000000","MediaName":"String","FileContent":"String","FileContentType":"String","FilePath":"String","OriginalFileName":"String","ImageWidth":0,"ImageHeight":0,"FileSizeKB":0,"BlobUriRaw":"String","BlobUriFull":"String","BlobUriThumbnail":"String","WatermarkUri":"String","CapturedDate":"0001-01-01T00:00:00.0000000","CapturedByContactId":"00000000000000000000000000000000","CapturedByContactName":"String","CapturedByContactThumbnailUrl":"String","Notes":"String","ResourceActionName":"String","LocationVerified":"String","TrafficLightLocationVerified":"00000000-0000-0000-0000-000000000000","AudienceLevel":"String","WorksFor":"String"}],"ApplianceId":"00000000-0000-0000-0000-000000000000","ConnectedObjectId":"00000000-0000-0000-0000-000000000000","ConnectedObjectLicenseeId":"00000000-0000-0000-0000-000000000000"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}