Skip to main content
WaGo is a self-hosted WhatsApp API server. You run the WaGo binary on your own infrastructure, connect WhatsApp devices, and expose HTTP endpoints for your own web apps, dashboards, automations, and internal tools. The API covers session login, QR scanning, token restore, WhatsApp messaging, media, groups, newsletters, business catalog, status posting, webhooks, and an early production path for calls and live audio.
Calls are available so users can see and build around the WaGo call direction now. TURN relay support is marked as coming soon. If you need calls to remain in WaGo long-term, tell the WaGo team on Telegram before future cloud call decisions are finalized.

Quickstart

Connect a token, scan a device, and send your first request.

Complete endpoint reference

Every route from the server, grouped with request fields and examples.

Messages

Text, media, polls, templates, buttons, lists, previews, and catalogs.

Live call audio

Browser microphone and speaker audio for an active WhatsApp call.

Base URL

Local development usually uses:
http://localhost:1337
Production should use your server URL:
https://api.your-domain.com
For browser microphone access, production pages must be served over HTTPS. Browsers do not allow getUserMedia() microphone access from ordinary insecure origins.

What to read first

  1. Authentication explains token and admintoken.
  2. Production integration shows the normal app flow from session setup to webhooks.
  3. Identifiers explains phone numbers, JIDs, groups, message IDs, and call IDs.
  4. Session connect and scan explains how a WhatsApp device becomes usable.
  5. Response format explains success and error envelopes.
  6. Complete endpoint reference lists every endpoint.

Local API Explorer

Every WaGo binary also serves a local API explorer:
http://localhost:1337/api
Use it when you want to inspect endpoints directly on the running server. Use these docs for production guidance, workflows, event behavior, and troubleshooting.