/* Options: Date: 2025-05-04 23:32:14 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: PatchCustomer.* //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.* /** * Update a specific customer */ @Route(Path="/customers/{customerId}", Verbs="PATCH") @Api(Description="Update a specific customer") open class PatchCustomer : IReturn, IPatch { /** * The ID of the customer you want to update */ @ApiMember(Description="The ID of the customer you want to update") open var customerId:String? = null /** * The name for the customer */ @ApiMember(Description="The name for the customer") open var name:String? = null /** * The parent customer for this customer */ @ApiMember(Description="The parent customer for this customer") open var parentCustomerId:String? = null /** * The reference ID for this customer (e.g. in a third party system) */ @ApiMember(Description="The reference ID for this customer (e.g. in a third party system)") open var referenceId:String? = null /** * Data values for this customer */ @ApiMember(Description="Data values for this customer") @SerializedName("data") open var Data:Struct? = null /** * The list of tag IDs for this customer */ @ApiMember(Description="The list of tag IDs for this customer") open var tagIds:ArrayList? = null /** * This customer's schedule */ @ApiMember(Description="This customer's schedule") open var schedule:Schedule? = null /** * Override this customer's billing settings? Otherwise inherits from parent */ @ApiMember(Description="Override this customer's billing settings? Otherwise inherits from parent") open var overrideBillingSettings:Boolean? = null /** * Updated billing settings for this customer */ @ApiMember(Description="Updated billing settings for this customer") open var billingSettings:BillingSettings? = null /** * Should this customer override the parent customer's app settings */ @ApiMember(Description="Should this customer override the parent customer's app settings") open var overrideAppSettings:Boolean? = null /** * App / Portal settings for this customer */ @ApiMember(Description="App / Portal settings for this customer") open var appSettings:AppSettings? = null companion object { private val responseType = CustomerInfo::class.java } override fun getResponseType(): Any? = PatchCustomer.responseType } open class CustomerInfo : EntityInfo() { /** * The ID of the account associated with this customer */ @ApiMember(Description="The ID of the account associated with this customer") open var accountId:String? = null /** * The parent customer ID for this customer */ @ApiMember(Description="The parent customer ID for this customer") open var parentCustomerId:String? = null /** * The breadcrumb to this customer */ @ApiMember(Description="The breadcrumb to this customer") open var breadcrumb:ArrayList? = null /** * The name of the account associated with this customer */ @ApiMember(Description="The name of the account associated with this customer") open var accountName:String? = null /** * Is this customer staging or production? */ @ApiMember(Description="Is this customer staging or production?") open var isStaging:Boolean? = null /** * The name of the company */ @ApiMember(Description="The name of the company") open var name:String? = null /** * The reference ID for this company */ @ApiMember(Description="The reference ID for this company") open var referenceId:String? = null /** * This customer's data values */ @ApiMember(Description="This customer's data values") @SerializedName("data") open var Data:Struct? = null /** * The list of tags for this customer */ @ApiMember(Description="The list of tags for this customer") open var tags:ArrayList? = null /** * This customer's schedule */ @ApiMember(Description="This customer's schedule") open var schedule:Schedule? = null /** * Integration data for this customer */ @ApiMember(Description="Integration data for this customer") open var integrationData:EntityIntegrationData? = null /** * Override this customer's billing settings? Otherwise inherits from parent */ @ApiMember(Description="Override this customer's billing settings? Otherwise inherits from parent") open var overrideBillingSettings:Boolean? = null /** * Billing settings for this customer */ @ApiMember(Description="Billing settings for this customer") open var billingSettings:BillingSettings? = null /** * Should this customer override the parent customer's app settings */ @ApiMember(Description="Should this customer override the parent customer's app settings") open var overrideAppSettings:Boolean? = null /** * App / Portal settings for this customer */ @ApiMember(Description="App / Portal settings for this customer") open var appSettings:AppSettings? = null } open class BillingSettings { open var base:BillingItem? = null open var localNumbers:BillingItem? = null open var tollFreeNumbers:BillingItem? = null open var inboundVoiceCalls:BillingItem? = null open var outboundVoiceCalls:BillingItem? = null open var inboundFaxes:BillingItem? = null open var outboundFaxes:BillingItem? = null open var inboundSmsMessages:BillingItem? = null open var outboundSmsMessages:BillingItem? = null open var aiInsights:BillingItem? = null open var aiLiveMinutes:BillingItem? = null } open class Struct : HashMap() { } open class AppSettings { open var enablePhoneNumberManagement:Boolean? = null open var enableDeviceManagement:Boolean? = null open var enableDialer:Boolean? = null open var enableCallHistory:Boolean? = null open var enableAssistants:Boolean? = null open var showFileNameInMessageCenter:Boolean? = null open var chakraTheme:String? = null open var customCss:String? = null open var pageTitle:String? = null open var stringMappings:String? = null open var logoutUrl:String? = null open var portMyNumberUrl:String? = null } open class Tag { open var id:String? = null open var name:String? = null open var color:TagColors? = null } 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 EntityIntegrationData : HashMap() { } open class BillingItem { open var baseCost:Double? = null open var rawUnitMultiplier:Double? = null open var unitCost:Double? = null open var allowance:Int? = null } open class Value { open var boolValue:Boolean? = null open var stringValue:String? = null open var numberValue:Double? = null open var listValue:ArrayList? = null open var structValue:Struct? = null } enum class TagColors { Magenta, Red, Volcano, Orange, Gold, Lime, Green, Cyan, Blue, GeekBlue, Purple, } open class IntegrationData { open var thirdPartyId:String? = null } open class Schedule { open var timeZoneId:String? = null open var inherit:Boolean? = null open var forceClosed:Boolean? = null open var rules:ArrayList? = null open var defaultState:String? = null }