Skip to content
All library documents

Expose an OctoBot TradingView Webhook with Tailscale Funnel

Article OctoBot

Summary

This guide describes how to make an OctoBot webhook reachable by an external signal provider such as TradingView. It uses Tailscale Funnel to publish the webhook port through a stable HTTPS address without configuring router port forwarding. The setup involves installing and signing in to the Tailscale command-line tool, manually configuring OctoBot’s webhook interface and listening port, starting a Funnel for that port, and adding OctoBot’s webhook path to the resulting public address.

The guide also notes that Funnel runs in the foreground unless started in the background, and that a Docker deployment needs the webhook port mapped from the container to the host. It distinguishes Funnel, which is public, from Tailscale Serve, which is limited to devices on the same tailnet. This is an operational integration guide rather than a trading strategy; it does not discuss authentication practices, exposure risks, or signal performance.

Key ideas

  • Tailscale Funnel can provide a public HTTPS endpoint for an OctoBot webhook without router port forwarding.
  • Configure OctoBot’s webhook service and listening port manually before starting the tunnel.
  • Append OctoBot’s webhook path to the public endpoint when setting the TradingView webhook destination.
  • Docker deployments need the webhook port published to the host machine.
  • Tailscale Serve is suitable for access within a tailnet, while Funnel makes the service publicly reachable.

Tags

Full text
# Using a Tailscale tunnel with OctoBot


---
title: "Using a Tailscale tunnel"
description: "Use the Tailscale tunnel CLI to expose your OctoBot's webhook port to the Internet, for example to use it as a TradingView webhook."
sidebar_position: 4
---



# Using a Tailscale tunnel with OctoBot

## Why using a Tailscale tunnel with your OctoBot

If you want to send [webhook](/guides/octobot-interfaces/tradingview/using-a-webhook) messages to your OctoBot (for example from TradingView), your OctoBot needs to be reachable from the Internet. Instead of using the [Premium OctoBot Extension](/guides/octobot-configuration/premium-octobot-extension) or Ngrok, you can use <a href="https://tailscale.com/kb/1223/tailscale-funnel/" rel="nofollow">Tailscale Funnel</a> to expose your OctoBot's webhook port with a stable public URL and HTTPS, without opening any port on your router.

## How to expose your OctoBot's webhook port with Tailscale

1.  Install the <a href="https://tailscale.com/download" rel="nofollow">Tailscale CLI</a> on the machine running your OctoBot and log in:

    ```bash
    tailscale up
    ```

2.  Set up your OctoBot's webhook manually: in your OctoBot configuration, from the `Accounts` tab, in `Interfaces`, add the webhook service, disable both `Enable-Ngrok` and `Enable-Octobot-Webhook`, and configure the listening port (`9000` by default) and IP for the webhook yourself. See [manual webhook configuration](/guides/octobot-interfaces/tradingview/using-a-webhook#setting-up-your-octobots-webhook) for details.

3.  Expose that port to the Internet with `tailscale funnel`, replacing `9000` with your webhook port:

    ```bash
    tailscale funnel 9000
    ```

    Tailscale prints the public HTTPS URL your OctoBot is now reachable at, such as `https://your-machine.your-tailnet.ts.net/`.

4.  Use this URL, with your OctoBot's webhook path appended, as your TradingView webhook URL.

5.  Activate a tentacle using a webhook service (like the TradingView signals trading mode) and restart your OctoBot.

:::info
  `tailscale funnel` keeps running in the foreground by default. Add `--bg` to run it in the background and keep the tunnel up after closing your terminal: `tailscale funnel --bg 9000`.
:::

:::info
  **Using docker?** When running your OctoBot in a Docker container, also add `-p 9000:9000` after `docker run` so the webhook port is reachable from the host machine that runs `tailscale funnel`.
:::

## Funnel vs Serve

- `tailscale funnel` exposes your OctoBot's webhook port to the **public Internet**, which is what you need for TradingView to reach it.
- `tailscale serve` only exposes it to devices on your own <a href="https://tailscale.com/kb/1136/tailnet/" rel="nofollow">tailnet</a>, which is enough if you only need to reach your OctoBot's webhook from your own devices.

Follow [this guide](/guides/octobot-interfaces/tradingview) to know more on how to send TradingView signals to your OctoBot.

Shown in full with attribution under the source's licence. Licence: GPL-3.0

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.