Skip to main content

Base URL

The default is http://localhost:3000. With APP_BASE_PATH=/gowa, every route moves under /gowa except /health.

Authentication

When APP_BASIC_AUTH is set, every route requires HTTP Basic Auth, except /health, /statics/*, the Chatwoot webhook and the MCP OAuth endpoints. See Authentication.

Device selection

Most routes act on one WhatsApp device. Choose it with the X-Device-Id header (slot ID or JID), or the device_id query parameter. When the server has exactly one device you may omit it; with more, it is required. See Multi-device.

Endpoint groups

The endpoint pages in this tab are generated from GOWA’s OpenAPI specification. The authoritative, up-to-date spec is docs/openapi.yaml in the repository.

Requests

  • JSON bodies: Content-Type: application/json.
  • File uploads: multipart/form-data.
  • Phone numbers: digits with country code (628123456789) or a full JID (...@s.whatsapp.net, ...@g.us).

Responses

code is SUCCESS or an error code; results holds the data. See Errors.

Example

Other interfaces

  • WebSocket at /ws for live dashboard events.
  • MCP at /mcp for AI agents (MCP server).
  • Webhooks pushed to your URLs (Webhooks).