import java.math.*
import java.util.*
import net.servicestack.client.*
open class GetUsersAndGroups
{
    var UserEnvironment:Int? = null
    var PageSize:Int? = null
    var PageNumber:Int? = null
    var SearchCriteria:String? = null
    var SelectedUserIDs:ArrayList<Int> = ArrayList<Int>()
    var SelectedGroupIDs:ArrayList<Int> = ArrayList<Int>()
}
open class UsersOrGroupsResponse : IBaseQuickLookupResponse
{
    var NumberOfAllRecords:Int? = null
    var UsersOrGroups:ArrayList<UserOrGroup> = ArrayList<UserOrGroup>()
    var QuickAddOptions:ArrayList<QuickAddOption> = ArrayList<QuickAddOption>()
}
open class UserOrGroup
{
    var ID:Int? = null
    var Title:String? = null
    var IsChecked:Boolean? = null
    var Image:String? = null
}
open class QuickAddOption
{
    var Name:String? = null
    var EntityType:String? = null
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /json/reply/GetUsersAndGroups HTTP/1.1 
Host: doapigw.baasbv.nl 
Accept: application/json
Content-Type: application/json
Content-Length: length
{"UserEnvironment":0,"PageSize":0,"PageNumber":0,"SearchCriteria":"String","SelectedUserIDs":[0],"SelectedGroupIDs":[0]}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"NumberOfAllRecords":0,"UsersOrGroups":[{}],"QuickAddOptions":[{"Name":"String","EntityType":"String"}]}