Trendsic Platform Service

<back to all web services

CustomerThreadPostRequest

The following routes are available for this service:
POST/v1/c/thread/{Kind}/{RefId}
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class CustomerThreadPostRequest
    {
        public String Kind = null;
        public Integer RefId = null;
        public Integer WorkerContactId = null;
        public String Body = null;
        
        public String getKind() { return Kind; }
        public CustomerThreadPostRequest setKind(String value) { this.Kind = value; return this; }
        public Integer getRefId() { return RefId; }
        public CustomerThreadPostRequest setRefId(Integer value) { this.RefId = value; return this; }
        public Integer getWorkerContactId() { return WorkerContactId; }
        public CustomerThreadPostRequest setWorkerContactId(Integer value) { this.WorkerContactId = value; return this; }
        public String getBody() { return Body; }
        public CustomerThreadPostRequest setBody(String value) { this.Body = value; return this; }
    }

    public static class CustomerThreadResponse
    {
        public ArrayList<JobThreadView> Threads = new ArrayList<JobThreadView>();
        public ArrayList<ProblemReasonView> ProblemReasons = new ArrayList<ProblemReasonView>();
        public String Message = null;
        public ResponseStatus ResponseStatus = null;
        
        public ArrayList<JobThreadView> getThreads() { return Threads; }
        public CustomerThreadResponse setThreads(ArrayList<JobThreadView> value) { this.Threads = value; return this; }
        public ArrayList<ProblemReasonView> getProblemReasons() { return ProblemReasons; }
        public CustomerThreadResponse setProblemReasons(ArrayList<ProblemReasonView> value) { this.ProblemReasons = value; return this; }
        public String getMessage() { return Message; }
        public CustomerThreadResponse setMessage(String value) { this.Message = value; return this; }
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public CustomerThreadResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
    }

    public static class JobThreadView
    {
        public Integer Id = null;
        public String Kind = null;
        public Integer RefId = null;
        public String RefCode = null;
        public Integer WorkerContactId = null;
        public String Who = null;
        public Boolean Closed = null;
        public String ClosesLocal = null;
        public Integer Unread = null;
        public String Note = null;
        public ArrayList<String> QuickReplies = new ArrayList<String>();
        public ArrayList<JobThreadMessageView> Messages = new ArrayList<JobThreadMessageView>();
        
        public Integer getId() { return Id; }
        public JobThreadView setId(Integer value) { this.Id = value; return this; }
        public String getKind() { return Kind; }
        public JobThreadView setKind(String value) { this.Kind = value; return this; }
        public Integer getRefId() { return RefId; }
        public JobThreadView setRefId(Integer value) { this.RefId = value; return this; }
        public String getRefCode() { return RefCode; }
        public JobThreadView setRefCode(String value) { this.RefCode = value; return this; }
        public Integer getWorkerContactId() { return WorkerContactId; }
        public JobThreadView setWorkerContactId(Integer value) { this.WorkerContactId = value; return this; }
        public String getWho() { return Who; }
        public JobThreadView setWho(String value) { this.Who = value; return this; }
        public Boolean isClosed() { return Closed; }
        public JobThreadView setClosed(Boolean value) { this.Closed = value; return this; }
        public String getClosesLocal() { return ClosesLocal; }
        public JobThreadView setClosesLocal(String value) { this.ClosesLocal = value; return this; }
        public Integer getUnread() { return Unread; }
        public JobThreadView setUnread(Integer value) { this.Unread = value; return this; }
        public String getNote() { return Note; }
        public JobThreadView setNote(String value) { this.Note = value; return this; }
        public ArrayList<String> getQuickReplies() { return QuickReplies; }
        public JobThreadView setQuickReplies(ArrayList<String> value) { this.QuickReplies = value; return this; }
        public ArrayList<JobThreadMessageView> getMessages() { return Messages; }
        public JobThreadView setMessages(ArrayList<JobThreadMessageView> value) { this.Messages = value; return this; }
    }

    public static class JobThreadMessageView
    {
        public Integer Id = null;
        public String Party = null;
        public Boolean Mine = null;
        public String Who = null;
        public String Body = null;
        public Boolean ViaVoice = null;
        public Boolean IsStatusChip = null;
        public String ChipKey = null;
        public Date SentUtc = null;
        public String SentLocal = null;
        public Boolean Seen = null;
        
        public Integer getId() { return Id; }
        public JobThreadMessageView setId(Integer value) { this.Id = value; return this; }
        public String getParty() { return Party; }
        public JobThreadMessageView setParty(String value) { this.Party = value; return this; }
        public Boolean isMine() { return Mine; }
        public JobThreadMessageView setMine(Boolean value) { this.Mine = value; return this; }
        public String getWho() { return Who; }
        public JobThreadMessageView setWho(String value) { this.Who = value; return this; }
        public String getBody() { return Body; }
        public JobThreadMessageView setBody(String value) { this.Body = value; return this; }
        public Boolean isViaVoice() { return ViaVoice; }
        public JobThreadMessageView setViaVoice(Boolean value) { this.ViaVoice = value; return this; }
        public Boolean getIsStatusChip() { return IsStatusChip; }
        public JobThreadMessageView setIsStatusChip(Boolean value) { this.IsStatusChip = value; return this; }
        public String getChipKey() { return ChipKey; }
        public JobThreadMessageView setChipKey(String value) { this.ChipKey = value; return this; }
        public Date getSentUtc() { return SentUtc; }
        public JobThreadMessageView setSentUtc(Date value) { this.SentUtc = value; return this; }
        public String getSentLocal() { return SentLocal; }
        public JobThreadMessageView setSentLocal(String value) { this.SentLocal = value; return this; }
        public Boolean isSeen() { return Seen; }
        public JobThreadMessageView setSeen(Boolean value) { this.Seen = value; return this; }
    }

    public static class ProblemReasonView
    {
        public String Key = null;
        public String Label = null;
        
        public String getKey() { return Key; }
        public ProblemReasonView setKey(String value) { this.Key = value; return this; }
        public String getLabel() { return Label; }
        public ProblemReasonView setLabel(String value) { this.Label = value; return this; }
    }

}

Java CustomerThreadPostRequest 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/c/thread/{Kind}/{RefId} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Kind: String,
	RefId: 0,
	WorkerContactId: 0,
	Body: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Threads: 
	[
		{
			Id: 0,
			Kind: String,
			RefId: 0,
			RefCode: String,
			WorkerContactId: 0,
			Who: String,
			Closed: False,
			ClosesLocal: String,
			Unread: 0,
			Note: String,
			QuickReplies: 
			[
				String
			],
			Messages: 
			[
				{
					Id: 0,
					Party: String,
					Mine: False,
					Who: String,
					Body: String,
					ViaVoice: False,
					IsStatusChip: False,
					ChipKey: String,
					SentUtc: 0001-01-01,
					SentLocal: String,
					Seen: False
				}
			]
		}
	],
	ProblemReasons: 
	[
		{
			Key: String,
			Label: String
		}
	],
	Message: String,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}