Working with links

Links with click notification

proxy() | proxy_date() | proxy_timeout()

LEGEND:

! - Required parameters

proxy(lnk, one-shot) - generates a link with click notification. The function takes the following parameters: ! link -link one-shot -indicator that the link is one-time use. Simply pass the value 1.

proxy_date(lnk, date, time) - generates a link with click notification and a specified expiration time. The function takes the following parameters: ! link - link ! date - link expiration date ! time - link expiration time one-shot - indicator that the link is one-time use. Simply pass 1.

proxy_timeout(lnk, minutes, one-shot) - generates a link with click notification and a specified access timer. The function takes the following parameters: ! link - link ! minutes - the number of minutes the link remains active. one-shot - indicator that the link is one-time use. Simply pass 1.

Example

Let’s go through a simple example:

We've created two proxy links and inserted them into buttons and the message text. Since we're testing in Telegram, it's a good opportunity to recall how to format links properly using Markdown. To handle special characters, we've used the tg_escape() function.

This is how the client sees them, for example, in Telegram:

When the client clicks the link, we receive a callback:

Let's configure a response to this event:

Now, let’s test the link removal functions:

Thus, if the client tries to use the one-time link after it has been deleted, they will receive an error because the link no longer exists.

Let’s delete the time-limited link:

After executing the function, no proxy links remain in the client card, and any attempt to follow the link returns the same error.

Code example for copying

Example code for the "Message" field (don’t forget to enable Markdown if you’re working with Telegram):

*Testing links:*
[Click](#{link3})

or test using the following output format:

Testing links:
#{link2}

Code example in the "Calculator" field:

link1=proxy('https://mavibot.ai/', 1) 
link2=short_date('https://mavibot.ai/#tariff', '11.06.2025', '2pm') 
link3=tg_escape(link2)

When a client clicks on a proxy link, you will receive a callback in the form link_was_pressed . This allows you to configure a reaction to the link click.

To do this, enter the received callback into the "Condition" field and set the matching type to Exact Match.

short() | short_date() | short_timeout()

LEGEND:

! - Required parameters

short(lnk, one-shot) - generates a link without click notification. The function takes the following parameters: ! link -link one-shot -indicator that the link is one-time use. Simply pass the value 1.

short_date(lnk, date, time) - generates a link without click notification and a specified expiration time. The function takes the following parameters: ! link - link ! date - link expiration date ! time - link expiration time one-shot - indicator that the link is one-time use. Simply pass 1.

short_timeout(lnk, minutes, one-shot) - generates a link without click notification and a specified access timer. The function takes the following parameters: ! link - link ! minutes - the number of minutes the link remains active. one-shot - indicator that the link is one-time use. Simply pass 1.

remove_links() | remove_one_time_links()| remove_timer_links()

LEGEND:

! - Required parameters

remove_links() - deactivation of all shortened links sent to the client

remove_one_time_links() - deactivation of all one-time links sent to the client

remove_timer_links() - deactivation of all time-limited links sent to the client

quiz_link_timeout() | quiz_link_date() | quiz_link()

To enable quiz display in Telegram, you need to:

1. Copy a website page ID. To do this, go to the "Websites" section and select the desired website:

Further in the text, we will refer to mini_landing_page_id as the variable name.

2. In the "Calculator" field, use one of the following functions:

LEGEND:

! - Required parameters

quiz_link_timeout(mini_landing_page_id, minutes) - generates a link with a lifetime limit set in minutes

Parameters:

! mini_landing_page_id - website page ID minutes - link lifetime in minutes (type: number)

quiz_link_date(mini_landing_page_id, date, time) - generates a link with an expiration limited to a specific date and time

Parameters:

! mini_landing_page_id - website page ID date - link active date (format: dd.mm.yyyy) time - link active time (format: hh:mm)

quiz_link(mini_landing_page_id) - generates a link with no expiration time

Parameters:

! mini_landing_page_id - website page ID

Example

3. Create a Telegram Web App button and specify the variable name in curly braces with a hash symbol.

Important! Make sure the variable value is correctly saved in the advanced settings.

If you use quiz_link_timeout to redirect a client to a website page, you can use client variables within the page title and description. For example, if the client has a variable name with the value "John", and the page description includes "Hi #{name}, how are you?", the output will be "Hi John, how are you?". However, if the client does not have that variable, the value will be pulled from the project's global variables.

Last updated