/* Options: Date: 2025-05-04 20:33:13 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: ListIntegrations.* //ExcludeTypes: //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.*; public class dtos { /** * Retrieve integrations */ @Route(Path="/integrations", Verbs="GET") @Api(Description="Retrieve integrations") public static class ListIntegrations extends ListRequest implements IReturn> { /** * Filter by accounts */ @ApiMember(Description="Filter by accounts") public ArrayList accountIds = null; /** * Filter by name */ @ApiMember(Description="Filter by name") public String nameFilter = null; /** * The IDs of the parent customers you want to filter by */ @ApiMember(Description="The IDs of the parent customers you want to filter by") public ArrayList customerIds = null; /** * If you want a shall customer integration filter (e.g. no deep children) */ @ApiMember(Description="If you want a shall customer integration filter (e.g. no deep children)") public Boolean shallowParent = null; public ArrayList getAccountIds() { return accountIds; } public ListIntegrations setAccountIds(ArrayList value) { this.accountIds = value; return this; } public String getNameFilter() { return nameFilter; } public ListIntegrations setNameFilter(String value) { this.nameFilter = value; return this; } public ArrayList getCustomerIds() { return customerIds; } public ListIntegrations setCustomerIds(ArrayList value) { this.customerIds = value; return this; } public Boolean isShallowParent() { return shallowParent; } public ListIntegrations setShallowParent(Boolean value) { this.shallowParent = value; return this; } private static Object responseType = new TypeToken>(){}.getType(); public Object getResponseType() { return responseType; } } public static class ListResponse { /** * The items */ @ApiMember(Description="The items") public ArrayList items = null; /** * The total number of items */ @ApiMember(Description="The total number of items") public Integer totalCount = null; /** * The total number of pages */ @ApiMember(Description="The total number of pages") public Integer totalPages = null; /** * Are there more pages of items? Used with simplified paging */ @ApiMember(Description="Are there more pages of items? Used with simplified paging") public Boolean hasMorePages = null; public ArrayList getItems() { return items; } public ListResponse setItems(ArrayList value) { this.items = value; return this; } public Integer getTotalCount() { return totalCount; } public ListResponse setTotalCount(Integer value) { this.totalCount = value; return this; } public Integer getTotalPages() { return totalPages; } public ListResponse setTotalPages(Integer value) { this.totalPages = value; return this; } public Boolean isHasMorePages() { return hasMorePages; } public ListResponse setHasMorePages(Boolean value) { this.hasMorePages = value; return this; } } public static enum SortOrders { Ascend, Descend; } public static class ListRequest implements IGet { /** * The page of data to retrieve */ @ApiMember(Description="The page of data to retrieve") public Integer page = 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") public Boolean all = null; /** * The number per page to retrieve */ @ApiMember(Description="The number per page to retrieve") public Integer countPerPage = null; /** * Specific IDs */ @ApiMember(Description="Specific IDs") public ArrayList specificIds = null; /** * Specify a sort field */ @ApiMember(Description="Specify a sort field") public String sortField = null; /** * Specify a sort order */ @ApiMember(Description="Specify a sort order") public SortOrders sortOrder = 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") public Boolean simplifiedPaging = null; public Integer getPage() { return page; } public ListRequest setPage(Integer value) { this.page = value; return this; } public Boolean isAll() { return all; } public ListRequest setAll(Boolean value) { this.all = value; return this; } public Integer getCountPerPage() { return countPerPage; } public ListRequest setCountPerPage(Integer value) { this.countPerPage = value; return this; } public ArrayList getSpecificIds() { return specificIds; } public ListRequest setSpecificIds(ArrayList value) { this.specificIds = value; return this; } public String getSortField() { return sortField; } public ListRequest setSortField(String value) { this.sortField = value; return this; } public SortOrders getSortOrder() { return sortOrder; } public ListRequest setSortOrder(SortOrders value) { this.sortOrder = value; return this; } public Boolean isSimplifiedPaging() { return simplifiedPaging; } public ListRequest setSimplifiedPaging(Boolean value) { this.simplifiedPaging = value; return this; } } public static class Struct extends HashMap { } public static enum UserDataFieldModes { Hidden, ReadOnly, ReadWrite; } public static enum ValueTypes { NotSpecified, String, Boolean, Number, List, Struct, Transition, Custom, Date, AudioFile, TimeZoneId, PhoneNumber, User, Endpoint, Time, File, FaxNumber, EmailAccount, Customer, Flow, Team, FlowReference, Integration, Assistant; } public static enum IntegrationTypes { HostedSuite, OfficeRnd, Zoho; } public static class EntityInfo { /** * The ID of the object */ @ApiMember(Description="The ID of the object") public String id = null; /** * The date the object was created */ @ApiMember(Description="The date the object was created") public String dateCreated = null; /** * The date the object was last modified */ @ApiMember(Description="The date the object was last modified") public String dateLastModified = null; /** * The user that created this object */ @ApiMember(Description="The user that created this object") public String createdBy = null; /** * The user that last modified this object */ @ApiMember(Description="The user that last modified this object") public String lastModifiedBy = null; public String getId() { return id; } public EntityInfo setId(String value) { this.id = value; return this; } public String getDateCreated() { return dateCreated; } public EntityInfo setDateCreated(String value) { this.dateCreated = value; return this; } public String getDateLastModified() { return dateLastModified; } public EntityInfo setDateLastModified(String value) { this.dateLastModified = value; return this; } public String getCreatedBy() { return createdBy; } public EntityInfo setCreatedBy(String value) { this.createdBy = value; return this; } public String getLastModifiedBy() { return lastModifiedBy; } public EntityInfo setLastModifiedBy(String value) { this.lastModifiedBy = value; return this; } } public static class CustomerBreadcrumb { public String id = null; public String name = null; public String getId() { return id; } public CustomerBreadcrumb setId(String value) { this.id = value; return this; } public String getName() { return name; } public CustomerBreadcrumb setName(String value) { this.name = value; return this; } } public static enum IntegrationStatuses { NotConfigured, Error, Ok; } public static class DataType { public String typeName = null; public ArrayList fields = null; public String getTypeName() { return typeName; } public DataType setTypeName(String value) { this.typeName = value; return this; } public ArrayList getFields() { return fields; } public DataType setFields(ArrayList value) { this.fields = value; return this; } } public static enum IntegrationFeatures { CrmSync, OAuth2; } public static class Value { public Boolean boolValue = null; public String stringValue = null; public Double numberValue = null; public ArrayList listValue = null; public Struct structValue = null; public Boolean isBoolValue() { return boolValue; } public Value setBoolValue(Boolean value) { this.boolValue = value; return this; } public String getStringValue() { return stringValue; } public Value setStringValue(String value) { this.stringValue = value; return this; } public Double getNumberValue() { return numberValue; } public Value setNumberValue(Double value) { this.numberValue = value; return this; } public ArrayList getListValue() { return listValue; } public Value setListValue(ArrayList value) { this.listValue = value; return this; } public Struct getStructValue() { return structValue; } public Value setStructValue(Struct value) { this.structValue = value; return this; } } public static enum UIHints { None, LargeText, InlineForm, Password, InlineStruct; } public static enum DataFieldUniqueness { NotUnique, Unique, UniqueToCustomer; } public static class DataField { public String id = null; public String name = null; public ValueTypes type = null; public UIHints uiHint = null; public String uiTab = null; public Boolean isAsync = null; public Boolean disableBinding = null; public DataType structType = null; public DataType listType = null; public String description = null; public ArrayList possibleValues = null; public Boolean isOutput = null; public String customFieldValuesUrl = null; public Value defaultValue = null; public String transitionNameFormat = null; public DataFieldUniqueness uniqueness = null; public Boolean voiceOnly = null; public String conditionalVisibilityField = null; public String conditionalVisibilityValue = null; public Boolean noEvalTemplate = null; public UserDataFieldModes userMode = null; public Boolean anyValueType = null; public String getId() { return id; } public DataField setId(String value) { this.id = value; return this; } public String getName() { return name; } public DataField setName(String value) { this.name = value; return this; } public ValueTypes getType() { return type; } public DataField setType(ValueTypes value) { this.type = value; return this; } public UIHints getUiHint() { return uiHint; } public DataField setUiHint(UIHints value) { this.uiHint = value; return this; } public String getUiTab() { return uiTab; } public DataField setUiTab(String value) { this.uiTab = value; return this; } public Boolean getIsAsync() { return isAsync; } public DataField setIsAsync(Boolean value) { this.isAsync = value; return this; } public Boolean isDisableBinding() { return disableBinding; } public DataField setDisableBinding(Boolean value) { this.disableBinding = value; return this; } public DataType getStructType() { return structType; } public DataField setStructType(DataType value) { this.structType = value; return this; } public DataType getListType() { return listType; } public DataField setListType(DataType value) { this.listType = value; return this; } public String getDescription() { return description; } public DataField setDescription(String value) { this.description = value; return this; } public ArrayList getPossibleValues() { return possibleValues; } public DataField setPossibleValues(ArrayList value) { this.possibleValues = value; return this; } public Boolean getIsOutput() { return isOutput; } public DataField setIsOutput(Boolean value) { this.isOutput = value; return this; } public String getCustomFieldValuesUrl() { return customFieldValuesUrl; } public DataField setCustomFieldValuesUrl(String value) { this.customFieldValuesUrl = value; return this; } public Value getDefaultValue() { return defaultValue; } public DataField setDefaultValue(Value value) { this.defaultValue = value; return this; } public String getTransitionNameFormat() { return transitionNameFormat; } public DataField setTransitionNameFormat(String value) { this.transitionNameFormat = value; return this; } public DataFieldUniqueness getUniqueness() { return uniqueness; } public DataField setUniqueness(DataFieldUniqueness value) { this.uniqueness = value; return this; } public Boolean isVoiceOnly() { return voiceOnly; } public DataField setVoiceOnly(Boolean value) { this.voiceOnly = value; return this; } public String getConditionalVisibilityField() { return conditionalVisibilityField; } public DataField setConditionalVisibilityField(String value) { this.conditionalVisibilityField = value; return this; } public String getConditionalVisibilityValue() { return conditionalVisibilityValue; } public DataField setConditionalVisibilityValue(String value) { this.conditionalVisibilityValue = value; return this; } public Boolean isNoEvalTemplate() { return noEvalTemplate; } public DataField setNoEvalTemplate(Boolean value) { this.noEvalTemplate = value; return this; } public UserDataFieldModes getUserMode() { return userMode; } public DataField setUserMode(UserDataFieldModes value) { this.userMode = value; return this; } public Boolean isAnyValueType() { return anyValueType; } public DataField setAnyValueType(Boolean value) { this.anyValueType = value; return this; } } public static class IntegrationInfo extends EntityInfo { /** * The ID of the account associated with this integration */ @ApiMember(Description="The ID of the account associated with this integration") public String accountId = null; /** * The ID of the customer this integration is associated with */ @ApiMember(Description="The ID of the customer this integration is associated with") public String customerId = null; /** * The name of the customer this integration is associated with */ @ApiMember(Description="The name of the customer this integration is associated with") public String customerName = null; /** * The date the integration was sync'd last */ @ApiMember(Description="The date the integration was sync'd last") public String dateLastSync = null; /** * The breadcrumb to the customer for this integration */ @ApiMember(Description="The breadcrumb to the customer for this integration") public ArrayList customerBreadcrumb = null; /** * The name of the integration (e.g. HostedSuite Dallas) */ @ApiMember(Description="The name of the integration (e.g. HostedSuite Dallas)") public String name = null; /** * Automatically create new customers / users when sync'ing with CRM? */ @ApiMember(Description="Automatically create new customers / users when sync'ing with CRM?") public Boolean automaticallyCreateCustomers = null; /** * The type of integration */ @ApiMember(Description="The type of integration") public IntegrationTypes type = null; /** * The status of the integration */ @ApiMember(Description="The status of the integration") public IntegrationStatuses status = null; /** * The status of the integration */ @ApiMember(Description="The status of the integration") public String statusMessage = null; /** * The settings type for this integration */ @ApiMember(Description="The settings type for this integration") public DataType settingsDataType = null; /** * The settings for this integration */ @ApiMember(Description="The settings for this integration") public Struct settings = null; /** * The features supported by this integration */ @ApiMember(Description="The features supported by this integration") public ArrayList features = null; /** * Is this integration authorized (OAuth)? */ @ApiMember(Description="Is this integration authorized (OAuth)?") public Boolean isAuthorized = null; public String getAccountId() { return accountId; } public IntegrationInfo setAccountId(String value) { this.accountId = value; return this; } public String getCustomerId() { return customerId; } public IntegrationInfo setCustomerId(String value) { this.customerId = value; return this; } public String getCustomerName() { return customerName; } public IntegrationInfo setCustomerName(String value) { this.customerName = value; return this; } public String getDateLastSync() { return dateLastSync; } public IntegrationInfo setDateLastSync(String value) { this.dateLastSync = value; return this; } public ArrayList getCustomerBreadcrumb() { return customerBreadcrumb; } public IntegrationInfo setCustomerBreadcrumb(ArrayList value) { this.customerBreadcrumb = value; return this; } public String getName() { return name; } public IntegrationInfo setName(String value) { this.name = value; return this; } public Boolean isAutomaticallyCreateCustomers() { return automaticallyCreateCustomers; } public IntegrationInfo setAutomaticallyCreateCustomers(Boolean value) { this.automaticallyCreateCustomers = value; return this; } public IntegrationTypes getType() { return type; } public IntegrationInfo setType(IntegrationTypes value) { this.type = value; return this; } public IntegrationStatuses getStatus() { return status; } public IntegrationInfo setStatus(IntegrationStatuses value) { this.status = value; return this; } public String getStatusMessage() { return statusMessage; } public IntegrationInfo setStatusMessage(String value) { this.statusMessage = value; return this; } public DataType getSettingsDataType() { return settingsDataType; } public IntegrationInfo setSettingsDataType(DataType value) { this.settingsDataType = value; return this; } public Struct getSettings() { return settings; } public IntegrationInfo setSettings(Struct value) { this.settings = value; return this; } public ArrayList getFeatures() { return features; } public IntegrationInfo setFeatures(ArrayList value) { this.features = value; return this; } public Boolean getIsAuthorized() { return isAuthorized; } public IntegrationInfo setIsAuthorized(Boolean value) { this.isAuthorized = value; return this; } } }