| POST,OPTIONS | /v1/projects/{ProjectID}/plansets/from-attachment |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class SheetPin implements IConvertible
{
int? SheetPinID;
int? SheetID;
String? EntityType;
int? EntityID;
String? EntityUID;
double? X;
double? Y;
String? Label;
String? CreatedBy;
DateTime? CreatedAt;
String? EntityNo;
String? EntityTitle;
String? EntityStatus;
String? InspectionUID;
String? SheetNumber;
String? SheetTitle;
int? PlanSetID;
String? PlanSetUID;
String? PlanSetName;
SheetPin({this.SheetPinID,this.SheetID,this.EntityType,this.EntityID,this.EntityUID,this.X,this.Y,this.Label,this.CreatedBy,this.CreatedAt,this.EntityNo,this.EntityTitle,this.EntityStatus,this.InspectionUID,this.SheetNumber,this.SheetTitle,this.PlanSetID,this.PlanSetUID,this.PlanSetName});
SheetPin.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
SheetPinID = json['SheetPinID'];
SheetID = json['SheetID'];
EntityType = json['EntityType'];
EntityID = json['EntityID'];
EntityUID = json['EntityUID'];
X = JsonConverters.toDouble(json['X']);
Y = JsonConverters.toDouble(json['Y']);
Label = json['Label'];
CreatedBy = json['CreatedBy'];
CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
EntityNo = json['EntityNo'];
EntityTitle = json['EntityTitle'];
EntityStatus = json['EntityStatus'];
InspectionUID = json['InspectionUID'];
SheetNumber = json['SheetNumber'];
SheetTitle = json['SheetTitle'];
PlanSetID = json['PlanSetID'];
PlanSetUID = json['PlanSetUID'];
PlanSetName = json['PlanSetName'];
return this;
}
Map<String, dynamic> toJson() => {
'SheetPinID': SheetPinID,
'SheetID': SheetID,
'EntityType': EntityType,
'EntityID': EntityID,
'EntityUID': EntityUID,
'X': X,
'Y': Y,
'Label': Label,
'CreatedBy': CreatedBy,
'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
'EntityNo': EntityNo,
'EntityTitle': EntityTitle,
'EntityStatus': EntityStatus,
'InspectionUID': InspectionUID,
'SheetNumber': SheetNumber,
'SheetTitle': SheetTitle,
'PlanSetID': PlanSetID,
'PlanSetUID': PlanSetUID,
'PlanSetName': PlanSetName
};
getTypeName() => "SheetPin";
TypeContext? context = _ctx;
}
class Sheet implements IConvertible
{
int? SheetID;
int? PlanSetID;
String? PlanSetUID;
String? PlanSetName;
int? ProjectID;
int? PageIndex;
String? AttachmentId;
int? VersionNo;
String? SheetNumber;
String? SheetKey;
String? Title;
String? Discipline;
String? Revision;
DateTime? RevisionDate;
double? WidthPt;
double? HeightPt;
String? ThumbKey;
String? ThumbUrl;
String? ThumbHash;
String? ExtractSource;
double? Confidence;
String? ChangeKind;
int? SupersedesSheetID;
bool? IsCurrent;
int? PinCount;
String? UpdatedBy;
DateTime? UpdatedAt;
List<SheetPin>? Pins = [];
Sheet({this.SheetID,this.PlanSetID,this.PlanSetUID,this.PlanSetName,this.ProjectID,this.PageIndex,this.AttachmentId,this.VersionNo,this.SheetNumber,this.SheetKey,this.Title,this.Discipline,this.Revision,this.RevisionDate,this.WidthPt,this.HeightPt,this.ThumbKey,this.ThumbUrl,this.ThumbHash,this.ExtractSource,this.Confidence,this.ChangeKind,this.SupersedesSheetID,this.IsCurrent,this.PinCount,this.UpdatedBy,this.UpdatedAt,this.Pins});
Sheet.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
SheetID = json['SheetID'];
PlanSetID = json['PlanSetID'];
PlanSetUID = json['PlanSetUID'];
PlanSetName = json['PlanSetName'];
ProjectID = json['ProjectID'];
PageIndex = json['PageIndex'];
AttachmentId = json['AttachmentId'];
VersionNo = json['VersionNo'];
SheetNumber = json['SheetNumber'];
SheetKey = json['SheetKey'];
Title = json['Title'];
Discipline = json['Discipline'];
Revision = json['Revision'];
RevisionDate = JsonConverters.fromJson(json['RevisionDate'],'DateTime',context!);
WidthPt = JsonConverters.toDouble(json['WidthPt']);
HeightPt = JsonConverters.toDouble(json['HeightPt']);
ThumbKey = json['ThumbKey'];
ThumbUrl = json['ThumbUrl'];
ThumbHash = json['ThumbHash'];
ExtractSource = json['ExtractSource'];
Confidence = JsonConverters.toDouble(json['Confidence']);
ChangeKind = json['ChangeKind'];
SupersedesSheetID = json['SupersedesSheetID'];
IsCurrent = json['IsCurrent'];
PinCount = json['PinCount'];
UpdatedBy = json['UpdatedBy'];
UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
Pins = JsonConverters.fromJson(json['Pins'],'List<SheetPin>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'SheetID': SheetID,
'PlanSetID': PlanSetID,
'PlanSetUID': PlanSetUID,
'PlanSetName': PlanSetName,
'ProjectID': ProjectID,
'PageIndex': PageIndex,
'AttachmentId': AttachmentId,
'VersionNo': VersionNo,
'SheetNumber': SheetNumber,
'SheetKey': SheetKey,
'Title': Title,
'Discipline': Discipline,
'Revision': Revision,
'RevisionDate': JsonConverters.toJson(RevisionDate,'DateTime',context!),
'WidthPt': WidthPt,
'HeightPt': HeightPt,
'ThumbKey': ThumbKey,
'ThumbUrl': ThumbUrl,
'ThumbHash': ThumbHash,
'ExtractSource': ExtractSource,
'Confidence': Confidence,
'ChangeKind': ChangeKind,
'SupersedesSheetID': SupersedesSheetID,
'IsCurrent': IsCurrent,
'PinCount': PinCount,
'UpdatedBy': UpdatedBy,
'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!),
'Pins': JsonConverters.toJson(Pins,'List<SheetPin>',context!)
};
getTypeName() => "Sheet";
TypeContext? context = _ctx;
}
class PlanSet implements IConvertible
{
int? PlanSetID;
String? PlanSetUID;
int? ProjectID;
String? Name;
String? Source;
String? SourceLabel;
DateTime? IssuedDate;
String? AttachmentId;
String? AttachmentName;
double? FileSizeInKB;
int? VersionNo;
String? Status;
int? Progress;
int? PageCount;
int? SheetCount;
String? ExtractMode;
String? ErrorText;
int? SupersedesPlanSetID;
String? SupersedesName;
bool? IsCurrent;
String? CreatedBy;
DateTime? CreatedAt;
DateTime? ProcessedAt;
int? AgeSeconds;
List<Sheet>? Sheets = [];
String? Headline;
PlanSet({this.PlanSetID,this.PlanSetUID,this.ProjectID,this.Name,this.Source,this.SourceLabel,this.IssuedDate,this.AttachmentId,this.AttachmentName,this.FileSizeInKB,this.VersionNo,this.Status,this.Progress,this.PageCount,this.SheetCount,this.ExtractMode,this.ErrorText,this.SupersedesPlanSetID,this.SupersedesName,this.IsCurrent,this.CreatedBy,this.CreatedAt,this.ProcessedAt,this.AgeSeconds,this.Sheets,this.Headline});
PlanSet.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
PlanSetID = json['PlanSetID'];
PlanSetUID = json['PlanSetUID'];
ProjectID = json['ProjectID'];
Name = json['Name'];
Source = json['Source'];
SourceLabel = json['SourceLabel'];
IssuedDate = JsonConverters.fromJson(json['IssuedDate'],'DateTime',context!);
AttachmentId = json['AttachmentId'];
AttachmentName = json['AttachmentName'];
FileSizeInKB = JsonConverters.toDouble(json['FileSizeInKB']);
VersionNo = json['VersionNo'];
Status = json['Status'];
Progress = json['Progress'];
PageCount = json['PageCount'];
SheetCount = json['SheetCount'];
ExtractMode = json['ExtractMode'];
ErrorText = json['ErrorText'];
SupersedesPlanSetID = json['SupersedesPlanSetID'];
SupersedesName = json['SupersedesName'];
IsCurrent = json['IsCurrent'];
CreatedBy = json['CreatedBy'];
CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
ProcessedAt = JsonConverters.fromJson(json['ProcessedAt'],'DateTime',context!);
AgeSeconds = json['AgeSeconds'];
Sheets = JsonConverters.fromJson(json['Sheets'],'List<Sheet>',context!);
Headline = json['Headline'];
return this;
}
Map<String, dynamic> toJson() => {
'PlanSetID': PlanSetID,
'PlanSetUID': PlanSetUID,
'ProjectID': ProjectID,
'Name': Name,
'Source': Source,
'SourceLabel': SourceLabel,
'IssuedDate': JsonConverters.toJson(IssuedDate,'DateTime',context!),
'AttachmentId': AttachmentId,
'AttachmentName': AttachmentName,
'FileSizeInKB': FileSizeInKB,
'VersionNo': VersionNo,
'Status': Status,
'Progress': Progress,
'PageCount': PageCount,
'SheetCount': SheetCount,
'ExtractMode': ExtractMode,
'ErrorText': ErrorText,
'SupersedesPlanSetID': SupersedesPlanSetID,
'SupersedesName': SupersedesName,
'IsCurrent': IsCurrent,
'CreatedBy': CreatedBy,
'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
'ProcessedAt': JsonConverters.toJson(ProcessedAt,'DateTime',context!),
'AgeSeconds': AgeSeconds,
'Sheets': JsonConverters.toJson(Sheets,'List<Sheet>',context!),
'Headline': Headline
};
getTypeName() => "PlanSet";
TypeContext? context = _ctx;
}
class PlanSetResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
PlanSet? PlanSet;
List<Sheet>? RemovedSheets = [];
PlanSetResponse({this.ResponseStatus,this.PlanSet,this.RemovedSheets});
PlanSetResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
PlanSet = JsonConverters.fromJson(json['PlanSet'],'PlanSet',context!);
RemovedSheets = JsonConverters.fromJson(json['RemovedSheets'],'List<Sheet>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'PlanSet': JsonConverters.toJson(PlanSet,'PlanSet',context!),
'RemovedSheets': JsonConverters.toJson(RemovedSheets,'List<Sheet>',context!)
};
getTypeName() => "PlanSetResponse";
TypeContext? context = _ctx;
}
class PlanSetFromAttachmentRequest implements IConvertible
{
int? ProjectID;
String? AttachmentId;
String? Name;
String? Source;
String? IssuedDate;
String? SupersedesPlanSetUID;
String? ExtractMode;
bool? Standalone;
PlanSetFromAttachmentRequest({this.ProjectID,this.AttachmentId,this.Name,this.Source,this.IssuedDate,this.SupersedesPlanSetUID,this.ExtractMode,this.Standalone});
PlanSetFromAttachmentRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ProjectID = json['ProjectID'];
AttachmentId = json['AttachmentId'];
Name = json['Name'];
Source = json['Source'];
IssuedDate = json['IssuedDate'];
SupersedesPlanSetUID = json['SupersedesPlanSetUID'];
ExtractMode = json['ExtractMode'];
Standalone = json['Standalone'];
return this;
}
Map<String, dynamic> toJson() => {
'ProjectID': ProjectID,
'AttachmentId': AttachmentId,
'Name': Name,
'Source': Source,
'IssuedDate': IssuedDate,
'SupersedesPlanSetUID': SupersedesPlanSetUID,
'ExtractMode': ExtractMode,
'Standalone': Standalone
};
getTypeName() => "PlanSetFromAttachmentRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'SheetPin': TypeInfo(TypeOf.Class, create:() => SheetPin()),
'Sheet': TypeInfo(TypeOf.Class, create:() => Sheet()),
'List<SheetPin>': TypeInfo(TypeOf.Class, create:() => <SheetPin>[]),
'PlanSet': TypeInfo(TypeOf.Class, create:() => PlanSet()),
'List<Sheet>': TypeInfo(TypeOf.Class, create:() => <Sheet>[]),
'PlanSetResponse': TypeInfo(TypeOf.Class, create:() => PlanSetResponse()),
'PlanSetFromAttachmentRequest': TypeInfo(TypeOf.Class, create:() => PlanSetFromAttachmentRequest()),
});
Dart PlanSetFromAttachmentRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/projects/{ProjectID}/plansets/from-attachment HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<PlanSetFromAttachmentRequest 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>
<ExtractMode>String</ExtractMode>
<IssuedDate>String</IssuedDate>
<Name>String</Name>
<ProjectID>0</ProjectID>
<Source>String</Source>
<Standalone>false</Standalone>
<SupersedesPlanSetUID>00000000-0000-0000-0000-000000000000</SupersedesPlanSetUID>
</PlanSetFromAttachmentRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<PlanSetResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<PlanSet>
<AgeSeconds>0</AgeSeconds>
<AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
<AttachmentName>String</AttachmentName>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<ErrorText>String</ErrorText>
<ExtractMode>String</ExtractMode>
<FileSizeInKB>0</FileSizeInKB>
<Headline>String</Headline>
<IsCurrent>false</IsCurrent>
<IssuedDate>0001-01-01T00:00:00</IssuedDate>
<Name>String</Name>
<PageCount>0</PageCount>
<PlanSetID>0</PlanSetID>
<PlanSetUID>00000000-0000-0000-0000-000000000000</PlanSetUID>
<ProcessedAt>0001-01-01T00:00:00</ProcessedAt>
<Progress>0</Progress>
<ProjectID>0</ProjectID>
<SheetCount>0</SheetCount>
<Sheets>
<Sheet>
<AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
<ChangeKind>String</ChangeKind>
<Confidence>0</Confidence>
<Discipline>String</Discipline>
<ExtractSource>String</ExtractSource>
<HeightPt>0</HeightPt>
<IsCurrent>false</IsCurrent>
<PageIndex>0</PageIndex>
<PinCount>0</PinCount>
<Pins>
<SheetPin>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<EntityID>0</EntityID>
<EntityNo>String</EntityNo>
<EntityStatus>String</EntityStatus>
<EntityTitle>String</EntityTitle>
<EntityType>String</EntityType>
<EntityUID>00000000-0000-0000-0000-000000000000</EntityUID>
<InspectionUID>00000000-0000-0000-0000-000000000000</InspectionUID>
<Label>String</Label>
<PlanSetID>0</PlanSetID>
<PlanSetName>String</PlanSetName>
<PlanSetUID>00000000-0000-0000-0000-000000000000</PlanSetUID>
<SheetID>0</SheetID>
<SheetNumber>String</SheetNumber>
<SheetPinID>0</SheetPinID>
<SheetTitle>String</SheetTitle>
<X>0</X>
<Y>0</Y>
</SheetPin>
</Pins>
<PlanSetID>0</PlanSetID>
<PlanSetName>String</PlanSetName>
<PlanSetUID>00000000-0000-0000-0000-000000000000</PlanSetUID>
<ProjectID>0</ProjectID>
<Revision>String</Revision>
<RevisionDate>0001-01-01T00:00:00</RevisionDate>
<SheetID>0</SheetID>
<SheetKey>String</SheetKey>
<SheetNumber>String</SheetNumber>
<SupersedesSheetID>0</SupersedesSheetID>
<ThumbHash>String</ThumbHash>
<ThumbKey>String</ThumbKey>
<ThumbUrl>String</ThumbUrl>
<Title>String</Title>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
<UpdatedBy>String</UpdatedBy>
<VersionNo>0</VersionNo>
<WidthPt>0</WidthPt>
</Sheet>
</Sheets>
<Source>String</Source>
<SourceLabel>String</SourceLabel>
<Status>String</Status>
<SupersedesName>String</SupersedesName>
<SupersedesPlanSetID>0</SupersedesPlanSetID>
<VersionNo>0</VersionNo>
</PlanSet>
<RemovedSheets>
<Sheet>
<AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
<ChangeKind>String</ChangeKind>
<Confidence>0</Confidence>
<Discipline>String</Discipline>
<ExtractSource>String</ExtractSource>
<HeightPt>0</HeightPt>
<IsCurrent>false</IsCurrent>
<PageIndex>0</PageIndex>
<PinCount>0</PinCount>
<Pins>
<SheetPin>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<EntityID>0</EntityID>
<EntityNo>String</EntityNo>
<EntityStatus>String</EntityStatus>
<EntityTitle>String</EntityTitle>
<EntityType>String</EntityType>
<EntityUID>00000000-0000-0000-0000-000000000000</EntityUID>
<InspectionUID>00000000-0000-0000-0000-000000000000</InspectionUID>
<Label>String</Label>
<PlanSetID>0</PlanSetID>
<PlanSetName>String</PlanSetName>
<PlanSetUID>00000000-0000-0000-0000-000000000000</PlanSetUID>
<SheetID>0</SheetID>
<SheetNumber>String</SheetNumber>
<SheetPinID>0</SheetPinID>
<SheetTitle>String</SheetTitle>
<X>0</X>
<Y>0</Y>
</SheetPin>
</Pins>
<PlanSetID>0</PlanSetID>
<PlanSetName>String</PlanSetName>
<PlanSetUID>00000000-0000-0000-0000-000000000000</PlanSetUID>
<ProjectID>0</ProjectID>
<Revision>String</Revision>
<RevisionDate>0001-01-01T00:00:00</RevisionDate>
<SheetID>0</SheetID>
<SheetKey>String</SheetKey>
<SheetNumber>String</SheetNumber>
<SupersedesSheetID>0</SupersedesSheetID>
<ThumbHash>String</ThumbHash>
<ThumbKey>String</ThumbKey>
<ThumbUrl>String</ThumbUrl>
<Title>String</Title>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
<UpdatedBy>String</UpdatedBy>
<VersionNo>0</VersionNo>
<WidthPt>0</WidthPt>
</Sheet>
</RemovedSheets>
<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>
</PlanSetResponse>