digitaluapi

<back to all web services

GetCampaignCustomerCertificateByCustomerId

The following routes are available for this service:
GET/campaign/certbycustomerguid/{CampaignPublicAccessGuid}/{CustomerPublicAccessGuid}Get Campaign Certificate By Campaign and Customer GUID
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*


open class GetCampaignCustomerCertificateByCustomerId
{
    open var CampaignPublicAccessGuid:UUID? = null
    open var CustomerPublicAccessGuid:UUID? = null
}

open class GetCampaignCustomerCertificateResponse
{
    open var Campaign:Campaigns? = null
    open var Customer:Customers? = null
    open var CampaignInstanceCommsDetails:ArrayList<CampaignInstanceCommsDetails>? = null
    open var ResponseStatus:ResponseStatus? = null
}

open class Campaigns
{
    @DataMember(Order=1)
    @Required()
    open var Id:Long? = null

    @DataMember(Order=2)
    @Required()
    open var TenantsId:Int? = null

    @DataMember(Order=3)
    @Required()
    open var Name:String? = null

    @DataMember(Order=4)
    @Required()
    open var Description:String? = null

    @DataMember(Order=5)
    @References(Type=Avatars::class)
    open var AvatarsId:Long? = null

    @DataMember(Order=6)
    @References(Type=Schedules::class)
    open var SchedulesId:Long? = null

    @DataMember(Order=7)
    @References(Type=MessageTones::class)
    open var MessageTonesId:Int? = null

    @DataMember(Order=8)
    @Required()
    @References(Type=StatusCodes::class)
    open var StatusCodesId:Long? = null

    @DataMember(Order=9)
    @Required()
    open var PublicAccessGuid:UUID? = null

    @DataMember(Order=10)
    open var ViewHeading:String? = null

    @DataMember(Order=11)
    open var CampaignActions:ArrayList<CampaignActionsView>? = null
}

open class CampaignActionsView
{
    @DataMember(Order=1)
    @Required()
    open var Id:Long? = null

    @DataMember(Order=2)
    @Required()
    @References(Type=Campaigns::class)
    open var CampaignsId:Long? = null

    @DataMember(Order=3)
    @References(Type=Actions::class)
    open var ActionsId:Long? = null

    @DataMember(Order=4)
    open var ButtonName:String? = null

    @DataMember(Order=5)
    @References(Type=ActionTypes::class)
    open var ActionTypesId:Int? = null

    @DataMember(Order=6)
    open var Description:String? = null

    @DataMember(Order=7)
    open var OfferOrder:Short? = null

    @DataMember(Order=8)
    open var StandOut:Boolean? = null

    @DataMember(Order=9)
    @Required()
    open var PublicAccessGuid:UUID? = null

    @DataMember(Order=10)
    open var IsPayment:Boolean? = null

    @DataMember(Order=11)
    open var IsPayOff:Boolean? = null

    @DataMember(Order=12)
    open var IsEnabled:Boolean? = null
}

open class Customers
{
    @DataMember(Order=1)
    @Required()
    open var Id:Long? = null

    @DataMember(Order=2)
    @Required()
    @References(Type=Tenants::class)
    open var TenantsId:Int? = null

    @DataMember(Order=3)
    @References(Type=AppUser::class)
    open var UserAuthId:Int? = null

    @DataMember(Order=4)
    @Required()
    @References(Type=Segments::class)
    open var SegmentsId:Long? = null

    @DataMember(Order=5)
    @References(Type=Companies::class)
    open var CompaniesId:Long? = null

    @DataMember(Order=6)
    open var CurrenciesId:Int? = null

    @DataMember(Order=7)
    open var Address:String? = null

    @DataMember(Order=8)
    open var Age:Int? = null

    @DataMember(Order=9)
    open var City:String? = null

    @DataMember(Order=10)
    open var ContactNumber:String? = null

    @DataMember(Order=11)
    open var Email:String? = null

    @DataMember(Order=12)
    open var EthnicGroup:String? = null

