| GET,OPTIONS | /v1/Attachment/{TableName}/{FieldName}/{RecordId} |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class Attachment implements IConvertible
{
String? AttachmentId;
String? TableName;
String? FieldName;
int? RecordId;
String? AttachmentName;
String? MimeType;
Uint8List? AttachmentData = [];
double? FileSizeInKB;
DateTime? CreatedDate;
String? CreatedBy;
bool? NeedsOCR;
DateTime? OCRDate;
bool? IsSecurities;
String? AWSKey;
String? PresignedUrl;
Attachment({this.AttachmentId,this.TableName,this.FieldName,this.RecordId,this.AttachmentName,this.MimeType,this.AttachmentData,this.FileSizeInKB,this.CreatedDate,this.CreatedBy,this.NeedsOCR,this.OCRDate,this.IsSecurities,this.AWSKey,this.PresignedUrl});
Attachment.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
AttachmentId = json['AttachmentId'];
TableName = json['TableName'];
FieldName = json['FieldName'];
RecordId = json['RecordId'];
AttachmentName = json['AttachmentName'];
MimeType = json['MimeType'];
AttachmentData = JsonConverters.fromJson(json['AttachmentData'],'Uint8List',context!);
FileSizeInKB = JsonConverters.toDouble(json['FileSizeInKB']);
CreatedDate = JsonConverters.fromJson(json['CreatedDate'],'DateTime',context!);
CreatedBy = json['CreatedBy'];
NeedsOCR = json['NeedsOCR'];
OCRDate = JsonConverters.fromJson(json['OCRDate'],'DateTime',context!);
IsSecurities = json['IsSecurities'];
AWSKey = json['AWSKey'];
PresignedUrl = json['PresignedUrl'];
return this;
}
Map<String, dynamic> toJson() => {
'AttachmentId': AttachmentId,
'TableName': TableName,
'FieldName': FieldName,
'RecordId': RecordId,
'AttachmentName': AttachmentName,
'MimeType': MimeType,
'AttachmentData': JsonConverters.toJson(AttachmentData,'Uint8List',context!),
'FileSizeInKB': FileSizeInKB,
'CreatedDate': JsonConverters.toJson(CreatedDate,'DateTime',context!),
'CreatedBy': CreatedBy,
'NeedsOCR': NeedsOCR,
'OCRDate': JsonConverters.toJson(OCRDate,'DateTime',context!),
'IsSecurities': IsSecurities,
'AWSKey': AWSKey,
'PresignedUrl': PresignedUrl
};
getTypeName() => "Attachment";
TypeContext? context = _ctx;
}
class AttachmentResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
List<Attachment>? Attachment = [];
AttachmentResponse({this.ResponseStatus,this.Attachment});
AttachmentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
Attachment = JsonConverters.fromJson(json['Attachment'],'List<Attachment>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'Attachment': JsonConverters.toJson(Attachment,'List<Attachment>',context!)
};
getTypeName() => "AttachmentResponse";
TypeContext? context = _ctx;
}
class RecordAttachmentRequest implements IConvertible
{
String? TableName;
String? FieldName;
int? RecordId;
RecordAttachmentRequest({this.TableName,this.FieldName,this.RecordId});
RecordAttachmentRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
TableName = json['TableName'];
FieldName = json['FieldName'];
RecordId = json['RecordId'];
return this;
}
Map<String, dynamic> toJson() => {
'TableName': TableName,
'FieldName': FieldName,
'RecordId': RecordId
};
getTypeName() => "RecordAttachmentRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'Attachment': TypeInfo(TypeOf.Class, create:() => Attachment()),
'Uint8List': TypeInfo(TypeOf.Class, create:() => Uint8List(0)),
'AttachmentResponse': TypeInfo(TypeOf.Class, create:() => AttachmentResponse()),
'List<Attachment>': TypeInfo(TypeOf.Class, create:() => <Attachment>[]),
'RecordAttachmentRequest': TypeInfo(TypeOf.Class, create:() => RecordAttachmentRequest()),
});
Dart RecordAttachmentRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/Attachment/{TableName}/{FieldName}/{RecordId} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Attachment":[{"AttachmentId":"00000000000000000000000000000000","TableName":"String","FieldName":"String","RecordId":0,"AttachmentName":"String","MimeType":"String","AttachmentData":"AA==","FileSizeInKB":0,"CreatedDate":"0001-01-01T00:00:00.0000000","CreatedBy":"String","NeedsOCR":false,"OCRDate":"0001-01-01T00:00:00.0000000","IsSecurities":false,"AWSKey":"String","PresignedUrl":"String"}]}