/* Options: Date: 2025-05-04 22:08:12 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ListNotifications.* //ExcludeTypes: //DefaultImports: */ export class NodeParameterMap { [key:string] : NodeParameter; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IReturn { createResponse(): T; } export enum SortOrders { Ascend = 'Ascend', Descend = 'Descend', } export class ListRequest implements IGet { /** @description The page of data to retrieve */ // @ApiMember(Description="The page of data to retrieve") public page: number; /** @description 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 all: boolean; /** @description The number per page to retrieve */ // @ApiMember(Description="The number per page to retrieve") public countPerPage: number; /** @description Specific IDs */ // @ApiMember(Description="Specific IDs") public specificIds: string[]; /** @description Specify a sort field */ // @ApiMember(Description="Specify a sort field") public sortField: string; /** @description Specify a sort order */ // @ApiMember(Description="Specify a sort order") public sortOrder: SortOrders; /** @description 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 simplifiedPaging: boolean; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } export enum NotificationTypes { Email = 'Email', Sms = 'Sms', Push = 'Push', IncomingCall = 'IncomingCall', OutgoingCall = 'OutgoingCall', } export class EntityInfo { /** @description The ID of the object */ // @ApiMember(Description="The ID of the object") public id: string; /** @description The date the object was created */ // @ApiMember(Description="The date the object was created") public dateCreated: string; /** @description The date the object was last modified */ // @ApiMember(Description="The date the object was last modified") public dateLastModified: string; /** @description The user that created this object */ // @ApiMember(Description="The user that created this object") public createdBy: string; /** @description The user that last modified this object */ // @ApiMember(Description="The user that last modified this object") public lastModifiedBy: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ListResponse { /** @description The items */ // @ApiMember(Description="The items") public items: T[]; /** @description The total number of items */ // @ApiMember(Description="The total number of items") public totalCount: number; /** @description The total number of pages */ // @ApiMember(Description="The total number of pages") public totalPages: number; /** @description Are there more pages of items? Used with simplified paging */ // @ApiMember(Description="Are there more pages of items? Used with simplified paging") public hasMorePages: boolean; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } export class CustomerBreadcrumb { public id: string; public name: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class NotificationRecipientInfo { /** @description The address of the recipient */ // @ApiMember(Description="The address of the recipient") public address: string; /** @description Extra info about the recipient e.g. CC, BCC */ // @ApiMember(Description="Extra info about the recipient e.g. CC, BCC") public extra: string; /** @description The name of the recipient */ // @ApiMember(Description="The name of the recipient") public name: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class FileInfo extends EntityInfo { /** @description The type of file this is */ // @ApiMember(Description="The type of file this is") public type: FileTypes; /** @description The account ID this file is associated with */ // @ApiMember(Description="The account ID this file is associated with") public accountId: string; /** @description The name of the account this file is associated with */ // @ApiMember(Description="The name of the account this file is associated with") public accountName: string; /** @description The ID of the customer this file is associated with */ // @ApiMember(Description="The ID of the customer this file is associated with") public customerId: string; /** @description The name of the customer this file is associated with */ // @ApiMember(Description="The name of the customer this file is associated with") public customerName: string; /** @description The breadcrumb to the customer for this file */ // @ApiMember(Description="The breadcrumb to the customer for this file") public customerBreadcrumb: CustomerBreadcrumb[]; /** @description The ID of the user this file is assocaited with */ // @ApiMember(Description="The ID of the user this file is assocaited with") public userId: string; /** @description The name of the user this file is associated with */ // @ApiMember(Description="The name of the user this file is associated with") public userName: string; /** @description The original file name for the file */ // @ApiMember(Description="The original file name for the file") public fileName: string; /** @description The URI of the file */ // @ApiMember(Description="The URI of the file") public uri: string; /** @description The Content type of the file */ // @ApiMember(Description="The Content type of the file") public contentType: string; /** @description The size of the file */ // @ApiMember(Description="The size of the file") public contentLength: number; /** @description The Twilio ID of the recording */ // @ApiMember(Description="The Twilio ID of the recording") public recordingSid: string; /** @description The duration of the recording in seconds */ // @ApiMember(Description="The duration of the recording in seconds") public recordingDuration: number; /** @description Who is the recording from? */ // @ApiMember(Description="Who is the recording from?") public recordingFrom: string; /** @description Transcription (if available) */ // @ApiMember(Description="Transcription (if available)") public transcription: string; /** @description From Address (e.g. caller ID) for incoming calls */ // @ApiMember(Description="From Address (e.g. caller ID) for incoming calls") public fromAddress: string; /** @description To Address (e.g. dialed number) for outgoing calls */ // @ApiMember(Description="To Address (e.g. dialed number) for outgoing calls") public toAddress: string; /** @description The AI transcription for this call */ // @ApiMember(Description="The AI transcription for this call") public aiTranscription: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class NotificationInfo extends EntityInfo { /** @description The account ID this endpoint is associated with */ // @ApiMember(Description="The account ID this endpoint is associated with") public accountId: string; /** @description The name of the account this endpoint is associated with */ // @ApiMember(Description="The name of the account this endpoint is associated with") public accountName: string; /** @description The ID of the customer this endpoint is associated with */ // @ApiMember(Description="The ID of the customer this endpoint is associated with") public customerId: string; /** @description The name of the customer this endpoint is associated with */ // @ApiMember(Description="The name of the customer this endpoint is associated with") public customerName: string; /** @description The breadcrumb to the customer for this endpoint */ // @ApiMember(Description="The breadcrumb to the customer for this endpoint") public customerBreadcrumb: CustomerBreadcrumb[]; /** @description The type of notification */ // @ApiMember(Description="The type of notification") public type: NotificationTypes; /** @description The subject of the notification */ // @ApiMember(Description="The subject of the notification") public subject: string; /** @description The body of the notification */ // @ApiMember(Description="The body of the notification") public body: string; /** @description The recipients of this notification */ // @ApiMember(Description="The recipients of this notification") public recipients: NotificationRecipientInfo[]; /** @description The list of attachments */ // @ApiMember(Description="The list of attachments") public attachments: FileInfo[]; /** @description The original from for the session */ // @ApiMember(Description="The original from for the session") public from: string; /** @description The original To for the session */ // @ApiMember(Description="The original To for the session") public to: string; /** @description Was there an error? */ // @ApiMember(Description="Was there an error?") public error: boolean; /** @description The error message */ // @ApiMember(Description="The error message") public errorMessage: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description Lists all endpoints */ // @Route("/notifications", "GET") // @Api(Description="Lists all endpoints") export class ListNotifications extends ListRequest implements IReturn> { /** @description The IDs of the account whose notifications you want to retrieve */ // @ApiMember(Description="The IDs of the account whose notifications you want to retrieve") public accountIds: string[]; /** @description The IDs of the customers whose notifications you want to retrieve */ // @ApiMember(Description="The IDs of the customers whose notifications you want to retrieve") public customerIds: string[]; /** @description Filter by From */ // @ApiMember(Description="Filter by From") public fromFilter: string; /** @description Filter by To */ // @ApiMember(Description="Filter by To") public toFilter: string; /** @description Filter by Subject */ // @ApiMember(Description="Filter by Subject") public subjectFilter: string; /** @description The start date to retrieve usage records for (YYYY-MM-DD) */ // @ApiMember(Description="The start date to retrieve usage records for (YYYY-MM-DD)") public startDate: string; /** @description The end date to retrieve usage records for (YYYY-MM-DD) */ // @ApiMember(Description="The end date to retrieve usage records for (YYYY-MM-DD)") public endDate: string; /** @description Filter by type */ // @ApiMember(Description="Filter by type") public type?: NotificationTypes; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'ListNotifications'; } public getMethod() { return 'GET'; } public createResponse() { return new ListResponse(); } }