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

export class CampaignActionsView
{
    // @DataMember(Order=1)
    // @Required()
    public Id: number;

    // @DataMember(Order=2)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.Campaigns)")
    public CampaignsId: number;

    // @DataMember(Order=3)
    // @References("typeof(digitaluapi.ServiceModel.Types.Actions)")
    public ActionsId?: number;

    // @DataMember(Order=4)
    public ButtonName: string;

    // @DataMember(Order=5)
    // @References("typeof(digitaluapi.ServiceModel.Types.ActionTypes)")
    public ActionTypesId?: number;

    // @DataMember(Order=6)
    public Description: string;

    // @DataMember(Order=7)
    public OfferOrder?: number;

    // @DataMember(Order=8)
    public StandOut?: boolean;

    // @DataMember(Order=9)
    // @Required()
    public PublicAccessGuid: string;

    // @DataMember(Order=10)
    public IsPayment: boolean;

    // @DataMember(Order=11)
    public IsPayOff: boolean;

    // @DataMember(Order=12)
    public IsEnabled: boolean;

    public constructor(init?: Partial<CampaignActionsView>) { (Object as any).assign(this, init); }
}

export class Campaigns
{
    // @DataMember(Order=1)
    // @Required()
    public Id: number;

    // @DataMember(Order=2)
    // @Required()
    public TenantsId: number;

    // @DataMember(Order=3)
    // @Required()
    public Name: string;

    // @DataMember(Order=4)
    // @Required()
    public Description: string;

    // @DataMember(Order=5)
    // @References("typeof(digitaluapi.ServiceModel.Types.Avatars)")
    public AvatarsId?: number;

    // @DataMember(Order=6)
    // @References("typeof(digitaluapi.ServiceModel.Types.Schedules)")
    public SchedulesId?: number;

    // @DataMember(Order=7)
    // @References("typeof(digitaluapi.ServiceModel.Types.MessageTones)")
    public MessageTonesId?: number;

    // @DataMember(Order=8)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.StatusCodes)")
    public StatusCodesId: number;

    // @DataMember(Order=9)
    // @Required()
    public PublicAccessGuid: string;

    // @DataMember(Order=10)
    public ViewHeading: string;

    // @DataMember(Order=11)
    public CampaignActions: CampaignActionsView[];

    public constructor(init?: Partial<Campaigns>) { (Object as any).assign(this, init); }
}

export class Customers
{
    // @DataMember(Order=1)
    // @Required()
    public Id: number;

    // @DataMember(Order=2)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.Tenants)")
    public TenantsId: number;

    // @DataMember(Order=3)
    // @References("typeof(digitaluapi.ServiceModel.Types.AppUser)")
    public UserAuthId?: number;

    // @DataMember(Order=4)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.Segments)")
    public SegmentsId: number;

    // @DataMember(Order=5)
    // @References("typeof(digitaluapi.ServiceModel.Types.Companies)")
    public CompaniesId?: number;

    // @DataMember(Order=6)
    public CurrenciesId?: number;

    // @DataMember(Order=7)
    public Address: string;

    // @DataMember(Order=8)
    public Age?: number;

    // @DataMember(Order=9)
    public City: string;

    // @DataMember(Order=10)
    public ContactNumber: string;

    // @DataMember(Order=11)
    public Email: string;

    // @DataMember(Order=12)
    public EthnicGroup: string;

    // @DataMember(Order=13)
    public FirstName: string;

    // @DataMember(Order=14)
    public Gender: string;

    // @DataMember(Order=15)
    public HomeLanguage: string;

    // @DataMember(Order=16)
    public IdNumber: string;

    // @DataMember(Order=17)
    public LastName: string;

    // @DataMember(Order=18)
    public PostalCode: string;

    // @DataMember(Order=19)
    public Region: string;

    // @DataMember(Order=20)
    public Suburb: string;

    // @DataMember(Order=21)
    public UniqueIdentifier: string;

    // @DataMember(Order=22)
    public BirthDate?: string;

    // @DataMember(Order=23)
    public Classifications: { [index:string]: string; };

    // @DataMember(Order=24)
    public Country: string;

    // @DataMember(Order=25)
    public PassportNumber: string;

    // @DataMember(Order=26)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.StatusCodes)")
    public StatusCodesId: number;

    // @DataMember(Order=27)
    public Reason: string;

    // @DataMember(Order=28)
    public VulnerabilityFlag?: boolean;

    // @DataMember(Order=29)
    public Meta: { [index:string]: string; };

    // @DataMember(Order=31)
    // @Computed()
    public PublicAccessGuid: string;

    // @DataMember(Order=32)
    public CustomField1: string;

    // @DataMember(Order=33)
    public CustomField2: string;

