tvpl.api

<back to all web services

GetNotificationFilter

Lấy danh sách các Notification mới nhất của người dùng hiện tại

Requires Authentication
The following routes are available for this service:
GET/notificationsLấy danh sách các Notification mới nhất
import java.math.*
import java.util.*
import net.servicestack.client.*


/**
* Lấy danh sách các Notification mới nhất của người dùng hiện tại
*/
open class GetNotificationFilter : PagingRequest(), IGet
{
    var filter:NotificationFilter? = null
}

open class PagingRequest
{
    var page:Int? = null
    var limit:Int? = null
}

enum class NotificationFilter
{
    Unread,
    All,
}

open class NotificationResponse : IResponseRequest
{
    var code:Int? = null
    var message:String? = null
    var notifications:ArrayList<Notification> = ArrayList<Notification>()
    var unreadCount:Int? = null
    var totalCount:Int? = null
}

open class Notification : IMongoModel
{
    var id:String? = null
    var accountId:Int? = null
    @Required()
    @StringLength(200)
    var title:String? = null

    var message:String? = null
    var payload:String? = null
    var createdOn:Date? = null
    var readOn:Date? = null
    var pushOn:Date? = null
    var deletedOn:Date? = null
}

Kotlin GetNotificationFilter 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.

GET /notifications HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	code: 0,
	message: String,
	notifications: 
	[
		{
			id: String,
			accountId: 0,
			title: String,
			message: String,
			payload: String,
			readOn: "0001-01-01T00:00:00.0000000+07:06",
			pushOn: "0001-01-01T00:00:00.0000000+07:06",
			deletedOn: "0001-01-01T00:00:00.0000000+07:06"
		}
	],
	unreadCount: 0,
	totalCount: 0
}