slack.endpoint() function

slack.endpoint() returns a function that can be used to send a message to Slack per input row.

Each output row includes a _sent column that indicates if the message for that row was sent successfully.


slack.endpoint() is a factory function that outputs another function. The output function requires a mapFn parameter.


A function that builds the record used to generate the POST request.

mapFn accepts a table row (r) and returns a record that must include the following properties:

  • channel
  • color
  • text
Function type signature
    ?token: string,
    ?url: string,
) => (
    mapFn: (r: A) => {B with text: D, color: string, channel: C},
) => (<-tables: stream[A]) => stream[{A with _sent: string}]

For more information, see Function type signatures.



Slack API URL. Default is

If using the Slack webhook API, this URL is provided ine Slack webhook setup process.


Slack API token. Default is "".

If using the Slack Webhook API, a token is not required.


Send status alerts to a Slack endpoint

import "sampledata"
import "slack"

data =
        |> map(fn: (r) => ({r with status: if r._value > 15 then "alert" else "ok"}))
        |> filter(fn: (r) => r.status == "alert")

    |> slack.endpoint(token: "mY5uP3rSeCr37T0kEN")(
        mapFn: (r) => ({channel: "Alerts", text: r._message, color: "danger"}),

Was this page helpful?

Thank you for your feedback!

The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Read more