Report data model

Updated:

FieldTypeRequiredDescription
idstringNoUnique identifier for the campaign report
start_atstring (date-time)NoStart time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
end_atstring (date-time)NoEnd time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
campaign_idstringNoAssociated campaign ID
list_idstringNoAssociated list ID
emails_sentnumberNoTotal emails sent
abuse_reportsnumberNoNumber of abuse reports
unsubscribednumberNoNumber of unsubscribes
sent_atstring (date-time)NoSend time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
hard_bouncesnumberNoHard bounce count
soft_bouncesnumberNoSoft bounce count
syntax_errorsnumberNoSyntax error count
forwards_countnumberNoForward count
forwards_opensnumberNoForwards opened
opens_totalnumberNoTotal opens
unique_opensnumberNoUnique opens
open_ratenumberNoOpen rate (decimal)
last_open_atstring (date-time)NoLast open timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
clicks_totalnumberNoTotal clicks
unique_clicksnumberNoUnique clicks
unique_subscriber_clicksnumberNoUnique subscriber clicks
click_ratenumberNoClick rate (decimal)
last_click_atstring (date-time)NoLast click timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
links[].urlstringNoThe URL
links[].total_clicksnumberNoTotal clicks on this link
links[].click_percentagenumberNoPercentage of total clicks
links[].unique_clicksnumberNoUnique clicks on this link
links[].unique_click_percentagenumberNoPercentage of unique clicks
links[].last_click_atstring (date-time)NoLast click timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
human_opens_totalnumberNoTotal opens excluding automated/bot/proxy (e.g. Apple Mail Privacy Protection) opens
human_unique_opensnumberNoUnique opens excluding automated/bot/proxy opens
human_open_ratenumberNoOpen rate (decimal) excluding automated/bot/proxy opens
metadataMarketingMetadata[]No
metadata[].idstringNo
metadata[].slugstringNo
metadata[].valueobjectNo
metadata[].namespacestringNo
metadata[].formatenumNoValues: TEXT, NUMBER, DATE, BOOLEAN, FILE, TEXTAREA, SINGLE_SELECT, MULTIPLE_SELECT, MEASUREMENT, PRICE, YES_NO, CURRENCY, URL
metadata[].extra_dataobjectNo

TypeScript

TypeScript
export type MarketingReport = {
	id?: string; // Unique identifier for the campaign report
	start_at?: string-time; // Start time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	end_at?: string-time; // End time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	campaign_id?: string; // Associated campaign ID
	list_id?: string; // Associated list ID
	emails_sent?: number; // Total emails sent
	abuse_reports?: number; // Number of abuse reports
	unsubscribed?: number; // Number of unsubscribes
	sent_at?: string-time; // Send time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	hard_bounces?: number; // Hard bounce count
	soft_bounces?: number; // Soft bounce count
	syntax_errors?: number; // Syntax error count
	forwards_count?: number; // Forward count
	forwards_opens?: number; // Forwards opened
	opens_total?: number; // Total opens
	unique_opens?: number; // Unique opens
	open_rate?: number; // Open rate (decimal)
	last_open_at?: string-time; // Last open timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	clicks_total?: number; // Total clicks
	unique_clicks?: number; // Unique clicks
	unique_subscriber_clicks?: number; // Unique subscriber clicks
	click_rate?: number; // Click rate (decimal)
	last_click_at?: string-time; // Last click timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	links?: []; // URL-specific click data
	human_opens_total?: number; // Total opens excluding automated/bot/proxy (e.g. Apple Mail Privacy Protection) opens
	human_unique_opens?: number; // Unique opens excluding automated/bot/proxy opens
	human_open_rate?: number; // Open rate (decimal) excluding automated/bot/proxy opens
	metadata?: [];
	raw?: any; // Raw data from integration
} 

Zod

Zod
import { z } from 'zod';

