GET | /conversations |
---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Voice.Api.Messaging;
namespace Voice.Api.Messaging
{
public partial class ConversationInfo
{
public virtual string Id { get; set; }
public virtual string EndpointId { get; set; }
public virtual string OtherAddress { get; set; }
public virtual MessageInfo MostRecentMessage { get; set; }
}
public partial class ListConversations
{
///<summary>
///The IDs of the account whose conversations you want to retrieve
///</summary>
[ApiMember(Description="The IDs of the account whose conversations you want to retrieve")]
public virtual List<string> AccountIds { get; set; }
///<summary>
///The list of endpoint IDs whose conversations you want to retrieve
///</summary>
[ApiMember(Description="The list of endpoint IDs whose conversations you want to retrieve")]
public virtual List<string> EndpointIds { get; set; }
///<summary>
///The list of customer IDs whose conversations you want to retrieve
///</summary>
[ApiMember(Description="The list of customer IDs whose conversations you want to retrieve")]
public virtual List<string> CustomerIds { get; set; }
///<summary>
///The start date for the conversations you want to retrieve
///</summary>
[ApiMember(Description="The start date for the conversations you want to retrieve")]
public virtual string AfterDate { get; set; }
}
public partial class ListConversationsResponse
{
public virtual List<ConversationInfo> Conversations { get; set; }
}
public enum MessageDirections
{
Incoming,
Outgoing,
}
public partial class MessageInfo
{
public virtual string Id { get; set; }
public virtual string AccountId { get; set; }
public virtual string CustomerId { get; set; }
public virtual string EndpointId { get; set; }
public virtual string EndpointDisplayName { get; set; }
public virtual string Date { get; set; }
public virtual MessageDirections Direction { get; set; }
public virtual string OtherAddress { get; set; }
public virtual string Sender { get; set; }
public virtual string Text { get; set; }
public virtual bool IsUnread { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=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 } } ] }