tvpl.api

<back to all web services

MergeFileRequest

Requires Authentication
The following routes are available for this service:
POST/merge-file

export class TemplateDefinitionDto
{
    public id: number;
    public documentId: number;
    public title: string;
    public description: string;
    public isActive: boolean;

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

export class ElementDefinitionDto
{
    public id: number;
    public templateId: number;
    public elementKey: string;
    public tag: string;
    public title: string;
    public description: string;
    public dataType: string;
    public templateType: string;
    public orderIndex: number;
    public parentId?: number;
    public value: Object;
    public children: ElementDefinitionDto[];

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

export class MergeFileRequest
{
    public template: TemplateDefinitionDto;
    public elements: ElementDefinitionDto[];

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

TypeScript MergeFileRequest 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.

POST /merge-file HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	template: 
	{
		id: 0,
		documentId: 0,
		title: String,
		description: String,
		isActive: False
	},
	elements: 
	[
		{
			id: 0,
			templateId: 0,
			elementKey: String,
			tag: String,
			title: String,
			description: String,
			dataType: String,
			templateType: String,
			orderIndex: 0,
			parentId: 0,
			value: {},
			children: 
			[
				{
					id: 0,
					templateId: 0,
					elementKey: String,
					tag: String,
					title: String,
					description: String,
					dataType: String,
					templateType: String,
					orderIndex: 0,
					parentId: 0,
					value: {},
					children: 
					[
						{
							id: 0,
							templateId: 0,
							elementKey: String,
							tag: String,
							title: String,
							description: String,
							dataType: String,
							templateType: String,
							orderIndex: 0,
							parentId: 0,
							value: {}
						}
					]
				}
			]
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	
}