| Requires any of the roles: | Agent, Administrator |
| GET | /v1/Conversation/{TableName}/{FieldName}/{RecordId} |
|---|
"use strict";
export class ConversationHeader {
/** @param {{ConversationHeaderId?:string,TableName?:string,FieldName?:string,RecordId?:number,AgentHasRead?:boolean,AdminHasRead?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ConversationHeaderId;
/** @type {string} */
TableName;
/** @type {string} */
FieldName;
/** @type {number} */
RecordId;
/** @type {boolean} */
AgentHasRead;
/** @type {boolean} */
AdminHasRead;
}
export class ConversationDetail {
/** @param {{ConversationDetailId?:string,ConversationHeaderId?:string,Comment?:string,DateCreated?:string,CreatedBy?:string,CreatedByName?:string,AttachmentId?:string,IsAdminComment?:boolean,IsDeletedComment?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ConversationDetailId;
/** @type {string} */
ConversationHeaderId;
/** @type {string} */
Comment;
/** @type {string} */
DateCreated;
/** @type {string} */
CreatedBy;
/** @type {string} */
CreatedByName;
/** @type {string} */
AttachmentId;
/** @type {boolean} */
IsAdminComment;
/** @type {boolean} */
IsDeletedComment;
}
export class Conversation extends ConversationHeader {
/** @param {{Details?:ConversationDetail[],ConversationHeaderId?:string,TableName?:string,FieldName?:string,RecordId?:number,AgentHasRead?:boolean,AdminHasRead?:boolean}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {ConversationDetail[]} */
Details = [];
}
export class ConversationResponse {
/** @param {{ResponseStatus?:ResponseStatus,Conversation?:Conversation}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseStatus} */
ResponseStatus;
/** @type {Conversation} */
Conversation;
}
export class ConversationRequest {
/** @param {{TableName?:string,FieldName?:string,RecordId?:number,ReadFlag?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
TableName;
/** @type {string} */
FieldName;
/** @type {number} */
RecordId;
/** @type {boolean} */
ReadFlag;
}
JavaScript ConversationRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/Conversation/{TableName}/{FieldName}/{RecordId} 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
}
},
Conversation:
{
Details:
[
{
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,
TableName: String,
FieldName: String,
RecordId: 0,
AgentHasRead: False,
AdminHasRead: False
}
}