BokaMera.API.Host

<back to all web services

AccessyCodelockCallback

The following routes are available for this service:
POST/codelock/accessy/callback
import java.math.*
import java.util.*
import net.servicestack.client.*


open class AccessyCodelockCallback
{
    var EventType:AccessyEvent? = null
    var InvitationId:UUID? = null
    var UserId:UUID? = null
    var OrganizationId:UUID? = null
}

enum class AccessyEvent
{
    Unknown,
    MembershipCreated,
    MembershipRemoved,
}

open class HttpResult
{
    var ResponseText:String? = null
    var ResponseStream:InputStream? = null
    var FileInfo:FileInfo? = null
    var VirtualFile:IVirtualFile? = null
    var ContentType:String? = null
    var Headers:HashMap<String,String> = HashMap<String,String>()
    var Cookies:ArrayList<Cookie> = ArrayList<Cookie>()
    var ETag:String? = null
    var Age:TimeSpan? = null
    var MaxAge:TimeSpan? = null
    var Expires:Date? = null
    var LastModified:Date? = null
    var CacheControl:CacheControl? = null
    var ResultScope:Func<IDisposable>? = null
    var AllowsPartialResponse:Boolean? = null
    var Options:HashMap<String,String> = HashMap<String,String>()
    var Status:Int? = null
    var StatusCode:HttpStatusCode? = null
    var StatusDescription:String? = null
    var Response:Object? = null
    var ResponseFilter:IContentTypeWriter? = null
    var RequestContext:IRequest? = null
    var View:String? = null
    var Template:String? = null
    var PaddingLength:Int? = null
    var IsPartialRequest:Boolean? = null
}

open interface IVirtualFile
{
    var VirtualPathProvider:IVirtualPathProvider?
    var Extension:String?
    var Length:Long?
}

open interface IVirtualPathProvider
{
    var RootDirectory:IVirtualDirectory?
    var VirtualPathSeparator:String?
    var RealPathSeparator:String?
}

open interface IVirtualDirectory
{
}

@Flags()
enum class CacheControl(val value:Int)
{
    @SerializedName("0") None(0),
    @SerializedName("1") Public(1),
    @SerializedName("2") Private(2),
    @SerializedName("4") MustRevalidate(4),
    @SerializedName("8") NoCache(8),
    @SerializedName("16") NoStore(16),
    @SerializedName("32") NoTransform(32),
    @SerializedName("64") ProxyRevalidate(64),
}

open interface IContentTypeWriter
{
}

open interface IRequest
{
    var OriginalRequest:Object?
    var Response:IResponse?
    var OperationName:String?
    var Verb:String?
    var RequestAttributes:RequestAttributes?
    var RequestPreferences:IRequestPreferences?
    var Dto:Object?
    var ContentType:String?
    var IsLocal:Boolean?
    var UserAgent:String?
    var Cookies:HashMap<String,Cookie>?
    var ResponseContentType:String?
    var HasExplicitResponseContentType:Boolean?
    var Items:HashMap<String,Object>?
    var Headers:NameValueCollection?
    var QueryString:NameValueCollection?
    var FormData:NameValueCollection?
    var UseBufferedStream:Boolean?
    var RawUrl:String?
    var AbsoluteUri:String?
    var UserHostAddress:String?
    var RemoteIp:String?
    var Authorization:String?
    var IsSecureConnection:Boolean?
    var AcceptTypes:ArrayList<String>?
    var PathInfo:String?
    var OriginalPathInfo:String?
    var InputStream:InputStream?
    var ContentLength:Long?
    var Files:ArrayList<IHttpFile>?
    var UrlReferrer:Uri?
}

open interface IResponse
{
    var OriginalResponse:Object?
    var Request:IRequest?
    var StatusCode:Int?
    var StatusDescription:String?
    var ContentType:String?
    var OutputStream:InputStream?
    var Dto:Object?
    var UseBufferedStream:Boolean?
    var IsClosed:Boolean?
    var KeepAlive:Boolean?
    var HasStarted:Boolean?
    var Items:HashMap<String,Object>?
}

@Flags()
enum class RequestAttributes(val value:Int)
{
    @SerializedName("0") None(0),
    @SerializedName("1") Localhost(1),
    @SerializedName("2") LocalSubnet(2),
    @SerializedName("4") External(4),
    @SerializedName("8") Secure(8),
    @SerializedName("16") InSecure(16),
    @SerializedName("24") AnySecurityMode(24),
    @SerializedName("32") HttpHead(32),
    @SerializedName("64") HttpGet(64),
    @SerializedName("128") HttpPost(128),
    @SerializedName("256") HttpPut(256),
    @SerializedName("512") HttpDelete(512),
    @SerializedName("1024") HttpPatch(1024),
    @SerializedName("2048") HttpOptions(2048),
    @SerializedName("4096") HttpOther(4096),
    @SerializedName("8160") AnyHttpMethod(8160),
    @SerializedName("8192") OneWay(8192),
    @SerializedName("16384") Reply(16384),
    @SerializedName("24576") AnyCallStyle(24576),
    @SerializedName("32768") Soap11(32768),
    @SerializedName("65536") Soap12(65536),
    @SerializedName("131072") Xml(131072),
    @SerializedName("262144") Json(262144),
    @SerializedName("524288") Jsv(524288),
    @SerializedName("1048576") ProtoBuf(1048576),
    @SerializedName("2097152") Csv(2097152),
    @SerializedName("4194304") Html(4194304),
    @SerializedName("8388608") Jsonl(8388608),
    @SerializedName("16777216") MsgPack(16777216),
    @SerializedName("33554432") FormatOther(33554432),
    @SerializedName("67076096") AnyFormat(67076096),
    @SerializedName("67108864") Http(67108864),
    @SerializedName("134217728") MessageQueue(134217728),
    @SerializedName("268435456") Tcp(268435456),
    @SerializedName("536870912") Grpc(536870912),
    @SerializedName("1073741824") EndpointOther(1073741824),
    @SerializedName("2080374784") AnyEndpoint(2080374784),
    @SerializedName("-2147483648") InProcess(-2147483648),
    @SerializedName("-2147483645") InternalNetworkAccess(-2147483645),
    @SerializedName("-2147483641") AnyNetworkAccessType(-2147483641),
    @SerializedName("-1") Any(-1),
}

open interface IRequestPreferences
{
    var AcceptsBrotli:Boolean?
    var AcceptsDeflate:Boolean?
    var AcceptsGzip:Boolean?
}

open interface IHttpFile
{
    var Name:String?
    var FileName:String?
    var ContentLength:Long?
    var ContentType:String?
    var InputStream:InputStream?
}

Kotlin AccessyCodelockCallback 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 /codelock/accessy/callback HTTP/1.1 
Host: api.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"EventType":"Unknown"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{}