/** * Telegram Node - Version 1.2 * Discriminator: resource=message, operation=pinChatMessage */ interface Credentials { telegramApi: CredentialReference; } /** Pin a chat message */ export type TelegramV12MessagePinChatMessageParams = { resource: 'message'; operation: 'pinChatMessage'; /** * Unique identifier for the target chat or username, To find your chat ID ask @get_id_bot */ chatId?: string | Expression | PlaceholderValue; /** * Unique identifier of the message to pin or unpin */ messageId?: string | Expression | PlaceholderValue; /** * Additional Fields * @default {} */ additionalFields?: { /** Whether to send a notification to all chat members about the new pinned message * @default false */ disable_notification?: boolean | Expression; }; /** * Force Reply * @displayOptions.show { replyMarkup: ["forceReply"] } * @default {} */ forceReply?: { /** Whether to show reply interface to the user, as if they manually selected the bot‘s message and tapped ’Reply * @default false */ force_reply?: boolean | Expression; /** Whether to force reply from specific users only * @default false */ selective?: boolean | Expression; }; /** * Adds an inline keyboard that appears right next to the message it belongs to * @displayOptions.show { replyMarkup: ["inlineKeyboard"] } * @default {} */ inlineKeyboard?: { /** Rows */ rows?: Array<{ /** The value to set * @default {} */ row?: { /** Buttons */ buttons?: Array<{ /** Label text on the button */ text?: string | Expression | PlaceholderValue; /** Additional Fields * @default {} */ additionalFields?: { /** Data to be sent in a callback query to the bot when button is pressed, 1-64 bytes */ callback_data?: string | Expression | PlaceholderValue; /** Whether to send a Pay button * @default false */ pay?: boolean | Expression; /** If set, pressing the button will insert the bot‘s username and the specified inline query in the current chat's input field.Can be empty, in which case only the bot’s username will be inserted */ switch_inline_query_current_chat?: string | Expression | PlaceholderValue; /** If set, pressing the button will prompt the user to select one of their chats, open that chat and insert the bot‘s username and the specified inline query in the input field. Can be empty, in which case just the bot’s username will be inserted. */ switch_inline_query?: string | Expression | PlaceholderValue; /** HTTP or tg:// URL to be opened when button is pressed */ url?: string | Expression | PlaceholderValue; /** Launch the Telegram Web App * @default {} */ web_app?: { /** An HTTPS URL of a Web App to be opened */ url?: string | Expression | PlaceholderValue; }; }; }>; }; }>; }; /** * Adds a custom keyboard with reply options * @displayOptions.show { replyMarkup: ["replyKeyboard"] } * @default {} */ replyKeyboard?: { /** Rows */ rows?: Array<{ /** The value to set * @default {} */ row?: { /** Buttons */ buttons?: Array<{ /** Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressed. */ text?: string | Expression | PlaceholderValue; /** Additional Fields * @default {} */ additionalFields?: { /** Whether the user's phone number will be sent as a contact when the button is pressed.Available in private chats only * @default false */ request_contact?: boolean | Expression; /** Whether the user's request_location * @default false */ request_location?: boolean | Expression; /** Launch the Telegram Web App * @default {} */ web_app?: { /** An HTTPS URL of a Web App to be opened */ url?: string | Expression | PlaceholderValue; }; }; }>; }; }>; }; /** * Reply Keyboard Options * @displayOptions.show { replyMarkup: ["replyKeyboard"] } * @default {} */ replyKeyboardOptions?: { /** Whether to request clients to resize the keyboard vertically for optimal fit * @default false */ resize_keyboard?: boolean | Expression; /** Whether to request clients to hide the keyboard as soon as it's been used * @default false */ one_time_keyboard?: boolean | Expression; /** Whether to show the keyboard to specific users only * @default false */ selective?: boolean | Expression; }; /** * Reply Keyboard Remove * @displayOptions.show { replyMarkup: ["replyKeyboardRemove"] } * @default {} */ replyKeyboardRemove?: { /** Whether to request clients to remove the custom keyboard * @default false */ remove_keyboard?: boolean | Expression; /** Whether to force reply from specific users only * @default false */ selective?: boolean | Expression; }; }; export type TelegramV12MessagePinChatMessageOutput = { ok?: boolean; result?: boolean; }; export type TelegramV12MessagePinChatMessageNode = { type: 'n8n-nodes-base.telegram'; version: 1.2; credentials?: Credentials; config: NodeConfig; output?: Items; };