/* Options: Date: 2024-05-18 06:45:56 Version: 6.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://evovoice.io //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: ListEndpoints.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using System.IO; using Voice.Api; using Voice.Api.Endpoints; using Voice.Api.Portal; using Voice.Api.Sys; using Voice.Api.Customers; using Voice.Api.Accounts; namespace Voice.Api { public partial class EntityInfo { /// ///The ID of the object /// [ApiMember(Description="The ID of the object")] public virtual string Id { get; set; } /// ///The date the object was created /// [ApiMember(Description="The date the object was created")] public virtual string DateCreated { get; set; } /// ///The date the object was last modified /// [ApiMember(Description="The date the object was last modified")] public virtual string DateLastModified { get; set; } /// ///The user that created this object /// [ApiMember(Description="The user that created this object")] public virtual string CreatedBy { get; set; } /// ///The user that last modified this object /// [ApiMember(Description="The user that last modified this object")] public virtual string LastModifiedBy { get; set; } } public partial class ListRequest : IGet { public ListRequest() { SpecificIds = new List{}; } /// ///The page of data to retrieve /// [ApiMember(Description="The page of data to retrieve")] public virtual int Page { get; set; } /// ///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 virtual bool All { get; set; } /// ///The number per page to retrieve /// [ApiMember(Description="The number per page to retrieve")] public virtual int CountPerPage { get; set; } /// ///Specific IDs /// [ApiMember(Description="Specific IDs")] public virtual List SpecificIds { get; set; } /// ///Specify a sort field /// [ApiMember(Description="Specify a sort field")] public virtual string SortField { get; set; } /// ///Specify a sort order /// [ApiMember(Description="Specify a sort order")] public virtual SortOrders SortOrder { get; set; } /// ///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 virtual bool SimplifiedPaging { get; set; } } public partial class ListResponse { public ListResponse() { Items = new List{}; } /// ///The items /// [ApiMember(Description="The items")] public virtual List Items { get; set; } /// ///The total number of items /// [ApiMember(Description="The total number of items")] public virtual int TotalCount { get; set; } /// ///The total number of pages /// [ApiMember(Description="The total number of pages")] public virtual int TotalPages { get; set; } /// ///Are there more pages of items? Used with simplified paging /// [ApiMember(Description="Are there more pages of items? Used with simplified paging")] public virtual bool HasMorePages { get; set; } } public enum SortOrders { Ascend, Descend, } } namespace Voice.Api.Accounts { public partial class AccountInfo : EntityInfo { public AccountInfo() { AncestorIds = new List{}; } /// ///The name of this account /// [ApiMember(Description="The name of this account")] public virtual string Name { get; set; } /// ///The ID of this account's parent /// [ApiMember(Description="The ID of this account's parent")] public virtual string ParentAccountId { get; set; } /// ///The twilio account SID /// [ApiMember(Description="The twilio account SID")] public virtual string TwilioAccountSid { get; set; } /// ///The ancestors of this account. Useful for breadcrumbs /// [ApiMember(Description="The ancestors of this account. Useful for breadcrumbs")] public virtual List AncestorIds { get; set; } /// ///The max number of phone numbers this account can have /// [ApiMember(Description="The max number of phone numbers this account can have")] public virtual int MaxPhoneNumbers { get; set; } /// ///This account is BYOA /// [ApiMember(Description="This account is BYOA")] public virtual bool IsBYOA { get; set; } /// ///TrustHub Profile Sid /// [ApiMember(Description="TrustHub Profile Sid")] public virtual string TrustHubProfileSid { get; set; } /// ///The ID of the logo file /// [ApiMember(Description="The ID of the logo file")] public virtual string LogoId { get; set; } /// ///The URI of the logo file /// [ApiMember(Description="The URI of the logo file")] public virtual string LogoUri { get; set; } /// ///The billing settings for this account /// [ApiMember(Description="The billing settings for this account")] public virtual BillingSettings BillingSettings { get; set; } } } namespace Voice.Api.Customers { public partial class CustomerBreadcrumb { public virtual string Id { get; set; } public virtual string Name { get; set; } } } namespace Voice.Api.Endpoints { public partial class EndpointInfo : EntityInfo { public EndpointInfo() { CustomerBreadcrumb = new List{}; ScheduledFlows = new List{}; DashboardPermissions = new List{}; Tags = new List{}; ActionUrls = new List{}; TeamMemberIds = new List{}; Contacts = new List{}; } /// ///The account ID this endpoint is associated with /// [ApiMember(Description="The account ID this endpoint is associated with")] public virtual string AccountId { get; set; } /// ///The name of the account this endpoint is associated with /// [ApiMember(Description="The name of the account this endpoint is associated with")] public virtual string AccountName { get; set; } /// ///The ID of the customer this endpoint is associated with /// [ApiMember(Description="The ID of the customer this endpoint is associated with")] public virtual string CustomerId { get; set; } /// ///The name of the customer this endpoint is associated with /// [ApiMember(Description="The name of the customer this endpoint is associated with")] public virtual string CustomerName { get; set; } /// ///The third party reference ID for the endpoint /// [ApiMember(Description="The third party reference ID for the endpoint")] public virtual string ReferenceId { get; set; } /// ///The breadcrumb to the customer for this endpoint /// [ApiMember(Description="The breadcrumb to the customer for this endpoint")] public virtual List CustomerBreadcrumb { get; set; } /// ///The display name of the endpoint /// [ApiMember(Description="The display name of the endpoint")] public virtual string DisplayName { get; set; } /// ///The type of endpoint /// [ApiMember(Description="The type of endpoint")] public virtual EndpointTypes Type { get; set; } /// ///Extra info for this endpoint (typically to show in grid) /// [ApiMember(Description="Extra info for this endpoint (typically to show in grid)")] public virtual string ExtraInformation { get; set; } /// ///The ID of the flow to use for voice /// [ApiMember(Description="The ID of the flow to use for voice")] public virtual string FlowId { get; set; } /// ///The name of the flow to use for voice /// [ApiMember(Description="The name of the flow to use for voice")] public virtual string FlowName { get; set; } /// ///The params for the voice flow /// [ApiMember(Description="The params for the voice flow")] public virtual Struct FlowParams { get; set; } /// ///Whether to use a single flow always or use scheduled flow system /// [ApiMember(Description="Whether to use a single flow always or use scheduled flow system")] public virtual EndpointFlowSchedules FlowSchedule { get; set; } /// ///This endpoint's schedule /// [ApiMember(Description="This endpoint's schedule")] public virtual Schedule Schedule { get; set; } /// ///The list of scheduled flows when using scheduling /// [ApiMember(Description="The list of scheduled flows when using scheduling")] public virtual List ScheduledFlows { get; set; } /// ///Disable SMS /// [ApiMember(Description="Disable SMS")] public virtual bool DisableSms { get; set; } /// ///Set this to true to prevent Evo Voice from overriding the 10DLC / SMS settings for this number /// [ApiMember(Description="Set this to true to prevent Evo Voice from overriding the 10DLC / SMS settings for this number")] public virtual bool UseExternal10DlcCampaign { get; set; } /// ///Is this a virtual phone number? /// [ApiMember(Description="Is this a virtual phone number?")] public virtual bool IsVirtualPhoneNumber { get; set; } /// ///Is caller ID verified for this virtual number? /// [ApiMember(Description="Is caller ID verified for this virtual number?")] public virtual bool IsCallerIdVerified { get; set; } /// ///The verification code for this number /// [ApiMember(Description="The verification code for this number")] public virtual string CallerIdVerificationCode { get; set; } /// ///The phone number /// [ApiMember(Description="The phone number")] public virtual string PhoneNumber { get; set; } /// ///The Sid of the phone number /// [ApiMember(Description="The Sid of the phone number")] public virtual string PhoneNumberSid { get; set; } /// ///The caller ID Name (CNAM) for the phone number /// [ApiMember(Description="The caller ID Name (CNAM) for the phone number")] public virtual string CallerIdName { get; set; } /// ///The address SID associated with the phone number /// [ApiMember(Description="The address SID associated with the phone number")] public virtual string AddressSid { get; set; } /// ///Do not touch this phone number - for BYOA accounts /// [ApiMember(Description="Do not touch this phone number - for BYOA accounts")] public virtual bool DoNotTouchPhoneNumber { get; set; } /// ///Is this number enrolled in a 10DLC messaging service campaign /// [ApiMember(Description="Is this number enrolled in a 10DLC messaging service campaign")] public virtual bool IsEnrolledIn10DlcService { get; set; } /// ///Whether we look up caller ID or not /// [ApiMember(Description="Whether we look up caller ID or not")] public virtual bool EnableCallerIdLookup { get; set; } /// ///The email address of the user /// [ApiMember(Description="The email address of the user")] public virtual string UserEmailAddress { get; set; } /// ///The Twilio Region for the SIP endpoint /// [ApiMember(Description="The Twilio Region for the SIP endpoint")] public virtual TwilioSipRegions SipRegion { get; set; } /// ///The Twilio Sid of the credentials for Sip /// [ApiMember(Description="The Twilio Sid of the credentials for Sip")] public virtual string SipCredentialSid { get; set; } /// ///The Twilio SIP user name /// [ApiMember(Description="The Twilio SIP user name")] public virtual string SipUserName { get; set; } /// ///The Twilio SIP password /// [ApiMember(Description="The Twilio SIP password")] public virtual string SipPassword { get; set; } /// ///The SIP domain /// [ApiMember(Description="The SIP domain")] public virtual string SipDomain { get; set; } /// ///Is emergency calling enabled on this number? /// [ApiMember(Description="Is emergency calling enabled on this number?")] public virtual bool EnableEmergencyCalling { get; set; } /// ///The SID of the emergency address for this number /// [ApiMember(Description="The SID of the emergency address for this number")] public virtual string EmergencyAddressSid { get; set; } /// ///The ID of the phone number to use for emergency dialing /// [ApiMember(Description="The ID of the phone number to use for emergency dialing")] public virtual string EmergencyPhoneNumberId { get; set; } /// ///The current agent state of this user endpoint /// [ApiMember(Description="The current agent state of this user endpoint")] public virtual AgentStates AgentState { get; set; } /// ///The current agent state reason of this user endpoint /// [ApiMember(Description="The current agent state reason of this user endpoint")] public virtual AgentStateReasons AgentStateReason { get; set; } /// ///The mode for this user /// [ApiMember(Description="The mode for this user")] public virtual UserModes UserMode { get; set; } /// ///The ID of the file to use for voicemail greeting /// [ApiMember(Description="The ID of the file to use for voicemail greeting")] public virtual string VoicemailGreetingId { get; set; } /// ///The endpoint's data /// [ApiMember(Description="The endpoint's data")] public virtual Struct Data { get; set; } /// ///The email address for email endpoints /// [ApiMember(Description="The email address for email endpoints")] public virtual string EmailAddress { get; set; } /// ///The first name of the user (for user endpoints) /// [ApiMember(Description="The first name of the user (for user endpoints)")] public virtual string UserFirstName { get; set; } /// ///The last name of the user (for user endpoints) /// [ApiMember(Description="The last name of the user (for user endpoints)")] public virtual string UserLastName { get; set; } /// ///The URL of an image for this user's avatar /// [ApiMember(Description="The URL of an image for this user's avatar")] public virtual string AvatarUrl { get; set; } /// ///Does this user have manager role? /// [ApiMember(Description="Does this user have manager role?")] public virtual UserManagerRoles ManagerRole { get; set; } /// ///The list of dashboard permissions for when the manager role is custom /// [ApiMember(Description="The list of dashboard permissions for when the manager role is custom")] public virtual List DashboardPermissions { get; set; } /// ///The type of visibility this user has to their own fields /// [ApiMember(Description="The type of visibility this user has to their own fields")] public virtual UserDataFieldModes MyFieldPermissions { get; set; } /// ///The type of visibility this user has to customer fields /// [ApiMember(Description="The type of visibility this user has to customer fields")] public virtual UserDataFieldModes CustomerFieldPermissions { get; set; } /// ///The type of visibility this user has to other user fields /// [ApiMember(Description="The type of visibility this user has to other user fields")] public virtual UserDataFieldModes OtherUserFieldPermissions { get; set; } /// ///The type of visibility this user has to other endpoint fields /// [ApiMember(Description="The type of visibility this user has to other endpoint fields")] public virtual UserDataFieldModes OtherEndpointFieldPermissions { get; set; } /// ///The name of this endpoint (for bots etc.) /// [ApiMember(Description="The name of this endpoint (for bots etc.)")] public virtual string Name { get; set; } /// ///The list of tags for this endpoint /// [ApiMember(Description="The list of tags for this endpoint")] public virtual List Tags { get; set; } /// ///The list of action URLs /// [ApiMember(Description="The list of action URLs")] public virtual List ActionUrls { get; set; } /// ///The list of members in this team /// [ApiMember(Description="The list of members in this team")] public virtual List TeamMemberIds { get; set; } /// ///Visibility of this user/team in contact lists /// [ApiMember(Description="Visibility of this user/team in contact lists")] public virtual CustomerVisibility ContactListVisibility { get; set; } /// ///The list of contacts personal to this user /// [ApiMember(Description="The list of contacts personal to this user")] public virtual List Contacts { get; set; } /// ///The documo ID for this number /// [ApiMember(Description="The documo ID for this number")] public virtual string DocumoId { get; set; } /// ///Integration data for this endpoint /// [ApiMember(Description="Integration data for this endpoint")] public virtual EntityIntegrationData IntegrationData { get; set; } /// ///Settings for third party phone system /// [ApiMember(Description="Settings for third party phone system")] public virtual ThirdPartyPhoneSystemSettings ThirdPartyPhoneSystemSettings { get; set; } /// ///Should this user override the parent customer's app settings /// [ApiMember(Description="Should this user override the parent customer's app settings")] public virtual bool OverrideAppSettings { get; set; } /// ///App / Portal settings for this user /// [ApiMember(Description="App / Portal settings for this user")] public virtual AppSettings AppSettings { get; set; } } public enum EndpointTypes { PhoneNumber, User, FaxNumber, EmailAddress, Unused_1, Unused_2, Unused_3, Unused_4, Unused_5, Team, } /// ///Lists all endpoints /// [Route("/endpoints", "GET")] [Api(Description="Lists all endpoints")] public partial class ListEndpoints : ListRequest, IReturn> { public ListEndpoints() { AccountIds = new List{}; CustomerIds = new List{}; ReferenceIds = new List{}; FlowIds = new List{}; TagIds = new List{}; Types = new List{}; DataFilters = new List{}; } /// ///The IDs of the account whose endpoints you want to retrieve /// [ApiMember(Description="The IDs of the account whose endpoints you want to retrieve")] public virtual List AccountIds { get; set; } /// ///The IDs of the customers whose endpoints you want to retrieve /// [ApiMember(Description="The IDs of the customers whose endpoints you want to retrieve")] public virtual List CustomerIds { get; set; } /// ///The third party IDs of endpoints you want to retrieve /// [ApiMember(Description="The third party IDs of endpoints you want to retrieve")] public virtual List ReferenceIds { get; set; } /// ///If you want a shall parent customer filter (e.g. no deep children) /// [ApiMember(Description="If you want a shall parent customer filter (e.g. no deep children)")] public virtual bool ShallowParent { get; set; } /// ///The IDs of the flows whose endpoints you want to retrieve /// [ApiMember(Description="The IDs of the flows whose endpoints you want to retrieve")] public virtual List FlowIds { get; set; } /// ///The state where the specified flow IDs should be /// [ApiMember(Description="The state where the specified flow IDs should be")] public virtual string FlowState { get; set; } /// ///The list of tag IDs to filter by (must contain all) /// [ApiMember(Description="The list of tag IDs to filter by (must contain all)")] public virtual List TagIds { get; set; } /// ///Filter by name /// [ApiMember(Description="Filter by name")] public virtual string NameFilter { get; set; } /// ///Filter by phone number /// [ApiMember(Description="Filter by phone number")] public virtual string PhoneNumberFilter { get; set; } /// ///Filter by type /// [ApiMember(Description="Filter by type")] public virtual EndpointTypes? Type { get; set; } /// ///Filter by types /// [ApiMember(Description="Filter by types")] public virtual List Types { get; set; } /// ///Filter by user mode /// [ApiMember(Description="Filter by user mode")] public virtual UserModes? UserMode { get; set; } /// ///Filters for any endpoint data fields. Format for each entry should be 'FieldName=Value'. We do not support numeric or boolean currently /// [ApiMember(Description="Filters for any endpoint data fields. Format for each entry should be 'FieldName=Value'. We do not support numeric or boolean currently")] public virtual List DataFilters { get; set; } /// ///Filter by SIP user name /// [ApiMember(Description="Filter by SIP user name")] public virtual string SipUserName { get; set; } /// ///Filter by flow parameters (this must be a JSON struct) /// [ApiMember(Description="Filter by flow parameters (this must be a JSON struct)")] public virtual string FlowParametersFilter { get; set; } } public enum UserModes { SoftPhone, Sip, Flow, DataOnly, ThirdParty, } } namespace Voice.Api.Portal { public partial class HostedSuiteCompletedForm { public HostedSuiteCompletedForm() { ContactsIds = new List{}; ContactsNames = new List{}; Fields = new List{}; } public virtual string Id { get; set; } public virtual string Name { get; set; } public virtual string DateCreated { get; set; } public virtual string DateCompleted { get; set; } public virtual string FormId { get; set; } public virtual string FormName { get; set; } public virtual string ClientId { get; set; } public virtual string ClientName { get; set; } public virtual string ContactId { get; set; } public virtual string ContactName { get; set; } public virtual List ContactsIds { get; set; } public virtual List ContactsNames { get; set; } public virtual string EmailSubject { get; set; } public virtual string CallerNumber { get; set; } public virtual List Fields { get; set; } } public partial class HostedSuiteCompletedFormField { public HostedSuiteCompletedFormField() { Values = new List{}; } public virtual string Name { get; set; } public virtual List Values { get; set; } } } namespace Voice.Api.Sys { public partial class LogEntryInfo : EntityInfo { public LogEntryInfo() { CustomerBreadcrumb = new List{}; } /// ///The account ID this endpoint is associated with /// [ApiMember(Description="The account ID this endpoint is associated with")] public virtual string AccountId { get; set; } /// ///The name of the account this endpoint is associated with /// [ApiMember(Description="The name of the account this endpoint is associated with")] public virtual string AccountName { get; set; } /// ///The ID of the customer this endpoint is associated with /// [ApiMember(Description="The ID of the customer this endpoint is associated with")] public virtual string CustomerId { get; set; } /// ///The name of the customer this endpoint is associated with /// [ApiMember(Description="The name of the customer this endpoint is associated with")] public virtual string CustomerName { get; set; } /// ///The breadcrumb to the customer for this endpoint /// [ApiMember(Description="The breadcrumb to the customer for this endpoint")] public virtual List CustomerBreadcrumb { get; set; } public virtual string UserName { get; set; } public virtual string Description { get; set; } } }