Cochrane+ App API

<back to all web services

UserLogin

The following routes are available for this service:
POST/user/login
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports WebService.ServiceModel
Imports WebService.ServiceModel.Base
Imports CommonService.Api.Models.Base
Imports BusinessLogic.Entities

Namespace Global

    Namespace BusinessLogic.Entities

        Public Partial Class SystemUserPermission
            Public Overridable Property Meeting As Boolean
            Public Overridable Property Journey As Boolean
            Public Overridable Property Attendance As Boolean
            Public Overridable Property NotificationCenter As Boolean
            Public Overridable Property InternalRating As Boolean
            Public Overridable Property Debrief As Boolean
            Public Overridable Property ThunderBoltActions As Boolean
            Public Overridable Property OnTheMove As Boolean
        End Class
    End Namespace

    Namespace CommonService.Api.Models.Base

        Public Partial Class ApiServiceResponse
            Implements IServiceResponse
            Public Overridable Property Description As String
            Public Overridable Property Heading As String
            Public Overridable Property WasSuccessful As Boolean
            Public Overridable Property ModelState As Object
        End Class
    End Namespace

    Namespace WebService.ServiceModel

        Public Partial Class AppSettings
            Public Overridable Property AllowAbstainRatings As Boolean
            Public Overridable Property ShowMoodIndicatorOnApp As Boolean
            Public Overridable Property TakePhotoForAnalysis As Boolean
        End Class

        Public Partial Class UserLogin
            Inherits ApiServiceRequest
            Public Overridable Property Username As String
            Public Overridable Property Password As String
            Public Overridable Property UtcOffset As Integer
        End Class

        Public Partial Class UserLoginResponse
            Inherits ApiServiceResponse
            Public Sub New()
                FeelingStatusMappings = New String(){}
            End Sub

            Public Overridable Property AllowAttendanceOnLaptop As Boolean
            Public Overridable Property ProfileImageUrl As String
            Public Overridable Property FriendlyName As String
            Public Overridable Property SystemUserId As Integer
            Public Overridable Property Username As String
            Public Overridable Property Permissions As SystemUserPermission
            Public Overridable Property Settings As AppSettings
            Public Overridable Property StartLatitude As Double
            Public Overridable Property StartLongitude As Double
            Public Overridable Property HasStartLocation As Boolean
            Public Overridable Property EndLatitude As Double
            Public Overridable Property EndLongitude As Double
            Public Overridable Property HasEndLocation As Boolean
            Public Overridable Property IsSalesPerson As Boolean
            Public Overridable Property FeelingStatusMappings As String()
            Public Overridable Property HasAiPermissions As Boolean
            Public Overridable Property RefreshToken As String
            Public Overridable Property IsManagerOrPromotedTo As Boolean
            Public Overridable Property IsTemplateApprover As Boolean
            Public Overridable Property OutstandingApprovals As Integer
        End Class
    End Namespace

    Namespace WebService.ServiceModel.Base

        Public Partial Class ApiServiceRequest
            Implements IServiceRequest
            Implements IHasApiKey
            Implements IHasDeviceInfo
            '''<Summary>
            '''The API Key required for authentication
            '''</Summary>
            <ApiMember(DataType:="string", Description:="The API Key required for authentication", IsRequired:=true)>
            Public Overridable Property ApiKey As String

            '''<Summary>
            '''Latitude of the user making this request
            '''</Summary>
            <ApiMember(DataType:="double", Description:="Latitude of the user making this request")>
            Public Overridable Property Latitude As Double

            '''<Summary>
            '''Longitude of the user making this request
            '''</Summary>
            <ApiMember(DataType:="double", Description:="Longitude of the user making this request")>
            Public Overridable Property Longitude As Double
        End Class
    End Namespace
End Namespace

VB.NET UserLogin DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /user/login HTTP/1.1 
Host: cochraneplus-api-dev.happen.zone 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"username":"String","password":"String","utcOffset":0,"apiKey":"String","latitude":0,"longitude":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"allowAttendanceOnLaptop":false,"profileImageUrl":"String","friendlyName":"String","systemUserId":0,"username":"String","permissions":{"meeting":false,"journey":false,"attendance":false,"notificationCenter":false,"internalRating":false,"debrief":false,"thunderBoltActions":false,"onTheMove":false},"settings":{"allowAbstainRatings":false,"showMoodIndicatorOnApp":false,"takePhotoForAnalysis":false},"startLatitude":0,"startLongitude":0,"hasStartLocation":false,"endLatitude":0,"endLongitude":0,"hasEndLocation":false,"isSalesPerson":false,"feelingStatusMappings":["String"],"hasAiPermissions":false,"refreshToken":"String","isManagerOrPromotedTo":false,"isTemplateApprover":false,"outstandingApprovals":0,"description":"String","heading":"String","wasSuccessful":false,"modelState":{}}