Trendsic Platform Service

<back to all web services

ChatRequest

Requires Authentication
Requires any of the roles:Agent, Administrator, Agent, Administrator, Agent, Administrator
The following routes are available for this service:
PUT,OPTIONS/v1/Chat/{ChatId}
GET,POST,OPTIONS/v1/Chat
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class ChatRequest
    {
        public UUID ChatId = null;
        public Chat Chat = null;
        
        public UUID getChatId() { return ChatId; }
        public ChatRequest setChatId(UUID value) { this.ChatId = value; return this; }
        public Chat getChat() { return Chat; }
        public ChatRequest setChat(Chat value) { this.Chat = value; return this; }
    }

    public static class Chat
    {
        public UUID ChatId = null;
        public String ChatName = null;
        public UUID CreatedBy = null;
        public Date DateCreated = null;
        public ArrayList<ChatMember> ChatMembers = new ArrayList<ChatMember>();
        public Boolean IsArchived = null;
        public Integer MemberCount = null;
        public Integer MessageCount = null;
        public Integer UnreadCount = null;
        public String CreatedByName = null;
        
        public UUID getChatId() { return ChatId; }
        public Chat setChatId(UUID value) { this.ChatId = value; return this; }
        public String getChatName() { return ChatName; }
        public Chat setChatName(String value) { this.ChatName = value; return this; }
        public UUID getCreatedBy() { return CreatedBy; }
        public Chat setCreatedBy(UUID value) { this.CreatedBy = value; return this; }
        public Date getDateCreated() { return DateCreated; }
        public Chat setDateCreated(Date value) { this.DateCreated = value; return this; }
        public ArrayList<ChatMember> getChatMembers() { return ChatMembers; }
        public Chat setChatMembers(ArrayList<ChatMember> value) { this.ChatMembers = value; return this; }
        public Boolean getIsArchived() { return IsArchived; }
        public Chat setIsArchived(Boolean value) { this.IsArchived = value; return this; }
        public Integer getMemberCount() { return MemberCount; }
        public Chat setMemberCount(Integer value) { this.MemberCount = value; return this; }
        public Integer getMessageCount() { return MessageCount; }
        public Chat setMessageCount(Integer value) { this.MessageCount = value; return this; }
        public Integer getUnreadCount() { return UnreadCount; }
        public Chat setUnreadCount(Integer value) { this.UnreadCount = value; return this; }
        public String getCreatedByName() { return CreatedByName; }
        public Chat setCreatedByName(String value) { this.CreatedByName = value; return this; }
    }

    public static class ChatMember
    {
        public UUID ChatMemberId = null;
        public UUID ChatId = null;
        public UUID UserId = null;
        public Boolean IsActive = null;
        public Boolean IsArchived = null;
        public UUID LastChatMessageId = null;
        public String ChatMemberName = null;
        
        public UUID getChatMemberId() { return ChatMemberId; }
        public ChatMember setChatMemberId(UUID value) { this.ChatMemberId = value; return this; }
        public UUID getChatId() { return ChatId; }
        public ChatMember setChatId(UUID value) { this.ChatId = value; return this; }
        public UUID getUserId() { return UserId; }
        public ChatMember setUserId(UUID value) { this.UserId = value; return this; }
        public Boolean getIsActive() { return IsActive; }
        public ChatMember setIsActive(Boolean value) { this.IsActive = value; return this; }
        public Boolean getIsArchived() { return IsArchived; }
        public ChatMember setIsArchived(Boolean value) { this.IsArchived = value; return this; }
        public UUID getLastChatMessageId() { return LastChatMessageId; }
        public ChatMember setLastChatMessageId(UUID value) { this.LastChatMessageId = value; return this; }
        public String getChatMemberName() { return ChatMemberName; }
        public ChatMember setChatMemberName(String value) { this.ChatMemberName = value; return this; }
    }

    public static class ChatResponse
    {
        public ResponseStatus ResponseStatus = null;
        public ArrayList<Chat> Chat = new ArrayList<Chat>();
        
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public ChatResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
        public ArrayList<Chat> getChat() { return Chat; }
        public ChatResponse setChat(ArrayList<Chat> value) { this.Chat = value; return this; }
    }

}

Java ChatRequest 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.

POST /v1/Chat HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	ChatId: 00000000000000000000000000000000,
	Chat: 
	{
		ChatId: 00000000000000000000000000000000,
		ChatName: String,
		CreatedBy: 00000000000000000000000000000000,
		DateCreated: 0001-01-01,
		ChatMembers: 
		[
			{
				ChatMemberId: 00000000000000000000000000000000,
				ChatId: 00000000000000000000000000000000,
				UserId: 00000000000000000000000000000000,
				IsActive: False,
				IsArchived: False,
				LastChatMessageId: 00000000000000000000000000000000,
				ChatMemberName: String
			}
		],
		IsArchived: False,
		MemberCount: 0,
		MessageCount: 0,
		UnreadCount: 0,
		CreatedByName: String
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	Chat: 
	[
		{
			ChatId: 00000000000000000000000000000000,
			ChatName: String,
			CreatedBy: 00000000000000000000000000000000,
			DateCreated: 0001-01-01,
			ChatMembers: 
			[
				{
					ChatMemberId: 00000000000000000000000000000000,
					ChatId: 00000000000000000000000000000000,
					UserId: 00000000000000000000000000000000,
					IsActive: False,
					IsArchived: False,
					LastChatMessageId: 00000000000000000000000000000000,
					ChatMemberName: String
				}
			],
			IsArchived: False,
			MemberCount: 0,
			MessageCount: 0,
			UnreadCount: 0,
			CreatedByName: String
		}
	]
}