| Requires any of the roles: | Agent, Administrator, Agent, Administrator, Agent, Administrator |
| GET,POST,PUT,DELETE,OPTIONS | /v1/Campaign/{CampaignId} | ||
|---|---|---|---|
| GET,POST,PUT,DELETE,OPTIONS | /v1/Campaign |
"use strict";
/** @typedef {number} */
export var DeliveryChannel;
(function (DeliveryChannel) {
DeliveryChannel[DeliveryChannel["None"] = 0] = "None"
DeliveryChannel[DeliveryChannel["Email"] = 1] = "Email"
DeliveryChannel[DeliveryChannel["Sms"] = 2] = "Sms"
})(DeliveryChannel || (DeliveryChannel = {}));
export class Campaign {
/** @param {{CampaignId?:number,CampaignTypeId?:number,CampaignName?:string,AgentID?:number,Subject?:string,Template?:string,DateCreated?:string,DateDeleted?:string,Frequency?:string,StartDate?:string,TimeOfDay?:string,LastRunAtUtc?:string,NextRunAtUtc?:string,TimeZoneId?:string,DayOfWeek?:DayOfWeek,DayOfMonth?:number,IsActive?:boolean,CreatedUtc?:string,UpdatedUtc?:string,Channels?:DeliveryChannel}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
CampaignId;
/** @type {number} */
CampaignTypeId;
/** @type {string} */
CampaignName;
/** @type {number} */
AgentID;
/** @type {string} */
Subject;
/** @type {string} */
Template;
/** @type {?string} */
DateCreated;
/** @type {?string} */
DateDeleted;
/** @type {string} */
Frequency;
/** @type {string} */
StartDate;
/** @type {?string} */
TimeOfDay;
/** @type {?string} */
LastRunAtUtc;
/** @type {?string} */
NextRunAtUtc;
/** @type {string} */
TimeZoneId;
/** @type {?DayOfWeek} */
DayOfWeek;
/** @type {?number} */
DayOfMonth;
/** @type {boolean} */
IsActive;
/** @type {?string} */
CreatedUtc;
/** @type {?string} */
UpdatedUtc;
/** @type {DeliveryChannel} */
Channels;
}
export class CampaignExtended extends Campaign {
/** @param {{CampaignType?:string,AgentName?:string,CampaignId?:number,CampaignTypeId?:number,CampaignName?:string,AgentID?:number,Subject?:string,Template?:string,DateCreated?:string,DateDeleted?:string,Frequency?:string,StartDate?:string,TimeOfDay?:string,LastRunAtUtc?:string,NextRunAtUtc?:string,TimeZoneId?:string,DayOfWeek?:DayOfWeek,DayOfMonth?:number,IsActive?:boolean,CreatedUtc?:string,UpdatedUtc?:string,Channels?:DeliveryChannel}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CampaignType;
/** @type {string} */
AgentName;
}
export class CampaignResponse {
/** @param {{ResponseStatus?:ResponseStatus,Campaign?:CampaignExtended[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseStatus} */
ResponseStatus;
/** @type {CampaignExtended[]} */
Campaign = [];
}
export class CampaignRequest {
/** @param {{CampaignId?:number,Campaign?:Campaign[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
CampaignId;
/** @type {Campaign[]} */
Campaign = [];
}
JavaScript CampaignRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/Campaign/{CampaignId} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
CampaignId: 0,
Campaign:
[
{
CampaignId: 0,
CampaignTypeId: 0,
CampaignName: String,
AgentID: 0,
Subject: String,
Template: String,
DateCreated: 0001-01-01,
DateDeleted: 0001-01-01,
Frequency: String,
StartDate: 0001-01-01,
TimeOfDay: PT0S,
LastRunAtUtc: 0001-01-01,
NextRunAtUtc: 0001-01-01,
TimeZoneId: String,
DayOfWeek: Sunday,
DayOfMonth: 0,
IsActive: False,
CreatedUtc: 0001-01-01,
UpdatedUtc: 0001-01-01,
Channels: 0
}
]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
},
Campaign:
[
{
CampaignType: String,
AgentName: String,
CampaignId: 0,
CampaignTypeId: 0,
CampaignName: String,
AgentID: 0,
Subject: String,
Template: String,
DateCreated: 0001-01-01,
DateDeleted: 0001-01-01,
Frequency: String,
StartDate: 0001-01-01,
TimeOfDay: PT0S,
LastRunAtUtc: 0001-01-01,
NextRunAtUtc: 0001-01-01,
TimeZoneId: String,
DayOfWeek: Sunday,
DayOfMonth: 0,
IsActive: False,
CreatedUtc: 0001-01-01,
UpdatedUtc: 0001-01-01,
Channels: 0
}
]
}