Nanovate Documentation
Nanovate is an AI automation platform for building and operating agents. Design multi-step workflows on a visual canvas, deploy chat agents to your messaging channels, run real-time voice agents over the phone, and use standalone speech tools — all from one dashboard.
Overview
Welcome to Nanovate
| Pillar | What it does |
|---|---|
| Workflows | A visual node canvas that wires triggers to actions, logic, and agents. |
| Chat Agents | Text agents you can connect to WhatsApp, Telegram, and Messenger. |
| Voice Agents | Real-time inbound/outbound voice agents over LiveKit and telephony. |
| Speech | Standalone speech-to-text transcription and text-to-speech generation. |
| Settings | Profile, security, connected accounts, and notification preferences. |
Every AI action — a chat message, a voice minute, a model call inside a workflow — consumes credits from your workspace balance. Different models cost different amounts (a lightweight model is cheaper than a frontier one), so you can tune cost against quality per agent. Top up your balance from Billing; see Credits & Billing for the full cost table.
Getting Started
Set up your Nanovate workspace, authenticate, and understand the credits model.
Quickstart
Get from zero to your first running agent in a few minutes.
1. Create your account
Sign up with email and a password, or use Google or LinkedIn single sign-on. New workspaces start with a trial credit balance so you can build before you top up. See Authentication for SSO and two-factor details.
2. Pick what to build
- Chat agent — fastest path. Choose a template (Support, Sales, Consultant, Mentor), pick a model, and you have a working agent. See Creating a chat agent.
- Workflow — automate a multi-step process. Start from an industry template or a blank canvas. See Workflows overview.
- Voice agent — answer or place calls. See Voice Agents overview.
3. Test it
Every agent has a built-in test surface — a chat panel for chat agents and an in-browser LiveKit console for voice agents. Test before you connect any external channel.
4. Connect a channel
Link your chat agent to WhatsApp, Telegram, or Messenger, or attach a phone number to your voice agent via telephony.
5. Watch your credits
Each run draws from your credit balance. Keep an eye on Billing and top up before you run high-volume automations. Full cost table: Credits & Billing.
Authentication
Nanovate supports email/password sign-in and single sign-on, and secures API access with bearer tokens.
Sign-in options
- Email & password — standard registration with email-based password reset.
- Google SSO — sign in with a Google account.
- LinkedIn SSO — sign in with a LinkedIn account.
Two-factor authentication (2FA)
You can enable 2FA on your account from Settings → Account. Once enabled, a second factor is required at sign-in in addition to your password.
API access tokens
Programmatic access uses a JWT bearer token. Send it on every request:
GET /agents HTTP/1.1
Host: api.nanovate.io
Authorization: Bearer <your-token>
Tokens are issued at sign-in and on OAuth callback. Treat them as secrets — never commit them to source control or paste them into shared logs.
The running API exposes an OpenAPI document at /openapi.json, which is the
authoritative contract for request and response shapes.
Credits & Billing
Nanovate runs on a credit balance. Every AI action draws credits, and the cost depends on the model you choose. Top up your balance from the Billing page, which uses Paymob hosted checkout.
Chat model costs
Cost is charged per message sent through a chat agent.
| Model | Credits / message |
|---|---|
| Gemini 3 Flash Preview | 10 |
| Gemini 2.5 Flash | 15 |
| Claude Sonnet | 20 |
| GPT-4o | 25 |
| Gemini 3 Pro Preview | 30 |
Voice model costs
Cost is charged for the LLM driving a custom voice agent.
| Model | Provider | Credits |
|---|---|---|
| Gemini 2.5 Flash Lite | 5 | |
| Gemini 2.5 Flash | 10 | |
| Gemini 2.5 Pro | 25 | |
| GPT-5 Chat | Azure OpenAI | 50 |
| GPT-5.1 Chat | Azure OpenAI | 60 |
| GPT-5.2 Chat | Azure OpenAI | 80 |
| GPT-5.3 Chat | Azure OpenAI | 100 |
| GPT-5.4 | Azure OpenAI | 120 |
Topping up
- Go to Billing in the dashboard.
- Choose a top-up amount and complete Paymob checkout.
- Credits are added to your workspace balance once payment is confirmed.
Choose a lighter model for high-volume or low-stakes tasks to stretch your balance, and reserve frontier models for work that needs the extra quality.
Workflows
Automate work with a visual node canvas: triggers, actions, logic, and AI agents.
Workflows overview
A workflow is an automation built from nodes on a visual canvas. A workflow starts with a trigger, then flows through actions, logic, and agents to do the work — send a WhatsApp message, call an API, run a chat agent, branch on a condition.
Anatomy of a workflow
- Trigger — what starts the run (a manual click, an inbound webhook, or a schedule).
- Actions — what the workflow does (send a message, make an HTTP request, run an agent).
- Logic — control flow (wait/delay, or branch on a condition).
- Edges — the connections that define execution order.
Build it your way
- Start from a pre-built template tailored to an industry, or
- Drag nodes onto a blank canvas and wire them yourself.
See the full node catalog for everything you can drop onto the canvas.
Each model-backed node (such as Run Chat Agent) consumes credits when the workflow runs. See Credits & Billing.
The workflow builder
The builder is a drag-and-drop canvas. You add nodes, connect them with edges, and configure each node in a side panel.
Working on the canvas
- Add a node — open the node panel and drop a trigger, action, or logic node.
- Connect nodes — drag from a node's output handle to another node's input. Branch nodes expose true and false handles for conditional paths.
- Configure — select a node to edit its settings (the recipient of a message, the URL of an HTTP request, the cron expression of a schedule, and so on).
- Reposition — drag nodes to lay the flow out left-to-right.
A simple flow
[Trigger manually] → [Run Chat Agent: Qualify lead] → [Send WhatsApp: Confirm]
A trigger kicks off the run, the chat-agent node does the reasoning, and the WhatsApp action delivers the result.
Enabling a workflow
Toggle a workflow enabled to let its trigger fire. Manual workflows run on demand; webhook and schedule workflows run automatically once enabled.
Next: browse the node catalog or start from a template.
Node catalog
Nodes are grouped by what they do. Triggers start a workflow; everything else acts on the data flowing through it.
Triggers
Every workflow begins with exactly one trigger.
| Node | What it does |
|---|---|
| Trigger manually | Click to run and test. |
| When data is received | Starts when your app or website sends data to a webhook URL. |
| On a schedule | Runs at regular intervals (e.g. hourly) or a custom cron expression. |
Communicate
| Node | What it does |
|---|---|
| Send WhatsApp | Send a WhatsApp message via Twilio. |
| Send Email | Send a transactional email. |
| HTTP Request | Call an external HTTP endpoint (GET/POST/…). |
Agent
| Node | What it does |
|---|---|
| Run Chat Agent | Invoke one of your Nanovate chat agents inside the flow. |
Data
| Node | What it does |
|---|---|
| Google Sheets Append | Append a row to a Google Sheet. |
| Set Variable | Store a value for use later in the workflow. |
Logic
| Node | What it does |
|---|---|
| Wait / Delay | Pause for a duration before continuing. |
| Condition | Branch on a true/false test (exposes true and false outputs). |
Coming soon
These nodes are on the roadmap and appear disabled on the canvas today:
:::note Roadmap
- Run Voice Agent — invoke a voice agent from a workflow.
- Update CRM — push records to your CRM.
- Send SMS — send an SMS message.
- Send Telegram — send a Telegram message. :::
Workflow templates
Start fast with a pre-built automation, one per industry. Each template drops a ready-to-edit flow onto the canvas — swap in your own agent IDs, phone numbers, and copy, then enable it.
Real Estate — Appointment Booking
Lead generation. Capture interest, run an AI qualifier, confirm via WhatsApp.
Trigger manually → Run Chat Agent (Qualify lead) → Send WhatsApp (Confirm)
F&B — Order Confirmation
Notifications. Receive an order webhook, store the order total, confirm by WhatsApp.
Webhook → Set Variable (orderTotal) → Send WhatsApp (Confirm)
Clinic — Appointment Reminder
Customer support. Run a daily schedule, build a reminder with an agent, message the patient.
On a schedule (9am daily) → Run Chat Agent (Build reminder) → Send WhatsApp
E-commerce — Abandoned Cart Recovery
E-commerce. Scan on a schedule, branch on cart value, follow up on the right channel.
On a schedule (every 2h) → Condition (cart total > 50?) → WhatsApp nudge / Email nudge
Logistics — Shipment Status Cross-channel
Data & reporting. Receive a carrier webhook, fetch shipment status, branch to email or WhatsApp.
Webhook → HTTP Request (Fetch shipment) → Condition (Delivered?) → Email / WhatsApp
Education — Follow-up Sequence
Lead generation. Daily tutor follow-up, a short wait, then a recap email.
On a schedule (daily) → Run Chat Agent (Tutor follow-up) → Wait 30 min → Send Email (recap)
Templates are starting points. Open any node after loading a template to point it at your own agents, recipients, and content.
Chat Agents
Build text agents, connect them to messaging channels, and test them live.
Chat Agents overview
A chat agent is a text-based AI assistant you define once and deploy across channels. You give it a role and background, choose a model and tone, test it, then connect it to WhatsApp, Telegram, or Messenger.
What makes up an agent
- Role & background — who the agent is and how it should behave.
- Model — the LLM that powers replies (see costs).
- Tone & language — the voice and the language it responds in.
- Temperature — how deterministic (low) or creative (high) replies are.
Lifecycle
- Create the agent — from a template or from scratch.
- Test it in the built-in chat panel.
- Connect it to a messaging channel.
Each reply consumes credits based on the chosen model.
Creating a chat agent
Start from a template for a fast, sensible default, or configure everything yourself.
Templates
| Template | Role | Default model | Temperature |
|---|---|---|---|
| Customer Support | Customer Support Specialist | Claude Sonnet | 0.3 |
| Business Consultant | Strategic Business Advisor | GPT-4o | 0.5 |
| Sales Assistant | Sales Development Representative | Gemini 2.5 Flash | 0.6 |
| Educational Mentor | Educational Coach | Claude Sonnet | 0.4 |
Each template pre-fills the role, background, additional instructions, model, and temperature — all editable after you load it.
Models
| Model | Credits / message |
|---|---|
| Gemini 3 Flash Preview | 10 |
| Gemini 2.5 Flash | 15 |
| Claude Sonnet | 20 |
| GPT-4o | 25 |
| Gemini 3 Pro Preview | 30 |
Tone
Choose how the agent sounds: Professional, Friendly, Casual, Formal, Empathetic, Assertive, or Humorous.
Language
Agents can respond in: English, Arabic, French, Spanish, German, Portuguese, Italian, Chinese, or Japanese.
Temperature
A lower temperature (e.g. 0.3) yields focused, consistent answers — good for support.
A higher temperature (e.g. 0.6) yields more varied, creative replies — good for sales
or brainstorming.
Write a specific background and additional instructions: tell the agent when to escalate, what to confirm, and what it must never do. This shapes behaviour far more than the model choice alone.
Channel integrations
Connect a chat agent to a messaging channel so it can talk to your customers where they already are. Open an agent and choose a channel to link.
WhatsApp
Connect via Twilio. Inbound WhatsApp messages are routed to your agent, and its replies are delivered back to the sender.
Telegram
Link a Telegram bot to your agent. Messages sent to the bot are handled by the agent.
Messenger
Connect a Facebook Page so Messenger conversations are answered by your agent.
How routing works
Once a channel is connected, incoming messages flow to your agent, the agent generates a reply using its configured model, and the response is sent back over the same channel — each reply drawing credits per the model's cost.
Always test the agent in the built-in chat panel before connecting a live channel, so customers never see an unconfigured agent.
Testing a chat agent
Every chat agent has a built-in test chat panel so you can hold a conversation with it before going live.
Using the test panel
- Open the agent you want to test.
- Type a message in the chat panel and send it.
- The agent replies using its configured model, tone, and language — responses stream in so you can read them as they arrive.
- Iterate: adjust the role, background, model, or temperature and try again.
What to check
- Persona — does it stay in role and on tone?
- Accuracy — are answers correct and grounded?
- Escalation — does it follow your "additional instructions" (e.g. handing off hard cases or confirming before closing)?
- Language — does it reply in the configured language?
Each test message consumes credits, just like a production message. Test the cases that matter most rather than every possible phrasing.
Voice Agents
Real-time voice agents over LiveKit, with telephony and an in-browser test console.
Voice Agents overview
Voice agents hold real-time spoken conversations. They run over LiveKit for low-latency audio and can handle both inbound and outbound calls.
Call types
- Inbound — the agent answers calls placed to a connected number.
- Outbound — the agent places calls (e.g. reminders, follow-ups).
Real-time providers
Voice agents use a real-time speech model from one of:
- Gemini
- OpenAI
For agents that pair a real-time voice layer with a separate reasoning model, you also choose an LLM model.
Lifecycle
- Create the agent — pick a voice, provider, and (where applicable) an LLM.
- Test it in the in-browser LiveKit console.
- Attach a phone number via telephony.
Voice usage draws credits based on the chosen model — see Credits & Billing.
Creating a voice agent
Configure the voice, the real-time provider, and the LLM that drives the conversation.
Voices
Built-in voices:
| Voice | |
|---|---|
| Alloy | Echo |
| Fable | Onyx |
| Nova | Shimmer |
LLM models
For custom voice agents, choose the reasoning model. Cost is charged in credits.
| Model | Provider | Credits |
|---|---|---|
| Gemini 2.5 Flash Lite | 5 | |
| Gemini 2.5 Flash | 10 | |
| Gemini 2.5 Pro | 25 | |
| GPT-5 Chat | Azure OpenAI | 50 |
| GPT-5.1 Chat | Azure OpenAI | 60 |
| GPT-5.2 Chat | Azure OpenAI | 80 |
| GPT-5.3 Chat | Azure OpenAI | 100 |
| GPT-5.4 | Azure OpenAI | 120 |
Call direction
Set the agent to handle inbound calls, outbound calls, or both, depending on your use case.
Lighter models (e.g. Gemini 2.5 Flash Lite) keep per-minute cost low for high-volume calling; reserve the GPT-5 family for conversations that need stronger reasoning.
Telephony
Connect your voice agent to the phone network so it can answer and place real calls. Telephony is handled through Twilio.
Inbound calls
Point a Twilio number at your voice agent. Incoming calls are answered by the agent, which converses in real time over LiveKit.
Outbound calls
Trigger outbound calls from a Twilio number — for reminders, confirmations, or follow-ups — and the agent drives the conversation when the call connects.
Phone number entry
Numbers are entered in international format with a country selector, so the correct dialing code is always applied.
Validate a number with a test call before running an outbound campaign.
Testing a voice agent
Test a voice agent right in the browser with the LiveKit console — no phone number required.
Using the console
- Open the voice agent and start a test session.
- Grant microphone access when prompted.
- Speak to the agent; it responds in real time using its configured voice and model.
- End the session and adjust the voice, provider, or LLM as needed.
What to check
- Latency — does the agent respond quickly enough to feel natural?
- Voice — is the chosen voice right for your brand?
- Turn-taking — does it handle interruptions and pauses gracefully?
- Accuracy — does it understand callers and answer correctly?
Once the agent sounds right in the console, attach a number via telephony to take it live.
Test sessions consume credits at the same rate as live calls, so keep test runs focused.
Speech
Standalone speech-to-text and text-to-speech tools.
Speech-to-Text
Transcribe audio into text with the standalone STT tool. Upload a file, pick a provider and model, and get a transcript back.
Providers & models
| Provider | Models |
|---|---|
| OpenAI Whisper | gpt-4o-mini-transcribe |
| Google STT | chirp_3, chirp_2, chirp, long |
Transcribing audio
- Upload an audio file in the dropzone.
- Choose the provider and model.
- Run the transcription.
- Review the transcript and any generated summary.
Google's long model is suited to longer recordings, while chirp_3 is the latest
general-purpose model. For OpenAI, gpt-4o-mini-transcribe is a fast, low-cost default.
Text-to-Speech
Generate spoken audio from text. Enter your script, choose a provider, model, and voice, and generate.
Providers & models
| Provider | Models |
|---|---|
| OpenAI TTS | gpt-4o-mini-tts |
| Google TTS | chirp_3, gemini-2.5-flash-tts, gemini-2.5-flash-preview-tts |
Voices
OpenAI voices available for generation:
| Voice | |
|---|---|
| Alloy | Echo |
| Fable | Onyx |
| Nova | Shimmer |
Generating audio
- Enter the text you want spoken.
- Choose the provider, model, and voice.
- Generate, then play back or download the audio.
Generated clips are listed so you can revisit and reuse earlier outputs.
Settings
Manage your profile, security, connected accounts, and notifications.
Account settings
Manage your identity, security, and preferences from the Settings page.
Profile
Update your name and profile details, and manage the email associated with your account.
Security
- Password — change your password at any time.
- Two-factor authentication (2FA) — enable a second factor for sign-in. See Authentication.
Connected accounts
Link or unlink Google and LinkedIn for single sign-on, so you can sign in with those providers instead of a password.
Notifications
Choose which product and account notifications you receive.
Danger zone
Account deletion lives here. Deleting your account is permanent and removes your workspace data — proceed only if you are certain.
Actions in the danger zone cannot be undone. Export anything you need to keep first.