    @DataMember(Order=13)
    open var FirstName:String? = null

    @DataMember(Order=14)
    open var Gender:String? = null

    @DataMember(Order=15)
    open var HomeLanguage:String? = null

    @DataMember(Order=16)
    open var IdNumber:String? = null

    @DataMember(Order=17)
    open var LastName:String? = null

    @DataMember(Order=18)
    open var PostalCode:String? = null

    @DataMember(Order=19)
    open var Region:String? = null

    @DataMember(Order=20)
    open var Suburb:String? = null

    @DataMember(Order=21)
    open var UniqueIdentifier:String? = null

    @DataMember(Order=22)
    open var BirthDate:Date? = null

    @DataMember(Order=23)
    open var Classifications:HashMap<String,String>? = null

    @DataMember(Order=24)
    open var Country:String? = null

    @DataMember(Order=25)
    open var PassportNumber:String? = null

    @DataMember(Order=26)
    @Required()
    @References(Type=StatusCodes::class)
    open var StatusCodesId:Long? = null

    @DataMember(Order=27)
    open var Reason:String? = null

    @DataMember(Order=28)
    open var VulnerabilityFlag:Boolean? = null

    @DataMember(Order=29)
    open var Meta:HashMap<String,String>? = null

    @DataMember(Order=31)
    @Computed()
    open var PublicAccessGuid:UUID? = null

    @DataMember(Order=32)
    open var CustomField1:String? = null

    @DataMember(Order=33)
    open var CustomField2:String? = null

    @DataMember(Order=34)
    open var CustomField3:String? = null

    @DataMember(Order=35)
    open var CustomField4:String? = null

    @DataMember(Order=36)
    open var CustomField5:String? = null

    @DataMember(Order=37)
    open var CustomField6:String? = null

    @DataMember(Order=38)
    open var CustomField7:String? = null

    @DataMember(Order=39)
    open var CustomField8:String? = null

    @DataMember(Order=40)
    open var CustomField9:String? = null

    @DataMember(Order=41)
    open var CustomField10:String? = null
}

open class CampaignInstanceCommsDetails
{
    open var CampaignInstanceComms:CampaignInstanceComms? = null
    open var EmailEvents:ArrayList<EmailEventsView>? = null
    open var SmsWatsappEvents:ArrayList<SmsWatsappEventsView>? = null
    open var CampaignInstanceCommsStats:ArrayList<CampaignInstanceCommsStats>? = null
}

open class CampaignInstanceComms
{
    @DataMember(Order=1)
    @Required()
    open var Id:Long? = null

    @DataMember(Order=2)
    @Required()
    @References(Type=CampaignInstanceCustomers::class)
    open var CampaignInstanceCustomersId:Long? = null

    @DataMember(Order=3)
    @Required()
    @References(Type=Channels::class)
    open var ChannelsId:Int? = null

    @DataMember(Order=4)
    open var Email:String? = null

    @DataMember(Order=5)
    open var MobileNumber:String? = null

    @DataMember(Order=6)
    open var EmailAttachmentTemplate:String? = null

    @DataMember(Order=7)
    open var EmailTemplate:String? = null

    @DataMember(Order=8)
    open var EmailHtmlTemplate:String? = null

    @DataMember(Order=9)
    open var SmsTemplate:String? = null

    @DataMember(Order=10)
    @Required()
    open var PublicAccessGuid:UUID? = null

    @DataMember(Order=11)
    @Required()
    @References(Type=Campaigns::class)
    open var CampaignsId:Long? = null

    @DataMember(Order=12)
    open var DebtsId:Long? = null

    @DataMember(Order=13)
    @Required()
    open var IsPaymentCampaign:Boolean? = null

    @DataMember(Order=14)
    @References(Type=SchedulesInstances::class)
    open var ScheduleInstancesId:Long? = null

    @DataMember(Order=15)
    open var StatusCodesId:Long? = null

