/* Options: Date: 2026-08-14 05:55:35 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://initiation-pen.sirva.com //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ConsumerInitiation.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* /** * Consumer Initiation Service */ @Route(Path="/consumerinitiation", Verbs="POST") @Api(Description="Consumer Initiation Service") @ApiResponse(Description="Returned when the consumer initiation was successfully processed", StatusCode=200) // @ApiResponse(Description="Returned if the request validation failed", StatusCode=400) // @ApiResponse(Description="Returned if the client is not authorized", StatusCode=401) // @ApiResponse(Description="Returned if an error occurred while processing the request", StatusCode=500) open class ConsumerInitiation : IReturn, IPost { /** * Client identifier */ @ApiMember(Description="Client identifier", IsRequired=true) var ClientID:String? = null /** * Consumer relocation request file details */ @ApiMember(Description="Consumer relocation request file details", IsRequired=true) var File:RelocationsRequestFile? = null companion object { private val responseType = ConsumerInitiationResponse::class.java } override fun getResponseType(): Any? = ConsumerInitiation.responseType } open class ConsumerInitiationResponse { /** * Response message */ @ApiMember(Description="Response message") var Message:String? = null /** * File identifier for the created initiation */ @ApiMember(Description="File identifier for the created initiation") var FileId:String? = null /** * List of validation errors, if any */ @ApiMember(Description="List of validation errors, if any") var Errors:ArrayList = ArrayList() } open class RelocationsRequestFile { /** * Command type for the request (INITIATE) */ @ApiMember(Description="Command type for the request (INITIATE)", IsRequired=true) var Command:String? = null /** * External identifier for the transferee */ @ApiMember(Description="External identifier for the transferee", IsRequired=true) var ExternalID:String? = null /** * Details about the transferee */ @ApiMember(Description="Details about the transferee", IsRequired=true) var TransfereeDetails:RelocationsRequestFileTransfereeDetails? = null /** * List of addresses associated with the transferee */ @ApiMember(Description="List of addresses associated with the transferee", IsRequired=true) var Addresses:ArrayList? = null /** * List of phone numbers associated with the transferee */ @ApiMember(Description="List of phone numbers associated with the transferee", IsRequired=true) var Phones:ArrayList? = null /** * Assignment details for the relocation */ @ApiMember(Description="Assignment details for the relocation", IsRequired=true) var AssignmentDetails:RelocationsRequestFileAssignmentDetails? = null } open class ValidateError { var ErrorNumber:String? = null var ErrorDescription:String? = null } open class RelocationsRequestFileTransfereeDetails { /** * First name of the transferee */ @ApiMember(Description="First name of the transferee", IsRequired=true) var FirstName:String? = null /** * Last name of the transferee */ @ApiMember(Description="Last name of the transferee", IsRequired=true) var LastName:String? = null /** * Preferred email address */ @ApiMember(Description="Preferred email address", IsRequired=true) var PreferredEmail:String? = null } open class RelocationsRequestFileAssignmentDetails { /** * Program name or code */ @ApiMember(Description="Program name or code", IsRequired=true) var Program:String? = null /** * Type of assignment */ @ApiMember(Description="Type of assignment", IsRequired=true) var AssignmentType:String? = null /** * Assignment start date */ @ApiMember(Description="Assignment start date", IsRequired=true) var StartDate:Date? = null /** * Company name */ @ApiMember(Description="Company name", IsRequired=true) var CompanyName:String? = null /** * Contact */ @ApiMember(Description="Contact", IsRequired=true) var Contact:String? = null /** * Current assignment location details */ @ApiMember(Description="Current assignment location details", IsRequired=true) var Current:AssignmentLocationDetails? = null /** * Destination assignment location details */ @ApiMember(Description="Destination assignment location details", IsRequired=true) var Destination:AssignmentLocationDetails? = null } open class AssignmentLocationDetails { /** * Work city */ @ApiMember(Description="Work city", IsRequired=true) var WorkCity:String? = null /** * Current work location state */ @ApiMember(Description="Current work location state") var CurrentWorkState:String? = null /** * Work state or province */ @ApiMember(Description="Work state or province") var WorkState:String? = null /** * Destination work location state */ @ApiMember(Description="Destination work location state") var DestinationWorkState:String? = null /** * Work country */ @ApiMember(Description="Work country", IsRequired=true) var WorkCountry:String? = null /** * Preferred work location state */ @ApiMember(Description="Preferred work location state") var PreferredWorkState:String? = null /** * Preferred work location country */ @ApiMember(Description="Preferred work location country") var PreferredWorkCountry:String? = null }