(* Options: Date: 2026-04-02 10:55:47 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://etc-api.vsmlab.vn //GlobalNamespace: //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //ExportValueTypes: False IncludeTypes: AuthenticateWithKeycloak.* //ExcludeTypes: //InitializeCollections: True //AddNamespaces: *) namespace tvpl.api.ServiceInterface open System open System.Collections open System.Collections.Generic open System.Runtime.Serialization open ServiceStack open ServiceStack.DataAnnotations open ServiceStack.Web open System.IO [] type AuthenticateWithKeycloakResponse() = member val UserId:String = null with get,set member val SessionId:String = null with get,set member val UserName:String = null with get,set member val DisplayName:String = null with get,set member val ReferrerUrl:String = null with get,set member val BearerToken:String = null with get,set member val ProfileUrl:String = null with get,set member val DepartmentId:Nullable = new Nullable() with get,set member val Roles:ResizeArray = new ResizeArray() with get,set member val Permissions:ResizeArray = new ResizeArray() with get,set member val ResponseStatus:ResponseStatus = null with get,set [] [] type AuthenticateWithKeycloak() = interface IReturn member val AccessToken:String = null with get,set