POST | /message | ||
---|---|---|---|
POST | /SendMessage |
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
public static class SendMessage
{
@Validate(Validator="NotEmpty")
public String displayName = null;
@Validate(Validator="NotEmpty")
// @Validate(Validator="Email")
public String email = null;
public String subject = null;
@Validate(Validator="NotEmpty")
public String body = null;
public String getDisplayName() { return displayName; }
public SendMessage setDisplayName(String value) { this.displayName = value; return this; }
public String getEmail() { return email; }
public SendMessage setEmail(String value) { this.email = value; return this; }
public String getSubject() { return subject; }
public SendMessage setSubject(String value) { this.subject = value; return this; }
public String getBody() { return body; }
public SendMessage setBody(String value) { this.body = value; return this; }
}
@DataContract
public static class EmptyResponse
{
@DataMember(Order=1)
public ResponseStatus responseStatus = null;
public ResponseStatus getResponseStatus() { return responseStatus; }
public EmptyResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
}
}
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.
POST /message HTTP/1.1
Host: account.servicestack.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
displayName: String,
email: String,
subject: String,
body: 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 } } }