| 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: 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>