/** * Notion Node - Version 2.1 * Discriminator: resource=databasePage, operation=update */ interface Credentials { notionApi: CredentialReference; } /** Update pages in a database */ export type NotionV21DatabasePageUpdateParams = { resource: 'databasePage'; operation: 'update'; /** * The Notion Database Page to update * @default {"mode":"url","value":""} */ pageId?: { __rl: true; mode: 'url' | 'id'; value: string; cachedResultName?: string }; /** * Whether to return a simplified version of the response instead of the raw data * @default true */ simple?: boolean | Expression; /** * Properties * @default {} */ propertiesUi?: { /** Property */ propertyValues?: Array<{ /** Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a> */ key?: string | Expression; /** Type * @default ={{$parameter["&key"].split("|")[1]}} */ type?: unknown; /** Title * @displayOptions.show { type: ["title"] } */ title?: string | Expression | PlaceholderValue; /** Rich Text * @displayOptions.show { type: ["rich_text"] } * @default false */ richText?: boolean | Expression; /** Text * @displayOptions.show { type: ["rich_text"], richText: [false] } */ textContent?: string | Expression | PlaceholderValue; /** Rich text in the block * @displayOptions.show { type: ["rich_text"], richText: [true] } * @default {} */ text?: { /** Text */ text?: Array<{ /** Type * @default text */ textType?: 'equation' | 'mention' | 'text' | Expression; /** Text content. This field contains the actual content of your text and is probably the field you'll use most often. * @displayOptions.show { textType: ["text"] } */ text?: string | Expression | PlaceholderValue; /** Is Link * @displayOptions.show { textType: ["text"] } * @default false */ isLink?: boolean | Expression; /** The URL that this link points to * @displayOptions.show { textType: ["text"], isLink: [true] } */ textLink?: string | Expression | PlaceholderValue; /** An inline mention of a user, page, database, or date. In the app these are created by typing @ followed by the name of a user, page, database, or a date. * @displayOptions.show { textType: ["mention"] } */ mentionType?: 'database' | 'date' | 'page' | 'user' | Expression; /** The ID of the user being mentioned. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { mentionType: ["user"] } */ user?: string | Expression; /** The ID of the page being mentioned * @displayOptions.show { mentionType: ["page"] } */ page?: string | Expression | PlaceholderValue; /** The Notion Database being mentioned * @displayOptions.show { mentionType: ["database"] } * @default {"mode":"list","value":""} */ database?: { __rl: true; mode: 'list' | 'url' | 'id'; value: string; cachedResultName?: string }; /** Whether or not you want to define a date range * @displayOptions.show { mentionType: ["date"] } * @default false */ range?: boolean | Expression; /** An ISO 8601 format date, with optional time * @displayOptions.show { mentionType: ["date"], range: [false] } */ date?: string | Expression; /** An ISO 8601 format date, with optional time * @displayOptions.show { mentionType: ["date"], range: [true] } */ dateStart?: string | Expression; /** An ISO 8601 formatted date, with optional time. Represents the end of a date range. * @displayOptions.show { range: [true], mentionType: ["date"] } */ dateEnd?: string | Expression; /** Expression * @displayOptions.show { textType: ["equation"] } */ expression?: string | Expression | PlaceholderValue; /** All annotations that apply to this rich text * @default {} */ annotationUi?: { /** Whether the text is bolded * @default false */ bold?: boolean | Expression; /** Whether the text is italicized * @default false */ italic?: boolean | Expression; /** Whether the text is struck through * @default false */ strikethrough?: boolean | Expression; /** Whether the text is underlined * @default false */ underline?: boolean | Expression; /** Whether the text is code style * @default false */ code?: boolean | Expression; /** Color of the text */ color?: 'default' | 'gray' | 'brown' | 'orange' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'red' | 'gray_background' | 'brown_background' | 'orange_background' | 'yellow_background' | 'green_background' | 'blue_background' | 'purple_background' | 'pink_background' | 'red_background' | Expression; }; }>; }; /** Phone number. No structure is enforced. * @displayOptions.show { type: ["phone_number"] } */ phoneValue?: string | Expression | PlaceholderValue; /** Choose from the list, or specify IDs using an <a href="https://docs.n8n.io/code/expressions/">expression</a> * @displayOptions.show { type: ["multi_select"] } * @default [] */ multiSelectValue?: string[]; /** Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a> * @displayOptions.show { type: ["select"] } */ selectValue?: string | Expression; /** Name of the option you want to set. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { type: ["status"] } */ statusValue?: string | Expression; /** Email * @displayOptions.show { type: ["email"] } */ emailValue?: string | Expression | PlaceholderValue; /** Ignore If Empty * @displayOptions.show { type: ["url"] } * @default false */ ignoreIfEmpty?: boolean | Expression; /** Web address * @displayOptions.show { type: ["url"] } */ urlValue?: string | Expression | PlaceholderValue; /** List of users. Multiples can be defined separated by comma. Choose from the list, or specify IDs using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { type: ["people"] } * @default [] */ peopleValue?: string[]; /** List of databases that belong to another database. Multiples can be defined separated by comma. * @displayOptions.show { type: ["relation"] } * @default [] */ relationValue?: string | Expression | PlaceholderValue; /** Whether or not the checkbox is checked. <code>true</code> represents checked. <code>false</code> represents unchecked. * @displayOptions.show { type: ["checkbox"] } * @default false */ checkboxValue?: boolean | Expression; /** Number value * @displayOptions.show { type: ["number"] } * @default 0 */ numberValue?: number | Expression; /** Whether or not you want to define a date range * @displayOptions.show { type: ["date"] } * @default false */ range?: boolean | Expression; /** Whether or not to include the time in the date * @displayOptions.show { type: ["date"] } * @default true */ includeTime?: boolean | Expression; /** An ISO 8601 format date, with optional time * @displayOptions.show { range: [false], type: ["date"] } */ date?: string | Expression; /** An ISO 8601 format date, with optional time * @displayOptions.show { range: [true], type: ["date"] } */ dateStart?: string | Expression; /** An ISO 8601 formatted date, with optional time. Represents the end of a date range. * @displayOptions.show { range: [true], type: ["date"] } */ dateEnd?: string | Expression; /** Time zone to use. By default n8n timezone is used. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { type: ["date"] } * @default default */ timezone?: string | Expression; /** File URLs * @displayOptions.show { type: ["files"] } * @default {} */ fileUrls?: { /** File */ fileUrl?: Array<{ /** Name */ name?: string | Expression | PlaceholderValue; /** Link to externally hosted file */ url?: string | Expression | PlaceholderValue; }>; }; }>; }; /** * Options * @default {} */ options?: { /** The icon type for the database page, Either a URL or an Emoji * @default emoji */ iconType?: 'emoji' | 'file' | Expression; /** Emoji or File URL to use as the icon */ icon?: string | Expression | PlaceholderValue; }; }; export type NotionV21DatabasePageUpdateOutput = { id?: string; name?: string; url?: string; }; export type NotionV21DatabasePageUpdateNode = { type: 'n8n-nodes-base.notion'; version: 2.1; credentials?: Credentials; config: NodeConfig; output?: Items; };