Public address

In the panel: Settings → Public address card. The guide inside the card has these same steps, with copy buttons, direct links to your own app's pages and automatic ticks for the steps the app checks by itself. At the top of the card a three-state strip “Keys valid → Webhook verified → First message received” shows where you are, and writes the reason in red when something is stuck.

One click: when the Get a fixed address button shows on the card, it gives this computer a fixed address on its own, with no Cloudflare account or domain of yours. Otherwise take one of the two ways below.

“Temporary” mode is for trying only: its address changes at every start, Meta keeps the old address and messages are lost. Take one of these two ways: a Cloudflare tunnel on your own domain (everything fixed; comes with the app) or ngrok with a free fixed domain (ngrok does not come with the app: you install it yourself).

Way 1: a Cloudflare tunnel on your own domain (messages and customer links both fixed)

  1. Create a Cloudflare account and add your domain to it (Domains → Onboard a domain).What you see: Cloudflare's sign-up page, then the Domains list with your domain shown as Active.⚠️ Common mistake: A domain bought elsewhere must first use Cloudflare's name servers; until Cloudflare says “Active”, the tunnel cannot use it.
  2. Networking → Tunnels → Create a tunnel, give it a name (e.g. dmaipro) and click Create Tunnel. Choose this computer's system (Windows, Mac or Linux — any of them is fine), copy the install command it shows and paste it into this card's “Cloudflare tunnel token” box.What you see: A command like cloudflared service install eyJ… with a long string.⚠️ Common mistake: Running that command on this computer — not needed; the app runs the tunnel itself. Pasting the whole command is fine, the app takes the token out.
  3. In the same tunnel: Routes → Add route → Published application. Choose a subdomain (e.g. bot) and your domain, enter http://127.0.0.1:8000 as Service URL and click Add route.What you see: The Published application form with Subdomain, Domain and Service URL boxes.⚠️ Common mistake: A port other than 8000, or https, in Service URL — the address then answers with an error and the app says it “does not reach this app”.
  4. In this card choose “Cloudflare tunnel”, enter the full address (e.g. bot.example.com) in “Your address on Cloudflare” and click “Save & test”. The app registers the new address with Telegram, WhatsApp and Instagram by itself.What you see: Under the card: “Current address” is your address and “The address is fixed.”⚠️ Common mistake: Forgetting Meta's addresses: after this step paste the privacy, data deletion and OAuth addresses into Meta's dashboard again (the app changes only the webhooks by itself).

The app's public port is 8000 by default (if you changed it in .env, use that number).

Way 2: ngrok with a free fixed domain (only the messages' address fixed)

  1. Install ngrok yourself from its official site ngrok.com (it does not come with the app) and create a free account.What you see: ngrok's “Sign up” page.⚠️ Common mistake: An email you will lose later; with a VPN on, sign-up may fail.
  2. Copy the token, set this card's method to “ngrok with a fixed domain” and paste it into the “ngrok authtoken” box.What you see: The “Your Authtoken” page with a long token and a Copy button.⚠️ Common mistake: Copying the whole ngrok config add-authtoken … command — that's fine, the app takes the token out by itself.
  3. Copy your free fixed domain (or click “Create domain” if there is none), paste it into the “ngrok fixed domain” box and click “Save & test”.What you see: A domain like name.ngrok-free.app.⚠️ Common mistake: Don't worry about https://: with or without it is accepted. After this step copy Meta's addresses again.
Direct links (click to open)Create a Cloudflare account ↗Cloudflare's guide: add a domain ↗Cloudflare dashboard ↗Cloudflare's guide: create a tunnel ↗Free ngrok sign-up ↗ngrok's “Your Authtoken” page ↗ngrok's “Domains” page ↗

ngrok does not come with the app (its terms do not allow it): install it yourself from ngrok.com; the app runs only a copy signed by ngrok. If you have your own domain, choose the “my own domain or address” mode.