---
title: "Wazapin CLI"
description: "Send WhatsApp messages, manage channels, and debug delivery from your terminal."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.wazapin.id/llms.txt
> Use this file to discover all available pages before exploring further.

# Wazapin CLI

Wazapin CLI is a TypeScript command-line tool for interacting with the Wazapin API.
It supports multi-org, dry-run safety, agent-ready structured output, and MCP integration.

## Quick start

```bash
wazapin doctor              # Health check (works without auth)
wazapin init                # First-run setup wizard
wazapin channels list       # List channels (default org)
wazapin whoami              # Show current user
```

## Multi-org

```bash
wazapin orgs                # List all organizations
wazapin config org ujang    # Set default org
wazapin channels list --org obayito  # Switch org per command
wazapin channels list --all          # Fan-out all orgs
```

## Send a message

```bash
wazapin messages send --dry-run --org obayito --channel wzp_xxx --to "+628123" --text "Hello"
wazapin messages send --org obayito --channel wzp_xxx --to "+628123" --text "Hello"
```

## Agent-ready output

```bash
wazapin channels list --output json          # JSON envelope
wazapin channels list --output stream-json   # NDJSON events
wazapin channels list --fields id,name,status # Token-efficient
wazapin channels list --quiet                # Suppress warnings
```

## Commands

| Command | Description |
|---------|-------------|
| `init` | Setup wizard (login, pick org, test) |
| `login` | OAuth device flow |
| `doctor` | Health check (no auth) |
| `channels list` | List channels (--org, --all, --fields) |
| `messages send` | Send message (--dry-run, --media, --bulk) |
| `messages list` | List messages |
| `templates list` | List templates |
| `contacts list/create` | Manage contacts |
| `webhooks list/listen` | Manage webhooks |
| `orgs` | List organizations |
| `config org` | Set default org |
| `schema` | Machine-readable command tree |
| `describe` | Runtime introspection |
| `help-agent` | Token-optimized JSON for agents |
| `request get/post` | Raw API escape hatch |
| `mcp serve` | MCP server (stdio/HTTP) |
| `completion` | Shell completions (bash/zsh/fish) |

## Integrations

- **n8n**: Wazapin + WazapinTrigger nodes for visual workflows
- **OpenClaw**: WhatsApp channel adapter for OpenClaw framework
- **Hermes**: Python webhook server adapter
- **MCP**: Streamable HTTP at api.wazapin.id/mcp, 8 tools
- **Agent skills**: Claude Code, Cursor, Codex plugins with safety rules

## Global flags

| Flag | Description |
|------|-------------|
| `--output` | auto, json, text, ndjson, stream-json |
| `--org` | Switch organization (slug) |
| `--all` | Fan-out across all orgs |
| `--fields` | Filter output fields (token efficiency) |
| `--no-input` | Never prompt (CI/agent mode) |
| `--yes` | Auto-confirm destructive operations |
| `--quiet` | Suppress warnings |

Source: https://docs.wazapin.id/cli/overview/index.mdx
