Evo Voice

<back to all web services

ListConversations

Requires Authentication
The following routes are available for this service:
GET/conversations
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*


open class ListConversations
{
    /**
    * The IDs of the account whose conversations you want to retrieve
    */
    @ApiMember(Description="The IDs of the account whose conversations you want to retrieve")
    open var accountIds:ArrayList<String>? = null

    /**
    * The list of endpoint IDs whose conversations you want to retrieve
    */
    @ApiMember(Description="The list of endpoint IDs whose conversations you want to retrieve")
    open var endpointIds:ArrayList<String>? = null

    /**
    * The list of customer IDs whose conversations you want to retrieve
    */
    @ApiMember(Description="The list of customer IDs whose conversations you want to retrieve")
    open var customerIds:ArrayList<String>? = null

    /**
    * The start date for the conversations you want to retrieve
    */
    @ApiMember(Description="The start date for the conversations you want to retrieve")
    open var afterDate:String? = null
}

open class ListConversationsResponse
{
    open var conversations:ArrayList<ConversationInfo>? = null
}

open class ConversationInfo
{
    open var id:String? = null
    open var endpointId:String? = null
    open var otherAddress:String? = null
    open var mostRecentMessage:MessageInfo? = null
}

open class MessageInfo
{
    open var id:String? = null
    open var accountId:String? = null
    open var customerId:String? = null
    open var endpointId:String? = null
    open var endpointDisplayName:String? = null
    open var date:String? = null
    open var direction:MessageDirections? = null
    open var otherAddress:String? = null
    open var sender:String? = null
    open var text:String? = null
    open var isUnread:Boolean? = null
}

enum class MessageDirections
{
    Incoming,
    Outgoing,
}

Kotlin ListConversations DTOs

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

HTTP + JSV

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: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	conversations: 
	[
		{
			id: String,
			endpointId: String,
			otherAddress: String,
			mostRecentMessage: 
			{
				id: String,
				accountId: String,
				customerId: String,
				endpointId: String,
				endpointDisplayName: String,
				date: String,
				direction: Incoming,
				otherAddress: String,
				sender: String,
				text: String,
				isUnread: False
			}
		}
	]
}