Trendsic Platform Service

<back to all web services

MarkupRaiseRequest

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/markup/{AttachmentId}/{VersionNo}/{PageIndex}/shapes/{ShapeId}/{Raise}
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class DocumentMarkupLink implements IConvertible
{
    int? DocumentMarkupLinkID;
    String? AttachmentId;
    int? VersionNo;
    int? PageIndex;
    String? ShapeId;
    String? EntityType;
    int? EntityID;
    String? EntityNo;
    String? CreatedBy;
    DateTime? CreatedAt;

    DocumentMarkupLink({this.DocumentMarkupLinkID,this.AttachmentId,this.VersionNo,this.PageIndex,this.ShapeId,this.EntityType,this.EntityID,this.EntityNo,this.CreatedBy,this.CreatedAt});
    DocumentMarkupLink.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DocumentMarkupLinkID = json['DocumentMarkupLinkID'];
        AttachmentId = json['AttachmentId'];
        VersionNo = json['VersionNo'];
        PageIndex = json['PageIndex'];
        ShapeId = json['ShapeId'];
        EntityType = json['EntityType'];
        EntityID = json['EntityID'];
        EntityNo = json['EntityNo'];
        CreatedBy = json['CreatedBy'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DocumentMarkupLinkID': DocumentMarkupLinkID,
        'AttachmentId': AttachmentId,
        'VersionNo': VersionNo,
        'PageIndex': PageIndex,
        'ShapeId': ShapeId,
        'EntityType': EntityType,
        'EntityID': EntityID,
        'EntityNo': EntityNo,
        'CreatedBy': CreatedBy,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!)
    };

    getTypeName() => "DocumentMarkupLink";
    TypeContext? context = _ctx;
}

class MarkupRaiseResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    DocumentMarkupLink? Link;
    List<DocumentMarkupLink>? Links = [];

    MarkupRaiseResponse({this.ResponseStatus,this.Link,this.Links});
    MarkupRaiseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Link = JsonConverters.fromJson(json['Link'],'DocumentMarkupLink',context!);
        Links = JsonConverters.fromJson(json['Links'],'List<DocumentMarkupLink>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Link': JsonConverters.toJson(Link,'DocumentMarkupLink',context!),
        'Links': JsonConverters.toJson(Links,'List<DocumentMarkupLink>',context!)
    };

    getTypeName() => "MarkupRaiseResponse";
    TypeContext? context = _ctx;
}

class MarkupRaiseRequest implements IConvertible
{
    String? AttachmentId;
    int? VersionNo;
    int? PageIndex;
    String? ShapeId;
    String? Raise;
    int? ProjectID;
    String? Title;
    String? Description;
    String? Area;
    String? Trade;
    String? AssignedSub;
    String? Priority;
    String? AskedOf;
    String? Discipline;
    DateTime? DueDate;

    MarkupRaiseRequest({this.AttachmentId,this.VersionNo,this.PageIndex,this.ShapeId,this.Raise,this.ProjectID,this.Title,this.Description,this.Area,this.Trade,this.AssignedSub,this.Priority,this.AskedOf,this.Discipline,this.DueDate});
    MarkupRaiseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        AttachmentId = json['AttachmentId'];
        VersionNo = json['VersionNo'];
        PageIndex = json['PageIndex'];
        ShapeId = json['ShapeId'];
        Raise = json['Raise'];
        ProjectID = json['ProjectID'];
        Title = json['Title'];
        Description = json['Description'];
        Area = json['Area'];
        Trade = json['Trade'];
        AssignedSub = json['AssignedSub'];
        Priority = json['Priority'];
        AskedOf = json['AskedOf'];
        Discipline = json['Discipline'];
        DueDate = JsonConverters.fromJson(json['DueDate'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'AttachmentId': AttachmentId,
        'VersionNo': VersionNo,
        'PageIndex': PageIndex,
        'ShapeId': ShapeId,
        'Raise': Raise,
        'ProjectID': ProjectID,
        'Title': Title,
        'Description': Description,
        'Area': Area,
        'Trade': Trade,
        'AssignedSub': AssignedSub,
        'Priority': Priority,
        'AskedOf': AskedOf,
        'Discipline': Discipline,
        'DueDate': JsonConverters.toJson(DueDate,'DateTime',context!)
    };

    getTypeName() => "MarkupRaiseRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'DocumentMarkupLink': TypeInfo(TypeOf.Class, create:() => DocumentMarkupLink()),
    'MarkupRaiseResponse': TypeInfo(TypeOf.Class, create:() => MarkupRaiseResponse()),
    'List<DocumentMarkupLink>': TypeInfo(TypeOf.Class, create:() => <DocumentMarkupLink>[]),
    'MarkupRaiseRequest': TypeInfo(TypeOf.Class, create:() => MarkupRaiseRequest()),
});

Dart MarkupRaiseRequest 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 /v1/markup/{AttachmentId}/{VersionNo}/{PageIndex}/shapes/{ShapeId}/{Raise} 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,
	ShapeId: String,
	Raise: String,
	ProjectID: 0,
	Title: String,
	Description: String,
	Area: String,
	Trade: String,
	AssignedSub: String,
	Priority: String,
	AskedOf: String,
	Discipline: String,
	DueDate: 0001-01-01
}
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
		}
	},
	Link: 
	{
		DocumentMarkupLinkID: 0,
		AttachmentId: 00000000000000000000000000000000,
		VersionNo: 0,
		PageIndex: 0,
		ShapeId: String,
		EntityType: String,
		EntityID: 0,
		EntityNo: String,
		CreatedBy: String,
		CreatedAt: 0001-01-01
	},
	Links: 
	[
		{
			DocumentMarkupLinkID: 0,
			AttachmentId: 00000000000000000000000000000000,
			VersionNo: 0,
			PageIndex: 0,
			ShapeId: String,
			EntityType: String,
			EntityID: 0,
			EntityNo: String,
			CreatedBy: String,
			CreatedAt: 0001-01-01
		}
	]
}