Trendsic Platform Service

<back to all web services

MarkupPageRequest

Requires Authentication
The following routes are available for this service:
GET,PUT,OPTIONS/v1/markup/{AttachmentId}/{VersionNo}/{PageIndex}
"use strict";
export class DocumentMarkupLayer {
    /** @param {{DocumentMarkupID?:number,AttachmentId?:string,VersionNo?:number,PageIndex?:number,AuthorUserId?:string,AuthorName?:string,LayerJson?:string,ShapeCount?:number,IsPublished?:boolean,CreatedAt?:string,UpdatedAt?:string,IsMine?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    DocumentMarkupID;
    /** @type {string} */
    AttachmentId;
    /** @type {number} */
    VersionNo;
    /** @type {number} */
    PageIndex;
    /** @type {string} */
    AuthorUserId;
    /** @type {string} */
    AuthorName;
    /** @type {string} */
    LayerJson;
    /** @type {number} */
    ShapeCount;
    /** @type {boolean} */
    IsPublished;
    /** @type {?string} */
    CreatedAt;
    /** @type {?string} */
    UpdatedAt;
    /** @type {boolean} */
    IsMine;
}
export class DocumentMarkupLink {
    /** @param {{DocumentMarkupLinkID?:number,AttachmentId?:string,VersionNo?:number,PageIndex?:number,ShapeId?:string,EntityType?:string,EntityID?:number,EntityNo?:string,CreatedBy?:string,CreatedAt?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    DocumentMarkupLinkID;
    /** @type {string} */
    AttachmentId;
    /** @type {number} */
    VersionNo;
    /** @type {number} */
    PageIndex;
    /** @type {string} */
    ShapeId;
    /** @type {string} */
    EntityType;
    /** @type {number} */
    EntityID;
    /** @type {string} */
    EntityNo;
    /** @type {string} */
    CreatedBy;
    /** @type {?string} */
    CreatedAt;
}
export class MarkupPageResponse {
    /** @param {{ResponseStatus?:ResponseStatus,AttachmentId?:string,VersionNo?:number,PageIndex?:number,Layers?:DocumentMarkupLayer[],Links?:DocumentMarkupLink[],Mine?:DocumentMarkupLayer,CanCreatePunch?:boolean,CanCreateRfi?:boolean,ProjectID?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {ResponseStatus} */
    ResponseStatus;
    /** @type {string} */
    AttachmentId;
    /** @type {number} */
    VersionNo;
    /** @type {number} */
    PageIndex;
    /** @type {DocumentMarkupLayer[]} */
    Layers = [];
    /** @type {DocumentMarkupLink[]} */
    Links = [];
    /** @type {DocumentMarkupLayer} */
    Mine;
    /** @type {boolean} */
    CanCreatePunch;
    /** @type {boolean} */
    CanCreateRfi;
    /** @type {?number} */
    ProjectID;
}
export class MarkupPageRequest {
    /** @param {{AttachmentId?:string,VersionNo?:number,PageIndex?:number,LayerJson?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    AttachmentId;
    /** @type {number} */
    VersionNo;
    /** @type {number} */
    PageIndex;
    /** @type {string} */
    LayerJson;
}

JavaScript MarkupPageRequest DTOs

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

HTTP + JSV

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

PUT /v1/markup/{AttachmentId}/{VersionNo}/{PageIndex} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	AttachmentId: 00000000000000000000000000000000,
	VersionNo: 0,
	PageIndex: 0,
	LayerJson: 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
		}
	},
	AttachmentId: 00000000000000000000000000000000,
	VersionNo: 0,
	PageIndex: 0,
	Layers: 
	[
		{
			DocumentMarkupID: 0,
			AttachmentId: 00000000000000000000000000000000,
			VersionNo: 0,
			PageIndex: 0,
			AuthorUserId: String,
			AuthorName: String,
			LayerJson: String,
			ShapeCount: 0,
			IsPublished: False,
			CreatedAt: 0001-01-01,
			UpdatedAt: 0001-01-01,
			IsMine: False
		}
	],
	Links: 
	[
		{
			DocumentMarkupLinkID: 0,
			AttachmentId: 00000000000000000000000000000000,
			VersionNo: 0,
			PageIndex: 0,
			ShapeId: String,
			EntityType: String,
			EntityID: 0,
			EntityNo: String,
			CreatedBy: String,
			CreatedAt: 0001-01-01
		}
	],
	Mine: 
	{
		DocumentMarkupID: 0,
		AttachmentId: 00000000000000000000000000000000,
		VersionNo: 0,
		PageIndex: 0,
		AuthorUserId: String,
		AuthorName: String,
		LayerJson: String,
		ShapeCount: 0,
		IsPublished: False,
		CreatedAt: 0001-01-01,
		UpdatedAt: 0001-01-01,
		IsMine: False
	},
	CanCreatePunch: False,
	CanCreateRfi: False,
	ProjectID: 0
}