/* Options: Date: 2025-05-04 22:44:41 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: AppGetFiles.* //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="/portal/files", Verbs="GET") open class AppGetFiles : ListRequest(), IReturn> { open var accountId:String? = null open var customerId:String? = null open var dateCreatedStart:String? = null open var dateCreatedEnd:String? = null open var fileNameFilter:String? = null @SerializedName("type") open var Type:FileTypes? = null companion object { private val responseType = object : TypeToken>(){}.type } override fun getResponseType(): Any? = AppGetFiles.responseType } open class ListResponse { /** * The items */ @ApiMember(Description="The items") open var items:ArrayList? = null /** * The total number of items */ @ApiMember(Description="The total number of items") open var totalCount:Int? = null /** * The total number of pages */ @ApiMember(Description="The total number of pages") open var totalPages:Int? = null /** * Are there more pages of items? Used with simplified paging */ @ApiMember(Description="Are there more pages of items? Used with simplified paging") open var hasMorePages:Boolean? = null } enum class SortOrders { Ascend, Descend, } open class ListRequest : IGet { /** * The page of data to retrieve */ @ApiMember(Description="The page of data to retrieve") open var page:Int? = null /** * If you want all objects to be returned. This should be used with care */ @ApiMember(Description="If you want all objects to be returned. This should be used with care") open var all:Boolean? = null /** * The number per page to retrieve */ @ApiMember(Description="The number per page to retrieve") open var countPerPage:Int? = null /** * Specific IDs */ @ApiMember(Description="Specific IDs") open var specificIds:ArrayList? = null /** * Specify a sort field */ @ApiMember(Description="Specify a sort field") open var sortField:String? = null /** * Specify a sort order */ @ApiMember(Description="Specify a sort order") open var sortOrder:SortOrders? = null /** * Disables total / page counts - improves performance. Returns only data. If there is no more data, Items will be empty array */ @ApiMember(Description="Disables total / page counts - improves performance. Returns only data. If there is no more data, Items will be empty array") open var simplifiedPaging:Boolean? = null } enum class FileTypes { Upload, VoiceMessage, CallRecording, Fax, Attachment, FaxOutgoing, } open class EntityInfo { /** * The ID of the object */ @ApiMember(Description="The ID of the object") open var id:String? = null /** * The date the object was created */ @ApiMember(Description="The date the object was created") open var dateCreated:String? = null /** * The date the object was last modified */ @ApiMember(Description="The date the object was last modified") open var dateLastModified:String? = null /** * The user that created this object */ @ApiMember(Description="The user that created this object") open var createdBy:String? = null /** * The user that last modified this object */ @ApiMember(Description="The user that last modified this object") open var lastModifiedBy:String? = null } open class CustomerBreadcrumb { open var id:String? = null open var name:String? = null } open class FileInfo : EntityInfo() { /** * The type of file this is */ @ApiMember(Description="The type of file this is") @SerializedName("type") open var Type:FileTypes? = null /** * The account ID this file is associated with */ @ApiMember(Description="The account ID this file is associated with") open var accountId:String? = null /** * The name of the account this file is associated with */ @ApiMember(Description="The name of the account this file is associated with") open var accountName:String? = null /** * The ID of the customer this file is associated with */ @ApiMember(Description="The ID of the customer this file is associated with") open var customerId:String? = null /** * The name of the customer this file is associated with */ @ApiMember(Description="The name of the customer this file is associated with") open var customerName:String? = null /** * The breadcrumb to the customer for this file */ @ApiMember(Description="The breadcrumb to the customer for this file") open var customerBreadcrumb:ArrayList? = null /** * The ID of the user this file is assocaited with */ @ApiMember(Description="The ID of the user this file is assocaited with") open var userId:String? = null /** * The name of the user this file is associated with */ @ApiMember(Description="The name of the user this file is associated with") open var userName:String? = null /** * The original file name for the file */ @ApiMember(Description="The original file name for the file") open var fileName:String? = null /** * The URI of the file */ @ApiMember(Description="The URI of the file") open var uri:String? = null /** * The Content type of the file */ @ApiMember(Description="The Content type of the file") open var contentType:String? = null /** * The size of the file */ @ApiMember(Description="The size of the file") open var contentLength:Long? = null /** * The Twilio ID of the recording */ @ApiMember(Description="The Twilio ID of the recording") open var recordingSid:String? = null /** * The duration of the recording in seconds */ @ApiMember(Description="The duration of the recording in seconds") open var recordingDuration:Int? = null /** * Who is the recording from? */ @ApiMember(Description="Who is the recording from?") open var recordingFrom:String? = null /** * Transcription (if available) */ @ApiMember(Description="Transcription (if available)") open var transcription:String? = null /** * From Address (e.g. caller ID) for incoming calls */ @ApiMember(Description="From Address (e.g. caller ID) for incoming calls") open var fromAddress:String? = null /** * To Address (e.g. dialed number) for outgoing calls */ @ApiMember(Description="To Address (e.g. dialed number) for outgoing calls") open var toAddress:String? = null /** * The AI transcription for this call */ @ApiMember(Description="The AI transcription for this call") open var aiTranscription:String? = null }