---
title: telegram.endpoint() function
description: telegram.endpoint() sends a message to a Telegram channel using data from table rows.
url: https://docs.influxdata.com/flux/v0/stdlib/contrib/sranka/telegram/endpoint/
estimated_tokens: 531
product: Flux
version: v0
publisher: InfluxData
canonical: https://docs.influxdata.com/flux/v0/stdlib/contrib/sranka/telegram/endpoint/
date: '2024-04-08T16:01:02-06:00'
lastmod: '2024-04-08T16:01:02-06:00'
---

* Flux 0.70.0+

InfluxDB support

> [!Important]
> `telegram.endpoint()` is a user-contributed function maintained by
> the [package author](#package-author-and-maintainer).

`telegram.endpoint()` sends a message to a Telegram channel using data from table rows.

### Usage

`telegram.endpoint` is a factory function that outputs another function.
The output function requires a `mapFn` parameter.

#### `mapFn`

A function that builds the object used to generate the POST request. Requires an `r` parameter.

`mapFn` accepts a table row (`r`) and returns an object that must include the following fields:

* `channel`
* `text`
* `silent`

For more information, see `telegram.message()` parameters.

See `telegram.message` parameters for more information.

##### Function type signature

```js
(
    token: string,
    ?disableWebPagePreview: A,
    ?parseMode: B,
    ?url: string,
) => (
    mapFn: (r: C) => {D with text: G, silent: F, channel: E},
) => (<-tables: stream[C]) => stream[{C with _sent: string}]
```

For more information, see [Function type signatures](/flux/v0/function-type-signatures/).

## Parameters

### url

URL of the Telegram bot endpoint. Default is `https://api.telegram.org/bot`.

### token

(Required)
Telegram bot token.

### parseMode

[Parse mode](https://core.telegram.org/bots/api#formatting-options)of the message text.
Default is `MarkdownV2`.

### disableWebPagePreview

Disable preview of web links in the sent message.
Default is false.

## Examples

### Send critical statuses to a Telegram channel

```js
import "influxdata/influxdb/secrets"
import "contrib/sranka/telegram"

token = secrets.get(key: "TELEGRAM_TOKEN")
endpoint = telegram.endpoint(token: token)

crit_statuses =
    from(bucket: "example-bucket")
        |> range(start: -1m)
        |> filter(fn: (r) => r._measurement == "statuses" and status == "crit")

crit_statuses
    |> endpoint(
        mapFn: (r) => ({channel: "-12345", text: "Disk usage is **${r.status}**.", silent: true}),
    )()
```

[notification endpoints](/flux/v0/tags/notification-endpoints/)[transformations](/flux/v0/tags/transformations/)
