Platform API

<back to all web services

ManagePrimaryImage

Requires Authentication
The following routes are available for this service:
All Verbs/api/primaryimage
All Verbs/api/primaryimage/userprofile

export class SaveMediaResponse
{
    /** @description Media File Guid */
    // @ApiMember(DataType="Guid", Description="Media File Guid", Name="ErosMediaFileId", ParameterType="query")
    public ErosMediaFileId: string;

    /** @description Media File Name */
    // @ApiMember(DataType="string", Description="Media File Name", Name="MediaName", ParameterType="query")
    public MediaName: string;

    /** @description The original name of the media being saved. */
    // @ApiMember(DataType="string", Description="The original name of the media being saved.", Name="OriginalFileName", ParameterType="query")
    public OriginalFileName: string;

    /** @description Url of the media file. */
    // @ApiMember(DataType="string", Description="Url of the media file.", Name="MediaFileUrl", ParameterType="query")
    public MediaFileUrl: string;

    /** @description Url of the media file thumbnail. */
    // @ApiMember(DataType="string", Description="Url of the media file thumbnail.", Name="MediaFileThumbnailUrl", ParameterType="query")
    public MediaFileThumbnailUrl: string;

    /** @description Service Stack Response Status. */
    // @ApiMember(DataType="ResponseStatus", Description="Service Stack Response Status.", Name="ResponseStatus", ParameterType="query")
    public ResponseStatus: ResponseStatus;

    public constructor(init?: Partial<SaveMediaResponse>) { (Object as any).assign(this, init); }
}

export class MediaModel
{
    public MediaFileId: string;
    public MediaName: string;
    public FileContent: string;
    public FileContentType: string;
    public FilePath: string;
    public OriginalFileName: string;
    public ImageWidth: number;
    public ImageHeight: number;
    public FileSizeKB: number;
    public BlobUriRaw: string;
    public BlobUriFull: string;
    public BlobUriThumbnail: string;
    public WatermarkUri: string;
    public CapturedDate: string;
    public CapturedByContactId?: string;
    public CapturedByContactName: string;
    public CapturedByContactThumbnailUrl: string;
    public Notes: string;
    public ResourceActionName: string;
    public LocationVerified: string;
    public TrafficLightLocationVerified: string;
    public AudienceLevel: string;
    public WorksFor: string;

    public constructor(init?: Partial<MediaModel>) { (Object as any).assign(this, init); }
}

export class ManagePrimaryImage
{
    /** @description The licensee's contact Id linked to the media file. */
    // @ApiMember(DataType="Guid", Description="The licensee's contact Id linked to the media file.", IsRequired=true, Name="ContactIdOwner", ParameterType="query")
    public ContactIdOwner: string;

    /** @description Primary image file to be uploaded including file type and content type. */
    // @ApiMember(DataType="MediaModel", Description="Primary image file to be uploaded including file type and content type.", IsRequired=true, Name="File")
    public File: MediaModel;

    /** @description 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 ApplianceId: string;

    /** @description Blob storage container to which primary image file is to be uploaded. */
    // @ApiMember(DataType="Guid", Description="Blob storage container to which primary image file is to be uploaded.", IsRequired=true, Name="ContainerName")
    public ContainerName: string;

    /** @description 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 ConnectedObjectId: string;

    public constructor(init?: Partial<ManagePrimaryImage>) { (Object as any).assign(this, init); }
}

TypeScript ManagePrimaryImage DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/primaryimage HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"ContactIdOwner":"00000000-0000-0000-0000-000000000000","File":{"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","ContainerName":"String","ConnectedObjectId":"00000000-0000-0000-0000-000000000000"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"ErosMediaFileId":"00000000-0000-0000-0000-000000000000","MediaName":"String","OriginalFileName":"String","MediaFileUrl":"String","MediaFileThumbnailUrl":"String","ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}