Portal

<back to all web services

BrowseUser

Requires Authentication
Requires any of the roles:VeoliaAdmin, SupplierAdmin, UserRegistration, User
The following routes are available for this service:
GET/user/{userid}
namespace Portal.Common

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type ResponseBase() = 
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type ModifyRequestBase() = 
        member val ConcurrencyStamp:String = null with get,set

    type ApplicationUserStatus =
        | Registered = 0
        | ConfirmedByUser = 1
        | SupplierUserRegistered = 2
        | AwaitingSupplierConfirmation = 3
        | AwaitingVeoliaConfirmation = 4
        | Active = 5
        | Rejected = 6
        | Deleted = 7

    [<AllowNullLiteral>]
    type UserDetails() = 
        inherit ModifyRequestBase()
        member val Id:Int32 = new Int32() with get,set
        member val Email:String = null with get,set
        member val UserName:String = null with get,set
        member val PhoneNumber:String = null with get,set
        member val DisplayName:String = null with get,set
        member val PhoneNumberExtension:String = null with get,set
        member val PhoneNumberCountryCodeId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val PhoneNumberCountryCode:String = null with get,set
        member val MobilePhoneNumber:String = null with get,set
        member val MobilePhoneNumberCountryCodeId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val MobilePhoneNumberCountryCode:String = null with get,set
        member val OrganizationUnit:String = null with get,set
        member val Position:String = null with get,set
        member val Status:ApplicationUserStatus = new ApplicationUserStatus() with get,set
        member val SupplierId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SupplierOwnerId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set
        member val Roles:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val IsSupplierAdmin:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type BrowseUserResponse() = 
        inherit ResponseBase()
        member val User:UserDetails = null with get,set

    [<AllowNullLiteral>]
    type BrowseUser() = 
        interface IGet
        member val UserId:Int32 = new Int32() with get,set

F# BrowseUser 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 /user/{userid} HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	"User": 
	{
		"Id": 0,
		"Email": "String",
		"UserName": "String",
		"PhoneNumber": "String",
		"DisplayName": "String",
		"PhoneNumberExtension": "String",
		"PhoneNumberCountryCodeId": 0,
		"PhoneNumberCountryCode": "String",
		"MobilePhoneNumber": "String",
		"MobilePhoneNumberCountryCodeId": 0,
		"MobilePhoneNumberCountryCode": "String",
		"OrganizationUnit": "String",
		"Position": "String",
		"Status": 0,
		"SupplierId": 0,
		"SupplierOwnerId": 0,
		"Meta": 
		{
			"String": "String"
		},
		"Roles": 
		[
			"String"
		],
		"IsSupplierAdmin": true,
		"ConcurrencyStamp": "String"
	},
	"ResponseStatus": 
	{
		"ErrorCode": "String",
		"Message": "String",
		"StackTrace": "String",
		"Errors": 
		[
			{
				"ErrorCode": "String",
				"FieldName": "String",
				"Message": "String",
				"Meta": 
				{
					"String": "String"
				}
			}
		],
		"Meta": 
		{
			"String": "String"
		}
	}
}