    @DataMember(Order=16)
    open var EmailTemplatesId:Long? = null

    @DataMember(Order=17)
    open var AvatarTemplateText:String? = null

    @DataMember(Order=18)
    open var HeadingTemplateText:String? = null

    @DataMember(Order=19)
    open var SubheadingTemplateText:String? = null

    @DataMember(Order=20)
    open var Sent:Boolean? = null

    @DataMember(Order=21)
    open var Failed:Boolean? = null

    @DataMember(Order=22)
    open var CommsUrl:String? = null
}

open class EmailEventsView
{
    @DataMember(Order=1)
    open var Id:Long? = null

    @DataMember(Order=2)
    open var Email:String? = null

    @DataMember(Order=3)
    open var TimestampDate:Date? = null

    @DataMember(Order=4)
    open var Event:String? = null

    @DataMember(Order=5)
    open var Category:String? = null

    @DataMember(Order=6)
    open var SgEventId:String? = null

    @DataMember(Order=7)
    open var SgMessageId:String? = null

    @DataMember(Order=8)
    open var UserAgent:String? = null

    @DataMember(Order=9)
    open var Ipaddress:String? = null

    @DataMember(Order=10)
    open var Url:String? = null

    @DataMember(Order=11)
    open var CampaignInstanceCommsId:Long? = null

    @DataMember(Order=12)
    open var TenantsId:Int? = null

    @DataMember(Order=13)
    open var SegmentsId:Long? = null

    @DataMember(Order=14)
    open var Address:String? = null

    @DataMember(Order=15)
    open var Age:Int? = null

    @DataMember(Order=16)
    open var City:String? = null

    @DataMember(Order=17)
    open var ContactNumber:String? = null

    @DataMember(Order=18)
    open var EthnicGroup:String? = null

    @DataMember(Order=19)
    open var FirstName:String? = null

    @DataMember(Order=20)
    open var Gender:String? = null

    @DataMember(Order=21)
    open var HomeLanguage:String? = null

    @DataMember(Order=22)
    open var IdNumber:String? = null

    @DataMember(Order=23)
    open var LastName:String? = null

    @DataMember(Order=24)
    open var PostalCode:String? = null

    @DataMember(Order=25)
    open var Region:String? = null

    @DataMember(Order=26)
    open var Suburb:String? = null

    @DataMember(Order=27)
    open var BirthDate:Date? = null

    @DataMember(Order=28)
    open var Classifications:HashMap<String,String>? = null

    @DataMember(Order=29)
    open var Country:String? = null

    @DataMember(Order=30)
    open var PassportNumber:String? = null

    @DataMember(Order=31)
    open var StatusCodesId:Long? = null

    @DataMember(Order=32)
    open var Reason:String? = null

    @DataMember(Order=33)
    open var VulnerabilityFlag:Boolean? = null

    @DataMember(Order=34)
    open var CompaniesName:String? = null

    @DataMember(Order=35)
    open var SegmentsName:String? = null

    @DataMember(Order=36)
    open var SegmentsIsCustom:Boolean? = null

    @DataMember(Order=37)
    open var StatusCodesDescription:String? = null

    @DataMember(Order=38)
    open var CampaignsId:Long? = null
}

open class SmsWatsappEventsView
{
    @DataMember(Order=1)
    open var Id:Long? = null

    @DataMember(Order=2)
    open var CampaignInstancesCommsId:Long? = null

    @DataMember(Order=3)
    open var RawJson:HashMap<String,String>? = null

    @DataMember(Order=4)
    open var IntegrationId:String? = null

    @DataMember(Order=5)
    open var IntegrationName:String? = null

    @DataMember(Order=6)
    open var Channel:String? = null

    @DataMember(Order=7)
    open var Timestamp:Long? = null

    @DataMember(Order=8)
    open var TimestampDate:Date? = null

    @DataMember(Order=9)
    open var StatusCode:Int? = null

    @DataMember(Order=10)
    open var Status:String? = null

    @DataMember(Order=11)
    open var MessageId:String? = null

