Location data model

Updated:

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

FieldTypeRequiredDescription
idstringNo
namestringNo
parent_idstringNo
typeenumNoValues: BUILDING, FLOOR, CAMPUS, CITY, REGION, COUNTRY, OTHER
addressobjectNo
address.address1stringNo
address.address2stringNo
address.citystringNo
address.regionstringNo
address.region_codestringNo
address.postal_codestringNo
address.countrystringNo
address.country_codestringNoISO 2-digit country code
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)
timezonestringNo
metadataCalendarMetadata[]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 CalendarLocation = {
	id?: string;
	name?: string;
	parent_id?: string;
	type?: 'BUILDING' | 'FLOOR' | 'CAMPUS' | 'CITY' | 'REGION' | 'COUNTRY' | 'OTHER';
	address?: {
		address1?: string; 
		address2?: string; 
		city?: string; 
		region?: string; 
		region_code?: string; 
		postal_code?: string; 
		country?: string; 
		country_code?: string; // ISO 2-digit country code 
	};
	raw?: any;
	created_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	updated_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	timezone?: string;
	metadata?: [];
} 

Zod

Zod
import { z } from 'zod';

export const ZodCalendarLocation = z.object({
	id: z.string().optional(),
	name: z.string().optional(),
	parent_id: z.string().optional(),
	type: z.enum("BUILDING", "FLOOR", "CAMPUS", "CITY", "REGION", "COUNTRY", "OTHER").optional(),
	address: z.object({
			address1: z.string().optional(),
			address2: z.string().optional(),
			city: z.string().optional(),
			region: z.string().optional(),
			region_code: z.string().optional(),
			postal_code: z.string().optional(),
			country: z.string().optional(),
			country_code: z.string().optional().describe("ISO 2-digit country code")
}).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)"),
	timezone: z.string().optional(),
	metadata: z.array().optional()
});

Python

Python
import dataclasses

@dataclasses.dataclass
class CalendarLocationType(str, Enum):
	BUILDING = 'BUILDING'
	FLOOR = 'FLOOR'
	CAMPUS = 'CAMPUS'
	CITY = 'CITY'
	REGION = 'REGION'
	COUNTRY = 'COUNTRY'
	OTHER = 'OTHER'

@dataclasses.dataclass
class PropertyCalendarLocationAddress:
	address1: Optional[str]
	address2: Optional[str]
	city: Optional[str]
	region: Optional[str]
	region_code: Optional[str]
	postal_code: Optional[str]
	country: Optional[str]
	"""ISO 2-digit country code"""
	country_code: Optional[str]

@dataclasses.dataclass
class CalendarLocation:
	id: Optional[str]
	name: Optional[str]
	parent_id: Optional[str]
	type: Optional[CalendarLocationType]
	address: Optional[PropertyCalendarLocationAddress]

	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	created_at: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	updated_at: Optional[str]
	timezone: Optional[str]
	metadata: Optional[PropertyCalendarLocationMetadata]
Are we missing anything? Let us know
Was this page helpful?