Trendsic Platform Service

<back to all web services

CadInfoRequest

Requires Authentication
Requires any of the roles:Worker, Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/cad/{AttachmentId}/{VersionNo}
GET,OPTIONS/v1/cad/{AttachmentId}
import Foundation
import ServiceStack

public class CadInfoRequest : Codable
{
    public var attachmentId:String
    public var versionNo:Int?

    required public init(){}
}

public class CadInfoResponse : Codable
{
    public var responseStatus:ResponseStatus
    public var attachmentId:String
    public var fileName:String
    public var info:CadFileInfo
    public var derivative:CadDerivative
    public var companions:[CadCompanion] = []
    public var apsConnected:Bool
    public var canRender:Bool
    public var viewerScriptUrl:String
    public var viewerStyleUrl:String

    required public init(){}
}

public class CadFileInfo : Codable
{
    public var cadFileInfoID:Int
    public var attachmentId:String
    public var versionNo:Int
    public var fileName:String
    public var format:String
    public var formatLabel:String
    public var cadVersion:String
    public var cadVersionCode:String
    public var units:String
    public var drawingNumber:String
    public var title:String
    public var layoutCount:Int
    public var layouts:[CadLayout] = []
    public var layerCount:Int
    public var entityCount:Int
    public var textChars:Int
    public var extractedText:String
    public var reader:String
    public var status:String
    public var errorText:String
    public var createdAt:Date?
    public var updatedAt:Date?
    public var ageSeconds:Int

    required public init(){}
}

public class CadLayout : Codable
{
    public var name:String
    public var isPaperSpace:Bool

    required public init(){}
}

public class CadDerivative : Codable
{
    public var cadDerivativeID:Int
    public var attachmentId:String
    public var versionNo:Int
    public var urn:String
    public var objectKey:String
    public var status:String
    public var progress:Int
    public var stageLabel:String
    public var has2d:Bool
    public var has3d:Bool
    public var hasPdf:Bool
    public var thumbKey:String
    public var thumbUrl:String
    public var pdfAttachmentId:String?
    public var errorText:String
    public var requestedBy:String
    public var requestedAt:Date?
    public var finishedAt:Date?
    public var ageSeconds:Int

    required public init(){}
}

public class CadCompanion : Codable
{
    public var attachmentId:String
    public var attachmentName:String
    public var createdDate:Date?
    public var fileSizeInKB:Double?

    required public init(){}
}


Swift CadInfoRequest 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.

GET /v1/cad/{AttachmentId}/{VersionNo} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
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
		}
	},
	AttachmentId: 00000000000000000000000000000000,
	FileName: String,
	Info: 
	{
		CadFileInfoID: 0,
		AttachmentId: 00000000000000000000000000000000,
		VersionNo: 0,
		FileName: String,
		Format: String,
		FormatLabel: String,
		CadVersion: String,
		CadVersionCode: String,
		Units: String,
		DrawingNumber: String,
		Title: String,
		LayoutCount: 0,
		Layouts: 
		[
			{
				Name: String,
				IsPaperSpace: False
			}
		],
		LayerCount: 0,
		EntityCount: 0,
		TextChars: 0,
		ExtractedText: String,
		Reader: String,
		Status: String,
		ErrorText: String,
		CreatedAt: 0001-01-01,
		UpdatedAt: 0001-01-01,
		AgeSeconds: 0
	},
	Derivative: 
	{
		CadDerivativeID: 0,
		AttachmentId: 00000000000000000000000000000000,
		VersionNo: 0,
		Urn: String,
		ObjectKey: String,
		Status: String,
		Progress: 0,
		StageLabel: String,
		Has2d: False,
		Has3d: False,
		HasPdf: False,
		ThumbKey: String,
		ThumbUrl: String,
		PdfAttachmentId: 00000000000000000000000000000000,
		ErrorText: String,
		RequestedBy: String,
		RequestedAt: 0001-01-01,
		FinishedAt: 0001-01-01,
		AgeSeconds: 0
	},
	Companions: 
	[
		{
			AttachmentId: 00000000000000000000000000000000,
			AttachmentName: String,
			CreatedDate: 0001-01-01,
			FileSizeInKB: 0
		}
	],
	ApsConnected: False,
	CanRender: False,
	ViewerScriptUrl: String,
	ViewerStyleUrl: String
}