Skip to main content
izap lists chats, WhatsApp templates and broadcasts, and sends messages from a terminal or a script. It uses the TypeScript SDK. izap init runs the setup wizard. Requires Node.js 20 or later. Create a personal access token in the Dashboard under User Settings → API Keys.

Install

Or run once with npx @izapai/cli whoami.

Log in

izap login saves the token without calling the API. izap whoami is the check. --browser opens iZap’s login page, registers a public OAuth client, and listens on 127.0.0.1 at a random port. The session renews itself when the access token expires. izap logout revokes it on the server. The CLI saves credentials in $XDG_CONFIG_HOME/izap/config.json, or ~/.config/izap/config.json when XDG_CONFIG_HOME is not set. It creates the directory with mode 0700 and the file with mode 0600. The CLI picks the token in this order:
  1. The IZAP_TOKEN environment variable. It always wins.
  2. The profile’s saved token.
  3. The profile’s browser login.
The profile is default unless you pass --profile or set IZAP_PROFILE.

Commands

izap <command> --help shows a command’s flags. --json prints JSON on stdout. --business / IZAP_BUSINESS_ID / the profile default pick the business. --staging points at https://api-staging.izap.ai. Sends are real. izap messages send asks before sending. Pass --yes to skip the question. A script whose stdin is not a terminal must pass --yes.
Prefer a typed client in your app? See SDKs. Need a scaffold in an existing repo? izap init or npx @izapai/wizard — the setup wizard.
npm: @izapai/cli