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.
Link shortening
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.
Link removal
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
Telegram bot quiz link
quiz_link_timeout() | quiz_link_date() | quiz_link()
Please note!
There is a 21-day limit on the validity of the link, so it must be refreshed!
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.
Note! Be careful when using links without an expiration time. If the link is shared with someone else and they complete the quiz, the results will be recorded under the client for whom the link was originally generated.
Last updated