    // @DataMember(Order=34)
    public CustomField3: string;

    // @DataMember(Order=35)
    public CustomField4: string;

    // @DataMember(Order=36)
    public CustomField5: string;

    // @DataMember(Order=37)
    public CustomField6: string;

    // @DataMember(Order=38)
    public CustomField7: string;

    // @DataMember(Order=39)
    public CustomField8: string;

    // @DataMember(Order=40)
    public CustomField9: string;

    // @DataMember(Order=41)
    public CustomField10: string;

    public constructor(init?: Partial<Customers>) { (Object as any).assign(this, init); }
}

export class CampaignInstanceComms
{
    // @DataMember(Order=1)
    // @Required()
    public Id: number;

    // @DataMember(Order=2)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.CampaignInstanceCustomers)")
    public CampaignInstanceCustomersId: number;

    // @DataMember(Order=3)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.Channels)")
    public ChannelsId: number;

    // @DataMember(Order=4)
    public Email: string;

    // @DataMember(Order=5)
    public MobileNumber: string;

    // @DataMember(Order=6)
    public EmailAttachmentTemplate: string;

    // @DataMember(Order=7)
    public EmailTemplate: string;

    // @DataMember(Order=8)
    public EmailHtmlTemplate: string;

    // @DataMember(Order=9)
    public SmsTemplate: string;

    // @DataMember(Order=10)
    // @Required()
    public PublicAccessGuid: string;

    // @DataMember(Order=11)
    // @Required()
    // @References("typeof(digitaluapi.ServiceModel.Types.Campaigns)")
    public CampaignsId: number;

    // @DataMember(Order=12)
    public DebtsId?: number;

    // @DataMember(Order=13)
    // @Required()
    public IsPaymentCampaign: boolean;

    // @DataMember(Order=14)
    // @References("typeof(digitaluapi.ServiceModel.Types.SchedulesInstances)")
    public ScheduleInstancesId?: number;

    // @DataMember(Order=15)
    public StatusCodesId?: number;

    // @DataMember(Order=16)
    public EmailTemplatesId?: number;

    // @DataMember(Order=17)
    public AvatarTemplateText: string;

    // @DataMember(Order=18)
    public HeadingTemplateText: string;

    // @DataMember(Order=19)
    public SubheadingTemplateText: string;

    // @DataMember(Order=20)
    public Sent: boolean;

    // @DataMember(Order=21)
    public Failed: boolean;

    // @DataMember(Order=22)
    public CommsUrl: string;

    public constructor(init?: Partial<CampaignInstanceComms>) { (Object as any).assign(this, init); }
}

export class EmailEventsView
{
    // @DataMember(Order=1)
    public Id?: number;

    // @DataMember(Order=2)
    public Email: string;

    // @DataMember(Order=3)
    public TimestampDate?: string;

    // @DataMember(Order=4)
    public Event: string;

    // @DataMember(Order=5)
    public Category: string;

    // @DataMember(Order=6)
    public SgEventId: string;

    // @DataMember(Order=7)
    public SgMessageId: string;

    // @DataMember(Order=8)
    public UserAgent: string;

    // @DataMember(Order=9)
    public Ipaddress: string;

    // @DataMember(Order=10)
    public Url: string;

    // @DataMember(Order=11)
    public CampaignInstanceCommsId?: number;

    // @DataMember(Order=12)
    public TenantsId?: number;

    // @DataMember(Order=13)
    public SegmentsId?: number;

    // @DataMember(Order=14)
    public Address: string;

    // @DataMember(Order=15)
    public Age?: number;

    // @DataMember(Order=16)
    public City: string;

    // @DataMember(Order=17)
    public ContactNumber: string;

    // @DataMember(Order=18)
    public EthnicGroup: string;

    // @DataMember(Order=19)
    public FirstName: string;

    // @DataMember(Order=20)
    public Gender: string;

    // @DataMember(Order=21)
    public HomeLanguage: string;

    // @DataMember(Order=22)
    public IdNumber: string;

    // @DataMember(Order=23)
    public LastName: string;

    // @DataMember(Order=24)
    public PostalCode: string;

    // @DataMember(Order=25)
    public Region: string;

    // @DataMember(Order=26)
    public Suburb: string;

    // @DataMember(Order=27)
    public BirthDate?: string;

    // @DataMember(Order=28)
    public Classifications: { [index:string]: string; };

    // @DataMember(Order=29)
    public Country: string;

    // @DataMember(Order=30)
    public PassportNumber: string;

    // @DataMember(Order=31)
    public StatusCodesId?: number;

    // @DataMember(Order=32)
    public Reason: string;

    // @DataMember(Order=33)
    public VulnerabilityFlag?: boolean;

