WhatsApp CLI for developers

Use @kapso/cli to manage WhatsApp numbers, messages, conversations, templates, webhooks, setup links, and local workflows from your terminal.

Official Meta Business Partner

Operate WhatsApp from the terminal

The CLI is the fastest way for developers and coding agents with shell access to inspect and change a real Kapso project.

Send and inspect messages

Send text or JSON payloads, list recent messages, filter by direction, and inspect individual message records.

Read conversations

List conversations by phone number, filter by status or contact, and fetch conversation details for debugging.

Manage webhooks

Create, list, update, and delete phone-number webhooks for message, status, and conversation events.

Work in JSON

Use --output json for scripts, CI checks, and AI-agent workflows that need structured command output.

Create setup links

Create customers and setup links when your product needs customers to connect their own WhatsApp numbers.

Build workflows locally

Pull, build, dry-run, and push Kapso workflows and functions from a local repository.

Install once, then choose an auth mode

Use browser login for local development. Use KAPSO_API_KEY for CI, containers, scripts, and other non-interactive environments.

Requires Node.js >= 20.19.
kapso login stores the local CLI session in ~/.kapso/cli/.
Project-scoped commands use KAPSO_API_KEY when it is set.
Most WhatsApp commands accept --phone-number or --phone-number-id.

Use the right Kapso surface

The CLI is one operating surface. Pair it with APIs, SDKs, Workflows, and Kapso WhatsApp MCP when the job needs a different entry point.

CLI

Best when a developer or coding agent can run shell commands against a Kapso project.

API and SDK

Best when your application needs direct WhatsApp send, media, template, conversation, or history calls.

Kapso WhatsApp MCP

Best when an MCP-capable agent should operate WhatsApp without shell access.

Start with one useful command

Connect a number, run kapso status, list recent conversations, and make the WhatsApp event loop visible before adding more automation.