/* Options: Date: 2025-05-05 00:49:32 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: ListMessages.* //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="/messages", Verbs="GET") open class ListMessages : ListRequest(), IReturn> { /** * The IDs of the account whose messages you want to retrieve */ @ApiMember(Description="The IDs of the account whose messages you want to retrieve") open var accountIds:ArrayList? = null /** * The IDs of the customers whose messages you want to retrieve */ @ApiMember(Description="The IDs of the customers whose messages you want to retrieve") open var customerIds:ArrayList? = null /** * The IDs of the endpoints whose messages you want to retrieve */ @ApiMember(Description="The IDs of the endpoints whose messages you want to retrieve") open var endpointIds:ArrayList? = null /** * The ID of the conversations whose messages you want to retrieve */ @ApiMember(Description="The ID of the conversations whose messages you want to retrieve") open var conversationIds:ArrayList? = null /** * The date after which messages should be retrieved */ @ApiMember(Description="The date after which messages should be retrieved") open var afterDate:String? = null companion object { private val responseType = object : TypeToken>(){}.type } override fun getResponseType(): Any? = ListMessages.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 MessageDirections { Incoming, Outgoing, } open class MessageInfo { open var id:String? = null open var accountId:String? = null open var customerId:String? = null open var endpointId:String? = null open var endpointDisplayName:String? = null open var date:String? = null open var direction:MessageDirections? = null open var otherAddress:String? = null open var sender:String? = null open var text:String? = null open var isUnread:Boolean? = null }