    // @DataMember(Order=34)
    public CompaniesName: string;

    // @DataMember(Order=35)
    public SegmentsName: string;

    // @DataMember(Order=36)
    public SegmentsIsCustom?: boolean;

    // @DataMember(Order=37)
    public StatusCodesDescription: string;

    // @DataMember(Order=38)
    public CampaignsId?: number;

    public constructor(init?: Partial<EmailEventsView>) { (Object as any).assign(this, init); }
}

export class SmsWatsappEventsView
{
    // @DataMember(Order=1)
    public Id?: number;

    // @DataMember(Order=2)
    public CampaignInstancesCommsId?: number;

    // @DataMember(Order=3)
    public RawJson: { [index:string]: string; };

    // @DataMember(Order=4)
    public IntegrationId: string;

    // @DataMember(Order=5)
    public IntegrationName: string;

    // @DataMember(Order=6)
    public Channel: string;

    // @DataMember(Order=7)
    public Timestamp?: number;

    // @DataMember(Order=8)
    public TimestampDate?: string;

    // @DataMember(Order=9)
    public StatusCode?: number;

    // @DataMember(Order=10)
    public Status: string;

    // @DataMember(Order=11)
    public MessageId: string;

    // @DataMember(Order=12)
    public ClientMessageId: string;

    // @DataMember(Order=13)
    public TenantsId?: number;

    // @DataMember(Order=14)
    public SegmentsId?: number;

    // @DataMember(Order=15)
    public Address: string;

    // @DataMember(Order=16)
    public Age?: number;

    // @DataMember(Order=17)
    public City: string;

    // @DataMember(Order=18)
    public ContactNumber: string;

    // @DataMember(Order=19)
    public EthnicGroup: string;

    // @DataMember(Order=20)
    public FirstName: string;

    // @DataMember(Order=21)
    public Gender: string;

    // @DataMember(Order=22)
    public HomeLanguage: string;

    // @DataMember(Order=23)
    public IdNumber: string;

    // @DataMember(Order=24)
    public LastName: string;

    // @DataMember(Order=25)
    public PostalCode: string;

    // @DataMember(Order=26)
    public Region: string;

    // @DataMember(Order=27)
    public Suburb: string;

    // @DataMember(Order=28)
    public BirthDate?: string;

    // @DataMember(Order=29)
    public Classifications: { [index:string]: string; };

    // @DataMember(Order=30)
    public Country: string;

    // @DataMember(Order=31)
    public PassportNumber: string;

    // @DataMember(Order=32)
    public StatusCodesId?: number;

    // @DataMember(Order=33)
    public Reason: string;

    // @DataMember(Order=34)
    public VulnerabilityFlag?: boolean;

    // @DataMember(Order=35)
    public CompaniesName: string;

    // @DataMember(Order=36)
    public SegmentsName: string;

    // @DataMember(Order=37)
    public SegmentsIsCustom?: boolean;

    // @DataMember(Order=38)
    public StatusCodesDescription: string;

    // @DataMember(Order=39)
    public CampaignsId?: number;

    // @DataMember(Order=40)
    public CustomersId?: number;

    public constructor(init?: Partial<SmsWatsappEventsView>) { (Object as any).assign(this, init); }
}

export class CampaignInstanceCommsStats
{
    // @DataMember(Order=1)
    // @Required()
    public Id: number;

    // @DataMember(Order=2)
    // @Required()
    public CampaignInstanceCommsId: number;

    // @DataMember(Order=3)
    public ViewedDate?: string;

    public constructor(init?: Partial<CampaignInstanceCommsStats>) { (Object as any).assign(this, init); }
}

export class CampaignInstanceCommsDetails
{
    public CampaignInstanceComms: CampaignInstanceComms;
    public EmailEvents: EmailEventsView[];
    public SmsWatsappEvents: SmsWatsappEventsView[];
    public CampaignInstanceCommsStats: CampaignInstanceCommsStats[];

    public constructor(init?: Partial<CampaignInstanceCommsDetails>) { (Object as any).assign(this, init); }
}

export class GetCampaignCustomerCertificateResponse
{
    public Campaign: Campaigns;
    public Customer: Customers;
    public CampaignInstanceCommsDetails: CampaignInstanceCommsDetails[];
    public ResponseStatus: ResponseStatus;

    public constructor(init?: Partial<GetCampaignCustomerCertificateResponse>) { (Object as any).assign(this, init); }
}

export class GetCampaignCustomerCertificateByCustomerId
{
    public CampaignPublicAccessGuid: string;
    public CustomerPublicAccessGuid: string;

    public constructor(init?: Partial<GetCampaignCustomerCertificateByCustomerId>) { (Object as any).assign(this, init); }
}

TypeScript 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
		}
	}
}