| Required role: | API |
| All Verbs | /api/Query/Message |
|---|
import Foundation
import ServiceStack
// @AutoQueryViewer(Description="", IconUrl="octicon:database", Title="Message")
public class FindMessage : QueryDb<MessageInstance>
{
required public init(){ super.init() }
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
}
}
public class MessageInstance : Codable
{
public var messageId:Int?
public var dueDate:Date?
public var sentDate:Date?
public var processed:Bool?
public var failures:Int?
public var instanceId:Int?
public var messageSid:String?
public var messageTemplate:MessageTemplateInstance?
// @References(typeof(MessageTemplateInstance))
public var messageTemplateId:Int?
public var openedDate:Date?
public var bouncedDate:Date?
public var deliveredDate:Date?
public var unsubscribedDate:Date?
public var spamReportDate:Date?
public var user:UserInstance?
// @References(typeof(UserInstance))
public var userId:Int?
public var instanceType:Int?
required public init(){}
}
public class MessageTemplateInstance : Codable
{
public var messageTemplateId:Int?
public var name:String?
public var subject:String?
public var body:String?
public var reportId:Int?
public var templateType:Int?
public var created:Date?
public var createdBy:Int?
public var modified:Date?
public var modifiedBy:Int?
public var deleted:Date?
public var deletedBy:Int?
public var eventType:Int?
public var contentType:Int?
public var hidden:Bool?
public var parentMessageTemplateId:Int?
public var inclusionTags:String?
public var exclusionTags:String?
required public init(){}
}
public class UserInstance : Codable
{
public var userId:Int?
public var userName:String?
public var name:String?
public var email:String?
public var mobilePhone:String?
public var enabled:Bool?
public var lastLogin:Date?
public var created:Date?
public var training:Bool?
public var deleted:Bool?
public var coursesCompleted:Int?
public var displayHomeNotification:Bool?
public var twoFactorEnabled:Bool?
public var emailConfirmed:Bool?
public var mobilePhoneConfirmed:Bool?
public var notifications:Bool?
public var changePassword:Date?
public var activated:Date?
required public init(){}
}
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 /api/Query/Message HTTP/1.1
Host: api.clubmanagercentral.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Skip: 0,
Take: 0,
OrderBy: String,
OrderByDesc: String,
Include: String,
Fields: String,
Meta:
{
String: String
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Offset: 0,
Total: 0,
Results:
[
{
MessageId: 0,
DueDate: 0001-01-01,
SentDate: 0001-01-01,
Processed: False,
Failures: 0,
InstanceId: 0,
MessageSid: String,
MessageTemplate:
{
MessageTemplateId: 0,
Name: String,
Subject: String,
Body: String,
ReportId: 0,
TemplateType: 0,
Created: 0001-01-01,
CreatedBy: 0,
Modified: 0001-01-01,
ModifiedBy: 0,
Deleted: 0001-01-01,
DeletedBy: 0,
EventType: 0,
ContentType: 0,
Hidden: False,
ParentMessageTemplateId: 0,
InclusionTags: String,
ExclusionTags: String
},
MessageTemplateId: 0,
OpenedDate: 0001-01-01,
BouncedDate: 0001-01-01,
DeliveredDate: 0001-01-01,
UnsubscribedDate: 0001-01-01,
SpamReportDate: 0001-01-01,
User:
{
UserId: 0,
UserName: String,
Name: String,
Email: String,
MobilePhone: String,
Enabled: False,
LastLogin: 0001-01-01,
Created: 0001-01-01,
Training: False,
Deleted: False,
CoursesCompleted: 0,
DisplayHomeNotification: False,
TwoFactorEnabled: False,
EmailConfirmed: False,
MobilePhoneConfirmed: False,
Notifications: False,
ChangePassword: 0001-01-01,
Activated: 0001-01-01
},
UserId: 0,
InstanceType: 0
}
],
Meta:
{
String: String
},
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}