export const ZodMarketingReport = z.object({
	id: z.string().optional().describe("Unique identifier for the campaign report"),
	start_at: z.string-time().optional().describe("Start time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	end_at: z.string-time().optional().describe("End time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	campaign_id: z.string().optional().describe("Associated campaign ID"),
	list_id: z.string().optional().describe("Associated list ID"),
	emails_sent: z.number().optional().describe("Total emails sent"),
	abuse_reports: z.number().optional().describe("Number of abuse reports"),
	unsubscribed: z.number().optional().describe("Number of unsubscribes"),
	sent_at: z.string-time().optional().describe("Send time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	hard_bounces: z.number().optional().describe("Hard bounce count"),
	soft_bounces: z.number().optional().describe("Soft bounce count"),
	syntax_errors: z.number().optional().describe("Syntax error count"),
	forwards_count: z.number().optional().describe("Forward count"),
	forwards_opens: z.number().optional().describe("Forwards opened"),
	opens_total: z.number().optional().describe("Total opens"),
	unique_opens: z.number().optional().describe("Unique opens"),
	open_rate: z.number().optional().describe("Open rate (decimal)"),
	last_open_at: z.string-time().optional().describe("Last open timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	clicks_total: z.number().optional().describe("Total clicks"),
	unique_clicks: z.number().optional().describe("Unique clicks"),
	unique_subscriber_clicks: z.number().optional().describe("Unique subscriber clicks"),
	click_rate: z.number().optional().describe("Click rate (decimal)"),
	last_click_at: z.string-time().optional().describe("Last click timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	links: z.array().optional().describe("URL-specific click data"),
	human_opens_total: z.number().optional().describe("Total opens excluding automated/bot/proxy (e.g. Apple Mail Privacy Protection) opens"),
	human_unique_opens: z.number().optional().describe("Unique opens excluding automated/bot/proxy opens"),
	human_open_rate: z.number().optional().describe("Open rate (decimal) excluding automated/bot/proxy opens"),
	metadata: z.array().optional(),

});

Python

Python
import dataclasses

@dataclasses.dataclass
class MarketingReport:
	"""Unique identifier for the campaign report"""
	id: Optional[str]
	"""Start time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	start_at: Optional[str]
	"""End time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	end_at: Optional[str]
	"""Associated campaign ID"""
	campaign_id: Optional[str]
	"""Associated list ID"""
	list_id: Optional[str]
	"""Total emails sent"""
	emails_sent: Optional[int]
	"""Number of abuse reports"""
	abuse_reports: Optional[int]
	"""Number of unsubscribes"""
	unsubscribed: Optional[int]
	"""Send time (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	sent_at: Optional[str]
	"""Hard bounce count"""
	hard_bounces: Optional[int]
	"""Soft bounce count"""
	soft_bounces: Optional[int]
	"""Syntax error count"""
	syntax_errors: Optional[int]
	"""Forward count"""
	forwards_count: Optional[int]
	"""Forwards opened"""
	forwards_opens: Optional[int]
	"""Total opens"""
	opens_total: Optional[int]
	"""Unique opens"""
	unique_opens: Optional[int]
	"""Open rate (decimal)"""
	open_rate: Optional[int]
	"""Last open timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	last_open_at: Optional[str]
	"""Total clicks"""
	clicks_total: Optional[int]
	"""Unique clicks"""
	unique_clicks: Optional[int]
	"""Unique subscriber clicks"""
	unique_subscriber_clicks: Optional[int]
	"""Click rate (decimal)"""
	click_rate: Optional[int]
	"""Last click timestamp (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	last_click_at: Optional[str]
	"""URL-specific click data"""
	links: Optional[PropertyMarketingReportLinks]
	"""Total opens excluding automated/bot/proxy (e.g. Apple Mail Privacy Protection) opens"""
	human_opens_total: Optional[int]
	"""Unique opens excluding automated/bot/proxy opens"""
	human_unique_opens: Optional[int]
	"""Open rate (decimal) excluding automated/bot/proxy opens"""
	human_open_rate: Optional[int]
	metadata: Optional[PropertyMarketingReportMetadata]
Are we missing anything? Let us know
Was this page helpful?