Evo Voice

<back to all web services

ListConversations

Requires Authentication
The following routes are available for this service:
GET/conversations
import Foundation
import ServiceStack

public class ListConversations : Codable
{
    /**
    * The IDs of the account whose conversations you want to retrieve
    */
    // @ApiMember(Description="The IDs of the account whose conversations you want to retrieve")
    public var accountIds:[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")
    public var endpointIds:[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")
    public var customerIds:[String] = []

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

    required public init(){}
}

public class ListConversationsResponse : Codable
{
    public var conversations:[ConversationInfo] = []

    required public init(){}
}

public class ConversationInfo : Codable
{
    public var id:String?
    public var endpointId:String?
    public var otherAddress:String?
    public var mostRecentMessage:MessageInfo?

    required public init(){}
}

public class MessageInfo : Codable
{
    public var id:String?
    public var accountId:String?
    public var customerId:String?
    public var endpointId:String?
    public var endpointDisplayName:String?
    public var date:String?
    public var direction:MessageDirections?
    public var otherAddress:String?
    public var sender:String?
    public var text:String?
    public var isUnread:Bool?

    required public init(){}
}

public enum MessageDirections : String, Codable
{
    case Incoming
    case Outgoing
}


Swift ListConversations DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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/json
HTTP/1.1 200 OK
Content-Type: application/json
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}}]}