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}
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class DocumentMarkupLayer implements IConvertible
{
    int? DocumentMarkupID;
    String? AttachmentId;
    int? VersionNo;
    int? PageIndex;
    String? AuthorUserId;
    String? AuthorName;
    String? LayerJson;
    int? ShapeCount;
    bool? IsPublished;
    DateTime? CreatedAt;
    DateTime? UpdatedAt;
    bool? IsMine;

    DocumentMarkupLayer({this.DocumentMarkupID,this.AttachmentId,this.VersionNo,this.PageIndex,this.AuthorUserId,this.AuthorName,this.LayerJson,this.ShapeCount,this.IsPublished,this.CreatedAt,this.UpdatedAt,this.IsMine});
    DocumentMarkupLayer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DocumentMarkupID = json['DocumentMarkupID'];
        AttachmentId = json['AttachmentId'];
        VersionNo = json['VersionNo'];
        PageIndex = json['PageIndex'];
        AuthorUserId = json['AuthorUserId'];
        AuthorName = json['AuthorName'];
        LayerJson = json['LayerJson'];
        ShapeCount = json['ShapeCount'];
        IsPublished = json['IsPublished'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        IsMine = json['IsMine'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DocumentMarkupID': DocumentMarkupID,
        'AttachmentId': AttachmentId,
        'VersionNo': VersionNo,
        'PageIndex': PageIndex,
        'AuthorUserId': AuthorUserId,
        'AuthorName': AuthorName,
        'LayerJson': LayerJson,
        'ShapeCount': ShapeCount,
        'IsPublished': IsPublished,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!),
        'IsMine': IsMine
    };

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

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 MarkupPageResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    String? AttachmentId;
    int? VersionNo;
    int? PageIndex;
    List<DocumentMarkupLayer>? Layers = [];
    List<DocumentMarkupLink>? Links = [];
    DocumentMarkupLayer? Mine;
    bool? CanCreatePunch;
    bool? CanCreateRfi;
    int? ProjectID;

    MarkupPageResponse({this.ResponseStatus,this.AttachmentId,this.VersionNo,this.PageIndex,this.Layers,this.Links,this.Mine,this.CanCreatePunch,this.CanCreateRfi,this.ProjectID});
    MarkupPageResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        AttachmentId = json['AttachmentId'];
        VersionNo = json['VersionNo'];
        PageIndex = json['PageIndex'];
        Layers = JsonConverters.fromJson(json['Layers'],'List<DocumentMarkupLayer>',context!);
        Links = JsonConverters.fromJson(json['Links'],'List<DocumentMarkupLink>',context!);
        Mine = JsonConverters.fromJson(json['Mine'],'DocumentMarkupLayer',context!);
        CanCreatePunch = json['CanCreatePunch'];
        CanCreateRfi = json['CanCreateRfi'];
        ProjectID = json['ProjectID'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'AttachmentId': AttachmentId,
        'VersionNo': VersionNo,
        'PageIndex': PageIndex,
        'Layers': JsonConverters.toJson(Layers,'List<DocumentMarkupLayer>',context!),
        'Links': JsonConverters.toJson(Links,'List<DocumentMarkupLink>',context!),
        'Mine': JsonConverters.toJson(Mine,'DocumentMarkupLayer',context!),
        'CanCreatePunch': CanCreatePunch,
        'CanCreateRfi': CanCreateRfi,
        'ProjectID': ProjectID
    };

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

class MarkupPageRequest implements IConvertible
{
    String? AttachmentId;
    int? VersionNo;
    int? PageIndex;
    String? LayerJson;

    MarkupPageRequest({this.AttachmentId,this.VersionNo,this.PageIndex,this.LayerJson});
    MarkupPageRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        AttachmentId = json['AttachmentId'];
        VersionNo = json['VersionNo'];
        PageIndex = json['PageIndex'];
        LayerJson = json['LayerJson'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'AttachmentId': AttachmentId,
        'VersionNo': VersionNo,
        'PageIndex': PageIndex,
        'LayerJson': LayerJson
    };

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

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

Dart MarkupPageRequest DTOs

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

HTTP + XML

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: application/xml
Content-Type: application/xml
Content-Length: length

<MarkupPageRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
  <LayerJson>String</LayerJson>
  <PageIndex>0</PageIndex>
  <VersionNo>0</VersionNo>
</MarkupPageRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<MarkupPageResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
  <CanCreatePunch>false</CanCreatePunch>
  <CanCreateRfi>false</CanCreateRfi>
  <Layers>
    <DocumentMarkupLayer>
      <AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
      <AuthorName>String</AuthorName>
      <AuthorUserId>String</AuthorUserId>
      <CreatedAt>0001-01-01T00:00:00</CreatedAt>
      <DocumentMarkupID>0</DocumentMarkupID>
      <IsMine>false</IsMine>
      <IsPublished>false</IsPublished>
      <LayerJson>String</LayerJson>
      <PageIndex>0</PageIndex>
      <ShapeCount>0</ShapeCount>
      <UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
      <VersionNo>0</VersionNo>
    </DocumentMarkupLayer>
  </Layers>
  <Links>
    <DocumentMarkupLink>
      <AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
      <CreatedAt>0001-01-01T00:00:00</CreatedAt>
      <CreatedBy>String</CreatedBy>
      <DocumentMarkupLinkID>0</DocumentMarkupLinkID>
      <EntityID>0</EntityID>
      <EntityNo>String</EntityNo>
      <EntityType>String</EntityType>
      <PageIndex>0</PageIndex>
      <ShapeId>String</ShapeId>
      <VersionNo>0</VersionNo>
    </DocumentMarkupLink>
  </Links>
  <Mine>
    <AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
    <AuthorName>String</AuthorName>
    <AuthorUserId>String</AuthorUserId>
    <CreatedAt>0001-01-01T00:00:00</CreatedAt>
    <DocumentMarkupID>0</DocumentMarkupID>
    <IsMine>false</IsMine>
    <IsPublished>false</IsPublished>
    <LayerJson>String</LayerJson>
    <PageIndex>0</PageIndex>
    <ShapeCount>0</ShapeCount>
    <UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
    <VersionNo>0</VersionNo>
  </Mine>
  <PageIndex>0</PageIndex>
  <ProjectID>0</ProjectID>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <VersionNo>0</VersionNo>
</MarkupPageResponse>