Webinar data model

View field support, webhooks, and list parameters for each integration on the Supported Integrations page.

FieldTypeRequiredDescription
idstringNo
created_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
updated_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
calendar_idstringNo(reference to CalendarCalendar)
subjectstringNo
start_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
end_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
timezonestringNo
notesstringNo
statusenumNoValues: CANCELED, CONFIRMED, TENTATIVE
organizerobjectNo
organizer.user_idstringNo(reference to HrisEmployee)
organizer.emailstringNo
organizer.namestringNo
organizer.statusenumNoValues: ACCEPTED, REJECTED, TENTATIVE
organizer.requiredbooleanNo
organizer.is_cohostbooleanNo
join_urlstringNo
web_urlstringNoinformation
panelistsCalendarWebinarPanelist[]No
panelists[].emailstringNo
panelists[].namestringNo
panelists[].is_requiredbooleanNo
panelists[].join_urlstringNo
panelists[].join_passwordstringNo
panelists[].statusenumNoValues: ACCEPTED, REJECTED, TENTATIVE
registrantsCalendarWebinarRegistrant[]No
registrants[].emailstringNo
registrants[].namestringNo
registrants[].registration_referencestringNo
registrants[].registration_statusenumNoValues: PENDING, APPROVED, REJECTED, CANCELLED
registrants[].registered_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
panelist_passwordstringNo
registrant_passwordstringNo
conferenceCalendarConference[]No
conference[].conference_identifierstringNo
conference[].urlstringNo
conference[].labelstringNo
conference[].telephonestringNo
conference[].participant_access_codestringNo
conference[].host_access_codestringNo
conference[].notesstringNo
conference[].country_codestringNoISO 2-digit country code
conference[].region_codestringNoISO 2-digit region code
recurrenceCalendarEventRecurrence[]No
recurrence[].frequencyenumNoValues: DAILY, WEEKLY, MONTHLY, YEARLY
recurrence[].intervalnumberNohow many "units" between occurrences, defaults to 1
recurrence[].countnumberNohow many occurrences, defaults to undefined (no limit)
recurrence[].end_atstring (date-time)Nountil date, defaults to undefined (no end date) (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
recurrence[].on_daysenum[]Nodays of the week to repeat on, defaults to undefined (every day), only used if frequency is WEEKLY Values: SU, MO, TU, WE, TH, FR, SA
recurrence[].on_monthsobjectNomonths of the year to repeat on, defaults to undefined (every month), only used if frequency is YEARLY, January is 1
recurrence[].on_month_daysobjectNodays of the month to repeat on, defaults to undefined (every day), only used if frequency is MONTHLY
recurrence[].on_weeksobjectNoweek ordinals for BYDAY (e.g., -1 for last, -2 for second-to-last, 1 for first, 2 for second), only used with on_days. 0 is used for days without week ordinals.
recurrence[].on_year_daysobjectNodays of the year to repeat on, defaults to undefined (every day), only used if frequency is YEARLY
recurrence[].week_startenumNoweek start day, defaults to undefined (no week start day) Values: SU, MO, TU, WE, TH, FR, SA
recurrence[].excluded_datesobjectNodates to exclude from the recurrence, defaults to undefined (no exclusions)
recurrence[].included_datesobjectNodates to include in the recurrence, defaults to undefined (no inclusions)
recurrence[].timezonestringNotimezone, defaults to undefined (no timezone)
capacitynumberNo
is_webcastbooleanNo
is_enabledbooleanNo
is_auto_approvebooleanNo
require_first_namebooleanNo
require_last_namebooleanNo
require_emailbooleanNo
require_companybooleanNo
require_job_titlebooleanNo
require_addressbooleanNo
require_phonebooleanNo
has_qabooleanNo
has_pollsbooleanNo
has_recordingbooleanNo

TypeScript

TypeScript
export type CalendarWebinar = {
	id?: string;
	created_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	updated_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	calendar_id?: string; // (reference to CalendarCalendar)
	subject?: string;
	start_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	end_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	timezone?: string;
	notes?: string;
	status?: 'CANCELED' | 'CONFIRMED' | 'TENTATIVE';
	organizer?: {
		user_id?: string; // (reference to HrisEmployee) 
		email?: string; 
		name?: string; 
		status?: 'ACCEPTED' | 'REJECTED' | 'TENTATIVE'; 
		required?: boolean; 
		is_cohost?: boolean; 
	};
	join_url?: string;
	web_url?: string; // information
	panelists?: [];
	registrants?: [];
	panelist_password?: string;
	registrant_password?: string;
	conference?: [];
	recurrence?: [];
	capacity?: number;
	is_webcast?: boolean;
	is_enabled?: boolean;
	is_auto_approve?: boolean;
	require_first_name?: boolean;
	require_last_name?: boolean;
	require_email?: boolean;
	require_company?: boolean;
	require_job_title?: boolean;
	require_address?: boolean;
	require_phone?: boolean;
	has_qa?: boolean;
	has_polls?: boolean;
	has_recording?: boolean;
	raw?: any;
} 

Zod

Zod
import { z } from 'zod';

export const ZodCalendarWebinar = z.object({
	id: z.string().optional(),
	created_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	updated_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	calendar_id: z.string().optional().describe("(reference to CalendarCalendar)"),
	subject: z.string().optional(),
	start_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	end_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	timezone: z.string().optional(),
	notes: z.string().optional(),
	status: z.enum("CANCELED", "CONFIRMED", "TENTATIVE").optional(),
	organizer: z.object({
			user_id: z.string().optional().describe("(reference to HrisEmployee)"),
			email: z.string().optional(),
			name: z.string().optional(),
			status: z.enum("ACCEPTED", "REJECTED", "TENTATIVE").optional(),
			required: z.boolean().optional(),
			is_cohost: z.boolean().optional()
}).optional(),
	join_url: z.string().optional(),
	web_url: z.string().optional().describe("information"),
	panelists: z.array().optional(),
	registrants: z.array().optional(),
	panelist_password: z.string().optional(),
	registrant_password: z.string().optional(),
	conference: z.array().optional(),
	recurrence: z.array().optional(),
	capacity: z.number().optional(),
	is_webcast: z.boolean().optional(),
	is_enabled: z.boolean().optional(),
	is_auto_approve: z.boolean().optional(),
	require_first_name: z.boolean().optional(),
	require_last_name: z.boolean().optional(),
	require_email: z.boolean().optional(),
	require_company: z.boolean().optional(),
	require_job_title: z.boolean().optional(),
	require_address: z.boolean().optional(),
	require_phone: z.boolean().optional(),
	has_qa: z.boolean().optional(),
	has_polls: z.boolean().optional(),
	has_recording: z.boolean().optional(),

});

Python

Python
import dataclasses

@dataclasses.dataclass
class CalendarWebinarStatus(str, Enum):
	CANCELED = 'CANCELED'
	CONFIRMED = 'CONFIRMED'
	TENTATIVE = 'TENTATIVE'

@dataclasses.dataclass
class CalendarWebinarOrganizerStatus(str, Enum):
	ACCEPTED = 'ACCEPTED'
	REJECTED = 'REJECTED'
	TENTATIVE = 'TENTATIVE'

@dataclasses.dataclass
class PropertyCalendarWebinarOrganizer:
	"""(reference to HrisEmployee)"""
	user_id: Optional[str]
	email: Optional[str]
	name: Optional[str]
	status: Optional[CalendarWebinarOrganizerStatus]
	required: Optional[bool]
	is_cohost: Optional[bool]

@dataclasses.dataclass
class CalendarWebinar:
	id: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	created_at: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	updated_at: Optional[str]
	"""(reference to CalendarCalendar)"""
	calendar_id: Optional[str]
	subject: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	start_at: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	end_at: Optional[str]
	timezone: Optional[str]
	notes: Optional[str]
	status: Optional[CalendarWebinarStatus]
	organizer: Optional[PropertyCalendarWebinarOrganizer]
	join_url: Optional[str]
	"""information"""
	web_url: Optional[str]
	panelists: Optional[PropertyCalendarWebinarPanelists]
	registrants: Optional[PropertyCalendarWebinarRegistrants]
	panelist_password: Optional[str]
	registrant_password: Optional[str]
	conference: Optional[PropertyCalendarWebinarConference]
	recurrence: Optional[PropertyCalendarWebinarRecurrence]
	capacity: Optional[int]
	is_webcast: Optional[bool]
	is_enabled: Optional[bool]
	is_auto_approve: Optional[bool]
	require_first_name: Optional[bool]
	require_last_name: Optional[bool]
	require_email: Optional[bool]
	require_company: Optional[bool]
	require_job_title: Optional[bool]
	require_address: Optional[bool]
	require_phone: Optional[bool]
	has_qa: Optional[bool]
	has_polls: Optional[bool]
	has_recording: Optional[bool]
Are we missing anything? Let us know
Was this page helpful?