Evo Voice

<back to all web services

ListConversations

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


export class NodeParameterMap
{
    [key:string] : NodeParameter;

    public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); }
}


export enum MessageDirections
{
    Incoming = 'Incoming',
    Outgoing = 'Outgoing',
}

export class MessageInfo
{
    public id: string;
    public accountId: string;
    public customerId: string;
    public endpointId: string;
    public endpointDisplayName: string;
    public date: string;
    public direction: MessageDirections;
    public otherAddress: string;
    public sender: string;
    public text: string;
    public isUnread: boolean;

    public constructor(init?: Partial<MessageInfo>) { (Object as any).assign(this, init); }
}

export class ConversationInfo
{
    public id: string;
    public endpointId: string;
    public otherAddress: string;
    public mostRecentMessage: MessageInfo;

    public constructor(init?: Partial<ConversationInfo>) { (Object as any).assign(this, init); }
}

export class ListConversationsResponse
{
    public conversations: ConversationInfo[];

    public constructor(init?: Partial<ListConversationsResponse>) { (Object as any).assign(this, init); }
}

export class ListConversations
{
    /** @description 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 accountIds: string[];

    /** @description 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 endpointIds: string[];

    /** @description 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 customerIds: string[];

    /** @description The start date for the conversations you want to retrieve */
    // @ApiMember(Description="The start date for the conversations you want to retrieve")
    public afterDate: string;

    public constructor(init?: Partial<ListConversations>) { (Object as any).assign(this, init); }
}

TypeScript 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
			}
		}
	]
}