Helovo

For developers

Chatbot API: the same assistant, in your own app.

Use the AI assistant you built in Helovo from your own app, bot or internal tools through a single REST endpoint. You manage what the assistant knows and its rules in the dashboard; your code just sends the message and gets the answer.

curl https://api.helovo.com/v1/chat \
  -H "Authorization: Bearer $HELOVO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "bot_id": "bot_…", "message": "Are you open today?" }'

Why the Helovo API?

One endpoint

Send a message to POST /v1/chat and get the answer back as JSON. No SDK to install.

Streaming (SSE)

With "stream": true the answer arrives as Server-Sent Events, so users read it as it's written.

Conversation memory

Pass conversation_id to continue a conversation; you don't have to store earlier messages yourself.

Knowledge managed in the dashboard

Change the assistant's instructions, tone and language in the dashboard; your code doesn't change.

Per-chatbot keys

Scope an API key to all chatbots or just the ones you choose, and revoke it whenever you need to.

The same guardrails

Over the API, the assistant still stays on topic, doesn't make things up and introduces itself as your business's assistant.

What you can build

  • A customer support assistant inside your mobile app
  • Answers for a Telegram, Discord or messaging bot you built yourself
  • If you're an agency, your clients' assistants connected to your own dashboard
  • Draft replies to incoming questions in your CRM or help desk
  • An assistant that answers with company information on kiosks, tablet menus or internal tools

Your first request in three steps

  1. 1

    Build the chatbot

    Create an account, write your business details and instructions, and test it in the dashboard.

  2. 2

    Create an API key

    Create a key on the API page in the dashboard. It's shown only once.

  3. 3

    Send a request

    Keep the key on your server and send the message to POST /v1/chat with the bot_id.

Documentation

Send a message to your chatbot and get the answer with a single endpoint.

Authentication

Add an Authorization: Bearer sk_… header to every request. The API is for server-to-server use only; requests from browsers (CORS) are refused. To chat with visitors on your website, use the widget.

POSThttps://api.helovo.com/v1/chat

FieldTypeDescription
bot_id*stringThe chatbot's ID (shown on the chatbot's Install tab).
message*stringThe user's message, at most 4,000 characters.
conversation_idstringContinues an existing conversation. Leave it empty to start a new one.
userstringThe user's ID in your own system; shown in conversations (at most 128 characters).
streambooleanWhen true, the answer arrives in pieces as Server-Sent Events.

Request

curl https://api.helovo.com/v1/chat \
  -H "Authorization: Bearer $HELOVO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "bot_id": "bot_…",
    "message": "Hello",
    "user": "customer-42"
  }'

Response

{
  "id": "msg_01J…",
  "conversation_id": "conv_01J…",
  "answer": "Hello, how can I help you?",
  "model": "standard",
  "finish_reason": "stop",
  "usage": { "input_tokens": 142, "output_tokens": 18 }
}

Streaming answer

"stream": true makes the answer arrive as Server-Sent Events: meta → delta (pieces of text) → done or error.

curl -N https://api.helovo.com/v1/chat \
  -H "Authorization: Bearer $HELOVO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "bot_id": "bot_…", "message": "Hello", "stream": true }'

Other endpoints

  • GET /v1/chatbots — The chatbots the key can use.
  • GET /v1/conversations/{id} — The messages of a conversation started through the API.

Errors and limits

Errors come back as {"error": {"code": "…", "message": "…", "request_id": "…"}}. Every response includes the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.

400invalid_requestInvalid JSON or an unknown field.
401missing_api_key / invalid_api_keyThe key is missing, invalid, revoked or expired.
404chatbot_not_found / conversation_not_foundIt doesn't exist, or this key has no access to it.
409chatbot_pausedThe chatbot is paused.
422validation_errorThe message is empty or too long.
429rate_limited / quota_exceededPer-minute limit or monthly quota reached. See the Retry-After header.
502–504ai_error / ai_not_configured / ai_timeoutThe assistant couldn't answer; try again.

Limits and pricing

  • The API is available on the paid plan: 5,000 API requests a month and 60 requests a minute.
  • The paid plan is billed weekly, monthly or yearly, with no per-seat or per-token charges.
  • The API is for server-to-server use only; never put the key in browser code. For website visitors, use the one-line widget.
See pricing →

Frequently asked questions

Does Helovo have a chatbot API?

Yes. Every chatbot you build in Helovo can be used from your own app through a REST API: send a message to POST /v1/chat and get the answer as JSON or Server-Sent Events.

Which languages can I use?

Any language that can send an HTTP request: cURL, JavaScript (Node.js), Python, PHP, Go, Java and more. The docs include cURL, JavaScript and Python examples.

Can I call the API directly from the browser?

No. To keep your API key secret, the API is server-to-server only and browser requests are refused. For visitors on your website, use the widget.

Can I see conversations that come through the API?

Yes. Conversations started through the API also appear in the dashboard; send your own user ID in the user field to see who started each one.

Does the API work on the free plan?

No. You can build your chatbot and test it in the dashboard for free; API requests are available on the paid plan.

For a step-by-step walkthrough, read our chatbot API guide. For more questions, see the FAQ.

Chatbot API: Add an AI Assistant to Your App · Helovo