| Required role: | super-admin |
| POST | /document-template |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using tvpl.api.ServiceModel;
using tvpl.data.Models;
namespace tvpl.api.ServiceModel
{
public partial class CreateDocumentTemplateResponse
: IResponseRequest
{
public virtual int InsertedId { get; set; }
public virtual int Code { get; set; }
public virtual string Message { get; set; }
}
public partial class CreateOrUpdateTemplateRequest
{
public CreateOrUpdateTemplateRequest()
{
DocumentIds = new List<int>{};
Elements = new List<DocumentElementDto>{};
}
public virtual int? Id { get; set; }
public virtual List<int> DocumentIds { get; set; }
public virtual string Title { get; set; }
public virtual string Description { get; set; }
public virtual bool IsActive { get; set; }
public virtual List<DocumentElementDto> Elements { get; set; }
}
public partial class DocumentElementDto
: DocumentElement
{
public DocumentElementDto()
{
Children = new List<DocumentElementDto>{};
}
public virtual List<DocumentElementDto> Children { get; set; }
}
}
namespace tvpl.data.Models
{
public partial class DocumentElement
{
public virtual int Id { get; set; }
public virtual int TemplateId { get; set; }
[Required]
public virtual string ElementKey { get; set; }
[Required]
public virtual string Tag { get; set; }
public virtual int? ParentId { get; set; }
[Required]
public virtual string Title { get; set; }
public virtual string Description { get; set; }
[Required]
public virtual string DataType { get; set; }
public virtual string TemplateType { get; set; }
public virtual int OrderIndex { get; set; }
public virtual bool? IsRequired { get; set; }
}
}
C# CreateOrUpdateTemplateRequest DTOs
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 /document-template HTTP/1.1
Host: etc-api.vsmlab.vn
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"id":0,"documentIds":[0],"title":"String","description":"String","isActive":false,"elements":[{"children":[{"children":[{"children":null,"id":0,"templateId":0,"elementKey":"String","tag":"String","parentId":0,"title":"String","description":"String","dataType":"String","templateType":"String","orderIndex":0,"isRequired":false}],"id":0,"templateId":0,"elementKey":"String","tag":"String","parentId":0,"title":"String","description":"String","dataType":"String","templateType":"String","orderIndex":0,"isRequired":false}],"id":0,"templateId":0,"elementKey":"String","tag":"String","parentId":0,"title":"String","description":"String","dataType":"String","templateType":"String","orderIndex":0,"isRequired":false}]}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"insertedId":0,"code":0,"message":"String"}