GET | /conversations |
---|
"use strict";
/** @typedef {'Incoming'|'Outgoing'} */
export var MessageDirections;
(function (MessageDirections) {
MessageDirections["Incoming"] = "Incoming"
MessageDirections["Outgoing"] = "Outgoing"
})(MessageDirections || (MessageDirections = {}));
export class MessageInfo {
/** @param {{id?:string,accountId?:string,customerId?:string,endpointId?:string,endpointDisplayName?:string,date?:string,direction?:MessageDirections,otherAddress?:string,sender?:string,text?:string,isUnread?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
accountId;
/** @type {string} */
customerId;
/** @type {string} */
endpointId;
/** @type {string} */
endpointDisplayName;
/** @type {string} */
date;
/** @type {MessageDirections} */
direction;
/** @type {string} */
otherAddress;
/** @type {string} */
sender;
/** @type {string} */
text;
/** @type {boolean} */
isUnread;
}
export class ConversationInfo {
/** @param {{id?:string,endpointId?:string,otherAddress?:string,mostRecentMessage?:MessageInfo}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
endpointId;
/** @type {string} */
otherAddress;
/** @type {MessageInfo} */
mostRecentMessage;
}
export class ListConversationsResponse {
/** @param {{conversations?:ConversationInfo[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ConversationInfo[]} */
conversations;
}
export class ListConversations {
/** @param {{accountIds?:string[],endpointIds?:string[],customerIds?:string[],afterDate?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string[]}
* @description The IDs of the account whose conversations you want to retrieve */
accountIds;
/**
* @type {string[]}
* @description The list of endpoint IDs whose conversations you want to retrieve */
endpointIds;
/**
* @type {string[]}
* @description The list of customer IDs whose conversations you want to retrieve */
customerIds;
/**
* @type {string}
* @description The start date for the conversations you want to retrieve */
afterDate;
}
JavaScript ListConversations 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.
GET /conversations HTTP/1.1 Host: team.evovoice.io Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <ListConversationsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Messaging"> <Conversations> <ConversationInfo> <EndpointId>String</EndpointId> <Id>String</Id> <MostRecentMessage> <AccountId>String</AccountId> <CustomerId>String</CustomerId> <Date>String</Date> <Direction>Incoming</Direction> <EndpointDisplayName>String</EndpointDisplayName> <EndpointId>String</EndpointId> <Id>String</Id> <IsUnread>false</IsUnread> <OtherAddress>String</OtherAddress> <Sender>String</Sender> <Text>String</Text> </MostRecentMessage> <OtherAddress>String</OtherAddress> </ConversationInfo> </Conversations> </ListConversationsResponse>