| POST | /api/attachments |
|---|
"use strict";
export class AddAttachmentsResponse {
/** @param {{ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseStatus} */
ResponseStatus;
}
export class MediaModel {
/** @param {{MediaFileId?:string,MediaName?:string,FileContent?:string,FileContentType?:string,FilePath?:string,OriginalFileName?:string,ImageWidth?:number,ImageHeight?:number,FileSizeKB?:number,BlobUriRaw?:string,BlobUriFull?:string,BlobUriThumbnail?:string,WatermarkUri?:string,CapturedDate?:string,CapturedByContactId?:string,CapturedByContactName?:string,CapturedByContactThumbnailUrl?:string,Notes?:string,ResourceActionName?:string,LocationVerified?:string,TrafficLightLocationVerified?:string,AudienceLevel?:string,WorksFor?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
MediaFileId;
/** @type {string} */
MediaName;
/** @type {string} */
FileContent;
/** @type {string} */
FileContentType;
/** @type {string} */
FilePath;
/** @type {string} */
OriginalFileName;
/** @type {number} */
ImageWidth;
/** @type {number} */
ImageHeight;
/** @type {number} */
FileSizeKB;
/** @type {string} */
BlobUriRaw;
/** @type {string} */
BlobUriFull;
/** @type {string} */
BlobUriThumbnail;
/** @type {string} */
WatermarkUri;
/** @type {string} */
CapturedDate;
/** @type {?string} */
CapturedByContactId;
/** @type {string} */
CapturedByContactName;
/** @type {string} */
CapturedByContactThumbnailUrl;
/** @type {string} */
Notes;
/** @type {string} */
ResourceActionName;
/** @type {string} */
LocationVerified;
/** @type {string} */
TrafficLightLocationVerified;
/** @type {string} */
AudienceLevel;
/** @type {string} */
WorksFor;
}
export class AddAttachments {
/** @param {{Files?:MediaModel[],ApplianceId?:string,ConnectedObjectId?:string,ConnectedObjectLicenseeId?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {MediaModel[]}
* @description including file content, file type, content type and connected object. */
Files;
/**
* @type {string}
* @description Appliance from which primary image file is to be uploaded. */
ApplianceId;
/**
* @type {string}
* @description Object for which primary image is to be uploaded. */
ConnectedObjectId;
/**
* @type {string}
* @description Licensee Id of the Object owner for which primary image is to be uploaded. */
ConnectedObjectLicenseeId;
}
JavaScript AddAttachments 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 /api/attachments HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Files:
[
{
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-01,
CapturedByContactId: 00000000000000000000000000000000,
CapturedByContactName: String,
CapturedByContactThumbnailUrl: String,
Notes: String,
ResourceActionName: String,
LocationVerified: String,
AudienceLevel: String,
WorksFor: String
}
]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}