    @DataMember(Order=12)
    open var ClientMessageId:String? = null

    @DataMember(Order=13)
    open var TenantsId:Int? = null

    @DataMember(Order=14)
    open var SegmentsId:Long? = null

    @DataMember(Order=15)
    open var Address:String? = null

    @DataMember(Order=16)
    open var Age:Int? = null

    @DataMember(Order=17)
    open var City:String? = null

    @DataMember(Order=18)
    open var ContactNumber:String? = null

    @DataMember(Order=19)
    open var EthnicGroup:String? = null

    @DataMember(Order=20)
    open var FirstName:String? = null

    @DataMember(Order=21)
    open var Gender:String? = null

    @DataMember(Order=22)
    open var HomeLanguage:String? = null

    @DataMember(Order=23)
    open var IdNumber:String? = null

    @DataMember(Order=24)
    open var LastName:String? = null

    @DataMember(Order=25)
    open var PostalCode:String? = null

    @DataMember(Order=26)
    open var Region:String? = null

    @DataMember(Order=27)
    open var Suburb:String? = null

    @DataMember(Order=28)
    open var BirthDate:Date? = null

    @DataMember(Order=29)
    open var Classifications:HashMap<String,String>? = null

    @DataMember(Order=30)
    open var Country:String? = null

    @DataMember(Order=31)
    open var PassportNumber:String? = null

    @DataMember(Order=32)
    open var StatusCodesId:Long? = null

    @DataMember(Order=33)
    open var Reason:String? = null

    @DataMember(Order=34)
    open var VulnerabilityFlag:Boolean? = null

    @DataMember(Order=35)
    open var CompaniesName:String? = null

    @DataMember(Order=36)
    open var SegmentsName:String? = null

    @DataMember(Order=37)
    open var SegmentsIsCustom:Boolean? = null

    @DataMember(Order=38)
    open var StatusCodesDescription:String? = null

    @DataMember(Order=39)
    open var CampaignsId:Long? = null

    @DataMember(Order=40)
    open var CustomersId:Long? = null
}

open class CampaignInstanceCommsStats
{
    @DataMember(Order=1)
    @Required()
    open var Id:Long? = null

    @DataMember(Order=2)
    @Required()
    open var CampaignInstanceCommsId:Long? = null

    @DataMember(Order=3)
    open var ViewedDate:Date? = null
}

Kotlin GetCampaignCustomerCertificateByCustomerId 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.

