/* Options: Date: 2025-12-06 06:47:05 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CampaignRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } // @Flags() export enum DeliveryChannel { None = 0, Email = 1, Sms = 2, } export class Campaign { public CampaignId: number; public CampaignTypeId: number; public CampaignName: string; public AgentID: number; public Subject: string; public Template: string; public DateCreated?: string; public DateDeleted?: string; public Frequency: string; public StartDate: string; public TimeOfDay?: string; public LastRunAtUtc?: string; public NextRunAtUtc?: string; public TimeZoneId: string; public DayOfWeek?: DayOfWeek; public DayOfMonth?: number; public IsActive: boolean; public CreatedUtc?: string; public UpdatedUtc?: string; public Channels: DeliveryChannel; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CampaignExtended extends Campaign { public CampaignType: string; public AgentName: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @DataContract export class ResponseStatus { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public Message: string; // @DataMember(Order=3) public StackTrace: string; // @DataMember(Order=4) public Errors: ResponseError[] = []; // @DataMember(Order=5) public Meta: { [index:string]: string; } = {}; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CampaignResponse { public ResponseStatus: ResponseStatus; public Campaign: CampaignExtended[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/v1/Campaign", "GET,POST,PUT,DELETE,OPTIONS") // @Route("/v1/Campaign/{CampaignId}", "GET,POST,PUT,DELETE,OPTIONS") export class CampaignRequest implements IReturn { public CampaignId: number; public Campaign: Campaign[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'CampaignRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new CampaignResponse(); } }