Skip to content

pageSchema

const pageSchema: ZodObject<{ cover: ZodNullable<ZodDiscriminatedUnion<[ZodObject<{ file: ZodObject<{ expiry_time: ZodUnion<readonly […, …]>; url: ZodURL; }, $strip>; type: ZodLiteral<"file">; }, $strip>, ZodObject<{ file_upload: ZodObject<{ id: ZodUUID; }, $strip>; type: ZodLiteral<"file_upload">; }, $strip>, ZodObject<{ external: ZodObject<{ url: ZodURL; }, $strip>; type: ZodLiteral<"external">; }, $strip>], "type">>; created_by: ZodUnion<readonly [ZodObject<{ avatar_url: ZodOptional<ZodUnion<readonly [ZodURL, ZodNull]>>; id: ZodUUID; name: ZodOptional<ZodString>; object: ZodLiteral<"user">; person: ZodObject<{ email: ZodEmail; email_verified: ZodOptional<ZodBoolean>; }, $strip>; type: ZodLiteral<"person">; }, $strip>, ZodObject<{ avatar_url: ZodOptional<ZodUnion<readonly [ZodURL, ZodNull]>>; bot: ZodObject<{ owner: ZodDiscriminatedUnion<[ZodObject<…, …>, ZodObject<…, …>], "type">; workspace_id: ZodOptional<ZodString>; workspace_limits: ZodOptional<ZodObject<{ max_file_upload_size_in_bytes: …; }, $strip>>; workspace_name: ZodOptional<ZodNullable<ZodString>>; }, $strip>; id: ZodUUID; name: ZodOptional<ZodString>; object: ZodLiteral<"user">; type: ZodLiteral<"bot">; }, $strip>, ZodObject<{ id: ZodUUID; object: ZodLiteral<"user">; }, $strip>]>; created_time: ZodUnion<readonly [ZodISODateTime, ZodISODate]>; icon: ZodNullable<ZodUnion<readonly [ZodDiscriminatedUnion<[ZodObject<{ file: ZodObject<{ expiry_time: …; url: …; }, $strip>; type: ZodLiteral<"file">; }, $strip>, ZodObject<{ file_upload: ZodObject<{ id: …; }, $strip>; type: ZodLiteral<"file_upload">; }, $strip>, ZodObject<{ external: ZodObject<{ url: …; }, $strip>; type: ZodLiteral<"external">; }, $strip>], "type">, ZodObject<{ emoji: ZodString; type: ZodLiteral<"emoji">; }, $strip>, ZodObject<{ icon: ZodObject<{ color: ZodOptional<ZodEnum<…>>; name: ZodString; }, $strip>; type: ZodLiteral<"icon">; }, $strip>, ZodObject<{ custom_emoji: ZodObject<{ id: ZodUUID; name: ZodOptional<ZodString>; url: ZodOptional<ZodURL>; }, $strip>; type: ZodLiteral<"custom_emoji">; }, $strip>]>>; id: ZodUUID; in_trash: ZodBoolean; is_archived: ZodOptional<ZodBoolean>; is_locked: ZodOptional<ZodBoolean>; last_edited_by: ZodUnion<readonly [ZodObject<{ avatar_url: ZodOptional<ZodUnion<readonly [ZodURL, ZodNull]>>; id: ZodUUID; name: ZodOptional<ZodString>; object: ZodLiteral<"user">; person: ZodObject<{ email: ZodEmail; email_verified: ZodOptional<ZodBoolean>; }, $strip>; type: ZodLiteral<"person">; }, $strip>, ZodObject<{ avatar_url: ZodOptional<ZodUnion<readonly [ZodURL, ZodNull]>>; bot: ZodObject<{ owner: ZodDiscriminatedUnion<[ZodObject<…, …>, ZodObject<…, …>], "type">; workspace_id: ZodOptional<ZodString>; workspace_limits: ZodOptional<ZodObject<{ max_file_upload_size_in_bytes: …; }, $strip>>; workspace_name: ZodOptional<ZodNullable<ZodString>>; }, $strip>; id: ZodUUID; name: ZodOptional<ZodString>; object: ZodLiteral<"user">; type: ZodLiteral<"bot">; }, $strip>, ZodObject<{ id: ZodUUID; object: ZodLiteral<"user">; }, $strip>]>; last_edited_time: ZodUnion<readonly [ZodISODateTime, ZodISODate]>; object: ZodLiteral<"page">; parent: ZodDiscriminatedUnion<[ZodObject<{ database_id: ZodUUID; type: ZodLiteral<"database_id">; }, $strip>, ZodObject<{ data_source_id: ZodUUID; database_id: ZodUUID; type: ZodLiteral<"data_source_id">; }, $strip>, ZodObject<{ page_id: ZodUUID; type: ZodLiteral<"page_id">; }, $strip>, ZodObject<{ type: ZodLiteral<"workspace">; workspace: ZodLiteral<true>; }, $strip>, ZodObject<{ block_id: ZodUUID; type: ZodLiteral<"block_id">; }, $strip>, ZodObject<{ agent_id: ZodUUID; type: ZodLiteral<"agent_id">; }, $strip>], "type">; properties: ZodRecord<ZodString, ZodDiscriminatedUnion<[ZodObject<{ checkbox: ZodBoolean; id: ZodString; type: ZodLiteral<"checkbox">; }, $strip>, ZodObject<{ created_by: ZodUnion<readonly [ZodObject<{ avatar_url: …; id: …; name: …; object: …; person: …; type: …; }, $strip>, ZodObject<{ avatar_url: …; bot: …; id: …; name: …; object: …; type: …; }, $strip>, ZodObject<{ id: …; object: …; }, $strip>]>; id: ZodString; type: ZodLiteral<"created_by">; }, $strip>, ZodObject<{ created_time: ZodUnion<readonly [ZodISODateTime, ZodISODate]>; id: ZodString; type: ZodLiteral<"created_time">; }, $strip>, ZodObject<{ date: ZodNullable<ZodObject<{ end: ZodNullable<…>; start: ZodUnion<…>; time_zone: ZodNullable<…>; }, $strip>>; id: ZodString; type: ZodLiteral<"date">; }, $strip>], "type">>; public_url: ZodNullable<ZodURL>; url: ZodURL; }, $strip>

Defined in: src/schemas/page.schema.ts:21

Notion page object schema.

Pages are the primary content containers in Notion. They contain properties (data stored in database columns) and content (blocks).

Notion API reference: https://developers.notion.com/reference/page