GET /campaign/certbycustomerguid/{CampaignPublicAccessGuid}/{CustomerPublicAccessGuid} HTTP/1.1 
Host: duengageapi.uat.scadsoftware.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Campaign: 
	{
		Id: 0,
		TenantsId: 0,
		Name: String,
		Description: String,
		AvatarsId: 0,
		SchedulesId: 0,
		MessageTonesId: 0,
		StatusCodesId: 0,
		PublicAccessGuid: 00000000000000000000000000000000,
		ViewHeading: String,
		CampaignActions: 
		[
			{
				Id: 0,
				CampaignsId: 0,
				ActionsId: 0,
				ButtonName: String,
				ActionTypesId: 0,
				Description: String,
				OfferOrder: 0,
				StandOut: False,
				PublicAccessGuid: 00000000000000000000000000000000,
				IsPayment: False,
				IsPayOff: False,
				IsEnabled: False
			}
		]
	},
	Customer: 
	{
		Id: 0,
		TenantsId: 0,
		UserAuthId: 0,
		SegmentsId: 0,
		CompaniesId: 0,
		CurrenciesId: 0,
		Address: String,
		Age: 0,
		City: String,
		ContactNumber: String,
		Email: String,
		EthnicGroup: String,
		FirstName: String,
		Gender: String,
		HomeLanguage: String,
		IdNumber: String,
		LastName: String,
		PostalCode: String,
		Region: String,
		Suburb: String,
		UniqueIdentifier: String,
		BirthDate: 0001-01-01,
		Classifications: 
		{
			String: String
		},
		Country: String,
		PassportNumber: String,
		StatusCodesId: 0,
		Reason: String,
		VulnerabilityFlag: False,
		Meta: 
		{
			String: String
		},
		PublicAccessGuid: 00000000000000000000000000000000,
		CustomField1: String,
		CustomField2: String,
		CustomField3: String,
		CustomField4: String,
		CustomField5: String,
		CustomField6: String,
		CustomField7: String,
		CustomField8: String,
		CustomField9: String,
		CustomField10: String
	},
	CampaignInstanceCommsDetails: 
	[
		{
			CampaignInstanceComms: 
			{
				Id: 0,
				CampaignInstanceCustomersId: 0,
				ChannelsId: 0,
				Email: String,
				MobileNumber: String,
				EmailAttachmentTemplate: String,
				EmailTemplate: String,
				EmailHtmlTemplate: String,
				SmsTemplate: String,
				PublicAccessGuid: 00000000000000000000000000000000,
				CampaignsId: 0,
				DebtsId: 0,
				IsPaymentCampaign: False,
				ScheduleInstancesId: 0,
				StatusCodesId: 0,
				EmailTemplatesId: 0,
				AvatarTemplateText: String,
				HeadingTemplateText: String,
				SubheadingTemplateText: String,
				Sent: False,
				Failed: False,
				CommsUrl: String
			},
			EmailEvents: 
			[
				{
					Id: 0,
					Email: String,
					TimestampDate: 0001-01-01T00:00:00.0000000+00:00,
					Event: String,
					Category: String,
					SgEventId: String,
					SgMessageId: String,
					UserAgent: String,
					Ipaddress: String,
					Url: String,
					CampaignInstanceCommsId: 0,
					TenantsId: 0,
					SegmentsId: 0,
					Address: String,
					Age: 0,
					City: String,
					ContactNumber: String,
					EthnicGroup: String,
					FirstName: String,
					Gender: String,
					HomeLanguage: String,
					IdNumber: String,
					LastName: String,
					PostalCode: String,
					Region: String,
					Suburb: String,
					BirthDate: 0001-01-01,
					Classifications: 
					{
						String: String
					},
					Country: String,
					PassportNumber: String,
					StatusCodesId: 0,
					Reason: String,
					VulnerabilityFlag: False,
					CompaniesName: String,
					SegmentsName: String,
					SegmentsIsCustom: False,
					StatusCodesDescription: String,
					CampaignsId: 0
				}
			],
			SmsWatsappEvents: 
			[
				{
					Id: 0,
					CampaignInstancesCommsId: 0,
					RawJson: 
					{
						String: String
					},
					IntegrationId: String,
					IntegrationName: String,
					Channel: String,
					Timestamp: 0,
					TimestampDate: 0001-01-01T00:00:00.0000000+00:00,
					StatusCode: 0,
					Status: String,
					MessageId: String,
					ClientMessageId: String,
					TenantsId: 0,
					SegmentsId: 0,
					Address: String,
					Age: 0,
					City: String,
					ContactNumber: String,
					EthnicGroup: String,
					FirstName: String,
					Gender: String,
					HomeLanguage: String,
					IdNumber: String,
					LastName: String,
					PostalCode: String,
					Region: String,
					Suburb: String,
					BirthDate: 0001-01-01,
					Classifications: 
					{
						String: String
					},
					Country: String,
					PassportNumber: String,
					StatusCodesId: 0,
					Reason: String,
					VulnerabilityFlag: False,
					CompaniesName: String,
					SegmentsName: String,
					SegmentsIsCustom: False,
					StatusCodesDescription: String,
					CampaignsId: 0,
					CustomersId: 0
				}
			],
			CampaignInstanceCommsStats: 
			[
				{
					Id: 0,
					CampaignInstanceCommsId: 0,
					ViewedDate: 0001-01-01T00:00:00.0000000+00:00
				}
			]
		}
	],
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}