Trendsic Platform Service

<back to all web services

ConversationDetailRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
POST,OPTIONS/v1/ConversationDetail
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class ConversationDetail implements IConvertible
{
    String? ConversationDetailId;
    String? ConversationHeaderId;
    String? Comment;
    DateTime? DateCreated;
    String? CreatedBy;
    String? CreatedByName;
    String? AttachmentId;
    bool? IsAdminComment;
    bool? IsDeletedComment;

    ConversationDetail({this.ConversationDetailId,this.ConversationHeaderId,this.Comment,this.DateCreated,this.CreatedBy,this.CreatedByName,this.AttachmentId,this.IsAdminComment,this.IsDeletedComment});
    ConversationDetail.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ConversationDetailId = json['ConversationDetailId'];
        ConversationHeaderId = json['ConversationHeaderId'];
        Comment = json['Comment'];
        DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!);
        CreatedBy = json['CreatedBy'];
        CreatedByName = json['CreatedByName'];
        AttachmentId = json['AttachmentId'];
        IsAdminComment = json['IsAdminComment'];
        IsDeletedComment = json['IsDeletedComment'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ConversationDetailId': ConversationDetailId,
        'ConversationHeaderId': ConversationHeaderId,
        'Comment': Comment,
        'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!),
        'CreatedBy': CreatedBy,
        'CreatedByName': CreatedByName,
        'AttachmentId': AttachmentId,
        'IsAdminComment': IsAdminComment,
        'IsDeletedComment': IsDeletedComment
    };

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

class ConversationDetailResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    ConversationDetail? ConversationDetail;

    ConversationDetailResponse({this.ResponseStatus,this.ConversationDetail});
    ConversationDetailResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class ConversationDetailRequest implements IConvertible
{
    ConversationDetail? ConversationDetail;
    String? ConversationHeaderId;
    String? AttachmentComment;

    ConversationDetailRequest({this.ConversationDetail,this.ConversationHeaderId,this.AttachmentComment});
    ConversationDetailRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ConversationDetail = JsonConverters.fromJson(json['ConversationDetail'],'ConversationDetail',context!);
        ConversationHeaderId = json['ConversationHeaderId'];
        AttachmentComment = json['AttachmentComment'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ConversationDetail': JsonConverters.toJson(ConversationDetail,'ConversationDetail',context!),
        'ConversationHeaderId': ConversationHeaderId,
        'AttachmentComment': AttachmentComment
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'ConversationDetail': TypeInfo(TypeOf.Class, create:() => ConversationDetail()),
    'ConversationDetailResponse': TypeInfo(TypeOf.Class, create:() => ConversationDetailResponse()),
    'ConversationDetailRequest': TypeInfo(TypeOf.Class, create:() => ConversationDetailRequest()),
});

Dart ConversationDetailRequest DTOs

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

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/ConversationDetail HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"ConversationDetail":{"ConversationDetailId":"00000000000000000000000000000000","ConversationHeaderId":"00000000000000000000000000000000","Comment":"String","DateCreated":"0001-01-01T00:00:00.0000000+00:00","CreatedBy":"00000000000000000000000000000000","CreatedByName":"String","AttachmentId":"00000000000000000000000000000000","IsAdminComment":false,"IsDeletedComment":false},"ConversationHeaderId":"00000000000000000000000000000000","AttachmentComment":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"ConversationDetail":{"ConversationDetailId":"00000000000000000000000000000000","ConversationHeaderId":"00000000000000000000000000000000","Comment":"String","DateCreated":"0001-01-01T00:00:00.0000000+00:00","CreatedBy":"00000000000000000000000000000000","CreatedByName":"String","AttachmentId":"00000000000000000000000000000000","IsAdminComment":false,"IsDeletedComment":false}}