BokaMera.API.Host

<back to all web services

UpdateUser

Requires Authentication
The following routes are available for this service:
PUT/usersUpdate my informationUpdates the logged in users info both in customer profile and application admin profile if any exists. Users are only allowed to update their own info.
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BokaMera.API.ServiceModel.Dtos
Imports BokaMera.API.ServiceModel.Enums

Namespace Global

    Namespace BokaMera.API.ServiceModel.Dtos

        Public Partial Class AdminProfile
            Public Overridable Property CompanyId As Guid
            Public Overridable Property Id As Guid
            Public Overridable Property Firstname As String
            Public Overridable Property Lastname As String
            Public Overridable Property Email As String
            Public Overridable Property WorkerId As String
            Public Overridable Property Phone As String
        End Class

        Public Partial Class UpdateAdminProfile
            Public Overridable Property Firstname As String
            Public Overridable Property Lastname As String
            Public Overridable Property Phone As String
            Public Overridable Property Email As String
        End Class

        Public Partial Class UpdateCustomerProfile
            Public Overridable Property Firstname As String
            Public Overridable Property Lastname As String
            Public Overridable Property Phone As String
            Public Overridable Property Email As String
        End Class

        <ApiResponse(Description:="Returned if there is a validation error on the input parameters", StatusCode:=400)>
        <ApiResponse(Description:="Returned if the current user is not allowed to perform the action", StatusCode:=401)>
        <ValidateRequest(Validator:="IsAuthenticated")>
        Public Partial Class UpdateUser
            '''<Summary>
            '''The user id for your profile.
            '''</Summary>
            <ApiMember(Description:="The user id for your profile.")>
            Public Overridable Property UserId As Nullable(Of Guid)

            Public Overridable Property NewEmail As String
            Public Overridable Property UserProfile As UpdateCustomerProfile
            Public Overridable Property AdminProfile As UpdateAdminProfile
            '''<Summary>
            '''The user realm for identity server.  BookMore = 1, BookMoreAdmin = 2 
            '''</Summary>
            <ApiMember(Description:="The user realm for identity server.  BookMore = 1, BookMoreAdmin = 2 ", IsRequired:=true)>
            Public Overridable Property Realm As KeyCloakRealm
        End Class

        Public Partial Class UpdateUserResponse
            Public Overridable Property ResponseStatus As Object
            '''<Summary>
            '''The user id for your profile.
            '''</Summary>
            <ApiMember(Description:="The user id for your profile.", IsRequired:=true)>
            Public Overridable Property UserId As Nullable(Of Guid)

            Public Overridable Property UserProfile As UserProfileResponse
            Public Overridable Property AdminProfile As AdminProfile
            Public Overridable Property IsSentConfirmationUpdateEmail As Nullable(Of Boolean)
        End Class

        Public Partial Class UserProfileResponse
            Public Overridable Property Id As Guid
            Public Overridable Property Firstname As String
            Public Overridable Property Lastname As String
            Public Overridable Property Phone As String
            Public Overridable Property Email As String
        End Class
    End Namespace

    Namespace BokaMera.API.ServiceModel.Enums

        Public Enum KeyCloakRealm
            BookMore = 1
            BookMoreAdmin = 2
            SuperAdmin = 3
        End Enum
    End Namespace
End Namespace

VB.NET UpdateUser 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.

PUT /users HTTP/1.1 
Host: api.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"UserId":"00000000-0000-0000-0000-000000000000","NewEmail":"String","UserProfile":{"Firstname":"String","Lastname":"String","Phone":"String","Email":"String"},"AdminProfile":{"Firstname":"String","Lastname":"String","Phone":"String","Email":"String"},"Realm":"BookMore"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{},"UserId":"00000000-0000-0000-0000-000000000000","UserProfile":{"Firstname":"String","Lastname":"String","Phone":"String","Email":"String"},"AdminProfile":{"Firstname":"String","Lastname":"String","Email":"String","WorkerId":"String","Phone":"String"},"IsSentConfirmationUpdateEmail":false}