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 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")
    var accountIds:ArrayList<String> = ArrayList<String>()

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

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

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

open class ListConversationsResponse
{
    var conversations:ArrayList<ConversationInfo> = ArrayList<ConversationInfo>()
}

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

open class MessageInfo
{
    var id:String? = null
    var accountId:String? = null
    var customerId:String? = null
    var endpointId:String? = null
    var endpointDisplayName:String? = null
    var date:String? = null
    var direction:MessageDirections? = null
    var otherAddress:String? = null
    var sender:String? = null
    var text:String? = null
    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: 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
			}
		}
	]
}