TicketUserServices

<back to all web services

OutboundCampaignLaunchRequest

Requires Authentication
Required role:Admin
The following routes are available for this service:
POST/Outbound/Campaigns/{CampaignId}/Launch
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports TicketUserServices.ServiceModel

Namespace Global

    Namespace TicketUserServices.ServiceModel

        Public Partial Class OutboundCampaignDevice
            Public Overridable Property Token As String
            Public Overridable Property Platform As String
        End Class

        Public Partial Class OutboundCampaignLaunchRequest
            Public Sub New()
                People = New List(Of OutboundCampaignPerson)
            End Sub

            Public Overridable Property CampaignId As Integer
            Public Overridable Property People As List(Of OutboundCampaignPerson)
        End Class

        Public Partial Class OutboundCampaignPerson
            Public Sub New()
                Devices = New List(Of OutboundCampaignDevice)
            End Sub

            Public Overridable Property Phone As String
            Public Overridable Property Email As String
            Public Overridable Property Devices As List(Of OutboundCampaignDevice)
            Public Overridable Property PushConsent As Nullable(Of Boolean)
            Public Overridable Property SmsConsent As Nullable(Of Boolean)
            Public Overridable Property EmailConsent As Nullable(Of Boolean)
            Public Overridable Property PayloadJson As String
        End Class

        Public Partial Class OutboundCampaignResult
            Public Sub New()
                Decisions = New Dictionary(Of String, Integer)
                QueuedByChannel = New Dictionary(Of String, Integer)
                MessageStatuses = New Dictionary(Of String, Integer)
            End Sub

            Public Overridable Property CampaignId As Integer
            Public Overridable Property Decisions As Dictionary(Of String, Integer)
            Public Overridable Property QueuedByChannel As Dictionary(Of String, Integer)
            Public Overridable Property MessageStatuses As Dictionary(Of String, Integer)
            Public Overridable Property Duplicates As Integer
            Public Overridable Property NoIdentity As Integer
            Public Overridable Property StatusCode As Integer
            Public Overridable Property Message As String
        End Class
    End Namespace
End Namespace

VB.NET OutboundCampaignLaunchRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /Outbound/Campaigns/{CampaignId}/Launch HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	campaignId: 0,
	people: 
	[
		{
			phone: String,
			email: String,
			devices: 
			[
				{
					token: String,
					platform: String
				}
			],
			pushConsent: False,
			smsConsent: False,
			emailConsent: False,
			payloadJson: String
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	campaignId: 0,
	decisions: 
	{
		String: 0
	},
	queuedByChannel: 
	{
		String: 0
	},
	messageStatuses: 
	{
		String: 0
	},
	duplicates: 0,
	noIdentity: 0,
	statusCode: 0,
	message: String
}