Cochrane+ App API

<back to all web services

GetDashboardInfo

Requires Authentication
The following routes are available for this service:
GET/dashboard/info
import java.math.*
import java.util.*
import net.servicestack.client.*


open class GetDashboardInfo : ApiServiceRequest()
{
}

open class ApiServiceRequest : IServiceRequest, IHasApiKey, IHasDeviceInfo
{
    /**
    * The API Key required for authentication
    */
    @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
    var apiKey:String? = null

    /**
    * Latitude of the user making this request
    */
    @ApiMember(DataType="double", Description="Latitude of the user making this request")
    var latitude:Double? = null

    /**
    * Longitude of the user making this request
    */
    @ApiMember(DataType="double", Description="Longitude of the user making this request")
    var longitude:Double? = null
}

open class GetDashboardInfoResponse : ApiServiceResponse()
{
    var unreadNotificationCount:Int? = null
    var nextMeetingDate:String? = null
    var totalMeetingsToday:Int? = null
    var outstandingRatingsCount:Int? = null
    var usersAverageRating:Double? = null
    var hasSharedRatings:Boolean? = null
    var isSalesPerson:Boolean? = null
    var usersRatingTotalVotes:Int? = null
    var usersRatingPosition:Int? = null
    var teamIds:ArrayList<Int> = ArrayList<Int>()
    var nextMeeting:MeetingData? = null
    var attendanceEventType:AttendanceEventType? = null
    var outstandingDebriefsToReviewCount:Int? = null
    var outstandingTemplateApprovalsCount:Int? = null
}

open class ApiServiceResponse : IServiceResponse
{
    var description:String? = null
    var heading:String? = null
    var wasSuccessful:Boolean? = null
    var modelState:Object? = null
}

open class MeetingData
{
    var meetingId:Int? = null
    var startTime:String? = null
    var arrivalTime:String? = null
    var leftTime:String? = null
    var duration:String? = null
    var showTimeFields:Boolean? = null
    var arrivalStatus:String? = null
    var email:String? = null
    var hasEmail:Boolean? = null
    var contactName:String? = null
    var latitude:Double? = null
    var longitude:Double? = null
    var location:String? = null
    var address:String? = null
    var subject:String? = null
    var description:String? = null
    var endTime:String? = null
    var company:String? = null
    var contactNumber:String? = null
    var hasContactNumber:Boolean? = null
    var hasLocation:Boolean? = null
    var setBy:String? = null
    var virtualOrInPerson:String? = null
}

enum class AttendanceEventType(val value:Int)
{
    @SerializedName("0") ClockOut(0),
    @SerializedName("1") ClockIn(1),
    @SerializedName("2") StartLunch(2),
    @SerializedName("3") EndLunch(3),
    @SerializedName("4") StartBreak(4),
    @SerializedName("5") EndBreak(5),
}

Kotlin GetDashboardInfo 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 /dashboard/info HTTP/1.1 
Host: cochraneplus-api-dev.happen.zone 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	unreadNotificationCount: 0,
	nextMeetingDate: String,
	totalMeetingsToday: 0,
	outstandingRatingsCount: 0,
	usersAverageRating: 0,
	hasSharedRatings: False,
	isSalesPerson: False,
	usersRatingTotalVotes: 0,
	usersRatingPosition: 0,
	teamIds: 
	[
		0
	],
	nextMeeting: 
	{
		meetingId: 0,
		startTime: String,
		arrivalTime: String,
		leftTime: String,
		duration: String,
		showTimeFields: False,
		arrivalStatus: String,
		email: String,
		hasEmail: True,
		contactName: String,
		latitude: 0,
		longitude: 0,
		location: String,
		address: String,
		subject: String,
		description: String,
		endTime: String,
		company: String,
		contactNumber: String,
		hasContactNumber: True,
		hasLocation: False,
		setBy: String,
		virtualOrInPerson: String
	},
	attendanceEventType: 0,
	outstandingDebriefsToReviewCount: 0,
	outstandingTemplateApprovalsCount: 0,
	description: String,
	heading: String,
	wasSuccessful: False,
	modelState: {}
}