/* Options: Date: 2026-06-20 21:21:01 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.simplified.id/v2 //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: AddSubUser.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* @Route(Path="/subusers/create", Verbs="POST") @DataContract open class AddSubUser : BaseRequest(), IReturn { @DataMember open var request:AddSubUserRequest? = null companion object { private val responseType = AddSubUserResponse::class.java } override fun getResponseType(): Any? = AddSubUser.responseType } @DataContract open class AddSubUserResponse { /** * The response data */ @DataMember @ApiMember(Description="The response data") @SerializedName("data") open var Data:AddSubUserData? = null } @DataContract open class Authentication { /** * The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User) */ @DataMember @ApiMember(Description="The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User)", IsRequired=true, ParameterType="header, body") open var apiUserId:String? = null /** * The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key) */ @DataMember @ApiMember(Description="The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key)", IsRequired=true, ParameterType="header, body") open var apiUserKey:String? = null /** * The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id). */ @DataMember @ApiMember(Description="The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id).", ParameterType="header, body") open var userId:String? = null } @DataContract open class BaseRequest : IBaseRequest { /** * The authentication credentials */ @DataMember @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body") override var authentication:Authentication? = null } interface IBaseRequest { var authentication:Authentication? } open class AddSubUserRequest { open var userName:String? = null open var name:String? = null open var email:String? = null open var isAdmin:Boolean? = null open var canResolveSearches:Boolean? = null open var canDeleteSearches:Boolean? = null open var sendWelcomeEmail:Boolean? = null } open class AddSubUserData : BaseResponse() { /** * The sub user */ @ApiMember(Description="The sub user") open var subUser:SubUser? = null } open class SubUser { /** * Is this user the main user (i.e. the user who created the account) */ @ApiMember(Description="Is this user the main user (i.e. the user who created the account)") open var isMainUser:Boolean? = null /** * The sub user's id (GUID) */ @ApiMember(Description="The sub user's id (GUID)") open var userId:UUID? = null /** * The sub user's UserName (i.e. the sign-in username) */ @ApiMember(Description="The sub user's UserName (i.e. the sign-in username)") open var userName:String? = null /** * The sub user's name */ @ApiMember(Description="The sub user's name") open var name:String? = null /** * The sub user's email address */ @ApiMember(Description="The sub user's email address") open var email:String? = null /** * Does this sub user have admin privileges, such as managing purchases and sub users */ @ApiMember(Description="Does this sub user have admin privileges, such as managing purchases and sub users") open var isAdmin:Boolean? = null /** * Can this sub user resolve searches (UpdateSearch) they have access to */ @ApiMember(Description="Can this sub user resolve searches (UpdateSearch) they have access to") open var canResolveSearches:Boolean? = null /** * Can this sub user delete searches (DeleteSearch) they have access to */ @ApiMember(Description="Can this sub user delete searches (DeleteSearch) they have access to") open var canDeleteSearches:Boolean? = null /** * The user names for which searches will be made available to the sub user */ @ApiMember(Description="The user names for which searches will be made available to the sub user") open var permissions:ArrayOfUserNames? = null } open class BaseResponse : IBaseDataResponse, IHasResponseStatus { /** * The status of the response */ @ApiMember(Description="The status of the response") override var responseStatus:ResponseStatus? = null } interface IBaseDataResponse { var responseStatus:ResponseStatus? } interface IHasResponseStatus { var responseStatus:ResponseStatus? } open class ArrayOfUserNames : ArrayList() { } open class ArrayOfResponseError : ArrayList() { }