Sign in to the WhatsApp agent console
Select or create a contact.
Select or create a company.
Quote picker only lists active products. Currency default comes from settings.
| SKU | Name | Price | Active |
|---|
Public URL: /f/<slug>. Honeypot field is hidden on the public page.
| Name | Slug | Active |
|---|
Public booking URL: /m/<slug>. Overlapping slots for the same owner are rejected.
| Name | Slug | Duration | Owner |
|---|
| When | Type | Invitee | Status |
|---|
Daily rollups. Metric names come from GET /api/analytics/meta.
Provider + API key live in Integrations (email_api_key, email_from). Secrets are never returned here.
| Key | Name | Subject |
|---|
| To | Template | Status | Error | When |
|---|
Merge tags from API meta. HTML is sanitized (script stripped). From-email must be in email_allowed_from when that setting is set.
| Name | Subject | From |
|---|
| Name | Status | Stats |
|---|
| Name | Slug | Status | Views |
|---|
Node list (not a graph). Types: wait, condition, action_email, action_wa_template, action_task, action_tag, exit.
Approved templates only. Audience preview is stored as recipients on start; skips (no WA id, blocked, opt-in) are recorded.
| Name | Status | Stats |
|---|
| Contact | WA | Status | Error |
|---|
Meta template registry. Sequences and broadcasts can only pick approved templates. Categories and languages come from the API.
| Name | Meta | Lang | Category | Status |
|---|
Cadence steps use template keys from the database. WhatsApp never sends a free-text body from the engine.
Weighted = open amount × stage win probability from the pipeline. Periods come from settings.
| Stage | Win % | Open | Weighted | Deals |
|---|
| Owner | Open | Weighted | Won in period | Deals |
|---|
| ID | Name | Telegram ID | Role | Permissions | Active | Actions |
|---|
| Number | Reason | When |
|---|
filters_json example: {"type":"domain_suffix","value":".example.com"}. Domain suffix matches company domain/website host.
Fields and operators come from GET /api/segments/meta.
Triggers and actions come from GET /api/automations/meta. Toggle without deploy.
Field types and object types come from the API. New fields appear on forms without a deploy.
condition_json is {"field":"discount_pct","op":"gte","value":15}. Fields, operators, and roles come from GET /api/approval-rules/meta. Edit without a deploy.
Templates are stored in the database. Missing keys log an error and send the key name.
Tokens are encrypted at rest. After save they are never shown again — only a mask.
| ID | Label | Active |
|---|
| ID | Label | Active |
|---|
API keys (secret shown once), signed webhooks, SMS, SLA, brands.
| Name | Prefix | Active |
|---|