| Required role: | Admin |
| POST | /Outbound/Campaigns |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using TicketUserServices.ServiceModel;
namespace TicketUserServices.ServiceModel
{
public partial class OutboundCampaignCreateRequest
{
public OutboundCampaignCreateRequest()
{
People = new List<OutboundCampaignPerson>{};
}
public virtual int OwnerId { get; set; }
public virtual string Name { get; set; }
public virtual string Lane { get; set; }
public virtual string TemplateKey { get; set; }
public virtual string PayloadJson { get; set; }
public virtual string ChannelOrder { get; set; }
public virtual int? HoldoutPercent { get; set; }
public virtual string GuardKey { get; set; }
public virtual string GuardSubject { get; set; }
public virtual DateTime? SendAt { get; set; }
public virtual DateTime? ExpiresAt { get; set; }
public virtual string AudienceSource { get; set; }
public virtual List<OutboundCampaignPerson> People { get; set; }
}
public partial class OutboundCampaignDevice
{
public virtual string Token { get; set; }
public virtual string Platform { get; set; }
}
public partial class OutboundCampaignPerson
{
public OutboundCampaignPerson()
{
Devices = new List<OutboundCampaignDevice>{};
}
public virtual string Phone { get; set; }
public virtual string Email { get; set; }
public virtual List<OutboundCampaignDevice> Devices { get; set; }
public virtual bool? PushConsent { get; set; }
public virtual bool? SmsConsent { get; set; }
public virtual bool? EmailConsent { get; set; }
public virtual string PayloadJson { get; set; }
}
public partial class OutboundCampaignResult
{
public OutboundCampaignResult()
{
Decisions = new Dictionary<string, int>{};
QueuedByChannel = new Dictionary<string, int>{};
MessageStatuses = new Dictionary<string, int>{};
}
public virtual int CampaignId { get; set; }
public virtual Dictionary<string, int> Decisions { get; set; }
public virtual Dictionary<string, int> QueuedByChannel { get; set; }
public virtual Dictionary<string, int> MessageStatuses { get; set; }
public virtual int Duplicates { get; set; }
public virtual int NoIdentity { get; set; }
public virtual int StatusCode { get; set; }
public virtual string Message { get; set; }
}
}
C# OutboundCampaignCreateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Outbound/Campaigns HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<OutboundCampaignCreateRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<AudienceSource>String</AudienceSource>
<ChannelOrder>String</ChannelOrder>
<ExpiresAt>0001-01-01T00:00:00</ExpiresAt>
<GuardKey>String</GuardKey>
<GuardSubject>String</GuardSubject>
<HoldoutPercent>0</HoldoutPercent>
<Lane>String</Lane>
<Name>String</Name>
<OwnerId>0</OwnerId>
<PayloadJson>String</PayloadJson>
<People>
<OutboundCampaignPerson>
<Devices>
<OutboundCampaignDevice>
<Platform>String</Platform>
<Token>String</Token>
</OutboundCampaignDevice>
</Devices>
<Email>String</Email>
<EmailConsent>false</EmailConsent>
<PayloadJson>String</PayloadJson>
<Phone>String</Phone>
<PushConsent>false</PushConsent>
<SmsConsent>false</SmsConsent>
</OutboundCampaignPerson>
</People>
<SendAt>0001-01-01T00:00:00</SendAt>
<TemplateKey>String</TemplateKey>
</OutboundCampaignCreateRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<OutboundCampaignResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<CampaignId>0</CampaignId>
<Decisions xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringint>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>0</d2p1:Value>
</d2p1:KeyValueOfstringint>
</Decisions>
<Duplicates>0</Duplicates>
<Message>String</Message>
<MessageStatuses xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringint>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>0</d2p1:Value>
</d2p1:KeyValueOfstringint>
</MessageStatuses>
<NoIdentity>0</NoIdentity>
<QueuedByChannel xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringint>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>0</d2p1:Value>
</d2p1:KeyValueOfstringint>
</QueuedByChannel>
<StatusCode>0</StatusCode>
</OutboundCampaignResult>